Spaceship Arena, a little space shooter game

spaceship arena

Welcome to Spaceship Arena

This is a space shooter game in which your mission is to survive as long as you can from the incoming waves of enemies.

There are three levels of difficulty coresponding with three score tables.

Source code can be edited in Flash CS4 and up or Flash Develop.


Lines 3D (Christmas Edition)


Lines 3D is a fun puzzle game in a 3D environment !

The player moves balls around a grid to form horizontal, vertical or diagonal lines of at least five balls of the same colour. Once a line is formed player gets points

The game was made usin Away3D and also features local TOP SCORE

Files for both Flashdevelop and Flash CS5 .5

[ link ]

[ AS3] Masking Dynamic Content TextField and cacheAsBitmap

Ok, this is a quick post.

In a little project I am working right now I had to do some effects involving some textfield masking.  The problem I had is that the text was never masked and it always was visible on the display list. To solve this problem I had to use the cacheAsBitmap propriety of display objects. Once I set that to true everything went smooth.

Waving Text Effect in Actionscript 3.0

var text:String       = "This text is a waving text";
var format:TextFormat = new TextFormat("Arial", 12);
var radius:int = 5;
var speed:Number = Math.PI/15;
var angle:Number =0
var letters:Array = null;

function Init():void
	letters = [];
	for (var a = 0, x = 0; a<text.length; a++)
		letters[a] = new Sprite();
		var txt:TextField =  new TextField();
		txt.selectable = false;
		txt.autoSize = "left";
		txt.text = text.charAt(a);
		letters[a].x = a * 15;
	addEventListener(Event.ENTERFRAME, Animate, false, 0, true); 


function Animate(e:Event):void
	for (var a = 0; a<letters.length; a++) 
		letters[a].y = Math.sin(angle+a)*radius;
	angle += speed;


O’Reilly’s free book: Introducing Starling

Introducing Starling

Introducing Starling

One of the reason that made me go on and learn Flash is to create games that I like. Well, in time, things got different and most of the time was spent on creating flash components for websites. Yeah, I’ve done occasionally some small flash games but never at a professional level.

A nice piece of news was when I found out that O’Reilly release a free book based on Starling Framework.

What a joy ! I’ve known about the existence of this framework but my time was too short to really got into it. So I think this is the right time to do it. I am going to wipe the dust from some of my games and try to port them to use this framework. I think this will be a great opportunity to learn some stuff. 🙂

Starling is an ActionScript 3 2D framework developed on top of the Stage3D APIs. Starling is mainly designed for game development, but could be used for many other use cases.

So, here is the link you wanted.

Random Generated Displacement Map

So,  I was following this tutorial from activetuts+ to create the same effect,  a static distortion effect using the displacement map filter,  in one of my game projects and it was cool until I realized that my project is getting fatter and fatter by adding images of different sizes to use for different sized objects.

Ofcourse, this was not acceptable so I thought I could create a random generated image by code and reuse it than to create different images in Photoshop.

Anyway, here’s the code which is generating a random image to be used with the effect in the tutorial.

function rndImage(w:Number, h:Number, wl:int = 0, bl:int =0):BitmapData
var bitmapdata:BitmapData = new BitmapData(w,h,false, 0xDDDDDD);
var randY:int = 0;
var randX:int = 0;
var randW:int = 0;
var thick:Number = 0;
var a:int = 0;
var minWidth:int = 0;
var line:Shape = new Shape();

for ( a = 0; a< wl; a++)
thick = Math.random()* 1.3 + 0.2;
randY = Math.random() * h;
minWidth = (40 * w)/100;
randW = Math.random() * (w-minWidth) + minWidth;
randX = Math.random() * ((w-randW));, 0xFFFFFF);,randY);, randY);

for ( a = 0; a< bl; a++)
thick = Math.random()* 1.3 + 0.2;
randY = Math.random() * h;
minWidth = (40 * w)/100;
randW = Math.random() * (w-minWidth) + minWidth;
randX = Math.random() * ((w-randW));, 0x000000);,randY);, randY);


return bitmapdata;

And this is how you generate the image

rndImage(width,height, nr_white_lines,nr_dark_lines);

Lite Video Presentation

Lite Video Presentation

Lite Video Presentation

You can use this component for various video presentations.
You can jump in different sections of the video by clicking the

Until the section of the video is loaded the thumb will be greyed


- resizable
- change settings through a XML file
- youtube video support
- flv, mp4, 3gpp, quicktime, mov
- change the colors of each element of the video player
- the wallpaper can be enabled or disabled
- supports custom made captions through an XML ( can be disabled )
- caption text supports HTML formatting

- OOP code
- documentation
- example files ( ready to custom & deploy )

[ LINK ]