--///////////////////////////////////////////////////////////////////////////////////////////////// -- (c) Galyana's Ultimate Empire at War Modifications -- -- ****** *** *** ************ *** *** -- * * * * * * * * -- * * * * * * * -- * * * * * * * -- * * * * * **** * * * -- * * * ****** * * * * -- * **** * * * * * * * *** * -- * * * * * * * * * * -- * * * * * * * * * * -- * * * * * * * ** * * * -- ****** ****** ************ **** ** ******* --///////////////////////////////////////////////////////////////////////////////////////////////// -- C O N F I D E N T I A L S O U R C E C O D E -- D O N O T D I S T R I B U T E --///////////////////////////////////////////////////////////////////////////////////////////////// -- -- File: GUEaW/Data/Scripts/AI/SpaceMode/GroundToSpaceDisable.LUA -- -- Original Editor: Giovanni Galyana -- -- Final Edit By: Giovanni Galyana -- -- Date: 28 April, 2020 -- -- Revisions: 1 -- --///////////////////////////////////////////////////////////////////////////////////////////////// -- Self-attachment script for the Ion Cannon, but currently a custom goal is the best tactic require("pgevents") function Definitions() DebugMessage("%s -- In Definitions", tostring(Script)) Category = "Ground_To_Space_Disable" IgnoreTarget = true TaskForce = { { "MainForce" ,"DenySpecialWeaponAttach" ,"DenyHeroAttach" ,"Ground_Ion_Cannon | Skirmish_Ion_Cannon = 1" } } DebugMessage("%s -- Done Definitions", tostring(Script)) end function MainForce_Thread() BlockOnCommand(MainForce.Produce_Force()) -- Keep firing at the bigger (and probably slowest) enemies -- Add some variance, so that we can spread the effect around -- AITarget = FindTarget(MainForce, "Needs_Ion_Shot", "Enemy_Unit", 0.8) -- DebugMessage("%s -- Found Target %s", tostring(Script), tostring(AITarget)) -- Just fire once, because the effect isn't that useful to hit the same target in rapid succession -- if TestValid(AITarget) then MainForce.Fire_Special_Weapon("Ground_Ion_Cannon", AITarget) -- else MainForce.Fire_Special_Weapon("Skirmish_Ion_Cannon", AITarget) -- end Sleep(5) ScriptExit() end function MainForce_Special_Weapon_Online(tf, special_weapon) if TestValid(AITarget) then special_weapon.Fire_Special_Weapon(AITarget, PlayerObject) else ScriptExit() end end