Latest Version: 1.4.1
Pylash is a game engine for python which imitates some classes and functions in flash. We develop pylash with Python3 and the GUI engine of pylash is PyQt4. Many classes which are almost from flash such as Sprite, BitmapData, Bitmap, TextField, Loader and Graphics will be found in pylash.
We use MIT License, which is a free and friendly license. Besides, you must follow the license of PyQt4 as well, because pylash is based on it.
With Git:
Input this command in Git Bash to clone pylash:
git clone git@github.com:yuehaowang/pylash_engine.git
Without Git:
The url to download the engine is:
https://github.com/yuehaowang/pylash_engine/archive/master.zip
For pylash is based on Python3 and PyQt4, you need to install them first.
Python3 will be found here:
PyQt4 will be found here:
https://riverbankcomputing.com/software/pyqt/intro
If you find the library has some bugs or that you have any questions or advice, please let us know:
My email: wangyuehao1999@gmail.com
My twitter: https://twitter.com/yuehaowang
Bugs can be submited into Github Issues too.
- Find Character
- Get Fruits
- Tower Defense
- Overview of Pylash
- A Simple Program: Hello World
- Load and Display An Image
- Sprite and Mouse Event
- Create Vector Graphics
Documentation comes soon...
Release Date: 3/13/2016
- Added
globalToLocalmethod inDisplayObjectclass to get a point's position which is relative to the global coordinate. - Added
localToGlobalmethod inDisplayObjectclass to get a point's position which is relative to the local coordinate of display object. - Added
Matrixclass ingeommodule to create a matrix used for transforming coordinate. - Added
Transformclass ingeommodule andtransformproperty inDisplayObject. With them, you can transform display object arbitrarily.
Release Date: 2/7/2016
- Enhancement: you can set
width&heightproperty ofDisplayObjectto limit the size of display object. - Added
Soundclass inmediamodule to play music. - Enhancement: using
LoadManage.load, you can load music. - Improvement:
LoadManageused to usethreading.threadto create a thread, now it useQThread.
Release Date: 1/10/2016
- Added
LineEditclass inuimodule to create single-line input box. - Added
RankingSysteminsystemmodule, which connect server and send requests to add/get ranking. - Added
RankingServerinnetmodule, which is asocketserver used withRankingSystem. - Bugfix: cannot use
onComplete&onStart&onUpdateproperty inTweenLite.
Release Date: 12/26/2015
- Added
ButtonSampleinuimodule, which is used for creating a very simple button. Generally speaking, it's used for testing. - Added
StageWebViewinmediamodule to show some webpages in the window.
Release Date: 11/21/2015
- Added
drawmethod inBitmapDatato draw a display object inBitmapDataobject. - Improvement: change drawing
QImageobject into drawingQPixmapobject to make image rendering fast. - Added
setPixel,getPixel,setPixels,getPixelsmethod inBitmapDatafor pixel processing. - Added
lock,unlockmethod inBitmapDatafor faster pixel processing when you process pixels many times at a time. - Added
Rectangleclass andPointclass. - Bugfix: get wrong width/height of
Graphicswhen usingmoveTomethod orlineTomethod. - Enhancement: support hex value when setting color.
Release Date: 11/8/2015
- Bugfix: some errors will be thrown when you give a
LinearGradientColor/RadialGradientColor/ConicalGradientColorobject tolineStylemethod ofGraphicsclass as the second parameter. - Added
TweenLitestatic class andTweenLiteChildclass to create some easing animations. - Added
Easingstatic class to provide many easing methods forTweenLiteclass. - Improvement: more detailed internal error hints.
- Bugfix: cannot use
Button.removeState.
Release Date: 11/1/2015
- Added
Shapeclass to create vector graphics. It's lighter thanSpritewhen you just want to use vector graphics. - Enhancement: efficiency of mouse event.
Release Date: 10/7/2015
- Added some sample classes about loading page.
- Added
Buttonclass to create a simple button. - Added
LinearGradientColor,RadialGradientColorandConicalGradientColorclass to use gradient color. - Added
delayproperty inLoadManageclass to set the delay time between loading a resource and loading the next resource in order to show loading page. - Added
useAntialiasingproperty instagein order to open/close antialiasing. - Bugfix:
onCompletecallback function will be called in the thread used for loading resources inLoadManage. - Bugfix:
PyQtwill throw errors iftextproperty ofTextFieldis set to a value whose type is notstr. - Added
mouseShelterproperty inDisplayObjectContainerto set whether stop propagating mouse events toDisplayObjectContainerobjects that are sheltered by other objects. - Bugfix:
selfYin mouse event is wrong. - Enhancement: the
xandyproperty in parameter 'bitmapData' given into the constructor ofAnimationclass will be the origin position of the animation. - Added
AnimationSetclass to control a set of animations. - Added
MOUSE_OVERandMOUSE_OUTevent.
Release Date: 9/20/2015
- Improvement: changed and added some methods in
Graphics. - Added settings of
join style,cap styleandmiter limitinGraphics.
Release Date: 9/12/2015
Create pylash with display, text, system, utils and events modules which include Sprite, Bitmap, Graphics, Loader, Stage and more powerful classes.


