From dcee688e713e278efbfdc514f49b22719f6abff7 Mon Sep 17 00:00:00 2001 From: chasmiccoder Date: Thu, 10 Feb 2022 22:32:33 +0530 Subject: [PATCH] ADDED WALLS BEACHES --- .gitignore | 3 +- images/map_outline.png | Bin 0 -> 24401 bytes images/wall_frame.png | Bin 0 -> 24102 bytes index.html | 1 + js/OverworldMap.js | 16 +- js/walls.js | 504 +++++++++++++++++++++++++++++++++++++++++ requirements.txt | 3 + wallGenerator.py | 58 +++++ wall_coordinates.txt | 502 ++++++++++++++++++++++++++++++++++++++++ 9 files changed, 1075 insertions(+), 12 deletions(-) create mode 100644 images/map_outline.png create mode 100644 images/wall_frame.png create mode 100644 js/walls.js create mode 100644 requirements.txt create mode 100644 wall_coordinates.txt diff --git a/.gitignore b/.gitignore index b56df71..ca4b69d 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ .vs/ .vscode/ todo.txt -thePlan.txt \ No newline at end of file +thePlan.txt +venv/ \ No newline at end of file diff --git a/images/map_outline.png b/images/map_outline.png new file mode 100644 index 0000000000000000000000000000000000000000..ad315e471772b44d97932811fa3e80305682e00f GIT binary patch literal 24401 zcmeHP4Qx}_6+Xs*1A&;S6O{6kuI-@O%FyC9kxA$?jH;nqs;+9gbXk5VC0>Qo0A{f> z2R{Q_J5;o^MTHqVB-#&}D8dP0AuNvbD1)vdd7j2b2u^H6O5QU6g6BBK_Pe{!Mk<<+ z_fREB$GuWy=h{x9FX!IxJKs6??s@Tr=jP6SWHtcIU0=HHB>bKQlfq7xwUYNT|ADznXX<_wg#Z1IXAgs20+!=`gLnw)=T`Z zopsWpd2m|WcC4K8ZTs=M-$?f>mi%*IdAw@a8ETc_kK&Otsm?rs$ELrSdG_dc0skCf z6p$%`L^={kOpv88rIx}oQh@61p(U5Lu?um8whc^wG99S!-q%diGS3!HBUAs4#B~hT zp>3g-GS0el#YGCg{BJYa?K3E4-{Xu%GzW*AHjSO6L60zjdXakCS2G{}%RE(vQB89s zWGaox7evB@@ifgQV3M#(M^n}Xwzt(oNf~XhH*#FdhK~iJ^(je(pN8sDkNam7U}6VoMh-2tK@`Jqn3nI^gj}PFwmBRBr>BN<(oQ5=}Ef&-UsHTeLGx zF-f{^<|1{F8j*Gl7kGr5cC98o%_I88E7j2Pq^v$^w4L#iGT?zt_w%a-|`)0v)* zxjWyi%?mF}$YD{JGv8YoY}Fjc_CxIZq`;KXFWF0N9!bsF-Waprth7{BBUdZc{z=@q zjFY#YO~@=(T5}`u4%fW;%a=jJ7p!Xt*kv`d?@&P68-mTXW12t3mQHAB)cz?iYd@2c znidGGgI>SjbM|q~2S^GdDur=KOE%Z$r6X9ihj7VVaEXc))^i|QqCrz6}XTiOs>ZBH*$CfAOFH~3ka4g|I-q^zele)C5R&ckM< zeX}9e%SL3te9w-J!k8Sw6@+uebZG1ig-;klL*G%zy2@!GvvZHdWdO#r*e^^TBE%t* zINED4*@i2ynjViv=tP8WNi6p_?m(Rg{9AbY4xUs1M9CIDnc@WRLDJCQFM-M54~9^% zy5}h6tKSz@rzDK6&O>!MY2u2Ba>ZKv&|)wK-G;&ej3yp!T-4KAMlw4A3%Fww<@F`$ zmp;fiGBEix2{lonrc1+CdeAHd+gDUqHpJY5CS+(FaMjbxp>T3RclsTq9FSFwes0O& za?0C*SaY45_Es9{q3F$cWEHn^rIz;-ao8p%l#=m;Q*vl~Xm$9AS?TXU{^R`46%(k^ z7D6tcGk*T?V657iZ?RJL{`hFzMH;?Db$LwYg^!w*;Uk97hUS!d(1#mDMmMQL3;Jy`xjoZqoN95>Y7mNo}6}U(qNXT5a)D^{y%!+E1r85Bg&ASiPx;SYD#E zqu@e>f0;>Uz!-=|)QO~LjF&L)5-(fS84-`fGz0T?MeP_s{Z{mI-6MG z@-&O~Y=E2sQ_t(EBj0RY=AQPdV#&i7f1oR$mnNvsdn|A}PRY1cQ4|O=D_CmF`9SI-?-NaP*SVoaEl4(hK+oqD-fp>$vz`GNDY6MihRpS z4M%P!6|~+wSJaLn&fWa~eHRW(X!=JGmkI1wqcM+`wfD!IE-TIDztuq;TrncEX{Kp; zAUM38UD$nXBF@#FAq%F z2-_oIj&d@mLoK3TG?CiKOYNT$vK39XkJe{Q1mS!wp$O3w0b4n% z#Er!<*w2z^6CG_Pq|wRr__6`4^2jPB@*=~L+2zFpTy%B@s)t93X(our;3RmRLVll5Q{K81t_rDM$&Ar!&QkVC_w4h@&k!i~PA#aw?` zPcak?^T^F2IWu>D8=l4^yDM<73QbeBn0Ahf3pN~3`1%+ec;5Z47z)^F(C6opTDAbp z|G20*z1xB6BCcjLmhuOaM(gWMr7uQ%2nI(6lg_Nfe#f89jP^9&NV(PUEk{D!qZdVb)dQg~_ovoEYWwzg*1 Fe*n4im68Ae literal 0 HcmV?d00001 diff --git a/images/wall_frame.png b/images/wall_frame.png new file mode 100644 index 0000000000000000000000000000000000000000..bbf61e340fc3835105da572fa701dd2145b0fa83 GIT binary patch literal 24102 zcmeHP4^Wfm8GpjR*rJVA1+m=#udUrg#j;8P=ZD2=xmD}gbuJbKri8lOAQI(|5x<;l zY6m@RcN;|0hTB!?ZsNbxB^Eo^(hBNzh7$7y=Cv;Y+@E@0Up3-P-uwb){~+ z?;Q}nOCa~l?|FaE^Lw86du!Fo<&z$r`6vKPN_~0hY5;LEz$5AjA^3`T7L|y9Jfe76 zsssp~%72MqpLPbmC{nIo{vsT1da?)q5|q7U#S(yH<)QA(V1RYCsY{pqyijzzy>v>) zv(sS7mIFs8=uT}(ZDTK_6og!!wK(bATKqDy2m%CwhYSJ6d`k+@pJLPIp5ALR#7)NU z@2tmg?_JIcTIG8bl>#`@`Sl#RG>XLg!N9!Ulwg_pk?U{btg-iJo9>wmr(RDO_#$C39u*`?le?Q(bL;%UZ177;^+Bl)g`xBCPkxK*# zF9P>DQLhK%UA$* z-M}~qBddI$#Df@_(a_0COYnZUGrHvlebsJ3b~6=w-YsT=Yz`?$i>%AY)+lgmG=7G$ z1faGw4Yx+Ik?M%>yQzT=o9fBvER9Pt*&FD5b{v#rYH((`)U(MWQ@QGd!` zo_k{*#9Fn^nk6bnwumWTafE73&yl&$n6@LP=AezL{31k9%#U}IYhWHM^OYq$|IDbz zCWgKZsK~`R^M@?@9EwiB-6DUuZ- z{Xtu#nF1#FVa#ukUO9VV-kD?w`cZP`g6-W;&+cj$?R!0xJp1K1aMU@)}Cxw*gg<;+uafaTNA97}IkF%NEtxBLl-Cl^8C)x7-8q%Qhk73$>U97E-Jx>yAAro2yF*C4>9Txj5hy5{t z9k+&DX4jRN-sX}08$D7Q`sFQ-@*dVgz!V0i*Cl)YO)r=@&zbPC$CXV4#*e_@Rw-Uy zbAcZp2?mPT3W8F)du@SKud$sKw943q<(bFQt!by}DH)trE7l~90lInS21Xnbp?G=33;uO`jz7v5Wl8DYXicWud zanjMZX9NXA?RmOl>&=#m*IxSJCQVON(Zu?{2Hrotg9iZ8HaR>sC9-a*V$U6kHg6m1 zI@Io>ZS!$=wFq685sC_;Xtqdkz~nMKwl5-k@|8r7d-I<>65Pe=jX`uyx5pXNOlg%Y zmyNmzpn`@Yv5Nuyuf;iW_rQ48?l7wyx$7D|wwzY;9Z7X1>A(2$q6hU~m_OpU7TZnc z;N9BwsKY+UWqSg_jTJn-4;3g8tXx2v{5~lCx213${#d0Z`*bws;pymV7u6eyCnWNa z*cwDc=o>}o-wv4JgBy5VAL_IuzA4*Y(zUi)XKq=9h^s4b8mNqK%z#_((-=##b#=8% z*K(VNjs{ZE2&`x@fa(u5MXl#B3$L#=9HFi2Np>SJyTPZ!r{cYDb7Ny#vAC|-bB$vI z71b>^vorjKbA*9H8L0l*ZIgNHrN%|28&)E&8n+ODnM-UQK|@{+46-`3v5{AjhB%V9 zU>NXvVBP}O$K#xb@L4NM;y(v1{M`x68KfO8s2v@K!CKR%qD$o$%W^@n$AkB}VM)gY zvfl~X@A%2Ds9fwWlw$azK&)L%-$qdI90^?v3|^$^OAdE)Fx1k&v=iu;B`m z4Hz`V0ZmaDD5jGVO;CyE9X;eeZ(I~=yxhs+ZYi~q2!#-#`1TWcV|HSgyj39u5BWF* z4OtK}5i)r*8G$C&|4Uf;hKtaz9iF+y&#+vAb@%sP!@E!9E;mdsSv4&vdRx}DFMIy} z&gzuMKe$ttwzI3`A6Ufvw+j3n5+1V&sKxxSTSJm81mv|Am zQE5sR(Mh&Q=sZvOCxm}@y@%tXDr*0BR%Vob`aL{)s5) z|8ZCqzJ!;5L*=U}%&)nx+&H-8gJ_(6@1HZIZ`IFhqwpyreld>W(VLJ@8SghOxqm}q a%Z1DnpMG-uOb`!I>Pst^9)2-n=f408g_b-3 literal 0 HcmV?d00001 diff --git a/index.html b/index.html index 48bd6cc..b59056a 100644 --- a/index.html +++ b/index.html @@ -21,6 +21,7 @@ + diff --git a/js/OverworldMap.js b/js/OverworldMap.js index c6370e9..8c05c01 100644 --- a/js/OverworldMap.js +++ b/js/OverworldMap.js @@ -129,7 +129,7 @@ class OverworldMap { this.walls = config.walls || {}; this.lowerImage = new Image(); - // this.upperImage = new Image(); + this.upperImage = new Image(); this.lowerImage.src = config.lowerSrc; // floor // this.upperImage.src = config.upperSrc; // what is rendered above the floor (above the player) like tree tops @@ -266,14 +266,14 @@ window.OverworldMaps = { lowerSrc: "./images/FINAL_FOR_REALZ_.png", // current best map is= ./images/official_assets/ourMap32.png // lowerSrc: "./images/ourMap16.png", // lowerSrc: "./images/DemoLower.png", - // upperSrc: "./images/DemoUpper.png", + // upperSrc: "./images/blank_guy.png", gameObjects: { hero: new Person({ isPlayerControlled: true, src: "./images/Hero.png", useShadow: true, - x: utils.withGrid(32), // 32 44 - y: utils.withGrid(44), + x: utils.withGrid(15), // 32 44 + y: utils.withGrid(20), }), // myDrone: new Person({ @@ -470,13 +470,7 @@ window.OverworldMaps = { }, - - walls: { - // [utils.asGridCoord(7,6)]: true, - // [utils.asGridCoord(8,6)]: true, - // [utils.asGridCoord(7,7)]: true, - // [utils.asGridCoord(8,7)]: true, - }, + walls: WALLS, cutsceneSpaces: { [utils.asGridCoord(10,9)]: [{events: hemanthPath}], [utils.asGridCoord(11,9)]: [{events: hemanthPath}], diff --git a/js/walls.js b/js/walls.js new file mode 100644 index 0000000..933874b --- /dev/null +++ b/js/walls.js @@ -0,0 +1,504 @@ +const WALLS = { + [utils.asGridCoord(12,2)]: true, + [utils.asGridCoord(13,2)]: true, + [utils.asGridCoord(14,2)]: true, + [utils.asGridCoord(15,2)]: true, + [utils.asGridCoord(16,2)]: true, + [utils.asGridCoord(11,3)]: true, + [utils.asGridCoord(17,3)]: true, + [utils.asGridCoord(10,4)]: true, + [utils.asGridCoord(18,4)]: true, + [utils.asGridCoord(10,5)]: true, + [utils.asGridCoord(18,5)]: true, + [utils.asGridCoord(10,6)]: true, + [utils.asGridCoord(18,6)]: true, + [utils.asGridCoord(3,7)]: true, + [utils.asGridCoord(4,7)]: true, + [utils.asGridCoord(9,7)]: true, + [utils.asGridCoord(19,7)]: true, + [utils.asGridCoord(35,7)]: true, + [utils.asGridCoord(36,7)]: true, + [utils.asGridCoord(37,7)]: true, + [utils.asGridCoord(38,7)]: true, + [utils.asGridCoord(39,7)]: true, + [utils.asGridCoord(40,7)]: true, + [utils.asGridCoord(2,8)]: true, + [utils.asGridCoord(5,8)]: true, + [utils.asGridCoord(8,8)]: true, + [utils.asGridCoord(9,8)]: true, + [utils.asGridCoord(19,8)]: true, + [utils.asGridCoord(30,8)]: true, + [utils.asGridCoord(31,8)]: true, + [utils.asGridCoord(32,8)]: true, + [utils.asGridCoord(33,8)]: true, + [utils.asGridCoord(34,8)]: true, + [utils.asGridCoord(41,8)]: true, + [utils.asGridCoord(42,8)]: true, + [utils.asGridCoord(43,8)]: true, + [utils.asGridCoord(0,9)]: true, + [utils.asGridCoord(1,9)]: true, + [utils.asGridCoord(5,9)]: true, + [utils.asGridCoord(6,9)]: true, + [utils.asGridCoord(7,9)]: true, + [utils.asGridCoord(20,9)]: true, + [utils.asGridCoord(21,9)]: true, + [utils.asGridCoord(22,9)]: true, + [utils.asGridCoord(23,9)]: true, + [utils.asGridCoord(24,9)]: true, + [utils.asGridCoord(25,9)]: true, + [utils.asGridCoord(26,9)]: true, + [utils.asGridCoord(27,9)]: true, + [utils.asGridCoord(28,9)]: true, + [utils.asGridCoord(29,9)]: true, + [utils.asGridCoord(44,9)]: true, + [utils.asGridCoord(-1,10)]: true, + [utils.asGridCoord(44,10)]: true, + [utils.asGridCoord(0,11)]: true, + [utils.asGridCoord(44,11)]: true, + [utils.asGridCoord(0,12)]: true, + [utils.asGridCoord(7,12)]: true, + [utils.asGridCoord(20,12)]: true, + [utils.asGridCoord(21,12)]: true, + [utils.asGridCoord(22,12)]: true, + [utils.asGridCoord(23,12)]: true, + [utils.asGridCoord(24,12)]: true, + [utils.asGridCoord(25,12)]: true, + [utils.asGridCoord(26,12)]: true, + [utils.asGridCoord(27,12)]: true, + [utils.asGridCoord(28,12)]: true, + [utils.asGridCoord(29,12)]: true, + [utils.asGridCoord(30,12)]: true, + [utils.asGridCoord(35,12)]: true, + [utils.asGridCoord(36,12)]: true, + [utils.asGridCoord(41,12)]: true, + [utils.asGridCoord(42,12)]: true, + [utils.asGridCoord(44,12)]: true, + [utils.asGridCoord(0,13)]: true, + [utils.asGridCoord(6,13)]: true, + [utils.asGridCoord(8,13)]: true, + [utils.asGridCoord(20,13)]: true, + [utils.asGridCoord(30,13)]: true, + [utils.asGridCoord(35,13)]: true, + [utils.asGridCoord(36,13)]: true, + [utils.asGridCoord(41,13)]: true, + [utils.asGridCoord(42,13)]: true, + [utils.asGridCoord(44,13)]: true, + [utils.asGridCoord(1,14)]: true, + [utils.asGridCoord(2,14)]: true, + [utils.asGridCoord(3,14)]: true, + [utils.asGridCoord(4,14)]: true, + [utils.asGridCoord(5,14)]: true, + [utils.asGridCoord(9,14)]: true, + [utils.asGridCoord(19,14)]: true, + [utils.asGridCoord(30,14)]: true, + [utils.asGridCoord(31,14)]: true, + [utils.asGridCoord(32,14)]: true, + [utils.asGridCoord(33,14)]: true, + [utils.asGridCoord(34,14)]: true, + [utils.asGridCoord(36,14)]: true, + [utils.asGridCoord(41,14)]: true, + [utils.asGridCoord(42,14)]: true, + [utils.asGridCoord(44,14)]: true, + [utils.asGridCoord(9,15)]: true, + [utils.asGridCoord(18,15)]: true, + [utils.asGridCoord(36,15)]: true, + [utils.asGridCoord(41,15)]: true, + [utils.asGridCoord(42,15)]: true, + [utils.asGridCoord(44,15)]: true, + [utils.asGridCoord(9,16)]: true, + [utils.asGridCoord(18,16)]: true, + [utils.asGridCoord(36,16)]: true, + [utils.asGridCoord(41,16)]: true, + [utils.asGridCoord(42,16)]: true, + [utils.asGridCoord(44,16)]: true, + [utils.asGridCoord(9,17)]: true, + [utils.asGridCoord(18,17)]: true, + [utils.asGridCoord(36,17)]: true, + [utils.asGridCoord(40,17)]: true, + [utils.asGridCoord(42,17)]: true, + [utils.asGridCoord(44,17)]: true, + [utils.asGridCoord(4,18)]: true, + [utils.asGridCoord(9,18)]: true, + [utils.asGridCoord(19,18)]: true, + [utils.asGridCoord(25,18)]: true, + [utils.asGridCoord(33,18)]: true, + [utils.asGridCoord(36,18)]: true, + [utils.asGridCoord(40,18)]: true, + [utils.asGridCoord(42,18)]: true, + [utils.asGridCoord(43,18)]: true, + [utils.asGridCoord(44,18)]: true, + [utils.asGridCoord(2,19)]: true, + [utils.asGridCoord(3,19)]: true, + [utils.asGridCoord(5,19)]: true, + [utils.asGridCoord(9,19)]: true, + [utils.asGridCoord(19,19)]: true, + [utils.asGridCoord(23,19)]: true, + [utils.asGridCoord(24,19)]: true, + [utils.asGridCoord(26,19)]: true, + [utils.asGridCoord(27,19)]: true, + [utils.asGridCoord(28,19)]: true, + [utils.asGridCoord(32,19)]: true, + [utils.asGridCoord(34,19)]: true, + [utils.asGridCoord(36,19)]: true, + [utils.asGridCoord(40,19)]: true, + [utils.asGridCoord(0,20)]: true, + [utils.asGridCoord(1,20)]: true, + [utils.asGridCoord(6,20)]: true, + [utils.asGridCoord(7,20)]: true, + [utils.asGridCoord(8,20)]: true, + [utils.asGridCoord(20,20)]: true, + [utils.asGridCoord(21,20)]: true, + [utils.asGridCoord(22,20)]: true, + [utils.asGridCoord(29,20)]: true, + [utils.asGridCoord(32,20)]: true, + [utils.asGridCoord(34,20)]: true, + [utils.asGridCoord(36,20)]: true, + [utils.asGridCoord(40,20)]: true, + [utils.asGridCoord(-1,21)]: true, + [utils.asGridCoord(29,21)]: true, + [utils.asGridCoord(32,21)]: true, + [utils.asGridCoord(34,21)]: true, + [utils.asGridCoord(36,21)]: true, + [utils.asGridCoord(40,21)]: true, + [utils.asGridCoord(-1,22)]: true, + [utils.asGridCoord(29,22)]: true, + [utils.asGridCoord(32,22)]: true, + [utils.asGridCoord(34,22)]: true, + [utils.asGridCoord(35,22)]: true, + [utils.asGridCoord(36,22)]: true, + [utils.asGridCoord(41,22)]: true, + [utils.asGridCoord(-2,23)]: true, + [utils.asGridCoord(7,23)]: true, + [utils.asGridCoord(20,23)]: true, + [utils.asGridCoord(21,23)]: true, + [utils.asGridCoord(22,23)]: true, + [utils.asGridCoord(23,23)]: true, + [utils.asGridCoord(24,23)]: true, + [utils.asGridCoord(25,23)]: true, + [utils.asGridCoord(26,23)]: true, + [utils.asGridCoord(27,23)]: true, + [utils.asGridCoord(28,23)]: true, + [utils.asGridCoord(32,23)]: true, + [utils.asGridCoord(41,23)]: true, + [utils.asGridCoord(-2,24)]: true, + [utils.asGridCoord(2,24)]: true, + [utils.asGridCoord(3,24)]: true, + [utils.asGridCoord(4,24)]: true, + [utils.asGridCoord(5,24)]: true, + [utils.asGridCoord(6,24)]: true, + [utils.asGridCoord(8,24)]: true, + [utils.asGridCoord(9,24)]: true, + [utils.asGridCoord(18,24)]: true, + [utils.asGridCoord(19,24)]: true, + [utils.asGridCoord(20,24)]: true, + [utils.asGridCoord(21,24)]: true, + [utils.asGridCoord(22,24)]: true, + [utils.asGridCoord(33,24)]: true, + [utils.asGridCoord(34,24)]: true, + [utils.asGridCoord(35,24)]: true, + [utils.asGridCoord(36,24)]: true, + [utils.asGridCoord(41,24)]: true, + [utils.asGridCoord(42,24)]: true, + [utils.asGridCoord(43,24)]: true, + [utils.asGridCoord(-1,25)]: true, + [utils.asGridCoord(0,25)]: true, + [utils.asGridCoord(1,25)]: true, + [utils.asGridCoord(9,25)]: true, + [utils.asGridCoord(18,25)]: true, + [utils.asGridCoord(36,25)]: true, + [utils.asGridCoord(43,25)]: true, + [utils.asGridCoord(9,26)]: true, + [utils.asGridCoord(18,26)]: true, + [utils.asGridCoord(36,26)]: true, + [utils.asGridCoord(43,26)]: true, + [utils.asGridCoord(9,27)]: true, + [utils.asGridCoord(18,27)]: true, + [utils.asGridCoord(36,27)]: true, + [utils.asGridCoord(39,27)]: true, + [utils.asGridCoord(40,27)]: true, + [utils.asGridCoord(41,27)]: true, + [utils.asGridCoord(42,27)]: true, + [utils.asGridCoord(43,27)]: true, + [utils.asGridCoord(44,27)]: true, + [utils.asGridCoord(9,28)]: true, + [utils.asGridCoord(18,28)]: true, + [utils.asGridCoord(36,28)]: true, + [utils.asGridCoord(39,28)]: true, + [utils.asGridCoord(44,28)]: true, + [utils.asGridCoord(-3,29)]: true, + [utils.asGridCoord(-2,29)]: true, + [utils.asGridCoord(-1,29)]: true, + [utils.asGridCoord(0,29)]: true, + [utils.asGridCoord(9,29)]: true, + [utils.asGridCoord(18,29)]: true, + [utils.asGridCoord(27,29)]: true, + [utils.asGridCoord(28,29)]: true, + [utils.asGridCoord(29,29)]: true, + [utils.asGridCoord(36,29)]: true, + [utils.asGridCoord(44,29)]: true, + [utils.asGridCoord(-4,30)]: true, + [utils.asGridCoord(1,30)]: true, + [utils.asGridCoord(2,30)]: true, + [utils.asGridCoord(3,30)]: true, + [utils.asGridCoord(9,30)]: true, + [utils.asGridCoord(18,30)]: true, + [utils.asGridCoord(26,30)]: true, + [utils.asGridCoord(30,30)]: true, + [utils.asGridCoord(36,30)]: true, + [utils.asGridCoord(44,30)]: true, + [utils.asGridCoord(-5,31)]: true, + [utils.asGridCoord(4,31)]: true, + [utils.asGridCoord(5,31)]: true, + [utils.asGridCoord(6,31)]: true, + [utils.asGridCoord(7,31)]: true, + [utils.asGridCoord(8,31)]: true, + [utils.asGridCoord(18,31)]: true, + [utils.asGridCoord(26,31)]: true, + [utils.asGridCoord(30,31)]: true, + [utils.asGridCoord(34,31)]: true, + [utils.asGridCoord(35,31)]: true, + [utils.asGridCoord(36,31)]: true, + [utils.asGridCoord(44,31)]: true, + [utils.asGridCoord(-5,32)]: true, + [utils.asGridCoord(18,32)]: true, + [utils.asGridCoord(19,32)]: true, + [utils.asGridCoord(22,32)]: true, + [utils.asGridCoord(23,32)]: true, + [utils.asGridCoord(24,32)]: true, + [utils.asGridCoord(26,32)]: true, + [utils.asGridCoord(30,32)]: true, + [utils.asGridCoord(32,32)]: true, + [utils.asGridCoord(33,32)]: true, + [utils.asGridCoord(44,32)]: true, + [utils.asGridCoord(-4,33)]: true, + [utils.asGridCoord(-3,33)]: true, + [utils.asGridCoord(-2,33)]: true, + [utils.asGridCoord(-1,33)]: true, + [utils.asGridCoord(0,33)]: true, + [utils.asGridCoord(1,33)]: true, + [utils.asGridCoord(2,33)]: true, + [utils.asGridCoord(20,33)]: true, + [utils.asGridCoord(21,33)]: true, + [utils.asGridCoord(25,33)]: true, + [utils.asGridCoord(26,33)]: true, + [utils.asGridCoord(30,33)]: true, + [utils.asGridCoord(31,33)]: true, + [utils.asGridCoord(47,33)]: true, + [utils.asGridCoord(2,34)]: true, + [utils.asGridCoord(47,34)]: true, + [utils.asGridCoord(2,35)]: true, + [utils.asGridCoord(35,35)]: true, + [utils.asGridCoord(47,35)]: true, + [utils.asGridCoord(-1,36)]: true, + [utils.asGridCoord(0,36)]: true, + [utils.asGridCoord(1,36)]: true, + [utils.asGridCoord(2,36)]: true, + [utils.asGridCoord(34,36)]: true, + [utils.asGridCoord(35,36)]: true, + [utils.asGridCoord(47,36)]: true, + [utils.asGridCoord(-2,37)]: true, + [utils.asGridCoord(23,37)]: true, + [utils.asGridCoord(24,37)]: true, + [utils.asGridCoord(33,37)]: true, + [utils.asGridCoord(36,37)]: true, + [utils.asGridCoord(37,37)]: true, + [utils.asGridCoord(38,37)]: true, + [utils.asGridCoord(39,37)]: true, + [utils.asGridCoord(46,37)]: true, + [utils.asGridCoord(-1,38)]: true, + [utils.asGridCoord(0,38)]: true, + [utils.asGridCoord(1,38)]: true, + [utils.asGridCoord(2,38)]: true, + [utils.asGridCoord(3,38)]: true, + [utils.asGridCoord(4,38)]: true, + [utils.asGridCoord(8,38)]: true, + [utils.asGridCoord(9,38)]: true, + [utils.asGridCoord(10,38)]: true, + [utils.asGridCoord(20,38)]: true, + [utils.asGridCoord(21,38)]: true, + [utils.asGridCoord(22,38)]: true, + [utils.asGridCoord(25,38)]: true, + [utils.asGridCoord(31,38)]: true, + [utils.asGridCoord(32,38)]: true, + [utils.asGridCoord(38,38)]: true, + [utils.asGridCoord(44,38)]: true, + [utils.asGridCoord(45,38)]: true, + [utils.asGridCoord(5,39)]: true, + [utils.asGridCoord(6,39)]: true, + [utils.asGridCoord(7,39)]: true, + [utils.asGridCoord(11,39)]: true, + [utils.asGridCoord(12,39)]: true, + [utils.asGridCoord(19,39)]: true, + [utils.asGridCoord(26,39)]: true, + [utils.asGridCoord(31,39)]: true, + [utils.asGridCoord(44,39)]: true, + [utils.asGridCoord(13,40)]: true, + [utils.asGridCoord(18,40)]: true, + [utils.asGridCoord(19,40)]: true, + [utils.asGridCoord(26,40)]: true, + [utils.asGridCoord(44,40)]: true, + [utils.asGridCoord(13,41)]: true, + [utils.asGridCoord(17,41)]: true, + [utils.asGridCoord(26,41)]: true, + [utils.asGridCoord(44,41)]: true, + [utils.asGridCoord(4,42)]: true, + [utils.asGridCoord(5,42)]: true, + [utils.asGridCoord(6,42)]: true, + [utils.asGridCoord(7,42)]: true, + [utils.asGridCoord(8,42)]: true, + [utils.asGridCoord(13,42)]: true, + [utils.asGridCoord(17,42)]: true, + [utils.asGridCoord(44,42)]: true, + [utils.asGridCoord(3,43)]: true, + [utils.asGridCoord(9,43)]: true, + [utils.asGridCoord(13,43)]: true, + [utils.asGridCoord(17,43)]: true, + [utils.asGridCoord(18,43)]: true, + [utils.asGridCoord(19,43)]: true, + [utils.asGridCoord(20,43)]: true, + [utils.asGridCoord(21,43)]: true, + [utils.asGridCoord(24,43)]: true, + [utils.asGridCoord(43,43)]: true, + [utils.asGridCoord(3,44)]: true, + [utils.asGridCoord(10,44)]: true, + [utils.asGridCoord(11,44)]: true, + [utils.asGridCoord(12,44)]: true, + [utils.asGridCoord(13,44)]: true, + [utils.asGridCoord(22,44)]: true, + [utils.asGridCoord(25,44)]: true, + [utils.asGridCoord(31,44)]: true, + [utils.asGridCoord(32,44)]: true, + [utils.asGridCoord(33,44)]: true, + [utils.asGridCoord(41,44)]: true, + [utils.asGridCoord(42,44)]: true, + [utils.asGridCoord(3,45)]: true, + [utils.asGridCoord(22,45)]: true, + [utils.asGridCoord(25,45)]: true, + [utils.asGridCoord(31,45)]: true, + [utils.asGridCoord(34,45)]: true, + [utils.asGridCoord(35,45)]: true, + [utils.asGridCoord(40,45)]: true, + [utils.asGridCoord(41,45)]: true, + [utils.asGridCoord(4,46)]: true, + [utils.asGridCoord(5,46)]: true, + [utils.asGridCoord(6,46)]: true, + [utils.asGridCoord(7,46)]: true, + [utils.asGridCoord(8,46)]: true, + [utils.asGridCoord(14,46)]: true, + [utils.asGridCoord(22,46)]: true, + [utils.asGridCoord(25,46)]: true, + [utils.asGridCoord(31,46)]: true, + [utils.asGridCoord(36,46)]: true, + [utils.asGridCoord(37,46)]: true, + [utils.asGridCoord(38,46)]: true, + [utils.asGridCoord(39,46)]: true, + [utils.asGridCoord(9,47)]: true, + [utils.asGridCoord(10,47)]: true, + [utils.asGridCoord(11,47)]: true, + [utils.asGridCoord(12,47)]: true, + [utils.asGridCoord(13,47)]: true, + [utils.asGridCoord(15,47)]: true, + [utils.asGridCoord(16,47)]: true, + [utils.asGridCoord(17,47)]: true, + [utils.asGridCoord(18,47)]: true, + [utils.asGridCoord(19,47)]: true, + [utils.asGridCoord(20,47)]: true, + [utils.asGridCoord(21,47)]: true, + [utils.asGridCoord(22,47)]: true, + [utils.asGridCoord(25,47)]: true, + [utils.asGridCoord(31,47)]: true, + [utils.asGridCoord(25,48)]: true, + [utils.asGridCoord(32,48)]: true, + [utils.asGridCoord(33,48)]: true, + [utils.asGridCoord(24,49)]: true, + [utils.asGridCoord(33,49)]: true, + [utils.asGridCoord(34,49)]: true, + [utils.asGridCoord(24,50)]: true, + [utils.asGridCoord(35,50)]: true, + [utils.asGridCoord(36,50)]: true, + [utils.asGridCoord(37,50)]: true, + [utils.asGridCoord(38,50)]: true, + [utils.asGridCoord(18,51)]: true, + [utils.asGridCoord(19,51)]: true, + [utils.asGridCoord(20,51)]: true, + [utils.asGridCoord(23,51)]: true, + [utils.asGridCoord(24,51)]: true, + [utils.asGridCoord(39,51)]: true, + [utils.asGridCoord(17,52)]: true, + [utils.asGridCoord(21,52)]: true, + [utils.asGridCoord(22,52)]: true, + [utils.asGridCoord(39,52)]: true, + [utils.asGridCoord(17,53)]: true, + [utils.asGridCoord(39,53)]: true, + [utils.asGridCoord(18,54)]: true, + [utils.asGridCoord(39,54)]: true, + [utils.asGridCoord(19,55)]: true, + [utils.asGridCoord(20,55)]: true, + [utils.asGridCoord(21,55)]: true, + [utils.asGridCoord(22,55)]: true, + [utils.asGridCoord(30,55)]: true, + [utils.asGridCoord(31,55)]: true, + [utils.asGridCoord(32,55)]: true, + [utils.asGridCoord(33,55)]: true, + [utils.asGridCoord(34,55)]: true, + [utils.asGridCoord(35,55)]: true, + [utils.asGridCoord(36,55)]: true, + [utils.asGridCoord(37,55)]: true, + [utils.asGridCoord(38,55)]: true, + [utils.asGridCoord(23,56)]: true, + [utils.asGridCoord(24,56)]: true, + [utils.asGridCoord(36,56)]: true, + [utils.asGridCoord(24,57)]: true, + [utils.asGridCoord(36,57)]: true, + [utils.asGridCoord(24,58)]: true, + [utils.asGridCoord(25,58)]: true, + [utils.asGridCoord(26,58)]: true, + [utils.asGridCoord(27,58)]: true, + [utils.asGridCoord(28,58)]: true, + [utils.asGridCoord(29,58)]: true, + [utils.asGridCoord(30,58)]: true, + [utils.asGridCoord(31,58)]: true, + [utils.asGridCoord(32,58)]: true, + [utils.asGridCoord(36,58)]: true, + [utils.asGridCoord(32,59)]: true, + [utils.asGridCoord(36,59)]: true, + [utils.asGridCoord(32,60)]: true, + [utils.asGridCoord(36,60)]: true, + [utils.asGridCoord(32,61)]: true, + [utils.asGridCoord(36,61)]: true, + [utils.asGridCoord(32,62)]: true, + [utils.asGridCoord(36,62)]: true, + [utils.asGridCoord(32,63)]: true, + [utils.asGridCoord(36,63)]: true, + [utils.asGridCoord(32,64)]: true, + [utils.asGridCoord(36,64)]: true, + [utils.asGridCoord(26,65)]: true, + [utils.asGridCoord(27,65)]: true, + [utils.asGridCoord(28,65)]: true, + [utils.asGridCoord(29,65)]: true, + [utils.asGridCoord(30,65)]: true, + [utils.asGridCoord(31,65)]: true, + [utils.asGridCoord(36,65)]: true, + [utils.asGridCoord(23,66)]: true, + [utils.asGridCoord(24,66)]: true, + [utils.asGridCoord(25,66)]: true, + [utils.asGridCoord(36,66)]: true, + [utils.asGridCoord(22,67)]: true, + [utils.asGridCoord(36,67)]: true, + [utils.asGridCoord(23,68)]: true, + [utils.asGridCoord(33,68)]: true, + [utils.asGridCoord(34,68)]: true, + [utils.asGridCoord(35,68)]: true, + [utils.asGridCoord(24,69)]: true, + [utils.asGridCoord(30,69)]: true, + [utils.asGridCoord(31,69)]: true, + [utils.asGridCoord(32,69)]: true, + [utils.asGridCoord(24,70)]: true, + [utils.asGridCoord(30,70)]: true, + [utils.asGridCoord(25,71)]: true, + [utils.asGridCoord(26,71)]: true, + [utils.asGridCoord(27,71)]: true, + [utils.asGridCoord(28,71)]: true, + [utils.asGridCoord(29,71)]: true, + [utils.asGridCoord(30,71)]: true, +}; \ No newline at end of file diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..1ee1c68 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,3 @@ +numpy==1.22.2 +opencv-python==4.5.5.62 +Pillow==9.0.1 diff --git a/wallGenerator.py b/wallGenerator.py index e69de29..d03dd33 100644 --- a/wallGenerator.py +++ b/wallGenerator.py @@ -0,0 +1,58 @@ +from PIL import Image +from numpy import asarray +import numpy as np +import cv2 + +def removeFlagged(coordinate_list): + + # For insta, twitter blocks + flagged = [[31,40],[32,40],[33,41],[34,41],[35,40],[36,40],[37,39],[38,39],[26,42],[25,42],[45,32],[46,32]] + newList = [] + + for point in coordinate_list: + if point not in flagged: + newList.append(point) + + return newList + + +image = cv2.imread('./images/map_outline.png') +image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB) +image = np.array(image) + +coordinate_list = [] + +x_offset = 9 +y_offset = 2 + +y = 0 +i = 0 +while i < len(image): + j = 0 + x = 0 + while j < len(image[i]): + pixel = image[i][j] + + if list(pixel) == [196, 196, 196]: + coordinate_list.append([x-x_offset,y-y_offset]) + + j += 32 + x += 1 + + i += 32 + y += 1 + +coordinate_list = removeFlagged(coordinate_list) + +print(coordinate_list[0]) + +file_list = [] + +for i in coordinate_list: + s = "[utils.asGridCoord({x},{y})]: true,\n".format(x=i[0], y=i[1]) + file_list.append(s) + +with open("wall_coordinates.txt", "w") as file: + file.writelines(file_list) + + diff --git a/wall_coordinates.txt b/wall_coordinates.txt new file mode 100644 index 0000000..59531a5 --- /dev/null +++ b/wall_coordinates.txt @@ -0,0 +1,502 @@ +[utils.asGridCoord(12,2)]: true, +[utils.asGridCoord(13,2)]: true, +[utils.asGridCoord(14,2)]: true, +[utils.asGridCoord(15,2)]: true, +[utils.asGridCoord(16,2)]: true, +[utils.asGridCoord(11,3)]: true, +[utils.asGridCoord(17,3)]: true, +[utils.asGridCoord(10,4)]: true, +[utils.asGridCoord(18,4)]: true, +[utils.asGridCoord(10,5)]: true, +[utils.asGridCoord(18,5)]: true, +[utils.asGridCoord(10,6)]: true, +[utils.asGridCoord(18,6)]: true, +[utils.asGridCoord(3,7)]: true, +[utils.asGridCoord(4,7)]: true, +[utils.asGridCoord(9,7)]: true, +[utils.asGridCoord(19,7)]: true, +[utils.asGridCoord(35,7)]: true, +[utils.asGridCoord(36,7)]: true, +[utils.asGridCoord(37,7)]: true, +[utils.asGridCoord(38,7)]: true, +[utils.asGridCoord(39,7)]: true, +[utils.asGridCoord(40,7)]: true, +[utils.asGridCoord(2,8)]: true, +[utils.asGridCoord(5,8)]: true, +[utils.asGridCoord(8,8)]: true, +[utils.asGridCoord(9,8)]: true, +[utils.asGridCoord(19,8)]: true, +[utils.asGridCoord(30,8)]: true, +[utils.asGridCoord(31,8)]: true, +[utils.asGridCoord(32,8)]: true, +[utils.asGridCoord(33,8)]: true, +[utils.asGridCoord(34,8)]: true, +[utils.asGridCoord(41,8)]: true, +[utils.asGridCoord(42,8)]: true, +[utils.asGridCoord(43,8)]: true, +[utils.asGridCoord(0,9)]: true, +[utils.asGridCoord(1,9)]: true, +[utils.asGridCoord(5,9)]: true, +[utils.asGridCoord(6,9)]: true, +[utils.asGridCoord(7,9)]: true, +[utils.asGridCoord(20,9)]: true, +[utils.asGridCoord(21,9)]: true, +[utils.asGridCoord(22,9)]: true, +[utils.asGridCoord(23,9)]: true, +[utils.asGridCoord(24,9)]: true, +[utils.asGridCoord(25,9)]: true, +[utils.asGridCoord(26,9)]: true, +[utils.asGridCoord(27,9)]: true, +[utils.asGridCoord(28,9)]: true, +[utils.asGridCoord(29,9)]: true, +[utils.asGridCoord(44,9)]: true, +[utils.asGridCoord(-1,10)]: true, +[utils.asGridCoord(44,10)]: true, +[utils.asGridCoord(0,11)]: true, +[utils.asGridCoord(44,11)]: true, +[utils.asGridCoord(0,12)]: true, +[utils.asGridCoord(7,12)]: true, +[utils.asGridCoord(20,12)]: true, +[utils.asGridCoord(21,12)]: true, +[utils.asGridCoord(22,12)]: true, +[utils.asGridCoord(23,12)]: true, +[utils.asGridCoord(24,12)]: true, +[utils.asGridCoord(25,12)]: true, +[utils.asGridCoord(26,12)]: true, +[utils.asGridCoord(27,12)]: true, +[utils.asGridCoord(28,12)]: true, +[utils.asGridCoord(29,12)]: true, +[utils.asGridCoord(30,12)]: true, +[utils.asGridCoord(35,12)]: true, +[utils.asGridCoord(36,12)]: true, +[utils.asGridCoord(41,12)]: true, +[utils.asGridCoord(42,12)]: true, +[utils.asGridCoord(44,12)]: true, +[utils.asGridCoord(0,13)]: true, +[utils.asGridCoord(6,13)]: true, +[utils.asGridCoord(8,13)]: true, +[utils.asGridCoord(20,13)]: true, +[utils.asGridCoord(30,13)]: true, +[utils.asGridCoord(35,13)]: true, +[utils.asGridCoord(36,13)]: true, +[utils.asGridCoord(41,13)]: true, +[utils.asGridCoord(42,13)]: true, +[utils.asGridCoord(44,13)]: true, +[utils.asGridCoord(1,14)]: true, +[utils.asGridCoord(2,14)]: true, +[utils.asGridCoord(3,14)]: true, +[utils.asGridCoord(4,14)]: true, +[utils.asGridCoord(5,14)]: true, +[utils.asGridCoord(9,14)]: true, +[utils.asGridCoord(19,14)]: true, +[utils.asGridCoord(30,14)]: true, +[utils.asGridCoord(31,14)]: true, +[utils.asGridCoord(32,14)]: true, +[utils.asGridCoord(33,14)]: true, +[utils.asGridCoord(34,14)]: true, +[utils.asGridCoord(36,14)]: true, +[utils.asGridCoord(41,14)]: true, +[utils.asGridCoord(42,14)]: true, +[utils.asGridCoord(44,14)]: true, +[utils.asGridCoord(9,15)]: true, +[utils.asGridCoord(18,15)]: true, +[utils.asGridCoord(36,15)]: true, +[utils.asGridCoord(41,15)]: true, +[utils.asGridCoord(42,15)]: true, +[utils.asGridCoord(44,15)]: true, +[utils.asGridCoord(9,16)]: true, +[utils.asGridCoord(18,16)]: true, +[utils.asGridCoord(36,16)]: true, +[utils.asGridCoord(41,16)]: true, +[utils.asGridCoord(42,16)]: true, +[utils.asGridCoord(44,16)]: true, +[utils.asGridCoord(9,17)]: true, +[utils.asGridCoord(18,17)]: true, +[utils.asGridCoord(36,17)]: true, +[utils.asGridCoord(40,17)]: true, +[utils.asGridCoord(42,17)]: true, +[utils.asGridCoord(44,17)]: true, +[utils.asGridCoord(4,18)]: true, +[utils.asGridCoord(9,18)]: true, +[utils.asGridCoord(19,18)]: true, +[utils.asGridCoord(25,18)]: true, +[utils.asGridCoord(33,18)]: true, +[utils.asGridCoord(36,18)]: true, +[utils.asGridCoord(40,18)]: true, +[utils.asGridCoord(42,18)]: true, +[utils.asGridCoord(43,18)]: true, +[utils.asGridCoord(44,18)]: true, +[utils.asGridCoord(2,19)]: true, +[utils.asGridCoord(3,19)]: true, +[utils.asGridCoord(5,19)]: true, +[utils.asGridCoord(9,19)]: true, +[utils.asGridCoord(19,19)]: true, +[utils.asGridCoord(23,19)]: true, +[utils.asGridCoord(24,19)]: true, +[utils.asGridCoord(26,19)]: true, +[utils.asGridCoord(27,19)]: true, +[utils.asGridCoord(28,19)]: true, +[utils.asGridCoord(32,19)]: true, +[utils.asGridCoord(34,19)]: true, +[utils.asGridCoord(36,19)]: true, +[utils.asGridCoord(40,19)]: true, +[utils.asGridCoord(0,20)]: true, +[utils.asGridCoord(1,20)]: true, +[utils.asGridCoord(6,20)]: true, +[utils.asGridCoord(7,20)]: true, +[utils.asGridCoord(8,20)]: true, +[utils.asGridCoord(20,20)]: true, +[utils.asGridCoord(21,20)]: true, +[utils.asGridCoord(22,20)]: true, +[utils.asGridCoord(29,20)]: true, +[utils.asGridCoord(32,20)]: true, +[utils.asGridCoord(34,20)]: true, +[utils.asGridCoord(36,20)]: true, +[utils.asGridCoord(40,20)]: true, +[utils.asGridCoord(-1,21)]: true, +[utils.asGridCoord(29,21)]: true, +[utils.asGridCoord(32,21)]: true, +[utils.asGridCoord(34,21)]: true, +[utils.asGridCoord(36,21)]: true, +[utils.asGridCoord(40,21)]: true, +[utils.asGridCoord(-1,22)]: true, +[utils.asGridCoord(29,22)]: true, +[utils.asGridCoord(32,22)]: true, +[utils.asGridCoord(34,22)]: true, +[utils.asGridCoord(35,22)]: true, +[utils.asGridCoord(36,22)]: true, +[utils.asGridCoord(41,22)]: true, +[utils.asGridCoord(-2,23)]: true, +[utils.asGridCoord(7,23)]: true, +[utils.asGridCoord(20,23)]: true, +[utils.asGridCoord(21,23)]: true, +[utils.asGridCoord(22,23)]: true, +[utils.asGridCoord(23,23)]: true, +[utils.asGridCoord(24,23)]: true, +[utils.asGridCoord(25,23)]: true, +[utils.asGridCoord(26,23)]: true, +[utils.asGridCoord(27,23)]: true, +[utils.asGridCoord(28,23)]: true, +[utils.asGridCoord(32,23)]: true, +[utils.asGridCoord(41,23)]: true, +[utils.asGridCoord(-2,24)]: true, +[utils.asGridCoord(2,24)]: true, +[utils.asGridCoord(3,24)]: true, +[utils.asGridCoord(4,24)]: true, +[utils.asGridCoord(5,24)]: true, +[utils.asGridCoord(6,24)]: true, +[utils.asGridCoord(8,24)]: true, +[utils.asGridCoord(9,24)]: true, +[utils.asGridCoord(18,24)]: true, +[utils.asGridCoord(19,24)]: true, +[utils.asGridCoord(20,24)]: true, +[utils.asGridCoord(21,24)]: true, +[utils.asGridCoord(22,24)]: true, +[utils.asGridCoord(33,24)]: true, +[utils.asGridCoord(34,24)]: true, +[utils.asGridCoord(35,24)]: true, +[utils.asGridCoord(36,24)]: true, +[utils.asGridCoord(41,24)]: true, +[utils.asGridCoord(42,24)]: true, +[utils.asGridCoord(43,24)]: true, +[utils.asGridCoord(-1,25)]: true, +[utils.asGridCoord(0,25)]: true, +[utils.asGridCoord(1,25)]: true, +[utils.asGridCoord(9,25)]: true, +[utils.asGridCoord(18,25)]: true, +[utils.asGridCoord(36,25)]: true, +[utils.asGridCoord(43,25)]: true, +[utils.asGridCoord(9,26)]: true, +[utils.asGridCoord(18,26)]: true, +[utils.asGridCoord(36,26)]: true, +[utils.asGridCoord(43,26)]: true, +[utils.asGridCoord(9,27)]: true, +[utils.asGridCoord(18,27)]: true, +[utils.asGridCoord(36,27)]: true, +[utils.asGridCoord(39,27)]: true, +[utils.asGridCoord(40,27)]: true, +[utils.asGridCoord(41,27)]: true, +[utils.asGridCoord(42,27)]: true, +[utils.asGridCoord(43,27)]: true, +[utils.asGridCoord(44,27)]: true, +[utils.asGridCoord(9,28)]: true, +[utils.asGridCoord(18,28)]: true, +[utils.asGridCoord(36,28)]: true, +[utils.asGridCoord(39,28)]: true, +[utils.asGridCoord(44,28)]: true, +[utils.asGridCoord(-3,29)]: true, +[utils.asGridCoord(-2,29)]: true, +[utils.asGridCoord(-1,29)]: true, +[utils.asGridCoord(0,29)]: true, +[utils.asGridCoord(9,29)]: true, +[utils.asGridCoord(18,29)]: true, +[utils.asGridCoord(27,29)]: true, +[utils.asGridCoord(28,29)]: true, +[utils.asGridCoord(29,29)]: true, +[utils.asGridCoord(36,29)]: true, +[utils.asGridCoord(44,29)]: true, +[utils.asGridCoord(-4,30)]: true, +[utils.asGridCoord(1,30)]: true, +[utils.asGridCoord(2,30)]: true, +[utils.asGridCoord(3,30)]: true, +[utils.asGridCoord(9,30)]: true, +[utils.asGridCoord(18,30)]: true, +[utils.asGridCoord(26,30)]: true, +[utils.asGridCoord(30,30)]: true, +[utils.asGridCoord(36,30)]: true, +[utils.asGridCoord(44,30)]: true, +[utils.asGridCoord(-5,31)]: true, +[utils.asGridCoord(4,31)]: true, +[utils.asGridCoord(5,31)]: true, +[utils.asGridCoord(6,31)]: true, +[utils.asGridCoord(7,31)]: true, +[utils.asGridCoord(8,31)]: true, +[utils.asGridCoord(18,31)]: true, +[utils.asGridCoord(26,31)]: true, +[utils.asGridCoord(30,31)]: true, +[utils.asGridCoord(34,31)]: true, +[utils.asGridCoord(35,31)]: true, +[utils.asGridCoord(36,31)]: true, +[utils.asGridCoord(44,31)]: true, +[utils.asGridCoord(-5,32)]: true, +[utils.asGridCoord(18,32)]: true, +[utils.asGridCoord(19,32)]: true, +[utils.asGridCoord(22,32)]: true, +[utils.asGridCoord(23,32)]: true, +[utils.asGridCoord(24,32)]: true, +[utils.asGridCoord(26,32)]: true, +[utils.asGridCoord(30,32)]: true, +[utils.asGridCoord(32,32)]: true, +[utils.asGridCoord(33,32)]: true, +[utils.asGridCoord(44,32)]: true, +[utils.asGridCoord(-4,33)]: true, +[utils.asGridCoord(-3,33)]: true, +[utils.asGridCoord(-2,33)]: true, +[utils.asGridCoord(-1,33)]: true, +[utils.asGridCoord(0,33)]: true, +[utils.asGridCoord(1,33)]: true, +[utils.asGridCoord(2,33)]: true, +[utils.asGridCoord(20,33)]: true, +[utils.asGridCoord(21,33)]: true, +[utils.asGridCoord(25,33)]: true, +[utils.asGridCoord(26,33)]: true, +[utils.asGridCoord(30,33)]: true, +[utils.asGridCoord(31,33)]: true, +[utils.asGridCoord(47,33)]: true, +[utils.asGridCoord(2,34)]: true, +[utils.asGridCoord(47,34)]: true, +[utils.asGridCoord(2,35)]: true, +[utils.asGridCoord(35,35)]: true, +[utils.asGridCoord(47,35)]: true, +[utils.asGridCoord(-1,36)]: true, +[utils.asGridCoord(0,36)]: true, +[utils.asGridCoord(1,36)]: true, +[utils.asGridCoord(2,36)]: true, +[utils.asGridCoord(34,36)]: true, +[utils.asGridCoord(35,36)]: true, +[utils.asGridCoord(47,36)]: true, +[utils.asGridCoord(-2,37)]: true, +[utils.asGridCoord(23,37)]: true, +[utils.asGridCoord(24,37)]: true, +[utils.asGridCoord(33,37)]: true, +[utils.asGridCoord(36,37)]: true, +[utils.asGridCoord(37,37)]: true, +[utils.asGridCoord(38,37)]: true, +[utils.asGridCoord(39,37)]: true, +[utils.asGridCoord(46,37)]: true, +[utils.asGridCoord(-1,38)]: true, +[utils.asGridCoord(0,38)]: true, +[utils.asGridCoord(1,38)]: true, +[utils.asGridCoord(2,38)]: true, +[utils.asGridCoord(3,38)]: true, +[utils.asGridCoord(4,38)]: true, +[utils.asGridCoord(8,38)]: true, +[utils.asGridCoord(9,38)]: true, +[utils.asGridCoord(10,38)]: true, +[utils.asGridCoord(20,38)]: true, +[utils.asGridCoord(21,38)]: true, +[utils.asGridCoord(22,38)]: true, +[utils.asGridCoord(25,38)]: true, +[utils.asGridCoord(31,38)]: true, +[utils.asGridCoord(32,38)]: true, +[utils.asGridCoord(38,38)]: true, +[utils.asGridCoord(44,38)]: true, +[utils.asGridCoord(45,38)]: true, +[utils.asGridCoord(5,39)]: true, +[utils.asGridCoord(6,39)]: true, +[utils.asGridCoord(7,39)]: true, +[utils.asGridCoord(11,39)]: true, +[utils.asGridCoord(12,39)]: true, +[utils.asGridCoord(19,39)]: true, +[utils.asGridCoord(26,39)]: true, +[utils.asGridCoord(31,39)]: true, +[utils.asGridCoord(44,39)]: true, +[utils.asGridCoord(13,40)]: true, +[utils.asGridCoord(18,40)]: true, +[utils.asGridCoord(19,40)]: true, +[utils.asGridCoord(26,40)]: true, +[utils.asGridCoord(44,40)]: true, +[utils.asGridCoord(13,41)]: true, +[utils.asGridCoord(17,41)]: true, +[utils.asGridCoord(26,41)]: true, +[utils.asGridCoord(44,41)]: true, +[utils.asGridCoord(4,42)]: true, +[utils.asGridCoord(5,42)]: true, +[utils.asGridCoord(6,42)]: true, +[utils.asGridCoord(7,42)]: true, +[utils.asGridCoord(8,42)]: true, +[utils.asGridCoord(13,42)]: true, +[utils.asGridCoord(17,42)]: true, +[utils.asGridCoord(44,42)]: true, +[utils.asGridCoord(3,43)]: true, +[utils.asGridCoord(9,43)]: true, +[utils.asGridCoord(13,43)]: true, +[utils.asGridCoord(17,43)]: true, +[utils.asGridCoord(18,43)]: true, +[utils.asGridCoord(19,43)]: true, +[utils.asGridCoord(20,43)]: true, +[utils.asGridCoord(21,43)]: true, +[utils.asGridCoord(24,43)]: true, +[utils.asGridCoord(43,43)]: true, +[utils.asGridCoord(3,44)]: true, +[utils.asGridCoord(10,44)]: true, +[utils.asGridCoord(11,44)]: true, +[utils.asGridCoord(12,44)]: true, +[utils.asGridCoord(13,44)]: true, +[utils.asGridCoord(22,44)]: true, +[utils.asGridCoord(25,44)]: true, +[utils.asGridCoord(31,44)]: true, +[utils.asGridCoord(32,44)]: true, +[utils.asGridCoord(33,44)]: true, +[utils.asGridCoord(41,44)]: true, +[utils.asGridCoord(42,44)]: true, +[utils.asGridCoord(3,45)]: true, +[utils.asGridCoord(22,45)]: true, +[utils.asGridCoord(25,45)]: true, +[utils.asGridCoord(31,45)]: true, +[utils.asGridCoord(34,45)]: true, +[utils.asGridCoord(35,45)]: true, +[utils.asGridCoord(40,45)]: true, +[utils.asGridCoord(41,45)]: true, +[utils.asGridCoord(4,46)]: true, +[utils.asGridCoord(5,46)]: true, +[utils.asGridCoord(6,46)]: true, +[utils.asGridCoord(7,46)]: true, +[utils.asGridCoord(8,46)]: true, +[utils.asGridCoord(14,46)]: true, +[utils.asGridCoord(22,46)]: true, +[utils.asGridCoord(25,46)]: true, +[utils.asGridCoord(31,46)]: true, +[utils.asGridCoord(36,46)]: true, +[utils.asGridCoord(37,46)]: true, +[utils.asGridCoord(38,46)]: true, +[utils.asGridCoord(39,46)]: true, +[utils.asGridCoord(9,47)]: true, +[utils.asGridCoord(10,47)]: true, +[utils.asGridCoord(11,47)]: true, +[utils.asGridCoord(12,47)]: true, +[utils.asGridCoord(13,47)]: true, +[utils.asGridCoord(15,47)]: true, +[utils.asGridCoord(16,47)]: true, +[utils.asGridCoord(17,47)]: true, +[utils.asGridCoord(18,47)]: true, +[utils.asGridCoord(19,47)]: true, +[utils.asGridCoord(20,47)]: true, +[utils.asGridCoord(21,47)]: true, +[utils.asGridCoord(22,47)]: true, +[utils.asGridCoord(25,47)]: true, +[utils.asGridCoord(31,47)]: true, +[utils.asGridCoord(25,48)]: true, +[utils.asGridCoord(32,48)]: true, +[utils.asGridCoord(33,48)]: true, +[utils.asGridCoord(24,49)]: true, +[utils.asGridCoord(33,49)]: true, +[utils.asGridCoord(34,49)]: true, +[utils.asGridCoord(24,50)]: true, +[utils.asGridCoord(35,50)]: true, +[utils.asGridCoord(36,50)]: true, +[utils.asGridCoord(37,50)]: true, +[utils.asGridCoord(38,50)]: true, +[utils.asGridCoord(18,51)]: true, +[utils.asGridCoord(19,51)]: true, +[utils.asGridCoord(20,51)]: true, +[utils.asGridCoord(23,51)]: true, +[utils.asGridCoord(24,51)]: true, +[utils.asGridCoord(39,51)]: true, +[utils.asGridCoord(17,52)]: true, +[utils.asGridCoord(21,52)]: true, +[utils.asGridCoord(22,52)]: true, +[utils.asGridCoord(39,52)]: true, +[utils.asGridCoord(17,53)]: true, +[utils.asGridCoord(39,53)]: true, +[utils.asGridCoord(18,54)]: true, +[utils.asGridCoord(39,54)]: true, +[utils.asGridCoord(19,55)]: true, +[utils.asGridCoord(20,55)]: true, +[utils.asGridCoord(21,55)]: true, +[utils.asGridCoord(22,55)]: true, +[utils.asGridCoord(30,55)]: true, +[utils.asGridCoord(31,55)]: true, +[utils.asGridCoord(32,55)]: true, +[utils.asGridCoord(33,55)]: true, +[utils.asGridCoord(34,55)]: true, +[utils.asGridCoord(35,55)]: true, +[utils.asGridCoord(36,55)]: true, +[utils.asGridCoord(37,55)]: true, +[utils.asGridCoord(38,55)]: true, +[utils.asGridCoord(23,56)]: true, +[utils.asGridCoord(24,56)]: true, +[utils.asGridCoord(36,56)]: true, +[utils.asGridCoord(24,57)]: true, +[utils.asGridCoord(36,57)]: true, +[utils.asGridCoord(24,58)]: true, +[utils.asGridCoord(25,58)]: true, +[utils.asGridCoord(26,58)]: true, +[utils.asGridCoord(27,58)]: true, +[utils.asGridCoord(28,58)]: true, +[utils.asGridCoord(29,58)]: true, +[utils.asGridCoord(30,58)]: true, +[utils.asGridCoord(31,58)]: true, +[utils.asGridCoord(32,58)]: true, +[utils.asGridCoord(36,58)]: true, +[utils.asGridCoord(32,59)]: true, +[utils.asGridCoord(36,59)]: true, +[utils.asGridCoord(32,60)]: true, +[utils.asGridCoord(36,60)]: true, +[utils.asGridCoord(32,61)]: true, +[utils.asGridCoord(36,61)]: true, +[utils.asGridCoord(32,62)]: true, +[utils.asGridCoord(36,62)]: true, +[utils.asGridCoord(32,63)]: true, +[utils.asGridCoord(36,63)]: true, +[utils.asGridCoord(32,64)]: true, +[utils.asGridCoord(36,64)]: true, +[utils.asGridCoord(26,65)]: true, +[utils.asGridCoord(27,65)]: true, +[utils.asGridCoord(28,65)]: true, +[utils.asGridCoord(29,65)]: true, +[utils.asGridCoord(30,65)]: true, +[utils.asGridCoord(31,65)]: true, +[utils.asGridCoord(36,65)]: true, +[utils.asGridCoord(23,66)]: true, +[utils.asGridCoord(24,66)]: true, +[utils.asGridCoord(25,66)]: true, +[utils.asGridCoord(36,66)]: true, +[utils.asGridCoord(22,67)]: true, +[utils.asGridCoord(36,67)]: true, +[utils.asGridCoord(23,68)]: true, +[utils.asGridCoord(33,68)]: true, +[utils.asGridCoord(34,68)]: true, +[utils.asGridCoord(35,68)]: true, +[utils.asGridCoord(24,69)]: true, +[utils.asGridCoord(30,69)]: true, +[utils.asGridCoord(31,69)]: true, +[utils.asGridCoord(32,69)]: true, +[utils.asGridCoord(24,70)]: true, +[utils.asGridCoord(30,70)]: true, +[utils.asGridCoord(25,71)]: true, +[utils.asGridCoord(26,71)]: true, +[utils.asGridCoord(27,71)]: true, +[utils.asGridCoord(28,71)]: true, +[utils.asGridCoord(29,71)]: true, +[utils.asGridCoord(30,71)]: true,