From 16cbc5ca619e0475798c5f1a937c2e2ae5b440cc Mon Sep 17 00:00:00 2001 From: stevenhowes <38082088+stevenhowes@users.noreply.github.com> Date: Tue, 6 Apr 2021 21:38:59 +0100 Subject: [PATCH] Copy/paste in map editor, cursor etc --- !TheEsc/!MapEdit,ff8 | Bin 6588 -> 6996 bytes !TheEsc/Makefile,fe1 | 10 ++++- !TheEsc/Spr,ff9 | Bin 99764 -> 106640 bytes !TheEsc/Tools,fe1 | 6 +++ !TheEsc/c/MapEdit | 91 +++++++++++++++++++++++++++++++++++-------- 5 files changed, 88 insertions(+), 19 deletions(-) diff --git a/!TheEsc/!MapEdit,ff8 b/!TheEsc/!MapEdit,ff8 index dcbf90be297e0d978803ffbd14204e3625e66474..76cdb27dc71f43aa8297304ae138640c26875601 100644 GIT binary patch delta 1918 zcmZ8ieN0tl7=O;kh07J;@ReR;+{-l#rxlTzT7O)XFd6Z!`2U-pJmF8jJ*smhaE37C*H^!i~JWSJQTG!XCpXqhvSBI742t(%6=wL$drk$^P)u^%V0Uwi<@re`S0PZOsVd`1cAaRdDLaRak zL#&llLxzNvGc4>MWqUw;-`8bTBdJ(n%#Z`EhFGYZVzq9%6y2=H`4SO*SEAdz?^3Ym zLQiJWLpKZw#Zcl?iHj7UN?ZU>0PhIKRvC@#wRp91aNoRvW!gOzcm%=ok+~8-%Vavl zvWRQl%!V#QtK~r75vJZ?s@f_3>15u_>=NI~?8-*bCWRoM?MnMxGI?5P?7(`HJ%sgk z48Zq~==R?}-TpBGVyuNb^ zGCr}pdjQj^n>DztJlqyvpTwI=OIxjn@p8ibQR`2{yNuF_{$3^)>tml8pi*zAX6 z9*8$oIs&~0d>%Erjcb$gqgEdFKE@ut_couOiaw%Sn4zLNqUNpjTWecN9sMZP*VZ&O zZ>g`T-9~f=oXWcTt*eUaJkK>Y)wS>y5!G&QYHnzPeMXpQZGBzimWG-pEVbjQZ-`6F zv_{G!9+f@M;Uf z(DlU7UH5V!W%>_jsMHgX#48Eyg}H0Q@r0Iux}MN}ntNId^$jI5dPK3JZ>Tg&oH5W= zWq;#2I!sgrpFekMVos}g>e^6y&PJj9R1eXPUX1X0{I^{s5)qDLPUZNIF`^_MRh{1B uDe%3ShvUk=p@O{6rGkU|iIzcDK={M`ybVzyv0m->`RDg}Q{BS!A^iub4+8iA delta 1517 zcmYjRZD?Cn7=F*aH(8Q)?M)j;Q?-d%Ham2)tGX`~vry;63UN*lR-_+MEY8{1{SiNU zGtzC&m93t(F0!?EIHBSXh0dW}oh`04qDTZ$M1S0m9osDf`?JU}KBr5;3oqw=-gDlM z^StjpzigX+Fid3HQYwjx(;5|nM1L>U5&bw6evj=N`glES82bLcs#*`-SUN*gmm^yI zkSlB>+sZewd;6dCP%*7%od69ufvD*|4x9%LmGN%iry^OWp^P5|4mV_-#xmXs{5JNR z%lKj7QQ$|)cq{N{zL8M6|#VTG4oc|y81N*B_IdAct z67i0dN;l5t_!VVa{A*<2Nv3-VSudS7UG?m{PP)f*soiwjkVH?83w~3r<4vlj5@q;y zHRkD=6KXquL9O?G05|&-e@Bfm#?Py9X7G76w*F0+iJIIHQJ@X%sx-97C}A18VG)f8 z8K^>wtw$i%J|`++3XtJc(wsH0iJv zKLdUj1oo~ko#CUNSpPE4d8yD)TZIQD~r0Zc|jB|`45GwmwuCw!*u z{97tg3Irxh*K^#o_eu$w_CW7|<>@G+h>i&_Y%+1OvE5Q;#zbY_v|H;k z7Om<&!|KG}q8A1o$yWvVk|U$hQ7f&_h&&{VVsv9xXmm~lNv@_{L;bU&1>LBHA;iW( z_Gw|vqJhdu>tqPzGbGW^i3}N*21!Q?C{7aEZ26Ex2A8%!X872B z?JGt_mXN>Ve)pSFX^N%rOVV@h=g{xRtp1jMz;yqKnC>7B##=yjnPOd1j$2igsn5)U zu9}me%&=<8XI2ZPdooriniX+xL?}&#g>-6McyPNq6!aYm^6;TGwOyYegFxey=&(>4 zC6{<*-;ETI9bO)a8 z>FYi$H6nVo;}Cz$|Aula$*24$_B?}Bu@dG4?YLDc1sK+4tfm?fDX@HWWo$7+69=x} zI!2U0ScIb%tb1NNbQlq7Z*KBLU>oz^e&r_TD`KjWz>89qR9bR;OLbD&o8x`eQ_7dQ z$u0V*qFl^P&etfb4*aLuD}lA&66NtqrjGN`&=KYCKPKz%*vDGqBShCA%d^~>w^>T?lM;Ogr| z^?S84_@ockM2^o-yB|+so?eydeGB&;=!DO+ODQG9wrxYB(GcRngEXO$5IX5VBR8st z*rvg@b%+EZf;$Ee;ap8PkPsT_KnJRazfby>Wf(Y)B16|TjG&P*bTWZPGU%iyzM*dg zh!502I}s8@2#yUSIFK|*j5p|$~Itky#VYPZ{x3hql-4qiuy(u zZJZVLjV{_aE9x6vv~ia18%gRp>t&vCW)lRZKU=SBNoH2PG~A~i35qyZ!UY4%Jo9+> zd)0IHZnjN%8n*3i8h+SK_2!c_JA9UUM^DoqueQtg|4Z_ZLQOHje-R delta 24 ecmbPmkZnsh8 (950)) { TilePlayer.location.Y = 100; @@ -140,7 +140,7 @@ void game2_tick_input() // Down arrow if(input_readkey(41)) { - TilePlayer.location.Y -= 3 * (tick - lasttick); + TilePlayer.location.Y -= 6 * (tick - lasttick); if(TilePlayer.location.Y < (10)) { TilePlayer.location.Y = 900; @@ -151,7 +151,7 @@ void game2_tick_input() // Right arrow if(input_readkey(121)) { - TilePlayer.location.X += 3 * (tick - lasttick); + TilePlayer.location.X += 6 * (tick - lasttick); if(TilePlayer.location.X > (950)) { TilePlayer.location.X = 100; @@ -162,7 +162,7 @@ void game2_tick_input() // Left arrow if(input_readkey(25)) { - TilePlayer.location.X -= 3 * (tick - lasttick); + TilePlayer.location.X -= 6 * (tick - lasttick); if(TilePlayer.location.X < (10)) { TilePlayer.location.X = 900; @@ -189,12 +189,33 @@ void game2_tick_input() readmodkey = tick + 10; } } + + // C + if(input_readkey(82)) + { + if(tick > readmodkey) + { + clipboard = fullmap[TilePlayer.rawtile]; + readmodkey = tick + 10; + } + } + + // p + if(input_readkey(55)) + { + if(tick > readmodkey) + { + fullmap[TilePlayer.rawtile] = clipboard; + readmodkey = tick + 10; + } + } } int game2_tick() { int x; int y; + int i; int udt = 0; lasttick = tick; tick = clock(); @@ -203,14 +224,23 @@ int game2_tick() if(1) { + screen_clear(); game2_fillmap(TilePlayer.mapoffset.X,TilePlayer.mapoffset.Y); for(x = 0; x < TILESX; x++) { for(y = 0; y < TILESY; y++) { + if(1/*map[0][x][y] ^ map[screen+1][x][y]*/) + { + map[screen+1][x][y] = map[0][x][y]; + sprintf(tilenamebuffer,"%i",map[screen+1][x][y]); + draw_tile(tilenamebuffer,x*100,y*100); + udt++; + } + if(game_hitbox_collide( - (TilePlayer.location.X + TilePlayer.hitbox_bl.X),(TilePlayer.location.Y + TilePlayer.hitbox_bl.Y), - (TilePlayer.hitbox_tr.X - TilePlayer.hitbox_bl.X),(TilePlayer.hitbox_tr.Y - TilePlayer.hitbox_bl.Y), + (TilePlayer.location.X),(TilePlayer.location.Y), + 1,1, x*100,y*100, 100,100 )) @@ -219,15 +249,14 @@ int game2_tick() map[2][x][y] = 255; TilePlayer.localtile.X = x; TilePlayer.localtile.Y = y; + if(screen) + draw_sprite("select1",x*100,y*100); + + else + draw_sprite("select2",x*100,y*100); } - if(map[0][x][y] ^ map[screen+1][x][y]) - { - map[screen+1][x][y] = map[0][x][y]; - sprintf(tilenamebuffer,"%i",map[screen+1][x][y]); - draw_tile(tilenamebuffer,x*100,y*100); - udt++; - } + } } @@ -239,8 +268,36 @@ int game2_tick() game2_tick_input(); - draw_sprite("man",TilePlayer.location.X,TilePlayer.location.Y); + draw_sprite("cursor",TilePlayer.location.X,TilePlayer.location.Y); + x = 1100; + y = 600; + for(i = (fullmap[TilePlayer.rawtile] - 3); i <= (fullmap[TilePlayer.rawtile] + 3); i++) + { + if((i >=0) && (i <= 255)) + { + sprintf(tilenamebuffer,"%i",i); + draw_tile(tilenamebuffer,x,y); + + sprintf(textbuffer,"%d",i); + draw_spritetext(textbuffer, x-60, y+30); + + if(i == fullmap[TilePlayer.rawtile]) + draw_sprite("select1",x,y); + } + y = y - 100; + } + + x = 1180; + y = 750; + + sprintf(tilenamebuffer,"%i",clipboard); + draw_tile(tilenamebuffer,x,y); + draw_sprite("select1",x,y); + + draw_spritetext("Clipboard", x-174, y+30); + + return 0; }else{ /* screen_flipbuffer();