# HG changeset patch # User koda # Date 1363714323 -3600 # Node ID 0d301409724081f06ef0fcc36e1cda62f960d8a0 # Parent c28fcd8ec13812da2c0c78ed637077752389e859 move RestoreHog from uGears to uTeams to break a circular dependency diff -r c28fcd8ec138 -r 0d3014097240 hedgewars/GSHandlers.inc --- a/hedgewars/GSHandlers.inc Tue Mar 19 18:02:06 2013 +0100 +++ b/hedgewars/GSHandlers.inc Tue Mar 19 18:32:03 2013 +0100 @@ -132,17 +132,6 @@ HH^.Gear:= nil end; -procedure RestoreHog(HH: PHedgehog); -begin - HH^.Gear:=HH^.GearHidden; - HH^.GearHidden:= nil; - InsertGearToList(HH^.Gear); - HH^.Gear^.State:= (HH^.Gear^.State and (not (gstHHDriven or gstInvisible or gstAttacking))) or gstAttacked; - AddGearCI(HH^.Gear); - HH^.Gear^.Active:= true; - ScriptCall('onHogRestore', HH^.Gear^.Uid) -end; - //////////////////////////////////////////////////////////////////////////////// procedure doStepDrowningGear(Gear: PGear); diff -r c28fcd8ec138 -r 0d3014097240 hedgewars/uGears.pas --- a/hedgewars/uGears.pas Tue Mar 19 18:02:06 2013 +0100 +++ b/hedgewars/uGears.pas Tue Mar 19 18:32:03 2013 +0100 @@ -42,7 +42,6 @@ function GetAmmo(Hedgehog: PHedgehog): TAmmoType; function GetUtility(Hedgehog: PHedgehog): TAmmoType; procedure HideHog(HH: PHedgehog); -procedure RestoreHog(HH: PHedgehog); procedure ProcessGears; procedure EndTurnCleanup; procedure SetAllToActive; diff -r c28fcd8ec138 -r 0d3014097240 hedgewars/uTeams.pas --- a/hedgewars/uTeams.pas Tue Mar 19 18:02:06 2013 +0100 +++ b/hedgewars/uTeams.pas Tue Mar 19 18:32:03 2013 +0100 @@ -20,8 +20,8 @@ unit uTeams; interface -uses uConsts, uInputHandler, uGears, uRandom, uFloat, uStats, uVisualGears, uCollisions, GLunit, - uSound, uStore, uTypes +uses uConsts, uInputHandler, uRandom, uFloat, uStats, uVisualGears, + uCollisions, GLunit, uSound, uStore, uTypes, uScript {$IFDEF USE_TOUCH_INTERFACE}, uWorld{$ENDIF}; @@ -34,6 +34,8 @@ procedure InitTeams; function TeamSize(p: PTeam): Longword; procedure RecountTeamHealth(team: PTeam); +procedure RestoreHog(HH: PHedgehog); + procedure RestoreTeamsFromSave; function CheckForWin: boolean; procedure TeamGoneEffect(var Team: TTeam); @@ -482,6 +484,17 @@ AddVisualGear(0, 0, vgtTeamHealthSorter) end; +procedure RestoreHog(HH: PHedgehog); +begin + HH^.Gear:=HH^.GearHidden; + HH^.GearHidden:= nil; + InsertGearToList(HH^.Gear); + HH^.Gear^.State:= (HH^.Gear^.State and (not (gstHHDriven or gstInvisible or gstAttacking))) or gstAttacked; + AddGearCI(HH^.Gear); + HH^.Gear^.Active:= true; + ScriptCall('onHogRestore', HH^.Gear^.Uid) +end; + procedure RestoreTeamsFromSave; var t: LongInt; begin