From 50a3de293461720296912b73969b5bb4ef757a9c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miloslav=20=C4=8C=C3=AD=C5=BE?= Date: Mon, 5 Oct 2020 17:11:10 +0200 Subject: [PATCH] Update levels --- TODO.txt | 9 +++++---- assets/level2.gif | Bin 4864 -> 4893 bytes assets/level8.gif | Bin 4838 -> 4852 bytes game.h | 10 ++++++++-- main_sdl.c | 4 ++-- 5 files changed, 15 insertions(+), 8 deletions(-) diff --git a/TODO.txt b/TODO.txt index 0cc45c9..634aacb 100644 --- a/TODO.txt +++ b/TODO.txt @@ -131,10 +131,6 @@ level ideas: bugs: -- On desktop, SDL makes a high-pitched noise because of DC offset. Maybe put an - average DC offset for each track into assets so that music player can use this - to normalize the track? - done: - add headbob @@ -195,6 +191,11 @@ done: - Player jumps higher on lower FPS, is able to jump on 4 squares. Also check the distance jump. - disable transparency for walls for performance (setting)? +- On desktop, SDL makes a high-pitched noise because of DC offset. Maybe put an + average DC offset for each track into assets so that music player can use this + to normalize the track? +- Player is sometimes squeezed to death in door (appeared in level 9). + Investigate, fix. scratched: - option for disabling wall transparency, for performance? diff --git a/assets/level2.gif b/assets/level2.gif index 4bce074a37ae76d1b024b69da473c8f8aac8a0ba..4a49d7cc1294adc4acb04436ca635bf770072578 100644 GIT binary patch delta 262 zcmV+h0r~!bCY>g*4g(ba5kqoiVRU6=Aa`kWXdp*PO;7-{4Fd!ZA@l(ovRj;BIhH2c zuC}YGGYXgyq1=o17FJjllcA$XYEM*S`pywxBzwON+w0S`n0zz57|h z{CcRbd%-mEw&Z&eEnL7Qiof5h!ix&N0<5Mv{J!MPau4@#Q3B?~^o zF-(b6T*X#=#Z?R-mctT^QWITl5?CC@GEosLLB=g>##{^(MIpv)oDw#XJw8DaWemn` MT*r2N5&;1KJ3Q%l{{R30 delta 253 zcmV;W6HTby7ymL}S+wyUW#3ZgF>q8EX^z5AOc;GfGo zt>5*d)Vr(H>zyB9zPw7iU}?O#iM&;2zvsHTuG_S}QHbZOjH%1NNh`gF3!*$C!1e2l z^(mXeyRo3Fpy5kc44k~}3cUS`tktq{`)j~y3%YZ1KIrMCG;h*sSgGDitpf)ldBIX4Em*-ITB22pbQG4QIp>f6@NIJ{7Io?dZ8Nn zr0prCYg(mlilzQ>+8J94lq!IvE1HUlnhrDCqORGRT zsgE)wABvv@(y5-xoS}Lmn);zab*ivPoIVMu&}pi$>Z(4Ps+pP>C(0S7dYGfBoU*DH z%c5JBsSWt}tE*_IKYtml!m6vSYOAKntghLs(0Z$%6{I*?t%TVK=^(A2IjMQ7tx0;V z*qWU97_O_xqlej;h>5G^N~f0TpPuTilUbRlxu~Woudt}BW9qKuI;mnRuHA~M*b1=t zXaYz|uZk(6wJNZwNw7i6rTY4l_!_Mcd!wO=t`o|wtSAlO>3^?Zf)qn)tgT40t=Ool zr~)}~s=@IIFW`(X-L=vuyAIK|8dmSh27O0IF!GD?6{6aiFY9woYoM6;ZRMaI>?L zv%s;l_dvB8V1Kn(+Zb9)w6S`zrFs!=*qdCi?->97R+xfx2qg3A-$ zJHD&<1Am!|vZ~0gk2|XKd7Mexq^Sa05ZsDf`-&dCz^*v4k;%Vu>Zi#|!|llw8SKD* z3&ShizT_$?4~)2}*a$}|z^~ZA?3K6@42MkI#7_LgPAncl_z^fv#UQ~FP@Kg$Q4uS_ k#oOt{SPT?Jp~YmJ5;jrAEs;sK2seehSCYl!~ z${C`1n4_tju4=2dlB$rY4fwdLt4OCm*{imitiUR(EJ~|Enybt@tDPF8+ZnBg*$C-? zte^R!v1+ZXsI8N!rQPa^JbIXoiI~$$trZcQ{#mHts+g4t0O=sF%Gs{4XsltHuIl=z zVCt>!+F|^Pk0xNG|4LvYI)AR-x{3wMURr9eKY6I8xv`*vg910G|5#B}g%( ziQ0-E3$m=J0y&_mu|cMvN}n0(q|*2P0jBV>AD}!Ra3+~279W5ywm7AaiDzawMJ%RUxS@)-bBm{Yo1l3rwh;Qbf)TijiJq}4toK;4vq-n0dS_O3 zkH5eMqpG9t(7Nw{xPO#8rj>i2ehU)Q!MV69u&bM|dRw3ynz92Lw%d8Tk^7sh2o9=y znB`iWiF=`yd$|mnejh-*LS>{@+S{xfTT-UW9H^)X_?ixfE4iJTbw00h`zBiWrQK4jY;C+rS1Yq+rXZ z60E-aTeYuf!1=koY?X?hP^2?_r$Vc)>)OM-3x`Bp#72C?a3~%@_z^Mu5*5J`NF2pD m@x*n*nNU0+B^i;$QoO|>kt#9l5=^`jRm{a?T*fF75CA)79iz?w diff --git a/game.h b/game.h index 6cd36c6..af7b63e 100755 --- a/game.h +++ b/game.h @@ -3623,14 +3623,20 @@ void SFG_gameStepPlaying() SFG_getMapRevealBit( SFG_player.squarePosition[0], SFG_player.squarePosition[1]); + + uint8_t properties; + + SFG_getMapTile(SFG_currentLevel.levelPointer,SFG_player.squarePosition[0], + SFG_player.squarePosition[1],&properties); if ( // squeezer check - (SFG_ceilingHeightAt( + (properties == SFG_TILE_PROPERTY_SQUEEZER) && + ((SFG_ceilingHeightAt( SFG_player.squarePosition[0],SFG_player.squarePosition[1]) - SFG_floorHeightAt( SFG_player.squarePosition[0],SFG_player.squarePosition[1])) < - (RCL_CAMERA_COLL_HEIGHT_ABOVE + RCL_CAMERA_COLL_HEIGHT_BELOW)) + (RCL_CAMERA_COLL_HEIGHT_ABOVE + RCL_CAMERA_COLL_HEIGHT_BELOW))) { SFG_LOG("player is squeezed"); SFG_player.health = 0; diff --git a/main_sdl.c b/main_sdl.c index e56aee6..1f7826a 100644 --- a/main_sdl.c +++ b/main_sdl.c @@ -29,8 +29,8 @@ // #define SFG_START_LEVEL 1 // #define SFG_IMMORTAL 1 - #define SFG_UNLOCK_DOOR 1 - #define SFG_REVEAL_MAP 1 +// #define SFG_UNLOCK_DOOR 1 +// #define SFG_REVEAL_MAP 1 // #define SFG_INFINITE_AMMO 1 #define SFG_SCREEN_RESOLUTION_X 800