Author: Ying
(2009/03/22 15:43) Almost 3 years ago
1
<map>
2
<tilerow>
3
<tilecol>1</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>0</tilecol>
<tilecol>1</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>1</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>3</tilecol>
4
</tilerow>
5
6
<tilecol>3</tilecol><tilecol>7</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>0</tilecol>
<tilecol>3</tilecol><tilecol>7</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>3</tilecol><tilecol>7</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>3</tilecol>
7
8
9
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>0</tilecol>
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol>
10
11
12
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>1</tilecol><tilecol>4</tilecol><tilecol>2</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>0</tilecol>
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>1</tilecol><tilecol>4</tilecol><tilecol>2</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol>
13
14
15
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>1</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>2</tilecol><tilecol>7</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>0</tilecol>
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>1</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>2</tilecol><tilecol>7</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol>
16
17
18
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>7</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>9</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>0</tilecol>
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>7</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol>
19
20
21
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>0</tilecol>
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>3</tilecol>
22
23
24
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>1</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>2</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>0</tilecol>
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>1</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>2</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>3</tilecol>
25
26
27
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>7</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>0</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>0</tilecol>
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>7</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>0</tilecol><tilecol>3</tilecol>
28
29
30
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>0</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>0</tilecol>
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol> <tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol> <tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol> <tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol> <tilecol>0</tilecol><tilecol>3</tilecol>
31
32
33
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>1</tilecol><tilecol>2</tilecol><tilecol>8</tilecol><tilecol>0</tilecol>
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>1</tilecol><tilecol>3</tilecol>
34
35
36
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>2</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>1</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>2</tilecol><tilecol>7</tilecol><tilecol>5</tilecol><tilecol>0</tilecol>
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>2</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>1</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>3</tilecol>
37
38
39
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>7</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>0</tilecol>
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>2</tilecol><tilecol>7</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>3</tilecol>
40
41
42
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>0</tilecol>
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol>
43
44
45
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>0</tilecol>
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol>
46
47
48
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>2</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>2</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>0</tilecol>
<tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>2</tilecol>
49
50
51
<tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>0</tilecol>
52
53
54
<tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol>
55
56
</map>
57
{
private var stageRef:Stage;
private var key:KeyObject;
private var GameMap:Array = new Array();
private var bAmoebaLoaded:Boolean;
private var bActive:Boolean;
// Movement vars
public var bMoving:Boolean;
public var iDir:int;
//private var bBrake:Boolean;
private var mUp:int = 1;
private var mDown:int = 2;
private var mRight:int = 3;
private var mLeft:int = 4;
private var mNone:int = 0;
public function Amoeba(stageRef:Stage)
public function Amoeba()
bAmoebaLoaded = false;
bActive = false;
}
public function IsReady():Boolean
{ return bAmoebaLoaded;}
public function Activate():void
{bActive = true;}
public function CreateAmoeba(stageRef:Stage)
trace("Amoeba: Constructor");
this.stageRef = stageRef;
bMoving = false;
//bBrake = false;
iDir= mNone;
key = new KeyObject(stageRef);
this.name="nAmoeba";
addEventListener(Event.ENTER_FRAME, loop, false, 0, true);
//addEventListener(Event.EXIT_FRAME, removeSelf, false, 0, true);
bAmoebaLoaded = true;
58
public function SetMap(gamemap:Array)
59
60
this.GameMap = gamemap;
61
62
public function loop(e:Event) : void
63
64
trace("Amoeba: Loop");
65
if(bActive)
if (key.isDown(Keyboard.LEFT))
66
x -= 2;
67
MoveInput();
else if (key.isDown(Keyboard.RIGHT))
68
ColisionDetection();
x += 2;
69
Move();
70
if (key.isDown(Keyboard.UP))
y -= 2;
else if (key.isDown(Keyboard.DOWN))
y += 2;
71
72
private function ColisionDetection()
73
74
if(bMoving)
75
76
// the next cell
77
var nextCell:int
78
var nextX:int;
79
var nextY:int;
80
//trace("----:)---:(----")
81
// trace("- Pos: x: "+ x + " y: "+ y );
82
// in the direction i'm going
83
switch(iDir)
84
85
case mLeft: nextX=(x-5)/25; nextY = y/25; /*trace("- Est: x: "+ (x-5) + " y: "+ y ); */break;
86
case mRight: nextX=(x+5+25)/25; nextY = y/25; /*trace("- Est: x: "+ (x+5+25) + " y: "+ y ); */break;
87
case mUp: nextX= x/25; nextY = (y-5)/25; /*trace("- Est: x: "+ x + " y: "+ (y-5) ); */break;
88
case mDown: nextX= x/25; nextY = (y+5+25)/25; /*trace("- Est: x: "+ x + " y: "+ (y+5+25) ); */break;
89
default: trace("Error: ColDec wrong Amoeba dir: " + iDir); break;
90
91
//trace("- Dir: "+ GetDir() +" at: " + nextX + ", " + nextY);
92
93
// Safety correction:
94
if(nextX < 0) {trace("Error: ColDect trying to go, x:" + nextX); nextX=0;}
95
if(nextX > 21) {trace("Error: ColDect trying to go, x:" + nextX); nextX=21;}
96
if(nextY < 0) {trace("Error: ColDect trying to go, y:" + nextY); nextY=0;}
97
if(nextY > 15) {trace("Error: ColDect trying to go, y:" + nextY); nextY=21;}
98
99
nextCell= GameMap[nextY][nextX];
100
//trace("- Next Cell Val: " + nextCell );
101
102
// is not passable
103
if(nextCell == 0 || nextCell == 1 ||nextCell == 2 ||nextCell == 3 ||nextCell == 4 )
104
105
//trace("Stop");
106
// stop when i reach it
107
108
// Fix the extra pixels
109
110
111
case mLeft: x=(nextX+1)*25; break;
112
case mRight: x=(nextX-1)*25; break;
113
case mUp: y=(nextY+1)*25; break;
114
case mDown: y=(nextY-1)*25; break;
115
116
117
iDir=mNone;
118
119
120
121
122
123
124
private function MoveInput():void
125
126
// Getting Directions
127
if(!bMoving)
128
129
bMoving = true;
130
if (key.isDown(Keyboard.LEFT)) iDir = mLeft;
131
else if (key.isDown(Keyboard.RIGHT)) iDir = mRight;
132
else if (key.isDown(Keyboard.UP)) iDir = mUp;
133
else if (key.isDown(Keyboard.DOWN)) iDir = mDown;
134
else bMoving = false;
135
136
137
138
private function Move():void
139
140
// Locomotor action!
141
142
143
144
145
case mLeft: x -= 5; break;
146
case mRight: x += 5; break;
147
case mUp: y -= 5; break;
148
case mDown: y += 5; break;
149
default: trace("Error: wrong Amoeba dir: " + iDir); break;
150
151
152
153
154
155
public function removeSelf() : void
156
157
trace("Amoeba: Destructor");
158
...
162
if (stageRef.contains(this)) stageRef.removeChild(this);
163
164
165
166
public function GetDir():String
167
168
if(iDir==mUp) return "Up";
169
else if(iDir==mDown) return "Down";
170
else if(iDir==mRight) return "Right";
171
else if(iDir==mLeft) return "Left";
172
else if(iDir==mNone) return "Stopped";
173
else return ("Unknown: "+ iDir);
174
175
176
177
import flash.display.Stage;
import flash.events.Event;
import flash.ui.Mouse;
import flash.events.MouseEvent;
import flash.events.*;
import com.senocular.utils.KeyObject;
import com.tilemap.TileMap;
import flash.ui.Keyboard;
import flash.net.URLRequest;
import flash.net.*;
import flash.utils.Timer;
// Game class, a Movieclip.
public class PhagocitosisGame extends MovieClip
// Class variables
private var pressedkey:KeyObject;
// Entities
public var playerAmoeba:Amoeba;
public var playerGoal:Goal;
public var playerEnemy:Enemy;
// Map Variables
private var gameMap:TileMap;
public var tileSize:int = 25;
// Map lists
private var mapPath:Array = new Array();
private var mapMetaPath:Array = new Array();
private var tilePath:Array = new Array();
// Scene related data
private var CurrentScene:Number = -1;
private var MaxScenes:int;
private var firstLoop:Boolean = true;
// Scene metadata
private var xmlLoader:URLLoader;
private var mapMetadata:XML;
// Loading limiters
private var playTimer:Timer;
private var playReady:Boolean = false;
// Pause Vars:
private var pauAX:int;
private var pauAY:int;
private var pauAD:int;
private var pauAM:Boolean;
private var pauEX:int;
private var pauEY:int;
private var pauED:int;
private var pauEM:Boolean;
private var ResumeFromPause:Boolean;
// Constructor, called once when the game is started.
public function PhagocitosisGame()
// Checking if we enter a frame, or exit it
addEventListener(Event.ENTER_FRAME, GameLoop, false, 0, true);
pressedkey= new KeyObject(stage);
ResumeFromPause = false;
// Manually load maps, and set the number of scenes
MaxScenes=6;
mapPath.push("Maps/Test1Map.xml");
mapPath.push("Maps/Trial1.xml");
mapPath.push("Maps/Trial2.xml");
mapPath.push("Maps/Trial3.xml");
mapPath.push("Maps/Trial4.xml");
mapPath.push("Maps/Trial5.xml");
tilePath.push("Art/Tilemap.png");
mapMetaPath.push("Maps/Test1MapData.xml");
mapMetaPath.push("Maps/Trial1Data.xml");
mapMetaPath.push("Maps/Trial2Data.xml");
mapMetaPath.push("Maps/Trial3Data.xml");
mapMetaPath.push("Maps/Trial4Data.xml");
mapMetaPath.push("Maps/Trial5Data.xml");
stop();
public function GameLoop(e:Event)
// Label to keep track of current Frame.
Label1.text = "Debug: " + currentLabel;
// Label1.text = "Debug: " + currentLabel;
// Code whilst in the menu
if(currentLabel == "fMenu") RunfMenu();
// Code to show the Game Over screen
if(currentLabel == "fGameOver") RunfGameOver();
// Code to show the palyer she's won
if(currentLabel == "fGameWon") RunfGameWon();
/* -------------------------------------------------------
private function InitfMenu()
trace("Phagocitosis: Init fMenu");
ResumeFromPause= false;
MenuPlayButton.addEventListener(MouseEvent.CLICK, FromfMenuGotofPlay);
MenuSelectMapButton.addEventListener(MouseEvent.CLICK, FromfMenuGotofSceneSelection);
firstLoop = false;
182
if(firstLoop) InitfSceneSelection();
183
184
185
186
187
private function InitfSceneSelection()
188
trace("Phagocitosis: Init fSceneSelection");
190
191
SelectMapMenuButton.addEventListener(MouseEvent.CLICK, FromfSceneSelectionGotofMenu);
192
193
SMButton0.addEventListener(MouseEvent.CLICK, SceneSelectionGotoScene0);
194
SMButton1.addEventListener(MouseEvent.CLICK, SceneSelectionGotoScene1);
195
SMButton2.addEventListener(MouseEvent.CLICK, SceneSelectionGotoScene2);
196
SMButton3.addEventListener(MouseEvent.CLICK, SceneSelectionGotoScene3);
197
SMButton4.addEventListener(MouseEvent.CLICK, SceneSelectionGotoScene4);
198
SMButton5.addEventListener(MouseEvent.CLICK, SceneSelectionGotoScene5);
199
200
201
public function FromfSceneSelectionGotofMenu()
202
public function SceneSelectionGotoScene0(event: MouseEvent)
203
{ExitfSceneSelection(); CurrentScene=0; gotoAndStop("fPlay");}
204
205
public function SceneSelectionGotoScene1(event: MouseEvent)
206
{ExitfSceneSelection(); CurrentScene=1; gotoAndStop("fPlay");}
207
208
public function SceneSelectionGotoScene2(event: MouseEvent)
209
{ExitfSceneSelection(); CurrentScene=2; gotoAndStop("fPlay");}
210
211
public function SceneSelectionGotoScene3(event: MouseEvent)
212
{ExitfSceneSelection(); CurrentScene=3; gotoAndStop("fPlay");}
213
214
public function SceneSelectionGotoScene4(event: MouseEvent)
215
{ExitfSceneSelection(); CurrentScene=4; gotoAndStop("fPlay");}
216
217
public function SceneSelectionGotoScene5(event: MouseEvent)
218
{ExitfSceneSelection(); CurrentScene=5; gotoAndStop("fPlay");}
219
220
public function FromfSceneSelectionGotofMenu(event: MouseEvent)
221
ExitfSceneSelection();
222
gotoAndStop("fMenu");
223
private function RunfPlay()
240
241
242
if(firstLoop) InitfPlay();
243
244
if(playReady)
245
246
CheckVictoryConditions();
247
248
playerEnemy.ScoutAmoebaAt(playerAmoeba.x, playerAmoeba.y);
if (pressedkey.isDown(Keyboard.ESCAPE))
249
250
ExitfPlay();
251
StorePreviousData();
252
253
gotoAndStop("fPause");
254
255
256
257
258
public function InitfPlay()
259
260
trace("Phagocitosis: Init fPlay");
261
262
playReady = false;
263
264
// Load Metadata
265
LoadMapMetadata();
266
267
268
269
270
271
public function ExitfPlay()
272
273
firstLoop = true;
274
275
// Remove all suspects
276
playerAmoeba.removeSelf();
277
playerEnemy.removeSelf();
278
playerGoal.removeSelf();
279
gameMap.removeSelf();
280
281
trace("Phagocitosis: Exit fPlay");
282
283
284
285
private function LoadPreviousData()
----------------------------------------------------------
286
287
trace("LoadPreviousData");
288
289
290
291
playerAmoeba.x = pauAX;
292
playerAmoeba.y = pauAY;
293
playerAmoeba.iDir = pauAD;
294
playerAmoeba.bMoving = pauAM;
295
296
playerEnemy.x = pauEX;
297
playerEnemy.y = pauEY;
298
playerEnemy.iDir = pauED;
299
playerEnemy.bMoving = pauEM;
300
301
Pause Frame
302
private function StorePreviousData()
303
304
trace("StorePreviousData");
305
306
ResumeFromPause = true;
307
308
pauAX = playerAmoeba.x;
309
pauAY = playerAmoeba.y;
310
pauAD = playerAmoeba.iDir;
311
pauAM = playerAmoeba.bMoving;
312
313
pauEX = playerEnemy.x;
314
pauEY = playerEnemy.y;
315
pauED = playerEnemy.iDir;
316
pauEM = playerEnemy.bMoving;
317
318
159
160
--------------------------------------------------------*/
161
319
private function RunfPause()
320
public function LoadMapMetadata()
{}
321
322
trace("Metadata: " + mapMetaPath[CurrentScene]);
323
324
xmlLoader=new URLLoader();
325
xmlLoader.addEventListener(Event.COMPLETE, LoadMapData, false, 0 , true);
326
xmlLoader.load(new URLRequest( mapMetaPath[CurrentScene] )); // "Maps/Test1MapData.xml"
327
328
329
public function LoadMapData(e:Event)
330
331
// Create data document
332
mapMetadata=new XML(xmlLoader.data);
333
334
// Create Amoeba
335
createAmoeba();
336
337
// Create Goal
338
createGoal();
339
340
// Create Enemy
341
createEnemy();
342
343
// Create Map
344
gameMap = new TileMap;
345
346
gameMap.CreateMap(stage,tilePath[CurrentScene], mapPath[CurrentScene], 16, 22, 3, tileSize );
347
348
trace("Setting timer");
349
//trace(gameMap.IsReady());
350
playTimer = new Timer(200);
351
playTimer.addEventListener(TimerEvent.TIMER, CheckIfPlayReady);
352
playTimer.start();
353
//playerAmoeba.SetMap(gameMap.aTileMap);
354
355
356
public function CheckIfPlayReady(e:TimerEvent):void
357
358
if(playerAmoeba.IsReady() && gameMap.IsReady() && playerEnemy.IsReady() )
359
360
// Ambos han terminado de cargarse
361
playerAmoeba.SetMap(gameMap.aTileMap);
362
playerEnemy.SetMap(gameMap.aTileMap);
363
playTimer.stop();
364
playerAmoeba.Activate();
365
playerEnemy.Activate();
366
playReady = true;
367
368
369
if(ResumeFromPause) LoadPreviousData();
370
371
372
373
Game Over Frame
374
private function CheckVictoryConditions()
375
376
if( playerGoal.x < playerAmoeba.x+25 &&
377
playerAmoeba.x < playerGoal.x+10 &&
378
playerGoal.y < playerAmoeba.y+25 &&
379
playerAmoeba.y < playerGoal.y+10 )
380
381
// Won the map
382
CurrentScene++;
383
384
385
if(MaxScenes ==CurrentScene)
386
387
CurrentScene = 0;
388
gotoAndStop("fGameWon");
389
390
391
392
393
if( playerEnemy.x < playerAmoeba.x+25 &&
394
playerAmoeba.x < playerEnemy.x+25 &&
395
playerEnemy.y < playerAmoeba.y+25 &&
396
playerAmoeba.y < playerEnemy.y+25 )
397
398
// Lost the game
399
400
gotoAndStop("fGameOver");
401
402
403
404
private function createAmoeba()
405
406
//create an object of our ship from the Ship class
407
playerAmoeba = new Amoeba;
408
playerAmoeba.CreateAmoeba(stage);
409
//add it to the display list
410
stage.addChild(playerAmoeba);
411
playerAmoeba.x = (mapMetadata.Player.StartPosition.x) * tileSize; //stage.stageWidth / 2;
412
playerAmoeba.y = (mapMetadata.Player.StartPosition.y) * tileSize; //stage.stageHeight / 2;
413
414
private function RunfGameOver()
415
private function createGoal()
416
417
418
playerGoal = new Goal(stage);
419
420
stage.addChild(playerGoal);
421
422
playerGoal.x = (mapMetadata.Goal.x) * tileSize; //stage.stageWidth / 2;
423
playerGoal.y = (mapMetadata.Goal.y) * tileSize; //stage.stageHeight / 2;
424
425
426
427
public function createEnemy()
428
429
430
playerEnemy = new Enemy();
431
playerEnemy.CreateEnemy(stage);
432
433
stage.addChild(playerEnemy);
434
435
playerEnemy.x = (mapMetadata.Goal.x) * tileSize; //stage.stageWidth / 2;
436
playerEnemy.y = (mapMetadata.Goal.y) * tileSize; //stage.stageHeight / 2;
437
438
178
439
440
179
441
180
442
181
443
------ Misc Functions -----
444
445
..............------..................------..............
446
447
189
448
// Code called each time a frame changes.
449
public function ExitFrame(e:Event)
450
trace("Phagocitosis: Changing frame");
451
if(firstLoop) InitfPause();
452
if (pressedkey.isDown(Keyboard.ENTER))
453
454
ExitfPause();
455
gotoAndStop("fPlay");
456
457
458
459
private function InitfPause()
460
trace("Phagocitosis: Init Stage 1");
461
trace("Phagocitosis: Init fPause");
462
PausedMenuButton.addEventListener(MouseEvent.CLICK, FromfPauseGotofMenu);
463
464
465
466
467
private function ExitfPause()
468
trace("Phagocitosis: Exit Stage 1");
469
470
trace("Phagocitosis: Exit fPause");
471
472
473
public function FromfPauseGotofMenu(event: MouseEvent)
474
475
playerAmoeba = new Amoeba(stage);
476
224
225
226
playerAmoeba.x = stage.stageWidth / 2;
227
playerAmoeba.y = stage.stageHeight / 2;
228
477
229
230
231
232
233
234
235
/*
236
237
238
package Scripts
239
// Imports needed for variables and so on. Senocular is a keypress lib.
import flash.display.MovieClip;
var playerAmoeba:Amoeba;
trace("Phagocitosis: Constructor");
478
479
// Main game loop
480
481
482
483
484
485
486
487
488
489
490
if(firstLoop) InitfGameOver();
491
if(currentLabel == "fMenu")
492
if(firstLoop) InitStage0();
493
trace("Clickiy");
494
ExitfGameOver();
495
496
// Code whilst in the Stage 1
if(currentLabel == "fPlay")
497
498
499
private function InitfGameOver()
500
501
trace("Phagocitosis: Init fGameOver");
502
GameOverMenuButton.addEventListener(MouseEvent.CLICK, FromfGameOverGotofMenu);
503
504
505
506
507
private function ExitfGameOver()
508
509
510
trace("Phagocitosis: Exit fGameOver");
511
512
public function InitStage0()
513
public function FromfGameOverGotofMenu(event: MouseEvent)
514
trace("Phagocitosis: Init Stage 0");
515
pbutton.addEventListener(MouseEvent.CLICK, ButtonFunctionPlayGame);
516
517
518
public function ExitStage0()
519
520
521
522
GameWon Frame
523
524
525
526
527
private function RunfGameWon()
528
trace("Phagocitosis: Exit Stage 0");
529
if(firstLoop) InitfGameWon();
530
gotoAndPlay("fPlay");
531
532
533
private function InitfGameWon()
534
535
trace("Phagocitosis: Init fGameWon");
536
GameWonMenuButton.addEventListener(MouseEvent.CLICK, FromfGameWonGotofMenu);
537
538
539
540
541
private function ExitfGameWon()
542
543
544
trace("Phagocitosis: Exit fGameWon");
545
546
public function ButtonFunctionPlayGame(event: MouseEvent)
547
public function FromfGameWonGotofMenu(event: MouseEvent)
548
ExitStage0();
549
ExitfGameWon();
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
*/
<tilecol>1</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>0</tilecol><tilecol>1</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>1</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>3</tilecol><tilecol>3</tilecol><tilecol>7</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>0</tilecol><tilecol>3</tilecol><tilecol>7</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>3</tilecol><tilecol>7</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>3</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>0</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>1</tilecol><tilecol>4</tilecol><tilecol>2</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>0</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>1</tilecol><tilecol>4</tilecol><tilecol>2</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>1</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>2</tilecol><tilecol>7</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>0</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>1</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>2</tilecol><tilecol>7</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>7</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>9</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>0</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>7</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>0</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>3</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>1</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>2</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>0</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>1</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>2</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>3</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>7</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>0</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>0</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>7</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>0</tilecol><tilecol>3</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>0</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>0</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>1</tilecol><tilecol>2</tilecol><tilecol>8</tilecol><tilecol>0</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>1</tilecol><tilecol>3</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>2</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>1</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>2</tilecol><tilecol>7</tilecol><tilecol>5</tilecol><tilecol>0</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>2</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>1</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>3</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>7</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>0</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>2</tilecol><tilecol>7</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>3</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>0</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>0</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>6</tilecol><tilecol>6</tilecol><tilecol>2</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>2</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>0</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>4</tilecol><tilecol>2</tilecol><tilerow><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>6</tilecol><tilecol>11</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>5</tilecol><tilecol>3</tilecol><tilecol>8</tilecol><tilecol>5</tilecol><tilecol>0</tilecol></tilerow><tilerow><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol><tilecol>0</tilecol></tilerow>{{public function Amoeba(stageRef:Stage)public function Amoeba(){{{ return bAmoebaLoaded;}{bActive = true;}{trace("Amoeba: Constructor");trace("Amoeba: Constructor");{{{trace("Amoeba: Loop");if(bActive)if (key.isDown(Keyboard.LEFT)){x -= 2;MoveInput();else if (key.isDown(Keyboard.RIGHT))ColisionDetection();x += 2;Move();}if (key.isDown(Keyboard.UP))y -= 2;else if (key.isDown(Keyboard.DOWN))y += 2;{{//trace("----:)---:(----")// trace("- Pos: x: "+ x + " y: "+ y );{case mLeft: nextX=(x-5)/25; nextY = y/25; /*trace("- Est: x: "+ (x-5) + " y: "+ y ); */break;case mRight: nextX=(x+5+25)/25; nextY = y/25; /*trace("- Est: x: "+ (x+5+25) + " y: "+ y ); */break;case mUp: nextX= x/25; nextY = (y-5)/25; /*trace("- Est: x: "+ x + " y: "+ (y-5) ); */break;case mDown: nextX= x/25; nextY = (y+5+25)/25; /*trace("- Est: x: "+ x + " y: "+ (y+5+25) ); */break;default: trace("Error: ColDec wrong Amoeba dir: " + iDir); break;//trace("- Dir: "+ GetDir() +" at: " + nextX + ", " + nextY);if(nextX < 0) {trace("Error: ColDect trying to go, x:" + nextX); nextX=0;}if(nextX > 21) {trace("Error: ColDect trying to go, x:" + nextX); nextX=21;}if(nextY < 0) {trace("Error: ColDect trying to go, y:" + nextY); nextY=0;}if(nextY > 15) {trace("Error: ColDect trying to go, y:" + nextY); nextY=21;}//trace("- Next Cell Val: " + nextCell );{//trace("Stop");{default: trace("Error: ColDec wrong Amoeba dir: " + iDir); break;{{{{{default: trace("Error: wrong Amoeba dir: " + iDir); break;{{trace("Amoeba: Destructor");trace("Amoeba: Destructor");{else return ("Unknown: "+ iDir);import flash.events.MouseEvent;import flash.events.*;{{private var CurrentScene:Number = -1;// Scene metadataprivate var xmlLoader:URLLoader;private var mapMetadata:XML;// Loading limitersprivate var playTimer:Timer;private var playReady:Boolean = false;// Pause Vars:private var pauAX:int;private var pauAY:int;private var pauAD:int;private var pauAM:Boolean;private var pauEX:int;private var pauEY:int;private var pauED:int;private var pauEM:Boolean;private var ResumeFromPause:Boolean;mapPath.push("Maps/Test1Map.xml");mapPath.push("Maps/Trial1.xml");mapPath.push("Maps/Trial2.xml");mapPath.push("Maps/Trial3.xml");mapPath.push("Maps/Trial4.xml");mapPath.push("Maps/Trial5.xml");tilePath.push("Art/Tilemap.png");tilePath.push("Art/Tilemap.png");tilePath.push("Art/Tilemap.png");tilePath.push("Art/Tilemap.png");tilePath.push("Art/Tilemap.png");tilePath.push("Art/Tilemap.png");mapMetaPath.push("Maps/Test1MapData.xml");mapMetaPath.push("Maps/Trial1Data.xml");mapMetaPath.push("Maps/Trial2Data.xml");mapMetaPath.push("Maps/Trial3Data.xml");mapMetaPath.push("Maps/Trial4Data.xml");mapMetaPath.push("Maps/Trial5Data.xml");{{// Label1.text = "Debug: " + currentLabel;{{trace("Phagocitosis: Init fMenu");trace("Phagocitosis: Init fMenu");{{trace("Phagocitosis: Init fSceneSelection");trace("Phagocitosis: Init fSceneSelection");public function FromfSceneSelectionGotofMenu()public function SceneSelectionGotoScene0(event: MouseEvent){ExitfSceneSelection(); CurrentScene=0; gotoAndStop("fPlay");}public function SceneSelectionGotoScene1(event: MouseEvent){ExitfSceneSelection(); CurrentScene=1; gotoAndStop("fPlay");}public function SceneSelectionGotoScene2(event: MouseEvent){ExitfSceneSelection(); CurrentScene=2; gotoAndStop("fPlay");}public function SceneSelectionGotoScene3(event: MouseEvent){ExitfSceneSelection(); CurrentScene=3; gotoAndStop("fPlay");}public function SceneSelectionGotoScene4(event: MouseEvent){ExitfSceneSelection(); CurrentScene=4; gotoAndStop("fPlay");}public function SceneSelectionGotoScene5(event: MouseEvent){ExitfSceneSelection(); CurrentScene=5; gotoAndStop("fPlay");}public function FromfSceneSelectionGotofMenu(event: MouseEvent){{gotoAndStop("fMenu");gotoAndStop("fMenu");{{if(firstLoop) InitfPlay();if(playReady){CheckVictoryConditions();playerEnemy.ScoutAmoebaAt(playerAmoeba.x, playerAmoeba.y);if (pressedkey.isDown(Keyboard.ESCAPE)){{ExitfPlay();StorePreviousData();ExitfPlay();gotoAndStop("fPause");}{trace("Phagocitosis: Init fPlay");{trace("Phagocitosis: Exit fPlay");/* -------------------------------------------------------private function LoadPreviousData()----------------------------------------------------------{trace("LoadPreviousData");ResumeFromPause = false;playerAmoeba.x = pauAX;playerAmoeba.y = pauAY;playerAmoeba.iDir = pauAD;playerAmoeba.bMoving = pauAM;playerEnemy.x = pauEX;playerEnemy.y = pauEY;playerEnemy.iDir = pauED;playerEnemy.bMoving = pauEM;}Pause Frameprivate function StorePreviousData(){trace("StorePreviousData");ResumeFromPause = true;pauAX = playerAmoeba.x;pauAY = playerAmoeba.y;pauAD = playerAmoeba.iDir;pauAM = playerAmoeba.bMoving;pauEX = playerEnemy.x;pauEY = playerEnemy.y;pauED = playerEnemy.iDir;pauEM = playerEnemy.bMoving;}------------------------------------------------------------------------------------------------------------------*/private function RunfPause()public function LoadMapMetadata(){}{trace("Metadata: " + mapMetaPath[CurrentScene]);xmlLoader=new URLLoader();xmlLoader.addEventListener(Event.COMPLETE, LoadMapData, false, 0 , true);xmlLoader.load(new URLRequest( mapMetaPath[CurrentScene] )); // "Maps/Test1MapData.xml"}{trace("Setting timer");/* -------------------------------------------------------public function CheckIfPlayReady(e:TimerEvent):void----------------------------------------------------------{if(playerAmoeba.IsReady() && gameMap.IsReady() && playerEnemy.IsReady() ){// Ambos han terminado de cargarseplayerAmoeba.SetMap(gameMap.aTileMap);playerEnemy.SetMap(gameMap.aTileMap);playTimer.stop();playerAmoeba.Activate();playerEnemy.Activate();playReady = true;if(ResumeFromPause) LoadPreviousData();}}Game Over Frameprivate function CheckVictoryConditions(){if( playerGoal.x < playerAmoeba.x+25 &&playerAmoeba.x < playerGoal.x+10 &&playerGoal.y < playerAmoeba.y+25 &&playerAmoeba.y < playerGoal.y+10 ){// Won the mapCurrentScene++;ExitfPlay();if(MaxScenes ==CurrentScene){CurrentScene = 0;gotoAndStop("fGameWon");}}if( playerEnemy.x < playerAmoeba.x+25 &&playerAmoeba.x < playerEnemy.x+25 &&playerEnemy.y < playerAmoeba.y+25 &&playerAmoeba.y < playerEnemy.y+25 ){// Lost the gameExitfPlay();gotoAndStop("fGameOver");}}----------------------------------------------------------private function createAmoeba()--------------------------------------------------------*/{//create an object of our ship from the Ship classplayerAmoeba = new Amoeba;playerAmoeba.CreateAmoeba(stage);//add it to the display liststage.addChild(playerAmoeba);playerAmoeba.x = (mapMetadata.Player.StartPosition.x) * tileSize; //stage.stageWidth / 2;playerAmoeba.y = (mapMetadata.Player.StartPosition.y) * tileSize; //stage.stageHeight / 2;}private function RunfGameOver()private function createGoal(){}{//create an object of our ship from the Ship classplayerGoal = new Goal(stage);//add it to the display liststage.addChild(playerGoal);playerGoal.x = (mapMetadata.Goal.x) * tileSize; //stage.stageWidth / 2;playerGoal.y = (mapMetadata.Goal.y) * tileSize; //stage.stageHeight / 2;}{-------------------------------------------------------------------------------------------------------------------------- Misc Functions -----Pause Frame..............------..................------..............// Code called each time a frame changes.private function RunfPause()public function ExitFrame(e:Event){{trace("Phagocitosis: Changing frame");if(firstLoop) InitfPause();firstLoop = true;if (pressedkey.isDown(Keyboard.ENTER)){ExitfPause();gotoAndStop("fPlay");}private function InitfPause()public function InitfPlay(){{trace("Phagocitosis: Init Stage 1");trace("Phagocitosis: Init fPause");PausedMenuButton.addEventListener(MouseEvent.CLICK, FromfPauseGotofMenu);createAmoeba();pressedkey= new KeyObject(stage);public function ExitfPlay()private function ExitfPause(){{trace("Phagocitosis: Exit Stage 1");playerAmoeba.removeSelf();trace("Phagocitosis: Exit fPause");gotoAndStop("fMenu");public function FromfPauseGotofMenu(event: MouseEvent)private function createAmoeba(){{//create an object of our ship from the Ship classExitfPause();playerAmoeba = new Amoeba(stage);gotoAndStop("fMenu");//add it to the display liststage.addChild(playerAmoeba);playerAmoeba.x = stage.stageWidth / 2;playerAmoeba.y = stage.stageHeight / 2;}}/*package Scripts{// Imports needed for variables and so on. Senocular is a keypress lib.import flash.display.MovieClip;import flash.display.Stage;import flash.events.Event;import flash.ui.Mouse;import flash.events.MouseEvent;import com.senocular.utils.KeyObject;import flash.ui.Keyboard;// Game class, a Movieclip.public class PhagocitosisGame extends MovieClip{// Class variablesprivate var pressedkey:KeyObject;private var firstLoop:Boolean = true;var playerAmoeba:Amoeba;// Constructor, called once when the game is started.public function PhagocitosisGame(){trace("Phagocitosis: Constructor");// Checking if we enter a frame, or exit itaddEventListener(Event.ENTER_FRAME, GameLoop, false, 0, true);stop();}// Main game loop/* -------------------------------------------------------public function GameLoop(e:Event)----------------------------------------------------------Game Over Frame------------------------------------------------------------------------------------------------------------------*/private function RunfGameOver(){{// Label to keep track of current Frame.if(firstLoop) InitfGameOver();Label1.text = "Debug: " + currentLabel;if (pressedkey.isDown(Keyboard.ENTER))// Code whilst in the menuif(currentLabel == "fMenu"){{if(firstLoop) InitStage0();trace("Clickiy");ExitfGameOver();gotoAndStop("fPlay");// Code whilst in the Stage 1if(currentLabel == "fPlay"){if(firstLoop) InitfPlay();if (pressedkey.isDown(Keyboard.ESCAPE)){ExitfPlay();}}// Code called each time a frame changes.private function InitfGameOver()public function ExitFrame(e:Event){{trace("Phagocitosis: Changing frame");trace("Phagocitosis: Init fGameOver");GameOverMenuButton.addEventListener(MouseEvent.CLICK, FromfGameOverGotofMenu);firstLoop = false;stop();}private function ExitfGameOver(){trace("Phagocitosis: Exit fGameOver");public function InitStage0()public function FromfGameOverGotofMenu(event: MouseEvent){{trace("Phagocitosis: Init Stage 0");ExitfGameOver();pbutton.addEventListener(MouseEvent.CLICK, ButtonFunctionPlayGame);gotoAndStop("fMenu");firstLoop = false;public function ExitStage0()/* -----------------------------------------------------------------------------------------------------------------GameWon Frame------------------------------------------------------------------------------------------------------------------*/private function RunfGameWon(){{trace("Phagocitosis: Exit Stage 0");if(firstLoop) InitfGameWon();firstLoop = true;gotoAndPlay("fPlay");public function InitfPlay()private function InitfGameWon(){{trace("Phagocitosis: Init Stage 1");trace("Phagocitosis: Init fGameWon");GameWonMenuButton.addEventListener(MouseEvent.CLICK, FromfGameWonGotofMenu);createAmoeba();pressedkey= new KeyObject(stage);public function ExitfPlay()private function ExitfGameWon(){{trace("Phagocitosis: Exit Stage 1");playerAmoeba.removeSelf();trace("Phagocitosis: Exit fGameWon");gotoAndStop("fMenu");public function ButtonFunctionPlayGame(event: MouseEvent)public function FromfGameWonGotofMenu(event: MouseEvent){{ExitStage0();ExitfGameWon();gotoAndStop("fMenu");private function createAmoeba()/* ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Misc Functions -----..............------..................------..............------------------------------------------------------------------------------------------------------------------*/// Code called each time a frame changes.public function ExitFrame(e:Event){{//create an object of our ship from the Ship classtrace("Phagocitosis: Changing frame");playerAmoeba = new Amoeba(stage);firstLoop = true;//add it to the display list}stage.addChild(playerAmoeba);playerAmoeba.x = stage.stageWidth / 2;playerAmoeba.y = stage.stageHeight / 2;}*/