Talk:Petit Smash Bros/@comment-14304715-20131101063237

Going through the game's code, finding flaws and checking what can be upgraded as well as adding temporary additoinal support code for pokeballs, and a few other stuff.

So tonight I was able to add a bit more support code and get through debugging some.

The game as it stands doesn't function too differently but it's pretty close to overhaul time with these new plans I've revised the design to allow better functionality and a more strongly typed game engine.

Here's a look at my simplistic overview:

The game will work like this.

In steps:

Single Player.

Select Character.

Select amount of NPCS:

1 default.

Select NPC character (option for random)

LOAD NPC SPRITES

LOAD PLAYER SPRITES

LOAD NPC PALLETE

LOAD PLAYER PALLETE

Select Stage

LOAD STAGE TILEDATA

LOAD PALLETE STAGE DATA

Begin stage

Place Player sprite at spawn

Place NPC sprites at spawn

Begin countdown

3

2

1

GO!

repeat process :

Recieve player input

move player sprite

check player moves against current frame

can player do this? Y/N

Branch:

if frame animation of current move is over player can.

Jumping can't happen while punching but after punching a double jump.

Change frame using CHRSET of current player frame.

Handle enemies.

Place NPC at npc_X and NPC_Y

Cycle through each npc for this

RUN NPC AI

Go to item system.

Handle item sprites on screen::

Draw them.

Process their frame timer if frames

Check each item's collision with a player sprite.

Tell engine about events: player_knocked back, enemy_knocked back, etc.

Spawn new items if conditions are right.

Return from this.

Handle pokemon :: Go back

Handle sound effects and music that are put into the event cache.

Go back.

So I'll have to create an EVENTS system. So the engine needs to be matured. Perfect.

Engine_EVENTS

and each frame the engine will cycle through each newly generated event.

Events will also be given priorities, and the amount of frames in which

they are expected to be performed by (Event deadlines)

Events with only 1 frame or less remaining in them will be executed right away.

So we need, a more complex jumping system. Done. this weekend I can do it.