# HG changeset patch # User nemo # Date 1315531124 14400 # Node ID d071162d550debcfdaee55a8653766e89b9e200d # Parent ceb522b0f7d5e62e709cb89a0a0a9696d9fdece8 There. Push this back on to unc0rr. This effect can still desync, 'cause it always could, but at least now the two are linked w/o argument I think. diff -r ceb522b0f7d5 -r d071162d550d hedgewars/HHHandlers.inc --- a/hedgewars/HHHandlers.inc Fri Sep 09 03:04:15 2011 +0200 +++ b/hedgewars/HHHandlers.inc Thu Sep 08 21:18:44 2011 -0400 @@ -1012,7 +1012,7 @@ //////////////////////////////////////////////////////////////////////////////// procedure doStepHedgehogFree(Gear: PGear); -var prevState: Longword; +var prevState,i: Longword; begin prevState:= Gear^.State; @@ -1050,6 +1050,19 @@ begin Gear^.State:= Gear^.State or gstHHGone; Gear^.doStep:= @doStepHedgehogGone; + + with Gear^.Hedgehog^.Team^ do + for i:= 0 to cMaxHHIndex do + if Hedgehogs[i].GearHidden <> nil then + begin + RestoreHog(@Hedgehogs[i]); + if Hedgehogs[i].Gear <> nil then + begin + Gear^.State:= Gear^.State or gstHHGone; + Gear^.doStep:= @doStepHedgehogGone + end + end; + // Gone message AddCaption(Format(GetEventString(eidGone), Gear^.Hedgehog^.Name), cWhiteColor, capgrpMessage); end diff -r ceb522b0f7d5 -r d071162d550d hedgewars/uTeams.pas --- a/hedgewars/uTeams.pas Fri Sep 09 03:04:15 2011 +0200 +++ b/hedgewars/uTeams.pas Thu Sep 08 21:18:44 2011 -0400 @@ -529,9 +529,6 @@ with TeamsArray[t]^ do begin AddChatString('** '+ TeamName + ' is gone'); - for i:= 0 to cMaxHHIndex do - if Hedgehogs[i].GearHidden <> nil then - RestoreHog(@Hedgehogs[i]); hasGone:= true end;