2192 AllInactive:= false; |
2192 AllInactive:= false; |
2193 HHGear:=PHedgehog(Gear^.Hedgehog)^.Gear; |
2193 HHGear:=PHedgehog(Gear^.Hedgehog)^.Gear; |
2194 //dec(Gear^.Timer); |
2194 //dec(Gear^.Timer); |
2195 move:= _0_2; |
2195 move:= _0_2; |
2196 fuel:= 50; |
2196 fuel:= 50; |
2197 if (HHGear^.Message and gm_Precise) <> 0 then |
2197 (*if (HHGear^.Message and gm_Precise) <> 0 then |
2198 begin |
2198 begin |
2199 move:= _0_02; |
2199 move:= _0_02; |
2200 fuel:= 5; |
2200 fuel:= 5; |
2201 end; |
2201 end;*) |
2202 if (HHGear^.Message and gm_Left) <> 0 then move.isNegative:= true; |
2202 if (HHGear^.Message and gm_Left) <> 0 then move.isNegative:= true; |
2203 |
2203 |
2204 if (HHGear^.Message and gm_Up) <> 0 then |
2204 if (HHGear^.Message and gm_Up) <> 0 then |
2205 begin |
2205 begin |
2206 HHGear^.dY:= HHGear^.dY - move; |
2206 HHGear^.dY:= HHGear^.dY - move; |
2207 dec(Gear^.Health, fuel) |
2207 dec(Gear^.Health, fuel); |
|
2208 Gear^.MsgParam:= Gear^.MsgParam or gm_Up; |
|
2209 Gear^.Timer:= GameTicks |
2208 end; |
2210 end; |
2209 if (HHGear^.Message and (gm_Left or gm_Right)) <> 0 then |
2211 if (HHGear^.Message and (gm_Left or gm_Right)) <> 0 then |
2210 begin |
2212 begin |
2211 HHGear^.dX:= HHGear^.dX + (move * _0_2); |
2213 HHGear^.dX:= HHGear^.dX + (move * _0_2); |
2212 dec(Gear^.Health, fuel div 5) |
2214 dec(Gear^.Health, fuel div 5); |
|
2215 Gear^.MsgParam:= Gear^.MsgParam or (HHGear^.Message and (gm_Left or gm_Right)); |
|
2216 Gear^.Timer:= GameTicks |
2213 end; |
2217 end; |
|
2218 |
|
2219 // erases 'em all at once :-/ |
|
2220 if (Gear^.Timer <> 0) and (GameTicks - Gear^.Timer > 250) then |
|
2221 begin |
|
2222 Gear^.Timer:= 0; |
|
2223 Gear^.MsgParam:= 0 |
|
2224 end; |
|
2225 |
2214 if Gear^.Health < 0 then Gear^.Health:= 0; |
2226 if Gear^.Health < 0 then Gear^.Health:= 0; |
2215 if (GameTicks and $3F) = 0 then AddCaption('Fuel: '+inttostr(round(Gear^.Health/20))+'%', $FFFFFF, capgrpAmmostate); |
2227 if (GameTicks and $3F) = 0 then AddCaption('Fuel: '+inttostr(round(Gear^.Health/20))+'%', $FFFFFF, capgrpAmmostate); |
2216 |
2228 |
2217 //AddCaption(inttostr(round(Gear^.Health/20))+'% : '+inttostr(round(Gear^.Timer/1000)), $FFFFFF, capgrpMessage); |
2229 //AddCaption(inttostr(round(Gear^.Health/20))+'% : '+inttostr(round(Gear^.Timer/1000)), $FFFFFF, capgrpMessage); |
2218 |
2230 |