Although the battles are on one map, they are far enough apart that enemies from one battle cannot bleed over into another. (They're about as far away as the battles in that long hallway in Magus's Castle.)
Each battle is against two Bashers. The Bashers can't move anywhere until the battle starts.
Each enemy looks like this:
Startup / Idle
* LoadEnemy({F5}Basher, (slot number), Normal)
* Animation(Normal, 01, 00)
* Return
* End
Activate
* CallObjFunc(Obj(slot number), Arbitrary0, 00, cont)
* Return
* End
Touch
* CallObjFunc(Obj(slot number), Arbitrary0, 00, cont)
* Return
* End
There are three Object Functions that get called, one for each battle. Each called function is the Arbitrary0 of the first Basher in the battle.
The functions being called all look like this:
Arbitrary0
* ExploreMode Off
* Textbox(Auto, "It's the rebels!{null}")
* MoveParty(different for each battle; this command appears to execute properly)
* Battle(00, 40)
* DrawStatus(Remove Obj(first enemy's slot)
* DrawStatus(Remove Obj(second enemy's slot)
* ExploreMode On
* Return
And then for the battle setup, every variable is set to False except for Map Music.
This has got to be an error on my part, I'm just not seeing it.