equal
deleted
inserted
replaced
32 var |
32 var |
33 HHGear: PGear; |
33 HHGear: PGear; |
34 tX: hwFloat; |
34 tX: hwFloat; |
35 begin |
35 begin |
36 HHGear := Gear^.Hedgehog^.Gear; |
36 HHGear := Gear^.Hedgehog^.Gear; |
|
37 if HHGear = nil then |
|
38 begin |
|
39 DeleteGear(Gear); |
|
40 exit() |
|
41 end; |
|
42 |
37 tX:= HHGear^.X; |
43 tX:= HHGear^.X; |
38 if WorldWrap(HHGear) and (WorldEdge = weWrap) and |
44 if WorldWrap(HHGear) and (WorldEdge = weWrap) and |
39 ((TestCollisionXwithGear(HHGear, 1) <> 0) or (TestCollisionXwithGear(HHGear, -1) <> 0)) then |
45 ((TestCollisionXwithGear(HHGear, 1) <> 0) or (TestCollisionXwithGear(HHGear, -1) <> 0)) then |
40 begin |
46 begin |
41 HHGear^.X:= tX; |
47 HHGear^.X:= tX; |
122 wrongSide: boolean; |
128 wrongSide: boolean; |
123 begin |
129 begin |
124 if GameTicks mod 4 <> 0 then exit; |
130 if GameTicks mod 4 <> 0 then exit; |
125 |
131 |
126 HHGear := Gear^.Hedgehog^.Gear; |
132 HHGear := Gear^.Hedgehog^.Gear; |
|
133 if HHGear = nil then |
|
134 begin |
|
135 DeleteGear(Gear); |
|
136 exit() |
|
137 end; |
127 |
138 |
128 tX:= HHGear^.X; |
139 tX:= HHGear^.X; |
129 if WorldWrap(HHGear) and (WorldEdge = weWrap) and |
140 if WorldWrap(HHGear) and (WorldEdge = weWrap) and |
130 ((TestCollisionXwithGear(HHGear, 1) <> 0) or (TestCollisionXwithGear(HHGear, -1) <> 0)) then |
141 ((TestCollisionXwithGear(HHGear, 1) <> 0) or (TestCollisionXwithGear(HHGear, -1) <> 0)) then |
131 begin |
142 begin |
412 Gear^.X := Gear^.X - Gear^.dX; |
423 Gear^.X := Gear^.X - Gear^.dX; |
413 Gear^.Y := Gear^.Y - Gear^.dY; |
424 Gear^.Y := Gear^.Y - Gear^.dY; |
414 Gear^.Elasticity := Gear^.Elasticity + _1; |
425 Gear^.Elasticity := Gear^.Elasticity + _1; |
415 |
426 |
416 HHGear := Gear^.Hedgehog^.Gear; |
427 HHGear := Gear^.Hedgehog^.Gear; |
|
428 if HHGear = nil then |
|
429 begin |
|
430 DeleteGear(Gear); |
|
431 exit() |
|
432 end; |
|
433 |
417 DeleteCI(HHGear); |
434 DeleteCI(HHGear); |
418 |
435 |
419 if (HHGear^.State and gstMoving) <> 0 then |
436 if (HHGear^.State and gstMoving) <> 0 then |
420 begin |
437 begin |
421 if TestCollisionXwithGear(HHGear, hwSign(HHGear^.dX)) <> 0 then |
438 if TestCollisionXwithGear(HHGear, hwSign(HHGear^.dX)) <> 0 then |