hedgewars/HHHandlers.inc
changeset 5991 c3b7064d9226
parent 5977 0b1bfdd95310
child 5995 647d52370ce9
child 6011 519f8a58c021
equal deleted inserted replaced
5990:578978418fe5 5991:c3b7064d9226
  1037         Gear^.Timer:= 0;
  1037         Gear^.Timer:= 0;
  1038         FollowGear:= Gear;
  1038         FollowGear:= Gear;
  1039         PrvInactive:= false;
  1039         PrvInactive:= false;
  1040         AllInactive:= false;
  1040         AllInactive:= false;
  1041 
  1041 
  1042         if not Gear^.Hedgehog^.Team^.hasGone then
  1042         if (Gear^.State and gstHHGone) = 0 then
  1043             begin
  1043             begin
  1044             Gear^.Hedgehog^.Effects[hePoisoned] := false;
  1044             Gear^.Hedgehog^.Effects[hePoisoned] := false;
  1045             if Gear^.Hedgehog^.Effects[heResurrectable] then begin
  1045             if Gear^.Hedgehog^.Effects[heResurrectable] then begin
  1046                 ResurrectHedgehog(Gear);
  1046                 ResurrectHedgehog(Gear);
  1047             end else 
  1047             end else 
  1052                 AddCaption(Format(GetEventString(eidDied), Gear^.Hedgehog^.Name), cWhiteColor, capgrpMessage);
  1052                 AddCaption(Format(GetEventString(eidDied), Gear^.Hedgehog^.Name), cWhiteColor, capgrpMessage);
  1053                 end;
  1053                 end;
  1054             end
  1054             end
  1055         else
  1055         else
  1056             begin
  1056             begin
  1057             Gear^.State:= (Gear^.State or gstHHGone) and not gstAnimation;
  1057             Gear^.State:= Gear^.State and not gstAnimation;
  1058             Gear^.doStep:= @doStepHedgehogGone;
  1058             Gear^.doStep:= @doStepHedgehogGone;
  1059 
       
  1060             with Gear^.Hedgehog^.Team^ do
       
  1061                 for i:= 0 to cMaxHHIndex do
       
  1062                     if Hedgehogs[i].GearHidden <> nil then
       
  1063                         begin
       
  1064                         RestoreHog(@Hedgehogs[i]);
       
  1065                         if Hedgehogs[i].Gear <> nil then 
       
  1066                             begin
       
  1067                             Hedgehogs[i].Gear^.State:= Gear^.State or gstHHGone;
       
  1068                             Hedgehogs[i].Gear^.doStep:= @doStepHedgehogGone
       
  1069                             end
       
  1070                         end;
       
  1071 
  1059 
  1072             // Gone message
  1060             // Gone message
  1073             AddCaption(Format(GetEventString(eidGone), Gear^.Hedgehog^.Name), cWhiteColor, capgrpMessage);
  1061             AddCaption(Format(GetEventString(eidGone), Gear^.Hedgehog^.Name), cWhiteColor, capgrpMessage);
  1074             end
  1062             end
  1075         end;
  1063         end;