Line | |
---|
1 | TileMap map = TileMap.FromLevelAsset("kenttä"); |
---|
2 | List<Vector> reitti = new List<Vector>(); |
---|
3 | |
---|
4 | map.SetTileMethod('1', TeeReitti); |
---|
5 | vihu.Tag = "1"; |
---|
6 | |
---|
7 | protected override void Update(Time time) { |
---|
8 | base.Update(time); |
---|
9 | |
---|
10 | Liiku(vihu); |
---|
11 | } |
---|
12 | |
---|
13 | void TeeReitti(Vector paikka, double x, double y) { |
---|
14 | |
---|
15 | for(int i = 0; i < map.ColumnCount; i++) { |
---|
16 | |
---|
17 | for (int i2 = 0; i2 < map.RowCount; i2++) { |
---|
18 | |
---|
19 | switch (map.GetTile(i, i2)) { |
---|
20 | |
---|
21 | case '1': |
---|
22 | |
---|
23 | reitti.Insert(0, new Vector(i * 100 - 750, (i2 * 100 - 750) * -1)); |
---|
24 | break; |
---|
25 | case '2': |
---|
26 | |
---|
27 | reitti.Insert(1, new Vector(i * 100 - 750, (i2 * 100 - 750) * -1)); |
---|
28 | break; |
---|
29 | case '3': |
---|
30 | |
---|
31 | reitti.Insert(2, new Vector(i * 100 - 750, (i2 * 100 - 750) * -1)); |
---|
32 | break; |
---|
33 | case '4': |
---|
34 | |
---|
35 | reitti.Insert(3, new Vector(i * 100 - 750, (i2 * 100 - 750) * -1)); |
---|
36 | break; |
---|
37 | default: |
---|
38 | break; |
---|
39 | } |
---|
40 | } |
---|
41 | } |
---|
42 | } |
---|
43 | |
---|
44 | void Liiku(PhysicsObject obj) { |
---|
45 | |
---|
46 | if (pelaaja.Position.X > -600 & pelaaja.Position.X < 600 & pelaaja.Position.Y > -600 & pelaaja.Position.Y < 600) { |
---|
47 | |
---|
48 | |
---|
49 | } else { |
---|
50 | |
---|
51 | if (obj.Position == reitti[(int)obj.Tag]) { |
---|
52 | |
---|
53 | if (reitti.Count != (int)obj.Tag) obj.Tag = (int)obj.Tag + 1; |
---|
54 | else obj.Tag = 0; |
---|
55 | } |
---|
56 | |
---|
57 | Vector hit = reitti[(int)obj.Tag]; |
---|
58 | obj.Hit(hit); |
---|
59 | } |
---|
60 | } |
---|
Note: See
TracBrowser
for help on using the repository browser.