equal
deleted
inserted
replaced
189 |
189 |
190 procedure AddAmmo(var Hedgehog: THedgehog; ammo: TAmmoType; cnt: LongWord); |
190 procedure AddAmmo(var Hedgehog: THedgehog; ammo: TAmmoType; cnt: LongWord); |
191 var ammos: TAmmoCounts; |
191 var ammos: TAmmoCounts; |
192 slot, ami: LongInt; |
192 slot, ami: LongInt; |
193 hhammo: PHHAmmo; |
193 hhammo: PHHAmmo; |
|
194 CurWeapon: PAmmo; |
194 begin |
195 begin |
195 {$HINTS OFF} |
196 {$HINTS OFF} |
196 FillChar(ammos, sizeof(ammos), 0); |
197 FillChar(ammos, sizeof(ammos), 0); |
197 {$HINTS ON} |
198 {$HINTS ON} |
198 hhammo:= Hedgehog.Ammo; |
199 hhammo:= Hedgehog.Ammo; |
203 ammos[hhammo^[slot, ami].AmmoType]:= hhammo^[slot, ami].Count; |
204 ammos[hhammo^[slot, ami].AmmoType]:= hhammo^[slot, ami].Count; |
204 |
205 |
205 ammos[ammo]:= cnt; |
206 ammos[ammo]:= cnt; |
206 if ammos[ammo] > AMMO_INFINITE then ammos[ammo]:= AMMO_INFINITE; |
207 if ammos[ammo] > AMMO_INFINITE then ammos[ammo]:= AMMO_INFINITE; |
207 |
208 |
208 FillAmmoStore(hhammo, ammos) |
209 FillAmmoStore(hhammo, ammos); |
|
210 CurWeapon:= GetAmmoEntry(Hedgehog); |
|
211 with Hedgehog do |
|
212 begin |
|
213 with CurWeapon^ do |
|
214 if Count = 0 then |
|
215 begin |
|
216 PackAmmo(Ammo, Ammoz[AmmoType].Slot); |
|
217 CurAmmoType:= amNothing |
|
218 end |
|
219 end |
209 end; |
220 end; |
210 |
221 |
211 procedure PackAmmo(Ammo: PHHAmmo; Slot: LongInt); |
222 procedure PackAmmo(Ammo: PHHAmmo; Slot: LongInt); |
212 var ami: LongInt; |
223 var ami: LongInt; |
213 b: boolean; |
224 b: boolean; |