From 723532c636abdf8ac5837ce20697af7c414c4458 Mon Sep 17 00:00:00 2001 From: Jonathan Hager Date: Mon, 21 Nov 2022 00:05:29 +0100 Subject: [PATCH] Rectangle and movement added --- main.c | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++ main.o | Bin 4504 -> 5544 bytes spiel | Bin 16224 -> 16464 bytes 3 files changed, 52 insertions(+) diff --git a/main.c b/main.c index 33fb650..c24c249 100644 --- a/main.c +++ b/main.c @@ -1,6 +1,7 @@ #include "raylib.h" #include "stdio.h" #include "sprite.h" +#include "raymath.h" int main(){ @@ -11,6 +12,13 @@ int main(){ Texture2D texture; struct Sprite sprites[100]; + int destX = 0; + int destY = 0; + int clicked = 0; + + int pressed = 0; + Vector2 rectStart = {0,0}; + texture = LoadTexture("amulet.png"); int j = 0; @@ -21,6 +29,8 @@ int main(){ camera.rotation = 0.0f; camera.zoom = 1.0f; + addSprite(sprites, &j, &texture, cursor.x + camera.target.x, cursor.y + camera.target.y); + SetTargetFPS(60); @@ -44,10 +54,39 @@ int main(){ cursor.x = GetMousePosition().x - texture.width / 2; cursor.y = GetMousePosition().y - texture.height / 2; +/* if (IsMouseButtonPressed(MOUSE_BUTTON_LEFT)){ printf("Klick\n"); addSprite(sprites, &j, &texture, cursor.x + camera.target.x, cursor.y + camera.target.y); } + */ + + if(IsMouseButtonPressed(MOUSE_BUTTON_LEFT)){ + if(pressed == 0){ + rectStart.x = cursor.x; + rectStart.y = cursor.y; + pressed = 1; + } + } + + if(pressed){ + float width = GetMousePosition().x - rectStart.x; + float height = GetMousePosition().y - rectStart.y; + + DrawRectangleLines(rectStart.x, rectStart.y, width, height, GREEN); + } + + + + if(IsMouseButtonReleased(MOUSE_BUTTON_LEFT)){ + pressed = 0; + } + + if(IsMouseButtonPressed(MOUSE_BUTTON_RIGHT)){ + clicked = 1; + destX = cursor.x + camera.target.x; + destY = cursor.y + camera.target.y; + } if(IsKeyDown(KEY_W)){ camera.target.y -= 100.0f * GetFrameTime(); @@ -62,6 +101,19 @@ int main(){ camera.target.x -= 100.0f * GetFrameTime(); } + if(clicked){ + Vector2 movement = {destX - sprites->x, destY - sprites->y}; + + if(Vector2Length(movement) < 10.0f){ + clicked = false; + } + + movement = Vector2Normalize(movement); + movement = Vector2Scale(movement, 10); + sprites->x += movement.x; + sprites->y += movement.y; + } + EndDrawing(); diff --git a/main.o b/main.o index 29edc57489941d498d44f408633f369e79d4c04d..6b235b675dac36d4dad1734a7d280be8ac16719e 100644 GIT binary patch literal 5544 zcmbtXZ)_Y#6`!-+*pwuDE&&3K#C=G>1oz0FN@=4C&i2`vC{ASJBn?uFyYa1kNAGT} zyS=2TMD55~lzYmqucw-FfqSzxU?7H-GkSdT@BCEf!;{#n{)_`beRS^*ppLr-YbdTiF(Nl6$xL z?41PnzSH1dWtDp;SG=RQ(%#@r?hmf|Y_>5zeKrvJEBxxs4(=_|u)$;KR=C%;p>lb` z_-Ad+*gbe_&FD^b{cp}qa5e{=>PQTN7ypOBs}CSj?$uY&U%q|~(T?&9ceZyjmf?QK zt{$NuT-jS|kr#itNCj9(v@<5m>TcqLW)lwT?#`Cf(~^3n6a?Jurf96>G|9Z`t~Stp z8a}x9M->nE1BE}=fZlVT0o$9)Qs=vj-kv)}@4CB#-om&lIqnD{Yern;N6EXVL*u7t z%D~Fe&1Umb-Mg`i3eeob*j?sb^KOv9 znk4*1&}jR0HLoDZ<`tyTyn?i)>Q{-n`zQ@FWKwtckc2|M{|kEg)fKAy+s%10XbwB##6LAf^E8Pz^^tEff2TRq!Gehz^Vz$i#2Ee>^tJnRd%l@5S+VKb~G2x zUfl%|_n9;?F21Q8wPGftYKmwo$j39b1tMm z)+D%&0u#s!efMb+1O}7YcTf>#T>LAU23OhcRta7wm0C$oveKgnDA605ewbvss|AhI z9>1q7##fil(xQl|Xr7Po#4e+|9oAB*DoQHpOebOX*Mlg8QE-8FyAqR;#a%?Dbcj|& zC0?_uv5Pgs{rP_+I8Sj=U?*2H{43kU7teV>5V`+!UDURik5esbJ=F&$ra0<7VDs6q`yX$bB?xSMr&Gyj`{^L3+!QjE$8YN_A{J`|Q|+ znak6{QhP1v=ssesot_WzW02YpC5}6aeyX+b-%4EZX_-X(v+Tjg8CQOKB|-7GO5Op9 zgO58;@ux$4b=SQd!V}U@ErjF#Lt75v34tGAZ4ae^Z#m}PX)G#kcNU z`-y9~?q|Ei!+s8GeBIB0hUgUc+&wRXhoj(GU+F)lyPW z_*+VmET1np<{6eOJEfq{Dyd}U&7?!OK1*gy$7IPf|ii%7Yg+2j3tYv55o^0UB%8pIoN>(%fUwwkCarMaMYWYe@X;IckDdaV!h77gD zTBcfv6vUqs#%7?ThPw#1xP#HKmS|t32e`aG0EyP7hzgK>cz&EOP{a0dX^*=?Z{hJ? zQo^Uc#^5Xa$1u>EOs9oBP7>_ZepL!C=T9g=_9}kW_Y3ERVG fcE8>H_M1ei^vV!CaQ5wQ@?wuXE1bg6~bMN<^^PPL|+0Gqxdy@;dLIqB%NR_(3B92Y zpfBi2c)^eRKeS*Ktz7OEAt$7E^dNf?!Gf;gjA$-TqcbzH4X}jmRWU?OU4w+Uo7bRI z+=c#DdH`Wva*1g%Gd5*I>GzLg%%NME2pF5lWH@DWNV(l<_7eFmxE}TXev^pwK4NrAz$XnV|l3 z6PBtDK*+OG>b}~4;R+n|sLlpmrZ`e@_$;fiD3|!x zWX4ZZU!eXQta%T?Wc72n?NcG|YZ>?Vb*+%Sq6s)e909UG`(p==^pkOHlB1)w@iyV) zC+sDcg1lel@4y=RESV3!`Y&^TIrDuPC(2$Nj`AFXS2Or3gZmiVOSXVUbjX)*biUen zBPGaj9O5ri5M=Ov7z(I^*U0J7h+GJVQ}wI@{++>VnEYZHcP?lfa>PnZz8lw$emiN% zaf7rmc{vVo$|fitX7JMtt}yu7GVU~PLXOxiCZE+AVQ>ZeZ#5pRAT-GoutM(`oZV2q zg3b>ne@mwa-_{C4utL8o2-VOZ&HiK&JgIYYQFszm_v~fZD8sffxcc@+jlv6E65J0r zdnd_5N1G90KHMxA5*!XkAtbvXuGC9eQing10%w#4AuGYK(kjoD#S*|Hv82=sMW!l3 xmnS2wLd*@r7zX_CG14mEBo6?s9pu_$@|4G3{iYh{YU||*@}AMIQ{-{j_YY<=sW1Ql diff --git a/spiel b/spiel index d181181fa65597b82f4cb3272f0fe9cc0a5ae876..f6c02a60c11d7a331af6a72f5bd29feab543c193 100755 GIT binary patch delta 3484 zcmZu!4^WiH72iGX;O>OnKj8RhIg(JRLGD21ugD=J^Ce>(l^RSUtu!2RE#ZtnlBTU3 zfzO0FZwB4iCX;E0w6T(zw1Xjz*u-*ZBIqJ>9m^I_UJGZEFC>b+pq8K?nheU z&V29hZ{NP%eS5oi?ci*f4re(>9E3N&U}U!P$l9M-|4zBGrWziS7Gz_-GY|1p@d${}2P;Yl&OK(q4sB34S zGtk-{Xd{mWp6Ur5C~JDEwKJeATLWGDdOFzi$t@eDdt2zh)2*Gs7XqX?*wq$#uBju` z+u7F88R`y@#sjU-?Sv?;UHdu%TZ3JJZuZyYAF+cedEcQheM*uz6|#}b25$Wb*2c~k zg^+iT{18^jNUlg*dN7zqpywx2@68EX2r-a((6Noy3T_sRgc&uvv;9t?&ien~JIhMV z4^Rth0gT)~4p^uYINYFI7B#zR7CUY}LCx$@iQ#_O%$GrnWrLU%mjC8Psua&GoN znx+-*L>(tQ7vuUPsAINsV_e^YI%YXH!u4v@Gf*Gq`V*|dv36TU2_gS%FR|qhf`<@W zzMm-3S_)VtYFYxPQkCe*P$H&V>p)gxJr?bnEkBId^O6Jpw+M`Gyu{vf)CAQw!}uw3VvzCWfSVmfaB zx26qWJiiOjO-lcK7A#Dg5-}DQ@dyvbOJk7hyBvJ(*XN)@COvQv<6nbr)2io=rU8yj ztM@NUMaxpLl-g~d#TIQ2)epKZD~+HiQFS4KETfeV@CQt21R^UD;fNedpnpi+i|Ca3sB-W!P>6a4#wJTT~HPFsGoP*Gld;1L5^S65z17; zBT;=(jJaqNuuULGqBkJplVswCSh(x3s2X25ACWUd0H%fTMO*O<$~XeZvnY#@#S18l zEQ(`|5f!_^h6e#T2^o{P_l~v(CvO#VLfa%xEZz)Aus<}dV$q|C)n~frNbvI)D4>0PdX0Ar-F z6--3M@1UElUQVjDs3_~yNYS)K1?^h`WBE;AOj0@FlMo-XQ1%o$}QI7 zc3UrlU5T_LE}kFnbDuFC^%N+OE+N+&2x*0H2EH)dZ!=p6@zm4Yq#7T1;U|II_)OEj z5B%#lHSJB{ZNRqzfA}AohUfh@3wqWV>^Ip_PZ{0MKJ?s|J-VQ2`c(@Ek_X=&_*6y< z@^f6!F&%HK`g`n$3=L_?%0N<5N=j;qdAz=0Un+|kQXUV>t69IIu@bSpE(KkGdxd^_ zg+8@H|A^6&e1nq1?k)L7!FIgJp-D!@;2OXtUuh)4-YBUnvm1m}zritcZ2H|ChL;95 z-5xVDr+4$Zuv`E*%OP~@8N zOE;#|_u2I%H@(XG%iQ#D+%r~Yb}aZsAN@^s8&TN~h-<$~9$&%dB`xB#8XlN#x(nsf zR=_(9S>&pWCSnruw6xEzu=8gseTm0;1!?wiK4SKlBAn!y-*Ak07s9KlUXL$0%m%Vb zAYE;Mea6gJW?})mlbtlUOnJ*v(X#ZQE@kgT308Eyd;;qy6 z%YTXVzeXp_?8TZAt6pqM&iJotk_~i*P1SlWdg0EnJGB*Q*W|We#a|&PEEn6pxd=+| jyPNB*3A91$FtT%-%Po613N^@RU4`Xhh0s!9g8Baihf|Bs delta 2405 zcmZWreNa?Y6u);r*nNDoEbQ{YC>9zLKiCBlHsxa%L49M6ALBUajHVB(l;x8B0iyFd_r3dU!aMWsxxaIM z=iGbGx$oUK+)77xcc!PTv=g=YH9!jNbSE= z`;d!XNBJxd zL1E5eV*W(4Qwp0GBT))Qn+0XmmetD016(41k{LUS|AvH=%<3f0v?`4igD8j)4>_gVzn{Y4m2ejOR%Lz$>P&F8q% zc1@jQn9q?p2`{8or7{W&`7949FPef-n#bUng74B^bS{0MD0`#L8?j~tk25QX_yFE< zlzG^cSg>vsm7xh{IFBLvYj6khyP8+7d=Lki|D@vr1kzopJX)??%k|p?_%z+MN7VUl zuCKs1@V;%`5c&qSYOTG%s>8@E&9`$QJ`t>o!SQ$nPkj%n!E00T()f;dI>&@Nf~vKfTZgCle$K4)8