feat(player): reworked some of the player's animation code
This commit is contained in:
parent
dd0af050c9
commit
1d18873f4b
|
@ -1,14 +1,12 @@
|
|||
#ifndef TOPDOWN_PLAYER_H
|
||||
#define TOPDOWN_PLAYER_H
|
||||
#define TOPDOWN_PLAYER_H
|
||||
|
||||
#include "sprite.h"
|
||||
#include "spritesheet.h"
|
||||
#include "sprite_entity.h"
|
||||
#include "drop.h"
|
||||
#include "animation_sprite.h"
|
||||
#include "behaviour_entity.h"
|
||||
#include "drop.h"
|
||||
#include "player_input.h"
|
||||
#include "state_machine.h"
|
||||
#include "transformable.h"
|
||||
#include "player_input.h"
|
||||
|
||||
typedef struct Player {
|
||||
Transform transform;
|
||||
|
@ -19,14 +17,11 @@ typedef struct Player {
|
|||
unsigned short faceDirection;
|
||||
|
||||
StateMachine* animationStateMachine;
|
||||
size_t animFrame;
|
||||
float animFrameTimer;
|
||||
float animFrameInterval;
|
||||
|
||||
Spritesheet* walk;
|
||||
Spritesheet* stand;
|
||||
|
||||
Sprite* sprite;
|
||||
AnimationSprite* idle;
|
||||
AnimationSprite* walk;
|
||||
|
||||
AnimationSprite* current_anim;
|
||||
} Player;
|
||||
|
||||
extern Player* MakePlayer();
|
||||
|
@ -40,30 +35,21 @@ extern void PlayerDraw(Player* self);
|
|||
extern void PlayerInputHorizontal(Player* self, InputEvent event);
|
||||
extern void PlayerInputVertical(Player* self, InputEvent event);
|
||||
|
||||
extern Sprite* PlayerGetSprite(Player* self);
|
||||
extern Transform* PlayerGetTransform(Player* self);
|
||||
|
||||
impl_Drop_for(Player,
|
||||
PlayerDestroy
|
||||
)
|
||||
PlayerDestroy)
|
||||
|
||||
impl_Transformable_for(Player,
|
||||
PlayerGetTransform
|
||||
)
|
||||
impl_Transformable_for(Player,
|
||||
PlayerGetTransform)
|
||||
|
||||
impl_BehaviourEntity_for(Player,
|
||||
PlayerStart,
|
||||
PlayerUpdate,
|
||||
SpawnPlayer,
|
||||
PlayerDraw
|
||||
)
|
||||
impl_BehaviourEntity_for(Player,
|
||||
PlayerStart,
|
||||
PlayerUpdate,
|
||||
SpawnPlayer,
|
||||
PlayerDraw)
|
||||
|
||||
impl_SpriteEntity_for(Player,
|
||||
PlayerGetSprite
|
||||
)
|
||||
|
||||
extern const State* PlayerAnimationUpdate(Player* player, float deltaTime);
|
||||
extern void PlayerAnimationExit(Player* player);
|
||||
extern void PlayerAnimationExit(Player* player);
|
||||
|
||||
extern void PlayerIdleEnter(Player* player);
|
||||
extern const State* PlayerIdleUpdate(Player* player, float deltaTime);
|
||||
|
@ -71,7 +57,6 @@ extern const State* PlayerIdleUpdate(Player* player, float deltaTime);
|
|||
DefineState(PlayerIdle, Player,
|
||||
PlayerIdleEnter,
|
||||
PlayerAnimationExit,
|
||||
PlayerIdleUpdate
|
||||
)
|
||||
PlayerIdleUpdate)
|
||||
|
||||
#endif // !TOPDOWN_PLAYER_H
|
||||
|
|
Loading…
Reference in a new issue