I guess I don't have the specific answer to your individual problems, but I think the problem lies in your system anyways. You need to look up a little bit of what a state machine is. I'd actually recommend pulling out some paper and a pencil and draw a flow chart for how your battle system should work. Take things like speed (attack order), secondary attacks, multi-turn attacks, and specials into account.
So it should start with if the battle is one or off, of course. Please don't use booleans for this, though. Use numbers to increase your flexibility (like if you want global changes later).
Battle = 1.
Then you need to decide whose turn is next. If you're using an ATB (active time battle) system then you would let players choose attacks once their bar is full (a state) then add them to a queue (probably an array) of attacks. If you're doing it true turn-based, then skip the ready bar and put everybody in an attack order/ready queue. If you're doing it speed-based, re-order the list by player speed every turn (in case you use abilities that increase or decrease speed). I don't know if you're doing all the good guys go and then all the enemies go or if it's more organic, but if you're doing it one side then then the other, use two lists and a state to switch between them.
Then, you can use the coordinates in your list to decide clearly mark who is attacking and who is not. You should have something like 'is attacking" for all of your players and turn that off at the end of a character's turn. When their turn is started (probably called with a function), turn their attacking condition on so you can do necessary UI changes and then each attack is a function. The parameters should be the target, damage, modifiers, etc. You should also include which character is performing the function/attack so you can use the same code for multiple characters.
It's really complex, but plan it all out on paper exactly how things will work, keeping functions, arrays, possibly the dictionary object all in mind. Then, it's much easier to wrap your head around how to set up your state machine so it can run itself based on your values in battles.