Merge pull request #145 from pansythoughts/main
kind of fixed how game_speed behaves
This commit is contained in:
@@ -102,4 +102,7 @@ int get_num_discards_remaining(void);
|
|||||||
int get_num_hands_remaining(void);
|
int get_num_hands_remaining(void);
|
||||||
int get_money(void);
|
int get_money(void);
|
||||||
|
|
||||||
|
int get_game_speed(void);
|
||||||
|
void set_game_speed(int new_game_speed);
|
||||||
|
|
||||||
#endif // GAME_H
|
#endif // GAME_H
|
||||||
|
|||||||
+13
-3
@@ -63,7 +63,7 @@ typedef enum
|
|||||||
static uint rng_seed = 0;
|
static uint rng_seed = 0;
|
||||||
|
|
||||||
static uint timer = 0; // This might already exist in libtonc but idk so i'm just making my own
|
static uint timer = 0; // This might already exist in libtonc but idk so i'm just making my own
|
||||||
static int game_speed = 1;
|
static int game_speed = 1; // BY DEFAULT IS SET TO 1, but if changed to 2 or more, should speed up all (or most) of the game aspects that should be sped up by speed, as in the original game.
|
||||||
static int background = 0;
|
static int background = 0;
|
||||||
|
|
||||||
static enum GameState game_state = GAME_SPLASH_SCREEN; // The current game state, this is used to determine what the game is doing at any given time
|
static enum GameState game_state = GAME_SPLASH_SCREEN; // The current game state, this is used to determine what the game is doing at any given time
|
||||||
@@ -235,6 +235,16 @@ int get_num_hands_remaining(void)
|
|||||||
{
|
{
|
||||||
return hands;
|
return hands;
|
||||||
}
|
}
|
||||||
|
int get_game_speed(void)
|
||||||
|
{
|
||||||
|
return game_speed;
|
||||||
|
}
|
||||||
|
|
||||||
|
// for the future when a menu actually lets this variable be changed.
|
||||||
|
void set_game_speed(int new_game_speed)
|
||||||
|
{
|
||||||
|
game_speed = new_game_speed;
|
||||||
|
}
|
||||||
|
|
||||||
int get_money(void)
|
int get_money(void)
|
||||||
{
|
{
|
||||||
@@ -1441,8 +1451,8 @@ static void game_playing_process_input_and_state()
|
|||||||
}
|
}
|
||||||
else if (play_state == PLAY_ENDED)
|
else if (play_state == PLAY_ENDED)
|
||||||
{
|
{
|
||||||
lerped_temp_score -= int2fx(temp_score) / 40;
|
lerped_temp_score -= int2fx(temp_score * get_game_speed())/ 40;
|
||||||
lerped_score += int2fx(temp_score) / 40;
|
lerped_score += int2fx(temp_score * get_game_speed()) / 40;
|
||||||
|
|
||||||
if (lerped_temp_score > 0)
|
if (lerped_temp_score > 0)
|
||||||
{
|
{
|
||||||
|
|||||||
+3
-2
@@ -1,3 +1,4 @@
|
|||||||
|
#include "game.h"
|
||||||
#include "sprite.h"
|
#include "sprite.h"
|
||||||
#include "util.h"
|
#include "util.h"
|
||||||
#include "audio_utils.h"
|
#include "audio_utils.h"
|
||||||
@@ -157,8 +158,8 @@ void sprite_object_reset_transform(SpriteObject* sprite_object)
|
|||||||
|
|
||||||
void sprite_object_update(SpriteObject* sprite_object)
|
void sprite_object_update(SpriteObject* sprite_object)
|
||||||
{
|
{
|
||||||
sprite_object->vx += (sprite_object->tx - sprite_object->x) / 8;
|
sprite_object->vx += ((sprite_object->tx - sprite_object->x) * get_game_speed()) / 8;
|
||||||
sprite_object->vy += (sprite_object->ty - sprite_object->y) / 8;
|
sprite_object->vy += ((sprite_object->ty - sprite_object->y) * get_game_speed()) / 8;
|
||||||
|
|
||||||
sprite_object->vscale += (sprite_object->tscale - sprite_object->scale) / 8; // Scale up the card when it's played
|
sprite_object->vscale += (sprite_object->tscale - sprite_object->scale) / 8; // Scale up the card when it's played
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user