hedgewars/uGearsList.pas
changeset 13851 f01798038c2e
parent 13850 4e4111a75256
child 13984 817dc8b67b0d
equal deleted inserted replaced
13850:4e4111a75256 13851:f01798038c2e
   103 (*         gtTardis *) , amTardis
   103 (*         gtTardis *) , amTardis
   104 (*         gtIceGun *) , amIceGun
   104 (*         gtIceGun *) , amIceGun
   105 (*        gtAddAmmo *) , amNothing
   105 (*        gtAddAmmo *) , amNothing
   106 (*  gtGenericFaller *) , amNothing
   106 (*  gtGenericFaller *) , amNothing
   107 (*          gtKnife *) , amKnife
   107 (*          gtKnife *) , amKnife
   108 (*           gtDuck *) , amDuck
   108 (*        gtCreeper *) , amCreeper
   109 (*        gtMinigun *) , amMinigun
   109 (*        gtMinigun *) , amMinigun
   110 (*  gtMinigunBullet *) , amMinigun
   110 (*  gtMinigunBullet *) , amMinigun
   111     );
   111     );
   112 
   112 
   113 
   113 
   265          gtHammer: if cDamageModifier > _1 then // scale it based on cDamageModifier?
   265          gtHammer: if cDamageModifier > _1 then // scale it based on cDamageModifier?
   266                          Gear^.Boom := 2
   266                          Gear^.Boom := 2
   267                     else Gear^.Boom := 3;
   267                     else Gear^.Boom := 3;
   268     gtPoisonCloud: Gear^.Boom := 20;
   268     gtPoisonCloud: Gear^.Boom := 20;
   269           gtKnife: Gear^.Boom := 40000; // arbitrary scaling factor since impact-based
   269           gtKnife: Gear^.Boom := 40000; // arbitrary scaling factor since impact-based
   270            gtDuck: Gear^.Boom := 100;
   270         gtCreeper: Gear^.Boom := 100;
   271     gtMinigunBullet: Gear^.Boom := 2;
   271     gtMinigunBullet: Gear^.Boom := 2;
   272     end;
   272     end;
   273 
   273 
   274 case Kind of
   274 case Kind of
   275      gtGrenade,
   275      gtGrenade,
   732       gtIceGun: begin
   732       gtIceGun: begin
   733                 gear^.Health:= 1000;
   733                 gear^.Health:= 1000;
   734                 gear^.Radius:= 8;
   734                 gear^.Radius:= 8;
   735                 gear^.Density:= _0;
   735                 gear^.Density:= _0;
   736                 end;
   736                 end;
   737         gtDuck: begin
   737      gtCreeper: begin
       
   738                 // TODO: Finish creeper initialization implementation
   738                 gear^.Radius:= cHHRadius;
   739                 gear^.Radius:= cHHRadius;
   739                 gear^.Elasticity:= _0_35;
   740                 gear^.Elasticity:= _0_35;
   740                 gear^.Friction:= _0_93;
   741                 gear^.Friction:= _0_93;
   741                 gear^.Density:= _5;
   742                 gear^.Density:= _5;
   742 
   743 
   743                 gear^.AdvBounce:= 1;
   744                 gear^.AdvBounce:= 1;
   744                 gear^.ImpactSound:= sndAirMineImpact;
   745                 gear^.ImpactSound:= sndAirMineImpact;
   745                 gear^.nImpactSounds:= 1;
   746                 gear^.nImpactSounds:= 1;
   746                 gear^.Health:= 30;
   747                 gear^.Health:= 30;
   747                 gear^.Radius:= 8;
   748                 gear^.Radius:= 8;
   748                 gear^.Angle:= 175; // Radius at which air bombs will start "seeking". $FFFFFFFF = unlimited. check is skipped.
   749                 gear^.Angle:= 175; // Radius at which it will start "seeking". $FFFFFFFF = unlimited. check is skipped.
   749                 gear^.Power:= cMaxWindSpeed.QWordValue div 2; // hwFloat converted. 1/2 g default. defines the "seek" speed when a gear is in range.
   750                 gear^.Power:= cMaxWindSpeed.QWordValue div 2; // hwFloat converted. 1/2 g default. defines the "seek" speed when a gear is in range.
   750                 gear^.Pos:= cMaxWindSpeed.QWordValue * 3 div 2; // air friction. slows it down when not hitting stuff
   751                 gear^.Pos:= cMaxWindSpeed.QWordValue * 3 div 2; // air friction. slows it down when not hitting stuff
   751                 if gear^.Timer = 0 then
   752                 if gear^.Timer = 0 then
   752                     gear^.Timer:= 5000;
   753                     gear^.Timer:= 5000;
   753                 gear^.WDTimer:= gear^.Timer
   754                 gear^.WDTimer:= gear^.Timer