From 79e374fbadc228f9e4f11e7d5f15d3ef2b2909c3 Mon Sep 17 00:00:00 2001 From: stevenhowes <38082088+stevenhowes@users.noreply.github.com> Date: Sat, 20 Mar 2021 16:27:14 +0000 Subject: [PATCH] Show real data on the hud, decrement goal distance --- !RunImage,ff8 | Bin 6652 -> 6896 bytes c/CTheEscape | 34 ++++++++++++++++++++++++++++------ 2 files changed, 28 insertions(+), 6 deletions(-) diff --git a/!RunImage,ff8 b/!RunImage,ff8 index 591c988f4c1161639e8e67c290e1fcece2a5779d..bb60eb2fb9538d413966d0a52f97d0036d4729ae 100644 GIT binary patch delta 1960 zcmZuye@v8R9RI%Wy)PW+9lQr9UM%ir$;uEB!zLR)E|DwFc^Sn2=DO%tn(nG@RM3EVVB2J>)y+AA5T_gTODveO7ZYZQ1%tDbH?$)pb|1|vT z@MZWX;a`Jqf!_sx0>039z#kOrl-6(=5|c*{0S}Gm>4v1~#xS_6;ELin8C*ZO@lxGy zT!x?^P9TE&AQ%Ie8^?*@v*27+x^V$~b{sEagW!k2x#KtyD>m6(ts7r}&rtmT?fP8^ z`ao*`6C41SkHTlcTjO|9_$YV=PKx71;n%_4L*Y*Ff5Ts#7P}^`aJ-6D1+u;e<__zZ z(wr{=*$b^y5eOdxI?a9tx*O=hQr$?X41|vWy}|nBwDr4y9>!`C&)6HND8U;=%}QW} zh)6`l0cd_=cjUB&&X0HeO-LgnEPd7xjg}}0&){VX3FN*3+mlemO$R(qv=YW32 z&REh49)_;LM4tls>9Sl|$R(!Y0TwVd+o1VaMEWy;4w>jCIg!`H5;I5 zU#6*t#)9lBu(jaciQ~ln=VgjygLCCVcfW4bVm*X+Q*EK_h%N#s&(O}*CG`WW!TJSS zI(Y(r(n6UZu;-QIwj7ym&YmJ_3$mL^wp7oY>IP|!dDRR#8f3Mq`w_z`j;9Wp4?aQ1g@P#L3b0 zkZQ-=6t*fMSMEK<$`jTVsb)yoem5^(rn117aO;#EZ%+|j;$B4$Nq8<^Dr8D==*B(v zSwh7c!$KoRu))7Dh4FoEPCnh({y3i4>`Ee=*Uj!rtWBN-EubdMMQUU%i3f{%5h-r` zC5a-p-PMaC4euZOD`=Vol72`57MvEqNAkZ33i zdVy=u=RntB>O?a!%}Qvjo{7a=54iWWhWD7FSa&hu3JC9|=tjCW#7m(OcR(axg~UEH zMl>GNH({ppL^m5>+<)*85p53=`GV|?q}&86+_kT;Pmp418oOkSFV!irvq6Pe#o0l-rfWTruv5p1@)~)=~ zk~PeTo`KcC#82e;5T?U=yP4#wW|}LJ`CLw>xJuc6R~^=NcEP3PO}$U_J8T+u3l@dl Rh0Vg|VAM*az^pJk>|c7V6&L^j delta 1786 zcmZ8h3rt&O6h8OfmPaY{mX2+ONbACgTNuVlXok}N4> zRhW+r_k$VBGJY0}Xna7Bg~$>~=7Sj%b-~REZnW1sg=P_r&PA*E{pFH0y~)Wv=li~M z&i}aQE|kXZa1!ybFe_2?6B9-4M8C#X6VV&a@on48G)@&Q^e_?O`;@SlNy5x&qj!GA@>wxf|;_O0YdKZ58RL=HAAIWjvCO;&L2Jdlhy9|Up^ zkxB5u7ZEwDxONsu3_iJe7!ek?aHZHyU??|2l~mxm$qwu&LL(w22?c!RxFr-=1FQ@gsmRy|&0Fj@ z+3|=I=ybenDAEY@WJ0Fd!!^-b1(v^qYrDaBC-BSXod)bqRF-|A$S!DJW&MhybWx`0 zUIX0@v^^m+AC<+XZ$J|=G+Uu*6`8^7K+hQH-9W{CF5j`&$ovVKUkptNG*2aH8lh28 zeHxmz-~vgUIE^WAh2WgUTr=OoH4oy~@R6@os4%);B#=i_2kX;202U+OLtGP|p}<`V zDpH-jrfF zcAV`=S-%OR6`#V}8eDo_f@&5E#WaRZH80N+eWq_V@vwwn(@Vwz7&xCvKveEQ#o zpJq(|+wd*M^bf$7jp?VRygANxq?NNy)f#*PRqnw(oGV%SN>@QSE8S&`97n4BTck5|{_uULcx(_Q{5p7w{7e;HzoE zSCd}M+!l9%73WaCxEMVIyA^izzs0BaQ%>0{Kd(_sA^>$12@|B-2YYKs87^|KVx z#c+<%fc_VHiuL?}#3B?J#+$=b^gYbxEY+EAySUba`sZLTj%>{+m&~!_LMbpXG@YY^7QyPxOxLRcmGWt6uhT_A!I6anz@O*GDvkbUzz)9FlXVN6J>z zN|l}-q6OH*DWaKvA{jdsu~3S*;C-S+JZ)`DSbPD%mLCzva591)naw$=u!Wp7cEFjI zuQHLUbRj0`>sxAy_5M Q58DZQ6!thQ0BeN(54MKWj{pDw diff --git a/c/CTheEscape b/c/CTheEscape index b1a4f46..de5fef8 100644 --- a/c/CTheEscape +++ b/c/CTheEscape @@ -26,6 +26,8 @@ extern int current_element; enum sprite_e{player_ship, durno_ship,player_shipl,player_shipr}; char *sprites[] = {"player_ship","durno_ship","player_shipl","player_shipr"}; +char hudbuffer[63]; + enum font_e{sys_12_8,font_max}; enum fontcolour_e{lcars_black,lcars_violet1}; @@ -46,6 +48,9 @@ struct Player_s { struct EntityLocation_s location; enum sprite_e sprite; unsigned char velocity; + int shields; + int integrity; + int remainingdistance; }; struct NPC_s NPCS[MAX_NPCS]; @@ -148,6 +153,10 @@ void game_setup_player() Player.location.X = DISPLAY_X/2; Player.location.Y = PLAYER_Y_START; Player.sprite = player_ship; + Player.velocity = 100; + Player.shields = 100; + Player.integrity = 50; + Player.remainingdistance = 1500000; } void game_tick_stars() @@ -234,10 +243,17 @@ void game_draw_hud() font_colour(fontcolours[lcars_violet1],fontcolours[lcars_black],font[sys_12_8]); - draw_text("Shields",230,DISPLAY_Y-62,font[sys_12_8]); - draw_text("Integrity",230,DISPLAY_Y-92,font[sys_12_8]); - draw_text("Velocity",230,DISPLAY_Y-122,font[sys_12_8]); - draw_text("Distance",230,DISPLAY_Y-152,font[sys_12_8]); + sprintf(hudbuffer,"%i",Player.shields); + draw_text(hudbuffer,230,DISPLAY_Y-62,font[sys_12_8]); + + sprintf(hudbuffer,"%i",Player.integrity); + draw_text(hudbuffer,230,DISPLAY_Y-92,font[sys_12_8]); + + sprintf(hudbuffer,"%i",Player.velocity); + draw_text(hudbuffer,230,DISPLAY_Y-122,font[sys_12_8]); + + sprintf(hudbuffer,"%i",Player.remainingdistance/1000); + draw_text(hudbuffer,230,DISPLAY_Y-152,font[sys_12_8]); } void game_setup() @@ -249,6 +265,11 @@ void game_setup() tick = clock(); } +void game_tick_player() +{ + Player.remainingdistance -= Player.velocity * (tick - lasttick); +} + void game_tick() { lasttick = tick; @@ -259,10 +280,11 @@ void game_tick() game_tick_stars(); game_input_tick(); - + game_tick_player(); + game_draw_stars(); game_draw_player(); - + game_draw_hud(); }