Good start, but I think you're thinking too closely to the existing variables we have now ... remember the flow ...
[PageA] --> [Battle] --> [PageB]
The *end result* of the battle is (1) Variable Changes (2) Item Changes. Now, given this, we have really no limit to what Battles could be. Think more like how RPG games handle it. Here's a quick brainstorm from me ...
A Battle consists of:
-> one or more Enemeies each with one attack
-> one player with any number of attacks (this would be to simulate a multi-player party)
-> an option to Run (defined by a %, successPage, failurePage)
-> any number of Attack Types
-> survive destination page
-> perish destination page
Enemy would have:
-> any number of Attack Types (each with a given probability)
Player Attack Type
-> Could be restricted, like Links by Items/Variables (i.e. can't use sword attack if you dont have Sword)
See the lines I'm thinking of ... that's what Im thinking ...