Initial commit

This commit is contained in:
2026-02-28 14:00:45 -06:00
commit 16d3170787
1134 changed files with 589134 additions and 0 deletions

View File

@@ -0,0 +1,100 @@
--/////////////////////////////////////////////////////////////////////////////////////////////////
-- (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/BuildRefinerySpace.LUA
--
-- Original Editor: Giovanni Galyana
--
-- Final Edit By: Giovanni Galyana
--
-- Date: 2 October, 2022
--
-- Revisions: 2
--
--/////////////////////////////////////////////////////////////////////////////////////////////////
require("pgevents")
function Definitions()
Category = "Build_Refinery_Space"
IgnoreTarget = true
TaskForce = {
{
"MainForce"
,"UC_Empire_Mineral_Extractor | UC_Rebel_Mineral_Extractor_Armored | UC_Hutt_Mineral_Extractor | UC_Underworld_Mineral_Extractor | UC_Pirate_Mineral_Extractor = 1"
}
}
-- RequiredCategories = {"Structure"}
AllowFreeStoreUnits = false
good_pad = nil
pad = nil
refinery = nil
end
function MainForce_Thread()
-- Make sure we use a build pad that's not too near to the enemy base
nearby_pad_list = MainForce.Get_Reserved_Build_Pads()
for i, pad in pairs(nearby_pad_list) do
if EvaluatePerception("Distance_To_Nearest_Enemy_Starbase", PlayerObject, pad) > 2000 then
good_pad = pad
break
end
end
if good_pad then
faction_name = PlayerObject.Get_Faction_Name()
if faction_name == "EMPIRE" then
MainForce.Build("UC_Empire_Mineral_Extractor", good_pad)
elseif faction_name == "REBEL" then
MainForce.Build("UC_Rebel_Mineral_Extractor_Armored", good_pad)
elseif faction_name == "PIRATES" then
MainForce.Build("UC_Pirate_Mineral_Extractor", good_pad)
elseif faction_name == "HUTTS" then
MainForce.Build("UC_Hutt_Mineral_Extractor", good_pad)
elseif faction_name == "UNDERWORLD" then
MainForce.Build("UC_Underworld_Mineral_Extractor", good_pad)
else
MessageBox("unexpected faction name: %s", faction_name)
end
-- Make sure we track the results
MainForce.Set_As_Goal_System_Removable(false)
-- If it survives X seconds, consider it a successful plan
Sleep(30)
if TestValid(good_pad) then
refinery = good_pad.Get_Build_Pad_Contents()
if TestValid(refinery) then
MainForce.Set_Plan_Result(true)
end
end
else
-- This plan/target sucks. Pause for a moment, then release the allocated cash.
Sleep(5)
end
ScriptExit()
end