|
|
| Line 1: |
Line 1: |
| BATTLE:
| |
| initialize battle & combatant vars
| |
| start timer
| |
|
| |
|
| MAIN LOOP:
| |
| blit bg & under-elements
| |
| blit combatants & main elements
| |
| draw displays & over-elements
| |
| FlipScreen()
| |
|
| |
| HANDLE EVENTS:
| |
| process turn queue (do action of who's up next)
| |
| process new events (if enemy's ready, have "AI" determine next action & add them to the queue; if **:player's ready, bring up menu & process menu action)
| |
| process constant events (update the readygauge, update the counter for any effects like glowing or death sentence, update the timer, etc)
| |
|
| |
| END HANDLE EVENTS
| |
|
| |
| HANDLE COMBATANTS:
| |
| process actions
| |
| process status changes
| |
|
| |
| END HANDLE COMBATANTS
| |
| check for battle end conditions
| |
| if conditions are not met, continue
| |
| else
| |
|
| |
| END MAIN LOOP
| |
| stop timer
| |
| resolve battle's end (give out spoils if won, else handle battle lost/game overs)
| |
| reset battle info (heal enemies, remove temporary statuses, reset timers, etc)
| |
|
| |
| END BATTLE
| |