Code: Select all
--[[
Task Queues!
]]--
math.randomseed( os.time() )
math.random(); math.random(); math.random()
function CoreWindSolar()
if game:AverageWind() > 10 then
return "corwin"
else
return "corsolar"
end
end
function randomLab()
local r = math.random(0,2)
if r == 0 then
return "corlab"
elseif r == 1 then
return "corvp"
else
return "corap"
end
end
local corecommanderlist = {
CoreWindSolar,
"cormex",
CoreWindSolar,
"cormex",
"cormex",
randomLab,
"corllt",
"corrad",
CoreWindSolar,
CoreWindSolar,
"cormex",
"cormex",
"corllt",
CoreWindSolar,
}
local coreconstructionkbot = {
CoreWindSolar,
"cormex",
CoreWindSolar,
"cormex",
"cormex",
"corllt",
"corrad",
CoreWindSolar,
CoreWindSolar,
CoreWindSolar,
CoreWindSolar,
CoreWindSolar,
"cormex",
"cormex",
"cormex",
"corllt",
CoreWindSolar,
}
local armcommander = {
"armsolar",
"armmex",
"armsolar",
"armmex",
"armmex",
"armsolar",
"armlab",
"armsolar",
"armsolar",
"armfus",
"armmex",
"armsolar",
"armmex",
"armlab",
"armrad",
"armfus",
"arm2kbot",
"armfus",
"arm2kbot",
"arm2kbot",
"armlvl2",
}
local armconstructionkbot = {
"armmex",
"armsolar",
"armmex",
"armsolar",
"armmex",
{ action="wait",frames=640},
"armnanotc",
"armrad",
"armsolar",
"armmex",
"armsolar",
"armmex",
"armmex",
"armnanotc",
"armrad",
"armsolar",
}
local armckbot = {
"armmex",
"armnanotc",
"armrad",
"armmex",
"armnanotc",
"armmex",
"armnanotc",
"armmex",
"armnanotc",
"armmex",
"armnanotc",
"armmex",
"armnanotc",
"armmex",
"armnanotc",
}
local corekbotlab = {
"corck",
"corck",
"corck",
"corak",
"corak",
"corak",
"corak",
"corak",
"corak",
"corak",
"corak",
"corak",
"corak",
"corak",
"corak",
"corak",
"corak",
"corak",
"corak",
}
local armkbotlab = {
"armfark",
"armjeth",
"armham",
"armpw",
"armham",
"armrock",
"armpw",
"armrock",
"armpw",
"armjeth",
"armpw",
"armfast",
"armpw",
"armsnipe",
"armpw",
"armzeus",
"armzeus",
"armzeus",
"armfast",
"armpw",
"armsnipe",
"armpw",
"armzeus",
"armpw",
"armham",
"armrock",
"armpw",
"armfast",
"armpw",
"armsnipe",
"armpw",
"armzeus",
"armpw",
"armham",
"armrock",
"armpw",
}
local newarmkbotlab = {
"armfast",
"armpw",
"armsnipe",
"armpw",
"armzeus",
"armpw",
"armham",
"armrock",
"armpw",
}
local armnano = {
"armmakr",
"armmakr",
"armmakr",
"armfus",
"armrl",
"armflak",
"armlab",
"armguard",
"armmakr",
"armfus",
"armmakr",
"armmakr",
"armhlt",
"armfus",
"armmakr",
"armmakr",
"armfus",
"armmakr",
"armmakr",
"armlvl2",
}
local armlvl2kabot = {
"armllt",
"armalab",
"armmfus",
"armmmkr",
"armmfus",
"armmmkr",
"armalab",
"armguard",
"armrad",
"armmmkr",
"armmfus",
"armmmkr",
"armmfus",
"armmmkr",
"armmfus",
"armmmkr",
}
local armaKbotlaboratory = {
"armdrone",
"armdrone",
"armfido",
"armfido",
"armdrone",
"raptoriv",
"raptoriv",
"armodd",
"armdrone",
"armdrone",
"armfido",
"armfido",
"armdrone",
"raptoriv",
"raptoriv",
"armodd",
"armfido",
"armfido",
"armdrone",
"raptoriv",
"raptoriv",
"armodd",
"armfido",
"armfido",
"armdrone",
"raptoriv",
"raptoriv",
"armodd",
}
local armT3 = {
"armmfus",
"armhklab",
"armhklab",
"armmmkr",
"armmfus",
"armmmkr",
"armbrtha",
"armhklab",
"armmmkr",
"armmfus",
"armmmkr",
"armmfus",
"armbrtha",
"armmfus",
"armmfus",
"armmfus",
"armmfus",
"armhklab",
}
local armpodlab = {
"armpod",
}
local function armckb()
if ai.kbotfirst == true then
if math.random(0,5) == 0 then
return armconstructionkbot
else
return armckbot
end
else
ai.kbotfirst = true
return armconstructionkbot
end
end
local function armkbotlabu()
if ai.kbotlabfirst == true then
if math.random(0,5) == 0 then
return armkbotlab
else
return newarmkbotlab
end
else
ai.kbotlabfirst = true
return armkbotlab
end
end
taskqueues = {
-- unittype = tasklist,
corcom = corecommanderlist,
-- we can assign 1 list, to multiple unit types, here a construction kbot (corck) gets the construction kbot tasklist, but then we assign it to the construction vehicle too (corcv))
corck = coreconstructionkbot,
corcv = coreconstructionkbot,
armcom = armcommander,
armbase = armcommander,
armfark = armckb,
corlab = corekbotlab,
armlab = armkbotlabu,
armnanotc = armnano,
arm2kbot = armlvl2kabot,
armalab = armaKbotlaboratory,
armlvl2 = armT3,
armhklab = armpodlab
}
--[[
Attackers!
]]--
attackerlist = {
"corak",
"armpw",
"armjeth",
"armodd",
"armdrone",
"armfido",
"armfast",
"armrock",
"armraz",
"armzeus",
"armsnipe",
"raptoriv",
"corgator",
"corthud",
"corkrog",
"armham",
"armpod",
"corraid",
}