Yes, he's completely serious about banning a well-behaved, reasonable and awesome member of the community because he doesn't make a game.
I will have committed the gravest offense. Why don't you have a jelly-filled doughnut?
NOTHING beats a jelly-filled doughnut
how did I not respond to this? IT'S TRUE. They're more awesome than everyone here
combined.
'Body.as' is the parent of everything with 'WorldOfBodies.as' acting as puppetmaster.
There will be a great grid of numbers and things.
But where to save the grid?
Come back next episode to find out. I'm talking to myself. I still don't know. aaahhh
The official name for a full round of actions (you press a direction, everything else decides upon its action, go through all actions with priority) will be a
phase.
Enemies will 'co-operate' -- or ones that are friendly with one another will be, anyway -- and will not bump into one another. The slower or less lucky one will just choose a new action once its action has been confirmed
not possible!TIME TO FIGURE SPEED OUT FOR REALS
Your speed is always '1', but enemies' relative speeds change I think :x
0: ..X
1: X
2-: X ..X
2: X X
2+: X X
3-: X X ..X
3: X X X
3+: X X X
Okay, so, let's explain.
"..X" represents a half-move, meaning "2-" is more like "1.5" (and 0 is more like 0.5)
You make a move at the very end of the turn, then the player makes a decision, then the remainder of your move has priority over everything (because it really came from the previous turn!)
When you're able to make a move, you will animate? 'Standing still' will only be applicable for 0-speed enemies, though... hm
Anyway, I am going to code in five priorities of movement, to be carried out in this order:
the 'BEFORE' array [] (this is the only array that must be run through
backwards - that is, something with three items in this array will have two moves before something that has just one)
the 'PLAYER' array
the 'AFTER' array [] (each enemy's first move will go here; maybe their second too)
the 'SLOW' move (an enemy can only have one of these)
If the player moves slowly (for example, when pushing boxes!) then:
Each enemy goes through its BEFORE and AFTER moves.
Player pushes.
Each enemy goes through its BEFORE and AFTER moves
again.normal
B P A B P A
* ^ ^ *
slowed-player
B A P B A B A P B A
* ^ ^ ^ ^ *
transition
B P A B A P B A B P A
| |
Odd how if I go with this, 'before' moves have no extra weight to it.
I don't want 'after' to move more than 'before' in any given phase section (i.e. 'before' player or 'after' player's move)
Otherwise it'd be B-P-A-B-A, wait, that's fine!
transition
mov | push | mov
B P A B P A B A B P A
^ 2 ^ ^ ^ 4
REMINDER TO SELF:
I want all moves to occur at the same time, visually.
Before and after moves (i.e. interruptions) should all
make sense.It's going to be hard to simulate the whole thing beforehand though when I've got to account for block vanishing too! hm
I AM BEING TOO COMPLICATED I WILL PROBABLY ONLY HAVE THREE SPEEDSSLOW, NORMAL, FAST
PLAYER MOVES AT 'NORMAL' BY DEFAULT.
SLOW: half move
NORMAL: one move
FAST: two moves?
When the player pushes a block, all enemies are increased by a speed category. Nobody moves before the player, except for SLOW's half move.
(FAST upgrades to three moves, but they still all go
after the player does.)
OH GOD AND WHEN DOES LIGHT UPDATELight should probably be spread across both reasonable spaces for the whole pushing turn.