[main.c+JTMM.g3a] The whole horizontal speed system now works. Also, ice

This commit is contained in:
KikooDX 2020-05-21 17:21:30 +02:00
parent f92fb66cd8
commit c63cd15cc5
3 changed files with 9 additions and 12 deletions

BIN
JTMM.g3a

Binary file not shown.

View File

@ -10,7 +10,7 @@
#include "menu.h"
#include "shared_define.h"
#define MAX_HSPD 2.0
#define MAX_HSPD 2.5
#define DRILL_HSPD 6.0
#define ACCELERATION 1.0
#define DECELERATION 0.5
@ -44,7 +44,6 @@ int main(void)
double vspd = 0.0; //player vertical speed
double hspd = 0; //player horizontal speed
int move = 0;
int direction = 0;
int on_ground = 6; //remember if player is on solid
char in_water = 0;
int player_x = 0;
@ -133,7 +132,7 @@ int main(void)
if (!drill_buffer)
{
drill_toggle = !drill_toggle;
selected_direction = last_direction;
if (drill_toggle) selected_direction = last_direction;
}
drill_buffer = 1;
}
@ -146,14 +145,11 @@ int main(void)
//ice
if (collide(player_x, player_y + 1, level, '~')) friction = 0.2;
move = keydown(KEY_RIGHT) - keydown(KEY_LEFT);
if (move) {
if (hspd < MAX_HSPD)
{
hspd += ACCELERATION * friction;
}
direction = move;
if (hspd < MAX_HSPD && hspd > -MAX_HSPD)
{
hspd += ACCELERATION * friction * move;
}
else if (hspd > 0)
if (hspd > 0)
{
if (friction != 0.2) hspd -= DECELERATION * friction;
else hspd -= DECELERATION / 4 * friction;
@ -165,7 +161,7 @@ int main(void)
else hspd += DECELERATION / 4 * friction;
if (hspd > 0) hspd = 0;
}
trunc_hspd = hspd * direction;
trunc_hspd = hspd;
if (1) //glue was here
{
if (!collide_solid(player_x + trunc_hspd, player_y, level, polarity, 0))
@ -342,6 +338,7 @@ int main(void)
player_x = start_x;
player_y = start_y;
polarity = 0;
drill_toggle = 0;
vspd = 0;
}
}

View File

@ -1 +1 @@
0000000000000000000000000000000000000000000000000000000.....rr.dddd.....000000000.....rr.dddd.....000000000.....rr.dddd.....000000000.....rr.dddd.....000000000..E..rr.dddd..t..00000000011111111bbbb.....00000000000000000bbbb1111100000000.........dddd0000000000000.........dddd0000000000000.....T...11110000000000000..S......0000000000000000011111111100000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000.....rr..........000000000.....rr..........000000000.....rr..........000000000.....rr..........000000000..E..rr.......t..00000000011111111bbbb.....00000000000000000bbbb~~~~~00000000.........dddd0000000000000.........dddd0000000000000.....T...11110000000000000..S......0000000000000000011111111100000000000000000000000000000000000000000