From 4018c8bad23c2127cffb8ee0cacc7e0232e5424d Mon Sep 17 00:00:00 2001 From: Garritt McCune Date: Sat, 29 Oct 2022 00:43:17 -0500 Subject: [PATCH] Added basic panning. --- Makefile | 38 ++++++++++++++++++++++ bin/game | Bin 0 -> 41544 bytes list.c | 7 +++++ list.h | 12 +++++++ obj/main.o | Bin 0 -> 33400 bytes main.c => src/main.c | 73 ++++++++++++++++++++++++++++++++++++++++++- 6 files changed, 129 insertions(+), 1 deletion(-) create mode 100644 Makefile create mode 100755 bin/game create mode 100644 list.c create mode 100644 list.h create mode 100644 obj/main.o rename main.c => src/main.c (56%) diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..add1faf --- /dev/null +++ b/Makefile @@ -0,0 +1,38 @@ +CC = gcc +CFLAGS=-g -Wall -DDEBUG -Wpedantic -lSDL2 -lSDL2_ttf +SRCDIR=src +OBJDIR=obj +SRCS=$(wildcard $(SRCDIR)/*.c) + +# Substitute all .c with .o from SRCS +OBJS=$(patsubst $(SRCDIR)/%.c, $(OBJDIR)/%.o, $(SRCS)) +BINDIR=bin +BIN=$(BINDIR)/game + +all: $(BIN) +release: CFLAGS=-Wall -Wpedantic -O2 -lSDL2 -lSDL2_ttf +release: clean +release: $(BIN) + +$(BIN): $(OBJS) $(BINDIR) + $(CC) $(CFLAGS) $(OBJS) -o $@ + +$(OBJDIR)/%.o: $(SRCDIR)/%.c $(OBJDIR) + $(CC) $(CFLAGS) -c $< -o $@ + +$(BINDIR): + mkdir $@ + +$(OBJDIR): + mkdir $@ + +.PHONY: clean +.PHONY: test +.PHONY: disass + +clean: + rm -rf $(BINDIR)/* $(OBJDIR)/* +test: + $(BIN) +disass: + objdump -S --disassemble $(OBJDIR)/$(FILE).o > $(OBJDIR)/$(FILE).s \ No newline at end of file diff --git a/bin/game b/bin/game new file mode 100755 index 0000000000000000000000000000000000000000..674de52cda07705446c2ee8a1551f421a5a8dbb5 GIT binary patch literal 41544 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 Mxd%)oghtm701+H~b^rhX literal 0 HcmV?d00001 diff --git a/list.c b/list.c new file mode 100644 index 0000000..076dbd5 --- /dev/null +++ b/list.c @@ -0,0 +1,7 @@ +#include "list.h" + +#define DEFAULTLISTSIZE 64 + +List* CreateList(void) { + +} \ No newline at end of file diff --git a/list.h b/list.h new file mode 100644 index 0000000..ae6fff7 --- /dev/null +++ b/list.h @@ -0,0 +1,12 @@ +#ifndef LIST_H +#define LIST_H + +typedef struct { + unsigned int Capcity; + unsigned int Size; + char** Strings; +} List; + +List* CreateList(void); + +#endif \ No newline at end of file diff --git a/obj/main.o b/obj/main.o new file mode 100644 index 0000000000000000000000000000000000000000..e43f6375e2971aa793a605982d4c9915cae6142d GIT binary patch literal 33400 zcmb<-^>JfjWMqH=Mg}_u1P><4z_6nR!FB*M9T>zJ#27+7I-h!Uvw}oCI*-2q(|EaH zC17Gg>|wC(<~IqQwQD>&OBbYgbhD^xFfcH9bh`d9Jg`fGfq`Kk*vMWK8;*l{APM{| z4^(aY6&M&8z*e^&s8jjU z7Zysb2TCOob|P6<%EZ91>jD!4!wv>k1_sBSEDQ_`j-3}e5AI@M_%FW?M4;)zG?@rr z@i8$lz|BGOJ=i5sNA6+*g*+$_;E{^q2_mdo%n0?&PLQ`|e*f9&x&iDt1b+*d-+AcZ zD|yBX7k_lR?$`lRizKk;xa)ym3=9m%U5|h$u=?Hr=GFuJ9)}M8VCr-|0oH*cbmpZf zBLl;J0a$z^`^^y?%{%`yFfi-_MK~mZ;Z3_xEg;pHTDn6wKoUITg-+KC-Jx3$yer+V zJ33u&bi3~9biD%&T94k)3m%=<;Nc2UjbTFrC>=o^)g5{Oq6%cggYM8H2;P%!*Atzt zFS=dNbh^Gl*zf?;2AG8qy{!lMTkih*{~sI{9^IioQarRpz*(<^6&zS6VR_R5EmOV( zxvbmufGraX14D@|m@3b+Wd!k*!BlyIEvN`7;k0D{397vgfaFq8vGUp#iERmCgM#(7 zF3epeO5LG%ARNXEkVMxV`T$j6f=93G0hotc5Ae6<{Qv)df=9P2$QzIn1nv!x>ByLs zfdQ1jf?a$R(h@UsQd6uHRExP7+`w#wl6-~Cyv!1XkPtVBxPEDIk$!PTVo|DoT7F(h zv3^L1o4!Y4a<* zTPgA&k^vOpU`EB9xidLSLR`h#;;+7bS5kHQwdzY z9Lc9L`>ONzhJXLJKCU#h^w%D))1RW1GIsv=5wV9Lr`G=C6!+b3^m*^MJk{eBb+O+9MVvz9de&vG zpB|a~ZqxQ<{l@$BXUjbOx$}w6`Sa@24NgumSQ)gW<#+to^&1ZH$yx3?_vKUiB;R@S zeSN?FiFp;))7-!5pbOWOcL!c|<~cP63bT}O+N7Fu-?jbVwdc}j^W*nTGMS@=OXGg` z{a}y#ea@x%`ajp2{_r&m!oA9L*t{;V)h>|dX<$td&|z^-xS?YEu%lVcbUJ(NuhrSJ zL>5o`w@75!?UwcRwNGal`4tqb&5i67)3#U=aMnWm;;UVPPk#v+uT2n+YVQ2FuKOBC zZ`FpIVOxz?m6x2#L&b+;@n{fxgGk2n3j>65`y&n(9-$3Kr@ z9>+g18IE}@^LXYl&Ew)@VsBpF=zKtJgQShD3>P1Bdvkh2dQ*C%@_~sDZa&cXAoC&S zgH3_S594W%#%MUC+n0_Gr;MNCL1-3tAe%SnA`k}Ogv4*oovWB%r^bW^9wtakgOyj!29)<5)q$n9XRk^jT-N8%1=9n(7|d)D&i`4Ok|6nG*VJde;J4?U@UPrIh zH}m+rvP`F*V|Pw+JK!F3_IS)$zje=q*QJSvf7T4&JbU%eGlAMol6~jje(!0BI~Ts% zhB3aF@qPhg{d1;oZ8dM1_8nb(HSmLMQ&nu*{MxcJ)#v0-cl$i6|7>I*DB1Z^bp;QT z;-Oa@?-eF6%{1o7;quCqEV;w_z;e6CLatX%NkJ2%6m_>w2$p3DJoxHJ#at!F{>7Vj zde?kcn!9#a#2fRQmu#Zj(ocWNvE)+X_#|SnP^^6Fa!rA(((tNpI!}K^3WNj%tX#Td zb^YpzLAN4xN=m-2i}B)}9&~zX$>X41+&=75XRWv%aqulwXk5U~>KR^mzU=7NsEyZ3 zXKbkLlU$_is<&>bNkOc8VQlTrb&I#^Z9ir>@aaz9wgvu(9tB(bWlV@(Zbi|S*5b2 zOMZQX4xVFhZ_i^ZlJH=UL|`E<_Nr#+8~&OIzT_q6ET;sYlnb>B>N z>nm=I$a>QAyhyFUQasCY;m5_xcemH5r3+0r?mazo-P0F~j9Y4*4vFmb2~jPb8@cC2 zPTUtRJGR_CFJ$6M^z^Gzk1zV%viF!s?-}uApNp?6F21h3D4ns7wX})#(7Tx?tMbK8 z`!q#YHr=jhy1nz2waZE?$(gQC{1W|5Zw7tuVAP!ZAZ}hR=lL@E^JVt(&FnuUY)%}1 z;9n#6XXg3lb}PTr?X7=%z8BOBYWK`JzGF^m%(=%g=Zf^6bLyqDPT#!gv38{D8%NF0 zUh~9$`&>+~ytsAGi(P%|Q}%ASKAUB#^pP(~cb})udmuXRLFl?Fu0tuJNoxi zlc>wu?Aa%lrlxIkrOUB1hHnZ?ywum7jF{-50XeadGSAA-@N=$^-t}MzVF3f z`A6h}OZ4@B>FWQQ+mZieUjBTK9PWz^@2)R?!S~{O6_0ar^cwjuUb0fRv;H>!$twA) z&T7h0w}h)S>gxU$+g&cJS8aUSvqkLDbe~WMqfpjKE4jRuEaP`vctwBLQ7%vaq=-#- zRg^wju3Vzb#2Omq<#X$|t)}MA>mHg9gD%B*wRxXB^<>?IiIXPh*q_d3eHEhcRbuCI zrlQrQUyCy1XI{H%9GjASEa&^4D&6(>d>`#`xw`wZsC)YA;{88U&h*vph{@RW_0i3$ z&pGa1zjTydC?8(s-SX`HUP;^fzgE@FTi9p6IapWJee&M?bom9FXZJ?m>Yrsdb@|D~ zn}2OnySIF%wpHvVOZ$*b{nrg7R0K6 z#ZPz;uj75iT>i)O6G>lHms~#bIa)V;me1<<3_A>BpM^=*x9J3@r~R0I>Ws?c^HX;I zJ(fSwvQ($#zSibf8f^cKB0qI})Ss^UN`a|BpWMvu== zOwIb-WFH>3#^B%7O-b`VK0oP~mD~2eI`ZSfkLxE{Zk=*)f0WqjOy>VmGw&q*`DwH= z&h}4s>MOCw@#@9ZKKEaz#;s-kkUwE*b?<%$HEG{@M~&9RHB1fhzSFR0-h$dMr+2yE z^1gE>u(a{tAp!f!xPSkDPjo8xFtMBS|NVZ^3*z&R^rreh`TAv1{5rWadlRI(M7j=h z>%N!XnW%Kuq$NjmoJ zqY1}W2I~fHZRThVdMneUc_ok#N5gYVYZJ@8|nku-hfv%Bls z4k&!R=4DWo&$=&M_f_PJV@Dk9^L(bheAe)3O-BChI|ldLrC*)4`u5uStn%KvtS}jd z)th&jmU{n8DHXT-nOX90iCbypf~cz!>>+Bq`koxMXIXtEe!qO6`HK0L47|;MyCBmsi(fy#=e;MWyd)!r&VW^?%dzL zr}@Ski_Uqzt0E6}@s-~cjV=0{l(lru%5}Qmuk2l+cU9qO`_ruxCh<>u%&W@XRK9xl z)U?0n_Ho%nP@F&LzdW0`R3cdHS%uZ zO7>?He{R2FX6v`Apxp22u`8v&mmSUR_*9!Ks+;A!O>kpWi?@c%T4(c0*-a%Mm&m;K z-1v_<;D7N(P(vQpzTXJyi8CO#?_&dE%bN^DyjiEb^>eX4=(qg!vPX7&)gKdQ%iY!f zpJ`vWeQ8D1{05aLYJ%1-H=7#nO^B~6sq@&ka$6C6MjT(MK*z9=qN0j+$ZLraZx~H}=^Zo%FkI z)z$G^HlAB$&ipBAPU!SSLA^Fw%Cfh!Y7>%#E3PgP=rx&CeRipx$?a-snhaaEBk zudUj%;7R<9+_!34CsKrLuk5(S{Q1bqlDjX(k~f}Iab5j0OGmAF4~yJg3(XBrWG!x= z`X<5TpSqpxyUF*h+Ru*FPdk*GdUN`r)x2xI-%Gc?qqgSiv|C1vSzTSq?+?i>JNlZ{ z%j$*h7DL~<^!jUW{#IGc|HE8&Ed1pm zT9Nu!YbS2>V{#O6O;58;D`RDeIk-bYW6Oc2jKsy86*emrqGtjr@2# zaMP-1wjU?{Y4J*|)oh+w&$fTc1FmS_xU{vN9FHvcCMs^d#*rjbYbwE$;8EuDjLlkM z{rdu?H`^u(TE3mU( zH?3b|5^Pm{<8Gq++FklN>Pud3zM6jj`GJlyr}@gxx39~VT?#n;g=xOC@~&mIHoRve zmn$y`z05nUWO={wG7&Xhu4_$E)2FQY%+|_y@7R>?**ny)Fi)#}<*&(o{^X*~QJYq* zsSWk}_h0t#b|=ty7$|IE;ki~F#6wQcwNcUKvv&zSTmFRq&EBl%m%co-IiZkq^^TUp zw(s53vo9aHyY1w`vdeSg>)pg1q%JPWUYaQ2H0!ka{hkxe8FPQDe7xMS?&yD$Ppjgu zzI^obne4e`o0AT8+AnY2e)rG4`FrKJ%86XIQ4hBAoStpp8?ZVD$R+zb`*6Ts!aNjY)1twHCkjd7~|1dn0(FQ9`E2 zCncYsO&<>Ivp#>#(#Cyh$-yJPt{IE5m~1>g^`uSa^gKJ6ive08z8_3uSLQZlZ41)9 zr*~uiRVUABYnj=M#TW2IyqdB+RcOokr>vi!zt)Kj;9JHKAz5u7Z|0%vV>5d~(^AgP zcYEjGUq79DPqGK^_T(LVcgC!Gc31e7l%K79&vW5l-4q-B7s455s&f>f7_nzRqUX z-XUup=We0CTA(`i*uk)!=U0}g_&Fxl#0uCgb>*9G>9XK!OHa>^ee+f?s0%imyMbw& z^5gv4a%(w7-CxaJjdcWPPIKQ_u=i45>v-?Zq{N1mv*G1nnKbXs-++=8!xPM8-sqoHx ze%^@_owiK;AQpRn;p^&>-alG@de#N0Ae|OD$EuKbL*3+G*yI{Mqw>(g{H;*A>sFC_A(GOwe9d7$$bua@lF|Qx&0) z*FFCCPfk--=jC)k%^nJG6}6b!5S8zlCnqR>vOG*T{HTgzGgGJtL!y7<>V&|*_LBETA$6-g(AxAXWtK* z?Y%X?K$V5j-+1A*jx6i*tG|E#eeq7TUAp9hK)d+@?`|lo-80Ia7buZ(!>!ox@DW49 zh#3~l=_Q^_uQt!nxDmMe{@d2D?^d0XVrM@2H73|k^|I)_tZs1R<4!B@`Mc+x`~5t4 z>+YNTa%L?|)e+QUyh4q|dU7j4wuRq9&4?!`S(+Z~I}uX}M( zwDx12$E%emx;!lBo_=91#nDrpV)T@6Vl$5quTs0vHQ^b|9eyfKJWOBA%a|on`67#Q zTk{;GW82vMt9{-aUixIh>_4G#ey3VQ?`nxN9CEJNygcV;PiyPz@Z_VD=3HG?=cwc^ zH9hd)ri@lG)j6|$IGwxap3qWhEOOqEGB}h0`Q_r0T-mOS<2C*njjB@ff3H1MRZ^*F z%=+w@?gGmbLd)#tbx&TAaj{;hvcCU+{i?en^;h*9DtC5$`~0t7)Gx}=*K7US)n&ea zyDC`M@I4SSy2-brV(Z=c+9~gBc)2qp%>|;aOlP^ZNLIi$XV#ZYq5Ly*+Um4Dr%e9y zPWaR5e`{s0_oPUg&t;W#{_x}YB9?mwiJT9$&)bL0zWnv->N1Ns##d>XKDM4xZ+5WQ zyLznS`JY_RkQMlMUq$THOZ@>)TVGEtjO4M*X7XI^{a)DW=tR{y6OPUCQnU6wC0+mJ zXPU{s>ObF?&)(lR{q@RU=Zi~M&H5{*XMXnEQ~Uk$^8c!K?Ed*WQtCP5!aTPF>3dH9 z<9JzC9KyA5|3tqDh60b2x43)s-)k3;YrT=~x>xSqhSzl;>vH+Rmqfcb7(CsgKT%uZ zZu_^VSN6F?_TQWyKe07H%gM0AgK1Ix35#z}%|(PyTn>nG6gj%DW|O}7H`PTU9IXE` zC1;=9;ad7|lgtUeeL-<9w~Xp%oJ#OwU8=YIepKA;qf;lYRtyzB^Z8otml+?GHYzLM z(X5HuV#@x# zD#O2tu32$ao*|?7W0;@s)u*OM4<__3+IT?d&TPTQLd)I48u)h?25-#psoLe2wR6o$ z4#7fK-WftWPKA|=pHFMgU6syrq)*RFj3L@!$BC~6H(w|2aN62c(Z1zKN~V=_!bf@BF75}p7GjBx&$n(uU7CF&m!<&AoY;lp_`X(*X;tld^Rs@} zPvq{*{=N5|O?Q}`!KTlVJr-A%Kc8(I7JT3n&%Fuy5eo&kXMc?B?VDH1bz{mVxs_tZ zRu85;s1y7B-YKBe>Zr}3zyCwuwy(bGWIEd^H#b$(O6vPuIZ=aCHSa`DmS|ed3S!>< z>(}1~PRD5v*|MhfUainx)c!+Bpj4t)bMcYSE40r{Y?NR6{M5XZ}c=o zURuzydxr9zV=}cbZO?nOFuFJe?=QDd+B_*F>;CUoFGIp7Y;E`8ku;Eb{P(e1wZ*aD z@{j-azhAQO^7U6wl&0K1&6#n1O7RX>1><<$=H!PP#Fg_Scn(bLk?Fi0yT4SWyzj}q zi91|Bq`QB5;V~t%_ChH0g&5N^{mU{h%LLWeJ(B74-V;-*?C1Y*Jx{M!!}O z-;~YCo53k^*)sXczeLeJhN6FkYuz&=nm->n+3WK#=u=(X5ijS|`|caIotZboj^*cL z%XN39H=f*-E*93YcXqmctag~_h4;L95uA%f=QZyCaAbbeEr*Sbi+Kg2J+x+JY44bS z@!&otp3|p287(jDy*}TblOb%E_5S(y`|d5Pyys==w61l3y=B;&EOzCTROZM0I@@et zPnhzl#CDbQ+s&)OQn%gC)tf!>kL|T~wq{R(xIHpP4G&x&CFUR9x@)WX%EdqX7-yC& z;a^KhD|~0#Og-&l)gtHYgWrz-el=i$L3Gd z9vlz-KG*H|ZI`zj6lxS4PX;S$nr=yY`J*~k`@c>_r&1{)Sj=0bX1SH! z-@=x*#Ng~pBeR=POLH&F)^|QK5moZq-JH4f_=1~zetvaa?J>nakjp`4dCk)`+wEsx zdwWrJ+q`P6V^72N_HMQ~5?h~ObYcFCiyUj?m#uy`MdQZ&_=N&*W5XMmt@p;22CVXz zGLUb2(y+^?q1FGIXW^`iDN?+ZiZ6~ee_HvmZ5GR^MQ*cR*-b56%fE0+^U6(? zNPEGfH@}pKOBegab@~j!t)>?io+-zUD`D|wSiY3f9KkJEcpJ%f4&Exs-Qb$LLLyRw5 z;njoCrQcb(yJo&yYoVyH%iBesW%UY?w?7-tGsrz;Z=L=}F7u6Kyys5&x{|eJ7wro? z%Vyu{F0new?y*m=|77X*^=DN!1s`k=b~`QikKga^1qXP)?Jcwe0;L!#=JZZ*%xf{= zaos7f#C35X|Ao|Y+XEUF^B(Z2oG25xvyVq5c;joOQ}y?M_6c7;F4(*M%#y5@gJ)Du z@@>^n4_GwL=rsseBEd7wq`Cp#ysQcdIz?s4PpZtH zy{%GvVR8HW^XtDo38|d1=cUy`lUmhRGWYl$9bf0R+IvZE&)a^tiAPx1!h_B2f=+so zgf~M@!wZAQ%-4-eFK#;hLpVIJ$=$7&^Vb^NE;T*NIffZKD_jI$Z|pvuJ?X&&Z{fY- zu8&W@eR;xuez2PBvl*}5Q-6PrHDKM}8NbA6#Ty29XJ;z~4R^m#O$9?EJtI8>1_sc~ zECXmc1ZZi3yI&{+69eM`P=^>6K8$F55lFXQJROHV*(=sgA4-%gQV?1 zgd?9o8-A2B`qa$3W$egJ_t3rb8fUkO)=` zawiMJN6;)jhCDMo)={OHLF+0|g}^*!1~xE_PB1foe1I;>z`)GFjVZ_g66eJs4(kOY zq(LSNBDn_?_8?hN1_lO@IE)XYmBHdL9wh!i>UE*wprsBVK4{4dh&F_ZgI3dk_%NMj zP;niQAT%9-nAT8nP}%_TVd_C^eFPa;7)(HdNa|go>MhX3y%-o6gpk4?oF*6;7=joW z7+`LMY5`LzIK(S(h_~So@5doN1L_`_JHTm>fq`Kz4)sfLh_A*Wz6FQ)K^)>IaEM>T zA$|{s_+uR6UvP+nq6Ay`3o~Mm7gUzE-e2_l?xQWNt^3&86zTvCfmit;NVt2U5DU~4fLLPFf)opbVwQ{D3O zO2E9p(##UDQZNJLEQZ|F+~U*{hQyLokfp&cKJlJ;P(|*kC9Xw9`9%x`MVWaeXhY3B;08rdt6d;5-S-z67y1WQa$qu zN+Ak^Q%fMKT#6FQo%3_@p{q{73rs-%N9Ma_=HvvWCPQ>Wv;`EU7N_QwFvQ0fmn0@< z$0uiG$AcEpfSnkSpOfQS29gFP6?PB-9eL$pU|{$IT1@u;|9^g{IH-IPMiLi;ii3t* zLFz&BAR##r0WEhxbr8%PRj4>jJxC8o2vi<|XpnwTSqf8c1QLXr1F{PyZjK}_j^v(9 zs5s1gnEFDfILLfSB=zM`agcgYY5xQ2-$o>Hkl$hA-ALk~dpCO!=$$iTpG z8Y&JlM+wROm!RSxbCBKt1S$?v4{DRZ{Ph|t4pR@32U+n6hxi|;I7l6`f7w6=AjSK7 zkRc2V48l-xka}eQEc;RR2*bJvU`?7#X;sH zt6vKh2dURY3jfVeagcgY>l)^-D^PKedMzaN>L3AVc!Jc!%1>h?aZu|WCT@>I+#5|C zW^V+NICA(T;1JJ55=RcVLLB0CP;n5YjpVP{AOUFlLG~}G9|20gTnr3Iy$J>ekl$hA zpt@KXRLOwb!XQxw29SD?UQn3@5&_kTAQ~nPVuLWKP65%N>c4|L$-uzy0ZsfLl>ZG%gS3OPN&__9VD&pp z+!k8EFhT8yiO&Z$x)~T4IMBp%q3IU1TLt6S*GZpyueJiFZNm zbwCr30$Btqf6&BTq2fMh;;hj08H6T28(Jtvpo!N(%fmP{@iJ)oNkJ3e3QZ?jXyO~7 z`K16&+y<(?8BM$j)Cgi=VCX~>w**y&3=9nYXyQ|$`F$#y_;qMF&qfp1gXYJDXyS~} z{0M80fr1f~PC}vff_EArl{3lEa65oz&NgU#9YYfrfmTpw(8QlZ;|11!gW3BUYW@v0 z^=qO2x`!tI30g0J_JSd&Lwiu;1(aXV)Js9r+eb8U6;LCQfq_8_Di3oHOxy`gJR4fh zxTA^xh59!bhjk)9IneZc6is|Ov|KuaCawX^?^n^pPeRMXduZbKq3P;5n)n`Qhxr4V_zGxw`x8yv z6B=%yU0TTLb}qD>;fA^wmJWSDnUaBlK?O}b1RC#JXyUA(!3hQi1_Ly45vaHsnz%Al z+y+hD2rBM`ChiCo_dpX5fQtK}iN{05L(s(YpyE+z;^1lWuehf{0Ev#LH zCf)-Tzl0_}8!CPSO?(wp{2rS4PN?`3H1QKq@mFZ#*P-Gc(8Sk5^U*gn@efe-f6&D9 zpyEuRi8!QisDRcV9BAUk(EQ7XCf)@t_e9XdPebcjDKznRX!)jqCe8sGEM#C{P(u@c z4i(oy6MqJ+myOWGq163F z04;}O(8Q&niNAsJ=Rs+h_#Y^L36zG3Ye6G&6`Hs;RD1)P zxDQl(8=80vw0?s517>~$G`}1|Q|}4Q7bnofpFz{lIW+Ox(0<$%H1VU*djA%h_&jKO zet;%!0nMM!(8TXR^ARlkVDA3_Z9jZMQ-1=Qetw{dZ-a)zKQ!?^XnoBBZLh)1UknxJ zLKFW0HD3TtJP+D_5JM9$ftC+4XyR9);je@yeg!(7pn)dN3mU9tU|`Tg6PJgIo1lps zLdC7n#GRqy4rt<`P;oaj@pP!T51M!-R6Gbxyc;SWfhIl|DjtU>{u`PeQqaUtK*KW& zP23$C{sm~_u>MaOnmDXpuR#-E0}baUH1SwyKI%Xd&x4Bhp^4W+#iyW&Pk@TgLK9yI z6<>fRz6mP63{CtnRD2DZxE3_rHlc}IL&bNXiTgms_o0c$LdB1uiRVGZPoartK=bJZ zH1Q|UdgL0KxG6NB-a!*z39Sbop^5iE?R|kJehFG%yh9VWg4R1<(8M#K{k~sl;%3lz zXMpBESbmp+=65zU@eru{dC#ri6?;?{R|8Y5@_Pbpze@E6Ay-#pDJkLSD^N4 zp^0-r#}f?D#MPkUW@zG0P;nbH@i?fs6PoxfXurb)O}r1P-VaTD6;wO~P5c;CJPJ+x z5mY<@O}rfx5ey6rX=viJpyD}b;%lMeMQGv&pyCy1;+LV~b!g(xpyDlP;yWeg3h4OE95nHV(DwEsG;wJ1VOW7C&IoOftwR$pf##zvXyP2u^tlU7 zd>T~z0GfCpv|c=hCLRH8cb!2KZ-@% zXyTpFa^M4+cp!8<ZHt_T(PLK9bpmRA92;*8Mn4?`2@ftGtQXyUJ+<1k5R;;?ba3^ef~XuRa1iC>1M zw-Pk*RnYjYLKAO+iZ`H%J3-^C4Nd$Kv|i{z6W4*p`y@2+8fbo>fhPVBTJFt56F&qE z&n0N$KcV@06`J@ysQDYv#9u+{wQXqPPoe7fpowQf^Wz~j@hQ;y^aPr?D0Dpb9GZ9- zG~Hf76W;`_$8VvDn?e2c08KmsTAn;Z6YquAgKyBpCqwz4pfoHW9flU5KhVVALCcMQ zXyPtV_p?Cb8D@?*G~IHciLZpFLjg2#ZK(Uj(8RC7+W%=G%S7^T}7)?AEnjWIi#HT>hb0V5JBdBm? zU|`5V6W;(0=X^Br#nAe(3{5-=>dsm;@v~6(w4jN@#&f&T#P>q^lb|##-t$2W1_p+i z=;F}yvj9ze8Pvba(ZuIN)5AJ6aY1Ol+lnUc1Fe_$po!;0%hkhZ;?2--JB22`66(&2 zXyRtjbbA9$Tnw5X?xTroK*gV-i5El5$+u|Ye9-dn3z|41w4DEqCSC^3*G$mx22r3S zVhl}hoFD zzX(knW=})1dicE}HmBs5wi}#NR^8 z;nis3>!A5%6PkE4G~RcjiKjsAJ%A>D6IwnTM-%6UmP_Z*#P@&_F9QR^RWxzfx+U1S zCMX$zl*&WX?PE0cGSK?&6`J@zsDD4AiTgmy?H_33($Mzde>CyG&~(BE%^xuLoPd@a zylCS3(0nI?CO#P|E{!HG26d+rnz$Ua{Lw@c_lM?p12pkgXuO-FiBEv~%MMN46l#tu zn)rWczV<;Aw};lh!D!;Iq2V8eCe8y*4~b~vJ z(ZpfqoJAAoh33bbXyP#QpP`Av%>Rrg-Up2@*n&$~x`jqN11~h3VB+1-a##vYdXCJwW=3Qc?lwES#C6NkBHGMYHdJqyspVeVOrChh@^_g!e>uzYbB zP22$#;GlJMXyWD2_RkMAahUsAq2)bDJIG7>q46q+CJytL9GW=HU)pHmFn?K~iNpNm ziY6`#E&qei#9{u8M-#7wj)&x+iNngt325Rlf6YY`cZTMRm1yEH|87GQhxzv~nmEkA z7tq9E{{4(5z7yKsV1TYaf`xw%wB5*yCY}q87ilzcnEN%*#9`y?CTQX?f5Fy;!R&?k z%MVRG%>B`5;`z|@lz}D=3;$9yaaj4>geDFvpZn3o|3kxT4x0EnX#EabF9vfz%)i^w z)cZm6(P1=kSU6lj6NiPvT{Ll6IJ`m={{ihceMb|Ag#&CI8O)uqa1eyH*I?qXaF9b2 zhvjQ+G;vtIwnP($`PU6iya!r;1)+(%ES>kEiNn(QY&3CL_^dz^hlS5JG;x^w52K0eL))w8(Zpf?x`QST^Vdr> zahSipqlv@JXMvXYuy|Yv4Nn0yahScbXyPz?wa~<2_L`%KKY+GNUC_jhpyM*I{dq9= z{DUh$aqmzZ{x4%>CME;)kH+sRf$&Ea-S_G@5uPG+kw&iFZTC z8_UqdVeW566PJMU`=KC+U;LPILtj6 zXyP#Ul%k2l@^2HGIIKK@jl00Y0cP)7H1*=pbg~mo9Oj;5XyP#UTtO3unez}$99G}I zMH7da{|ikVWou4W|6BmWfQ`De|!_FJ)KobvvmOoR_#CJl+ ze8)}V>Q+M_$r#3P{T^9Y(ati5poO?)2I{5xpk9nkj43p8<6X!-C3P5cH_ zJp*)p9v05;py`tbP5dsjyp}){_lJ(RsGy0%>M2Jwaaj6~M-%@94bN0G@v~5VHk5|B z6LyY6A(}WlbR4f7P5d`>oV^xJd;>IoC!mSjLd*GSXyQ!JcH0~@aoB#IMQGx!(DHF5 zn)p3vzSxRGd>5K{CDc8~(8NWc?cUR9;@hC@gzHdoQ1*c)9dJwS0aP3op4Xw__68~r zQV)^?D`sF|_zD#ViGi~231~UP2ahQ5oxuk$5J|9{h>7t2SflXmx zh=YoQ%!eisuncT}2F!dZ=y+f;l6q*AgVonS#bN4?K^@xx6$hCQP0C>P6QSZT_0ORB z2)3UCq#jzNg4HiWQy&b?N1LGHAob9q7OZ|ZR2*jha%j4Ot$PKjhYpp2)n7nU{{mW$ zJx3E~fu@t6XyS^{@=yv|zrpN%1WhM~XyTsG@QgtdZ-crs4^4b7G#~Y$iEn_8Kd(X) z{|!n+3=9mgdJ^WIdT2WPil*KZY7Qebox;?^&Oeew6Yl_r8UuqWnz#-$KU$-SFNUUv z2sCj$Xnj{_!DTkycSK|3mPx`(Zmy>;>V!kpmYLC z3b1n%??T04;RAI(!&@}*7^pcvpyDudVCPoyL(@CV9Bn9H7D~g!&7pjlJWL#Ro|F|- z9wwd&jdw3JabIX=f~{wVxd$4J@Do!(=0KAISPGV>(A7h;0sPz{*m-VHZ^Ol5=ldX^ zF9gcEfnd`a81$et$X<|mGL#QH-w!4}87dAs?-ay@i7y3l7#J8p=bD0;Fmc#te34m#fxBvb?qX#>;5N3`Z)EwA# z&oFTts5tCALzuWXR2+0JE656%cob9|cFrM8JPj&70i+noJta_a*t#T``bMbuEHw3# zpyKn<#OFiBLFc%Fq+sT(go>{O2_o6M6)FxJhk&U+2o>Lqrv4;U9DH#uk~y&UF!DK0 zpm@9uReuQ09N76gXQ1LBWuS5c$_1az3}S=CKp4aZVOY8aiGeVzd`JLELeD(|iNnet z2EF3S+>*p32EF2vA_$!UV-=<5B7a5CrXD620Xpmsw7wi#u7b*YkX}$)0I7jicMPC%4CZoHme|ptJ%L1JN-3uyPC}2Erh_ zKr{@4(j7=Y`VrYXpzRvix;Rh;@vDrTZ z+DP*POG3;5kud!rHVDTe-KhrR!|)^MJR0mAY?wHjaSRbS+;0J0a0b&4azCh@53?WU ze$Y8{U^8J7P>Up>g_Jf*IFl%7;gU+)9 zSz!Q^0GrCdkO9)bz`#(B+_*=wAEXDQ6x5yrvC;KE0A(x&1_ox3BuF6?!>oY`gU;m! zv0>o^RmSib+JAxu156lnd^MO2(gR|E&ewynL3|kg2GtMa!)SE1piA~ZSrk3}|A6X8 zcNfh4F!N4A(+|3S4QN9L8VxYz=-Gtf2#)kKqZ* #include #include #include @@ -19,6 +20,7 @@ const int SCREEN_WIDTH = 1280; const int SCREEN_HEIGHT = 720; +int MouseDown = 0; typedef struct { SDL_Window *window; @@ -30,6 +32,8 @@ App app; void HandleInput(void); int Exit = 0; +int XRel, YRel; +int XOrg, YOrg; void Cleanup(void) { SDL_DestroyWindow(app.window); @@ -41,6 +45,10 @@ void Cleanup(void) { int main(int argc, char** argv){ memset(&app, 0, sizeof(app)); + XRel = 0; + YRel = 0; + XOrg = 0; + YOrg = 0; atexit(Cleanup); @@ -76,6 +84,60 @@ int main(int argc, char** argv){ printf("Renderer failed: %s\n", SDL_GetError()); return -1; } + + //SDL_SetRelativeMouseMode(SDL_TRUE); + + SDL_Rect rect; + + rect.x = SCREEN_WIDTH / SCREEN_HEIGHT; + rect.y = SCREEN_WIDTH / SCREEN_HEIGHT; + rect.w = SCREEN_WIDTH / 2; + rect.h = SCREEN_HEIGHT / 2; + + SDL_Rect rect2; + + rect2.x = 250;// / SCREEN_HEIGHT; + rect2.y = 250;// / SCREEN_HEIGHT; + rect2.w = SCREEN_WIDTH / 4; + rect2.h = SCREEN_HEIGHT / 4; + + // Uint64 start = 0; + // Uint64 end = 0; + // float frameCount = 0; + // int count = 0; + + while(!Exit) { + //start = SDL_GetPerformanceCounter(); + + SDL_Delay(16); + + HandleInput(); + + SDL_SetRenderDrawColor(app.renderer, 0, 0, 255, 0); + + SDL_RenderClear(app.renderer); + + // if (count >= 100) { + // snprintf(buffer, sizeof(buffer), "FPS: %.2f", count / frameCount); + // count = 0; + // frameCount = 0; + // } + SDL_SetRenderDrawColor(app.renderer, 0, 0, 0, 0); + + SDL_RenderFillRect(app.renderer, &(SDL_Rect){rect.x + XRel, rect.y + YRel, rect.w, rect.h}); + + SDL_SetRenderDrawColor(app.renderer, 128, 0, 0, 0); + + SDL_RenderFillRect(app.renderer, &(SDL_Rect){rect2.x + XRel, rect2.y + YRel, rect2.w, rect2.h}); + + SDL_RenderPresent(app.renderer); + + // end = SDL_GetPerformanceCounter(); + + // frameCount += (end - start) / (float)SDL_GetPerformanceFrequency(); + + // count++; + } } void HandleInput(void) { @@ -83,11 +145,20 @@ void HandleInput(void) { while(SDL_PollEvent(&event)) { switch (event.type) { case SDL_QUIT: - case SDL_MOUSEBUTTONDOWN: Exit = 1; break; + case SDL_MOUSEBUTTONDOWN: + MouseDown = 1; + break; + case SDL_MOUSEBUTTONUP: + MouseDown = 0; + break; case SDL_MOUSEMOTION: //if (MainMenu->HitCheck(event.motion.x, event.motion.y, &MainMenu->Area)) { + if (MouseDown){ + XRel += event.motion.xrel; + YRel += event.motion.yrel; + } case SDL_TEXTINPUT: case SDL_KEYDOWN: default: