hedgewars/uGearsHandlersMess.pas
changeset 14632 5132548cdb77
parent 14616 4638aa2ea8f2
child 14698 4a4ff2354b58
equal deleted inserted replaced
14631:92ebe33c5eb6 14632:5132548cdb77
  5679     HHGear: PGear;
  5679     HHGear: PGear;
  5680 begin
  5680 begin
  5681     HHGear := Gear^.Hedgehog^.Gear;
  5681     HHGear := Gear^.Hedgehog^.Gear;
  5682     HHGear^.Message := HHGear^.Message and (not (gmUp or gmDown or gmLeft or gmRight));
  5682     HHGear^.Message := HHGear^.Message and (not (gmUp or gmDown or gmLeft or gmRight));
  5683     HHGear^.State := HHGear^.State or gstNotKickable;
  5683     HHGear^.State := HHGear^.State or gstNotKickable;
  5684     Gear^.SoundChannel := LoopSound(sndFlamethrower);
  5684     (* NOTE: Flamethrower sound is supposed to start instantly (no fade in),
       
  5685     but this would cause the game volume to screw up because of a bug in SDL_mixer:
       
  5686     https://bugzilla.libsdl.org/show_bug.cgi?id=4205
       
  5687     As workaround, a tiny fade-in delay was added.
       
  5688     FIXME: Remove the fade-in delay argument when the SDL bug has been fixed. *)
       
  5689     Gear^.SoundChannel := LoopSound(sndFlamethrower, 20);
  5685     Gear^.doStep := @doStepFlamethrowerWork
  5690     Gear^.doStep := @doStepFlamethrowerWork
  5686 end;
  5691 end;
  5687 
  5692 
  5688 ////////////////////////////////////////////////////////////////////////////////
  5693 ////////////////////////////////////////////////////////////////////////////////
  5689 procedure doStepLandGunWork(Gear: PGear);
  5694 procedure doStepLandGunWork(Gear: PGear);