X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fgame_em%2Finput.c;h=f123b4377a748dcc86bdbfc8166f0f90a37e93c7;hb=2d235297197dd0c325184f7fc401d9c5c41c2616;hp=a6ddcfab8bd49694846bc46ec6e9bf3703dce69f;hpb=c5321d9d36d0a74062651d0352fbbaccbe125eca;p=rocksndiamonds.git diff --git a/src/game_em/input.c b/src/game_em/input.c index a6ddcfab..f123b437 100644 --- a/src/game_em/input.c +++ b/src/game_em/input.c @@ -14,8 +14,6 @@ struct PLAYER ply1; struct PLAYER ply2; struct LEVEL lev; -struct LevelInfo_EM native_em_level; - unsigned short **Boom; unsigned short **Cave; unsigned short **Next; @@ -24,6 +22,9 @@ unsigned short **Draw; static unsigned short *Index[4][HEIGHT]; static unsigned short Array[4][HEIGHT][WIDTH]; +extern unsigned int screen_x; +extern unsigned int screen_y; + void game_init_vars(void) { int x, y; @@ -69,7 +70,11 @@ void InitGameEngine_EM() void GameActions_EM(byte action) { static unsigned long game_frame_delay = 0; +#if 1 + unsigned long game_frame_delay_value = getGameFrameDelay_EM(20); +#else unsigned long game_frame_delay_value = getGameFrameDelay_EM(25); +#endif #if 0 /* this is done in screens.c/HandleGameActions() by calling BackToFront() */ @@ -86,6 +91,8 @@ void GameActions_EM(byte action) readjoy(action); + UpdateEngineValues(screen_x / TILEX, screen_y / TILEY); + if (frame == 7) { synchro_1(); @@ -97,8 +104,8 @@ void GameActions_EM(byte action) synchro_3(); sound_play(); - DrawGameDoorValues_EM(lev.required, ply1.dynamite, lev.score, - (lev.time + 4) / 5); + if (game_frame_delay_value > 0) /* do not redraw values in warp mode */ + DrawGameDoorValues_EM(); } } @@ -124,6 +131,7 @@ void readjoy(byte action) if (action & JOY_BUTTON_1) fire = 1; +#if 1 ply1.joy_fire = fire; if (ply1.joy_stick || (north | east | south | west)) { @@ -132,4 +140,14 @@ void readjoy(byte action) ply1.joy_s = south; ply1.joy_w = west; } +#else + ply2.joy_fire = fire; + if (ply2.joy_stick || (north | east | south | west)) + { + ply2.joy_n = north; + ply2.joy_e = east; + ply2.joy_s = south; + ply2.joy_w = west; + } +#endif }