29 lines
738 B
C
29 lines
738 B
C
/* SPDX-License-Identifier: MIT
|
|
* Copyright (c) 2021 KikooDX
|
|
* This file is part of
|
|
* [Painfull Success CG](https://git.sr.ht/~kikoodx/painfull-success-cg),
|
|
* which is MIT licensed. The MIT license requires this copyright notice to be
|
|
* included in all copies and substantial portions of the software. */
|
|
#pragma once
|
|
#include <stdint.h>
|
|
#include <stdbool.h>
|
|
#include "vec2.h"
|
|
#include "level.h"
|
|
|
|
typedef struct Player{
|
|
Vec2 pos;
|
|
Vec2 spd;
|
|
int8_t facing;
|
|
bool stun;
|
|
bool knocked;
|
|
uint8_t keys_left;
|
|
uint8_t jump_buffer;
|
|
uint8_t coyot;
|
|
} Player;
|
|
|
|
Player player_init();
|
|
void player_update(Player *player, Level *level, uint8_t *level_id);
|
|
void player_draw(Player player);
|
|
/* Helper functions. */
|
|
int8_t sign(vec2_int_t value);
|