- Joined
- Sep 30, 2017
- Messages
- 113
I have a little problem here. Basically, I want Maroon Player to attack Purple Player. Both of them are computers. Whoever Maroon works well with, it builds and replaces units if they die but won't attack at all, purple attack maroon, but maroon always defend and never attack for somereason.
Also, can an AI attack two players? Like, send a wave in 4 minutes to player 1 and send another wave to player 2 after 5 minutes?
Also, can an AI attack two players? Like, send a wave in 4 minutes to player 1 and send another wave to player 2 after 5 minutes?
JASS:
//============================================================================
// Chapter05 -- Maroon player -- AI Script
//============================================================================
globals
player MuPurple = PlayerEx (4) //player 4 Purple
constant integer Peasant = 'h60C'
constant integer Swordsman = 'h601'
constant integer Bowman = 'n605'
constant integer Mage = 'h60X'
constant integer Catapult = 'o601'
constant integer Protector = 'h60Y'
constant integer Paladiness = 'H61I'
endglobals
function main takes nothing returns nothing
call CampaignAI('h60G',null) //House
call SetReplacements(1,1,1)
call GroupTimedLife(true)
call SetPeonsRepair(true)
call SetSlowChopping(true)
set campaign_wood_peons = 3
//Building Strategy
//Tier 1
call SetBuildUnitEx(7,7,7,Peasant) //Peasant
call SetBuildUnitEx(1,1,1,'h60I') //Barracks
call SetBuildUnitEx(2,2,2,'h60O') //Watch Tower
call SetBuildUnitEx(1,1,1,'h60P') //Guard Tower
call SetBuildUnitEx(1,1,1,'h60H') //Altar
call SetBuildUnitEx(1,1,1,'h60J') //Saw Mill
call SetBuildUnitEx(1,1,1,'h60K') //Blacksmith
call SetBuildUnitEx(11,11,11,'h60G') //House
//Tier 2
call SetBuildUnitEx(1,1,1,'h60L') //Siege Workshop
call SetBuildUnitEx(1,1,1,'h610') //Tower of Sorceries
call SetBuildUnitEx(1,1,1,'h60E') //Stronghold
//Build Units
call SetBuildUnitEx(5,5,5,Swordsman) //Swordsman
call SetBuildUnitEx(3,3,3,Bowman) //Bishop
call SetBuildUnitEx(3,3,3,Mage) //Mage
call SetBuildUnitEx(2,2,2,Protector) //Protector
call SetBuildUnitEx(1,1,1,Paladiness) //Paladiness
//Defenders Units
call CampaignDefenderEx(3,3,3,Swordsman) //Swordsman
call CampaignDefenderEx(2,2,2,Bowman) //Bowman
call CampaignDefenderEx(1,1,1,Protector) //Protector
call WaitForSignal()
//Attack Waves
//Wave 1
call InitAssaultGroup()
call CampaignAttackerEx(4,4,4,Swordsman)
call CampaignAttackerEx(3,3,3,Bowman)
call CampaignAttackerEx(2,2,2,Mage)
call SuicideOnPlayerEx(M3,M3,M3,MuPurple)
//Wave 2
call InitAssaultGroup()
call CampaignAttackerEx(4,4,4,Swordsman)
call CampaignAttackerEx(3,3,3,Bowman)
call CampaignAttackerEx(2,2,2,Protector)
call CampaignAttackerEx(1,1,1,Paladiness)
call CampaignAttackerEx(1,1,1,Catapult)
call SuicideOnPlayerEx(M4,M4,M4,MuPurple)
//Wave 3
call InitAssaultGroup()
call CampaignAttackerEx(5,5,5,Swordsman)
call CampaignAttackerEx(2,2,2,Protector)
call CampaignAttackerEx(2,2,2,Mage)
call CampaignAttackerEx(2,2,2,Paladiness)
call CampaignAttackerEx(1,1,1,Catapult)
call SuicideOnPlayerEx(M4,M4,M4,MuPurple)
loop
//Wave 5
call InitAssaultGroup()
call CampaignAttackerEx(4,4,4,Swordsman)
call CampaignAttackerEx(3,3,3,Bowman)
call CampaignAttackerEx(2,2,2,Mage)
call SuicideOnPlayerEx(M3,M3,M3,MuPurple)
//Wave 7
call InitAssaultGroup()
call CampaignAttackerEx(4,4,4,Swordsman)
call CampaignAttackerEx(3,3,3,Bowman)
call CampaignAttackerEx(2,2,2,Protector)
call CampaignAttackerEx(1,1,1,Paladiness)
call SuicideOnPlayerEx(M4,M4,M4,MuPurple)
//Wave 8
call InitAssaultGroup()
call CampaignAttackerEx(5,5,5,Swordsman)
call CampaignAttackerEx(2,2,2,Protector)
call CampaignAttackerEx(2,2,2,Mage)
call CampaignAttackerEx(2,2,2,Paladiness)
call CampaignAttackerEx(1,1,1,Catapult)
call SuicideOnPlayerEx(M5,M5,M5,MuPurple)
endloop
endfunction