如何在Tron上查找列入黑名单的USDT地址 - 👉赶快围观
Tokenview APIs 上线 Web3 开发者 APIs 大合集 - 👉点击获取
交易信息

949ac74d87c358987b472db1cbdbe5c6bced4575c82fc11d0992c53245770837

Ordinals NFT
复制
所在块
时间
06-29-2023 08:10:43 (Local)
Sponsored
交易费
0.00034184 BTC
确认数
76197
  • 暂无数据
  • Ordinals Inscription #486660
    <!doctype html>
    <html lang=zh class="no-js demo-1">
    <head>
    <meta charset=UTF-8>
    <meta http-equiv=X-UA-Compatible content="IE=edge,chrome=1">
    <meta name=viewport content="width=device-width,initial-scale=1">
    <script>window.pageLevel=2,window.gameType="E"</script>
    <script>Array.prototype.remove=function(t){var r=0,h=0,i=this.length;for(r=0;r<i;r++)this[r]!=t&&(this[h++]=this[r]);h<r&&(this.length=h)},Array.prototype.removeByIndex=function(t){var r=0,h=0,i=this.length;for(r=0;r<i;r++)this[r]!=this[t]&&(this[h++]=this[r]);h<r&&(this.length=h)},Array.prototype.contain=function(t){var r=0,h=this.length;for(r=0;r<h;r++)if(this[r]==t)return!0;return!1}</script>
    <script>var Keyboard=function(){this.UP=38,this.DOWN=40,this.RIGHT=39,this.LEFT=37,this.SPACE=32,this.TAB=9,this.ENTER=13,this.CTRL=17,this.ALT=18,this.Num0=48,this.Num1=49,this.Num2=50,this.Num3=51,this.Num4=52,this.Num5=53,this.Num6=54,this.Num7=55,this.Num8=56,this.Num9=57,this.A=65,this.B=66,this.C=67,this.D=68,this.E=69,this.F=70,this.G=71,this.H=72,this.I=73,this.J=74,this.K=75,this.L=76,this.M=77,this.N=78,this.O=79,this.P=80,this.Q=81,this.R=82,this.S=83,this.T=84,this.U=85,this.V=86,this.W=87,this.X=88,this.Y=89,this.Z=90};window.keyboard=new Keyboard</script>
    <script>window.SCREEN_WIDTH=512,window.SCREEN_HEIGHT=448,window.MENU_IMAGE_URL="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAfQAAAEPBAMAAABGrStjAAAD62lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNi4wLWMwMDYgNzkuZGFiYWNiYiwgMjAyMS8wNC8xNC0wMDozOTo0NCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjIuNCAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMjMtMDMtMTRUMTE6NTQ6MDUrMDg6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDIzLTAzLTE1VDEzOjIyOjI2KzA4OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDIzLTAzLTE1VDEzOjIyOjI2KzA4OjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozNjRCMjMwM0JBRkMxMUVEOTQzNEVEMjc5MEIyMzgwQiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDozNjRCMjMwNEJBRkMxMUVEOTQzNEVEMjc5MEIyMzgwQiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjM2NEIyMzAxQkFGQzEx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",window.MENU_IMAGE=new Image,MENU_IMAGE.src=MENU_IMAGE_URL,window.RESOURCE_IMAGE_URL="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAD9CAMAAABTNVRWAAAHYmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMjMtMDMtMTVUMTk6MDk6MDgrMDg6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDIzLTAzLTE1VDIyOjA0OjE3KzA4OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDIzLTAzLTE1VDIyOjA0OjE3KzA4OjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgcGhvdG9zaG9wOklDQ1Byb2ZpbGU9InNSR0IgSUVDNjE5NjYtMi4xIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOmMyMzdkYjhiLTM3YmQtNDcxMC05NmE5LWIyMzMwY2IxNjgxNSIgeG1wTU06RG9jdW1lbnRJRD0iYWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjRiMjZlOWFjLWI5ODgtMzg0My1hM2ZjLTY1YTllMTkxOTM1OCIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOmFlMzBjMmE0LWY4MTktNDFkNC05MWZmLWIwOGNlOGM0ZTU2MCI+IDxwaG90b3Nob3A6RG9jdW1lbnRBbmNlc3RvcnM+IDxyZGY6QmFnPiA8cmRmOmxpPnhtcC5kaWQ6YWUzMGMyYTQtZjgxOS00MWQ0LTkxZmYtYjA4Y2U4YzRlNTYwPC9yZGY6bGk+IDwvcmRmOkJhZz4gPC9waG90b3Nob3A6RG9jdW1lbnRBbmNlc3RvcnM+IDx4bXBNTTpIaXN0b3J5PiA8cmRmOlNlcT4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImNyZWF0ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6YWUzMGMyYTQtZjgxOS00MWQ0LTkxZmYtYjA4Y2U4YzRlNTYwIiBzdEV2dDp3aGVuPSIyMDIzLTAzLTE1VDE5OjA5OjA4KzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoTWFjaW50b3NoKSIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6NWNiNjEzY2MtNzM1MS00YmQ0LWJiYjEtZThmOTllM2EyY2VmIiBzdEV2dDp3aGVuPSIyMDIzLTAzLTE1VDE5OjEyOjUxKzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoTWFjaW50b3NoKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6YzIzN2RiOGItMzdiZC00NzEwLTk2YTktYjIzMzBjYjE2ODE1IiBzdEV2dDp3aGVuPSIyMDIzLTAzLTE1VDIyOjA0OjE3KzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoTWFjaW50b3NoKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7vEET2AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAeFBMVEVHcEy/v8AENGXw7+////8yMjL////////////////7mjKVJHUAAACYZwEHBQYAmTPf2twAZADgUADNUg5BL0WLi4vfozyEgID66Z79zGbK/89iW1qEdga+kbG4lDB0c3S+vbvop4glMRYiO+ubbTmD0xe7u7l7gAA2JWmmAAAACnRSTlMA////SRX/mhzaoDVG4wAAJSlJREFUeNrsnWt3ozgMhgOc9YcObJkpZxIypDnt2f//G9eyLEu+cEtI40zjGQrBhrY81itZdtLd7lmyKD9+4Mav5OtnubLU6bKiwRNw1nzf06Ve3GA5RShKiZP0AvfwFZspdQvAhzZx7vCiy/S5w6FpDocBtoE3rHt5GYaXl6bxt0fg+1+9sMEDAT5cCliCjQA3CFlu+fP99z/Lb7bBdEFyQAuZMTlT80MXpQgv476NQKcADwNYJ9RRMeeGYeA2wjoHuzkrzRww+NJ/43/aPC2/2muRaBAZo3/8CICHFOAmAiyleAgA5yrRdZ8ugM/w8xvUcYM5wMwPjhizY4iI+et+Lyo3KCC2BIsAf+hzdAxyTBsWsGlfoqE2LFQPcg327pUmG76/04UM1G/Q1+9hg6QblaizADwEgF8mATcNiLAE/DEHGAg3dm+Ovg9gnyCyw1eiwdubUlxJ1dtAboze+oAhKqZz6IMR8aF3NpywQgTbCrhO5hu2/rxGSJpfXQdw4cQawGSjZKGh+eUAeJgCPDjA/WEe8GEScNPkCdg+3hnAgvAKwFhDDImm5UcXYgOU57e3LUMssivQTpBTOEacUqJJpNH7DkM8dIKr3y1GDMX8QVWWNuz4WcD1tESnAXMoTLYaj4BzANwAoqaZATxgUJYC3DuSU4CbDAEDWihkw1sCprwjcNvvEW4g0AT17Q2bpHvJdRLNIooiOyR9MNluSqL1HT5YomPAGF7lC1ju1wJmG4WN4+YcAX/EgIcmtOARwK57pAA3JoTOU6KXAk4HWdOAKYOBFJEhhVuuAppABfUAPr+RRDdufKsdqY9ISPQLMAolWoZWjYUcA+4tZDFibv8WwBz+kgGG5pcVYPa4PmDNHQA3IeBWALZW3MeADzHgQ0ZBVg2RswyzxgD3/TrARA8jbMTrifSPH+zAScPx3LYSTZgJZ+OGTo1JVUL5cGFSUqKN/A4NSXUIGLtAnj6YI+l6CrA24BqSlfqor2OJBjrIx7fdPAG7yYTBAX6ZBtxgzRRg6CS5Aka89e9pwO8acQ1435cB9mNslOgoj0FAUQLk9MPGEi0AhxJN0TRkG9Fax5MZMWAxfuqHfAGLnBYDdqJsPbBhbGaDJWAayOIoN5XJui/ggT3kOGBOhKQTHQsAv8Md8gWcyEXXtWPsQqz39yiKngKM9XgeAyw43vHEIPHHRAf1gK0Qs0Qz2sAHNwybZTtOVTajGefMQqu0D67rFODeirKZInyPG4jpW04kx4gzAdwfcEgT+OAIcJMEzDbcPCBgzmKFPhgdry7vvy8CjHLMyUrMZAjEbP6pQfQ2PrgZWFz9kaxcnsMW7Es0zfg2lDVp5JKdxFTix8NIdE+qrCmPAEacaHJkeP6M8N0BUwLjYwzwRwA4mPCnCX03sT8H+OXRAOO594sA41k5ZUiBl6titLLJNr+jWX0z+EtyTKoyEQyNCWy8JEeuyWrkUp4hqyU7cj645gPkV+9mANe+l5W553g26X6AhxTgZiXgcFEdL6zjxXhDfmuypib86zAKC4Os9IqsFBdmiEGWaEnumkQA99uFWP7ynKlz6wA3g1yyM7akNq9Mlr9kp97NAF6xKPpxALdLJXoYAQxZsaF5BMBxg0CiV+ElGyd+QRV+hUGSVPXds1xPeM3bVurL3rbyBHxXwnd/4xkXBEz0n28+u778809WP84T8PaEn4/gWTYsVfXdn0CbCNPLEjYoRYF7fP0EvL6kArf96ayLefpVq//DUdHu7Tksheo6FWzVHuvORdcV4XZ6TMBzgO5dfxHgShVFgYBVpVSL7fS5QrYpS7mpSkO2EP8UnSHjbd2WgHUFvsIWptY0xXN0TLXigidgXTpdAHDbtkqDNZYLVlgKSOcQYIHXsAWXtJVm33kA4Wnr27dlCRv2HSYAr0uv4G2egDcGDPZrLRcAdj5gCbGTgPcpiS62BIxNwiLuzlbvoH8jwCd43uZxfGrf+WmwgYet7CNSla7uCu1+6dGZCzyJPqeesAXcqonHj3QArA9YNiFpxjZYFxDaCvBtAVSmfHkH4MdRmuAI/WZR8LteoV5bb1WcLOAyhLT/o7uEfLrd2QVhxRxgtEkGTDa6GHBk4Qx1DH97Dwu7E2DtTI1kgleF4Agsbw9PrKN6kFxV8dMxPrYsg0BJ9wgj4tAVqiKU+RL+lbDvuiiIWgKY0CLkLAHPAby2/lLAXWkAAwKwYAB89gGXYM/CPJOAtY82bA3jNgnYQE6KI6LDDQHvAhEXcFq/lgCLFmUgx9gvWtIAs1v9AKtqhsCNAc9+/0mJNk+/MxjPbXFOSDQ8RT26VRhEBTK704osOoHyHqAUb+g4ZfcdAVfV3A1uDBgt2OCxSEWQZc5BG9zHgPk6c61nwxJwNwaYJJh8gJRwPIMizp3A0/hSCnhhlV4Clh3kEsBVNUtoAT51MeAF33/UB5thTUnY9A+hiqQPBvuFPbaXmD47iqxR8PVd3CNsWwSszH3hav3vM0fA1zzgqppoUCXKmuuv62CIFjEyiC70wQawUmTBPmAzVjZBtj4o4Qg8sT9MolF01/ljaBdkEVrKlvjjYKJGgKkLSOnFWNsCpqGBO8ndYGSYlH5A8skqa4NxS24wTk/NA1ajd575/hOA5dCnEhLt+2D2xKEPNqt6wewVdANVYa0+RRbswEJtQcE2L/7NAPCUgcmnm2pTjZZUpZpvMnZ/teBnTMGXgNnfhj5You9iwAptG9h1FjB54bayV5Uo/rY3MGDCx4Aom+VLNH2dkmh7JCS6cGMs7iBtqNKLAM8BsARUmp5KUp67fsH3nwWM4gwbPPauo4g59MEUQqFkxxJNYKuKAi2aiNBXnjAGJz/dfUYx8l0Br/LB6mIfLAle7oPVah+MQROKJwGOfTClOsouEWS5Z6ysIOvBlguyMMnZScBpH4zZqlCiZ4dJrcxxmRZChUuh2zIPVl4WZKnJ56+uDLLULGC1Pshiidb2K5IaKR8MLTgcC0M1Oi8z0ZQC4QFUeGU+gL9iHKzuNw4GK0UrI68rfPC5aM8WcNmlAZduoBUBbnnCgSYcVwyTEDB1AmwXAw5yGT5gjdjLtZThLf7mRAf7YAEh9MFnnNdFCzbThVGq0uYhscRpTFVRKrNN9rL8AT9sLrqkiXgno7EP3iPgSuH5JGAzkVBi2jmciKjERwMVo5MNJMHp2SScikhMNmjE89OF4Yzy9wHsTwGecGIw9MF/ECFYsD/FOD4fSyBh4rDz5onP+z/7CDDnmMamC7MHnPV8cOcYVPoBdgJwUWlCBkj3qQF/2mu67jQDuJ1fDLAIMEsrAUYb94dJDFNO8s8tB/gW88F2utAOcoyPPIdDmYklPfgIMX3pLcvxVlW69Vi4naNxcGRhYhxM2SwCHC262wrwX7lkhyb8ccIPJ/rWAu7mF92VtwT8XHQ3Udjftm6q3gyJqlWAg0V3+hn+wboTrJE2S2nlFkh0amFs/G3Sc3xPwNMFPGxbYNaYFrZDYHTaJ77BCOBTauUkraqs4kXxqtgS8NeVh182e5fyQIBv3UGe5Qn4WZ6AnyWv8ssV+ZqP/aNfv8L2z/LNAR+Pr7rgERzjSTq328HRz590zOeOx21+v6ahz82Cz/u0n81zhLNcT8fys7e2+gtMPHuBWVA8yQNxyN9SxCfOFcdiM7zxax+nhL7ecn/qghARML1iqJOATXu3vXovsdfAjd3mvbQdjP5kFgLmz6xdBNj/+Cb/05zw8r4Xmzg8Nl6mVE5Gy2Q3LnKwneEkAOOP76dw/IwO/npleWwpSUM73DSuDABj/U+viPqrAff9NGD39xJFMZ+M238NYFN/8hNt7clNiS4B3I4DTuL1QfuSvB4wSjQWeOz8ahPArxMNhETbjzPu6Vha7ZWAxxsIiZYzlX6+2gG9DHAx0SAPwGjPEjG1/RrAhNTHu0KirwSMPlgibu26oA0BSymeB7wuhkZkiJkAI8hFgI/cPjJyunysCImmr4Qv9MGjgI+xfbsLWADSRUg0YibAcjLKyvcY4LZIv7mR8t7FRMkDsI8VW8VB2O0AE0DmQm39+lsBlhNcbtUfS/RuE8BjQOmr3xUukWgGzIHWcsARZA684QZwSVD4/kiDAWOg5fvgOcARZPl3bPH2QRF/2KulpZoIOFyYXUarumLAEeRwRUobFrp/BoAJng+Yx8G3BiyFmQGHQdjtAKMPDtftOom+EnAALmXRu0S79cMkfOg0gIl98DhgrGFsr/4oi8dhr9SOmuw8iYY9DWFiHzwOmGJqwhbEaH4U98KtqIFc8yc/ZMD3wdKCKw8wvd3CW5otFyR4vUMuzs4EMBsltCF/LetvC5glGtpIa/8awGyU0ARA+xJ9JWA/bFoG+JJUpZRPIrIIsBBnfZ74pQCbPXeCo5UAhkeFbHYRYCHO+jzxSwE2e+4Evb0BiTMXf80Q++AkYCHObev4pQCbPXcC996oewNmiaYaT6JvDpglmmzbk+ibAyYfrOkVXsRdbAT41kVCk4Ok2AcnAR+DrsGAOdFBKv4T06GuRMMkQSLhg5OA+6BrMGC8Ad/OVosSDZPkICn2wS3tJeA26BoMmBMdpOLus6AmPkVi+8JRtLXC1zGJpg7gSfTVgH1oHEOnhklESkj01YA5iuZ3r6Yk2ma0wmHStYDHEpFpSb5kNngOMPEKBzlswSK6lnIcSrS5kEM4+gZzgFmA5SBHWrCIrqNEl5BocyE7AJKIOcAk0VUwyGELFsMnKcehRJsLOYTDRMcXAGbZ5fmklETfCjBLNM8npST6VoBT714NJPqGgFcOi1JLAa4FzCEU2je3kcMkOQCaGyaRiu8WASZelAShOMofJskB0NwwiVR8twgwvVIFQLacomGSHADNDZNIxXdfA1hmsphO7INvBVhmsvyc1NcAlpks7/2lgQ+u/lbAFFwR4FSqMpGJ9FOVQR5TTkfOAZYxtLR22QESmUg/VRnNJqdTlSnAFFwR4FSqMpGJTL078n/2zoU7UViJ47p21SqbQ4/sjZVXy57e+/2/4c3MJOSNoIjVMl2BCD6Wn//JZJKA022xmNpFu1nlaQCbzSQN2O8uvBVgs5lkZ5VNwEtsJE0C2B+i4wdhQ8Ksc4DNRpIdcS/6dAf6w0HebA9xDrDZPra7Fhd9ugM9vBpyP8BtX1JpALYyWR3dgQG81uy6KQDr3LDZFeTWwbcAfPISTXbn/q0Bn6wRHe4F5e06eHkDwGl3syjkii8ZE30OsKlse3jPuEN2YoC1U1WAxx2yczoD2FT2yrqUz6hjsm4H+MygupsD1qknt5acBrA5581EbKYq6eoWkwB23W8oyLok0REHbKYpVX+SmaqMj4o9jQJYI9X9SeaoylNkVOz7SIBVX7DZYWhchSiNjoql/3834MUEgE/WLAazbTsNYJ021gPb3To4BFilsq8FfDqZ7ths21rN2FJ3GKrcVhfgU0/AQacbdsqhAfFjANbhEAG+3dSVMGDYOsm9qodgzKkr5wDrWzyQgtvnxpu6clvAs80228PaQVpd09pvyTXNG/y9Nc3X12Lxr7XT6d+/5bLmdA0XumsSXMJj2BWKkrj5B6tL5XlP693u1jlz7x/8G20Bf3Iby3BgW/itjrzB/aVf9AUBN35xsXiVpZfwCza65ALmh8wHXNdE9+sL8MIaoP4zzLry2aquF+rWd+4yBjjnvCgKXjTwyMU2z/80IcAGs/V4gLvhT3/7aIPXq1/Uv/GX8As6AQcUXHOBV/z7+nqTkDsBr23AS70dJZx8Ho/vVXV8L96PVQWP4/vuDxsAWP1n9NIs9zHPLRif5OyyyvqzvCP7l6zidvvy2hoqGDaAHRa3263a+bLdhl6wwUPRfBfdKnglb8IANzAUeJlg3ABcMHLMIcArdNODARfVblcUu0qs4SE2xdpX8HodKz0TYAFpq40IboVGN1TcIFg0sbkNvEAAfjFebQDmedYqWN00o645AKZKOAq4jALu5aKRaCUBy81mCGAb6GWAraNd/76O1Agu4K7X2D8a5+PMSubV/3pbVf8CPvWk2BQIt6/OCzbeB9faclioq/IDZFAwqPcN4b7hWgVXCrS6kQPUvybJvqGWULDT0Sc89o8FvHndvEizqmUNWO0WZE3AW3huq4/YBgDzugUsL+4MZQyf3whw0wV4bQPuHUU3xaeA2hrwvbOCB7joWMH3+oteLlrHTK/bMGAjpDIBvzpR9KZ9NYe6V/8d2kvOKsCNip8Jsm4iyWZSrd2zvgLxAMCsYc1u1/IVJcbYDHi9GAlwnR8wupKPrA2yJGDS71vTD/BqOOAkafKdds8NSyTfJBhAW6dlCsDhw88V3Ld0t5331cXtRpr20lYdrHY7Lvpls1GA6dVawbL9q8wOsmoZZH21pkIrM4pW9S+2gwcDZtBQUiPijlXBnERHR5N2/XyA/cjKVvC2jaZe7SBLbG6sI5SC+eHgApYKpmaSTHR0Am4d9CWAG6HbFvD7fQBf1kxyIq4uF93xHsHk3IiAa1/BnAIuXGi0hBlcM+BViG28FwRZCQO8WAED4qKwU5XdmFy0lwD+/fv7AN4Y1rroLsAvL+3xlosW1gLOPAXrmNoETPWwD1jXv5cBbirB9Qg1sGgDi3ZwXcBf3vQFrE/Q2KnK6W3tZRpjgF9VnH0uF63av8oQL9flxUKrFzobACyEVyrUMuvfi5pJCSPAux0mO9oWUzEN4Ft0GIwBONZMshXcAzC4Y24DNosSsIqiA4AtB30BYIaAhXKripJaeYF/gxR8eWcDY7F7CsI9+Py92m6wd9HzxUNOcG3znB5wIgEXYFQHi5bSgDr4iQDfgO/dDetgqnxp5UTR5wCHQqshQdZqxaId0nA6kyv2sqhdt/fBALMD1L3SqqFR9PWAk84Tfc3eGbDMZDVFUdFfVTRseDPpSgWzXxGjE61LdG9c9Yy9Vx/l71WuNf5at9T9rR4LMCS7C23Y9Tww0XGtgrsAJ52AkxnwWcCfx8KzZrpMlntq4xjgeQgAFeSYgmnMvA0YngP3qt7b9Q3mD+fZAPN3aB9BEK1XzXSdDbYKfcCJBZjqQA04mQH36PB3h+xUwwCvPR0PV7BugtAcMx+DGpiEKmZxBbez1Nq95rsqxP0Bh9z7gwGGxq8eslNUUwNOOgEnHmCymIJnwEEFW4B3Q4bsuFuXKVgF7jEFQ3ilkxBxR6qaN3ovuWdawmtNwGbyQn+CaiZp9PrH9ZBRNIbOf4qmgAdtTgoYVKh0GVMwXGB2Jf6lZ6Jo1TKeARu56CRpx3DITTrZfQFf19lgh0Lq+iuEWJ1oOvnaXfo1NDWOVivOXTe7XHIOD1j6LlqOR5UNMFUF+O79kQH3nroSHvh+PeCkE3DClH5h9jesTcDJDPhssr9pZ6wYk1fYZFNXQqcSyjEFpwEFk67dBtd5F+3W7oTX3vv4Cs6PVUEzVgo1geX42Uw2+UxhiQG2FAyrgIJJ1zPgSBStm7+6JcwGAL5u6op2lV5TKbEU3CJ2FUyvIXw+YHLRyjn7gM0Qy31nd6bnIwOujMZStTtMCThRgFO3LWwrWDlpV8EE/VsDptFYdwPsX6XOBdyR6HCBXqpgPL0yjpcgWgVDiQKsNNAOVvo1kxFxF+0iVK5ZBVsGfqOL0ER8CeAK/u7VDoZxWNbclc/Kmj6qQXq17noMwIkGbJ1SrWAEHEx0JLcE/GsUwKRcczl1O5ix5qDH2uUM5q4kEwLGU5lQgkE9EEaiHal9il0n7O+zA6Vfv1QzKYRf/bAIcTjLrVEPB1y5y6nbwawBEcupK8eCtXmPQErDjZBp+3oFA9TEeJDadJwcA5x8f8DVAZRbYR18FwUnCZdj3uXUlSYyoiMGWMVd1/UHJ8wPaMwTrU9wTME2Ere7MBaC6XeNdUVc2V2IYGUdfB8FC8DGRfnjgEPt2zEAuxq1ASedgJMHAFyBfimSru6j4Oq4ozqYBr8PA3x9h7+rUX3Kz51oOxSKjucK7Ddf67ri0RUMhKWK7wO4gMv0C7rvOxhc+c5zmLvCm6mG7CSdgM+P2DoL+Nd9AbdY76bgP8GpKzzxQMZy09ekKnUDKDTE/HvuHaxgF/UdAOPclQLzWDRzpWhmwOMAVnVwdVcFw7isolDjdbCPuB/ga7sLn97aOliu7wIY56zs5Bylxu8PngFfbmYEfS8Xjb4Z6YKQhwL2I+qhM/yfXME6gr6TghnObKho/oo7dWWxCMOyx1LOgDsVfNdcNM5VqeypK80QwNdfyvDpFXzXXDSM6PBsBvw0lhTvOKuwkBNYaMV618Ea9wz4mwJ2h+xUxe7QzICfDXBlAZ4V/FyAd3pMFm7OCn4iwA0EzkWDs1baFRvYDp4Bf1/ACWUm4zMbunuTZsAPb+e6C6+7jNJsd8frwPY6/GfATwI4PCZrPkMz4NkeoQ6OjYuebQY82yMG0us5jpoBzzYDnm222Wabbba5lh3jXZJeR+XLvLM827cFzHodxde8szzbxZbxzC1LJvu9Pw7Wt/0ejove7rWnNmfAd9DOOID7oZsBj6PNgadWI97vTXh7NNpPRmW9Xx/dZBw1m8slzxr4LmhQXopnsvYopXI6arYR6rVbA1bvaC4FYHyHTJTX63KfOZ8b+qZ5Do+8LUWNDv0ZCuao2UwuqcRAOozKudhQz9uvMR2wBqfvWrffM6bwwtVMNGIXL2g4azXaCGWCapdpiYRLBLzPMoRKKofDPf3mHx+5eHxIih+Ri6V+0GH5j9JwQDsCbD/tjAEYPtP8HI6vQsB7CXhPgOkIOtoD/Pfj4+/fs4D/wmE/BnBmaDTDB+clSUdqJ0PUXKqcZblXT5vgCOjhQGvGCC/sMRH7gBmrhTYJXL4s93jD+rSsy3RZliWqWXwfLlW8TOsgYLAegPGonxNoXa2dMQDTN1DfpcTPXq+XfLmGqzYv8XsowPAd+Qy4d1MJNZmXWLcJ9abi9KUlz3mJlxkqSctcqrgs8wBg5Z4B4OGgAyvTFOLY94AauGYMAQvtCg0vS1kP78V3SdN0tU5F7Mwhpg5F0C3g/4J5gOle1j8Q8PXaGQew7UXgeyzlp+/3OV/Kd+Es2v6dAXfF0nlG2klL0HCK2uX5Phcyxmfw8vZoWTRtaTaJbLRUVoBDfcLU2m1wK8X6dyUfqVBxKbbISMP5BYAB8Y900SNoZwTA2jdwT/vKq8jvEcthna2DfyjgrNVlhjBTVHCKWhbOGfVETjuuX4XQdco+cvVcqCXcYPt2L2rfMqMYXnyqKFGNLEBnuVhzbClDW9hRchAwXU/zyQBjhm/Rt0NtBO2MAHhhZK9Ejc8Y48Y3oCVnGUYD6tjS/jY/CLBsyvRLx1MbGLJXe1nXklNGJZcUVS8xuo63hTVIaBiFwLp4zfSIkV+WgCEGwM/F2rfMOC0xu1XKn22dOtnoYB38P2EE9uEBt0k8/K9nmC7or+SrtDMSYG60v00PwvEb0bJsP9v7+T47YJ2I4Jhg5Ouyt5IzETDTqVUKTmXsrCLoEkzqNm+3zBAL4FJiw052mFuq29DuelA/UOEjWJ2qauFz9ylqX1hCRLCU0UBJ+s4XsiY+BxhcNIClNeB+WMBCV8KxQaoAfG0tAeeYq8jO/jiu0s4ogNUntYAPn+1SRwNyneY9o+jnAizDpUwmJkqrs61LvxC35qUCnH5i7fuZYnNJbKGmqfkE0nV7jc20pMYJF+LTa3hod213OEC1AlEz1LIpqnaH6l0h4IPKS0NuS/x0uThy2dbE5wCTiwb7j7x4+X8fFTCDelL8x3lGYUoqkHChXr7PWI84uq92ltn/27u2HcWRGErUUj8QiCJRqLSKaujkgfn/P9zyrW650mGlBWyppwNkBJ2TU7aPXWaSvbsA9jcg3pTs/T2o/N5wXCfv7/gsN4oC1gH22CLGLxxFG1xkXZ1fknqBv43HvjHieYG1PbC3b/HSHlmXdhxPO+bzXAQdgRVI0+PxIi1yx807lJvnqwDsOXy5eA6D//W3mX8FOA1/1VcLOpaIp4fNPhj4yyC/LoOZw3xJIMWoL7DQ3RrJi6cTqr3c2Q9wULkbG94bPkfPP/S4DlHBLwD+5xgAfuk8mAGWkh8e2enyOMfDnf9pw6X17s9ThzhMDG49py0s+Z65VCkuL20KGgHcNAQrFB5yeOlcSaVkkYZ4eDAOdWaH2hXcpP6jeB7Dj/fIrdy2qEW3bWunOjpm0yRi8PH49+8LMxh4ihz2l6Yznb8oKNN7cJvF1GqdO5dF7uwH+DSKBOj9o/Xhtg2R/cYoWgA+BoBfOIo2gcOmMXhBlj3wgXs4quCDkbees8DjIx7hMatZeTacL9LpUi3BFQCdBl2yLIvgkUo01MXRsn/F/BdZ27bM5pDCEc/bjVF06oNfnMEQMEEzC5TY+jMsbR2qj1D5m/trmqdwZy/AlpM66SBxHMPHaD7GAwufYxHgN2BwWi4giExj+LLYRQaLZoXplbA2/hsuLfG8munJSgGW4IoW6XKZLksN4IMNdoF1/oZ0DDAEA67uvMft0d18YT2JsmX/Ucd1rUUfDByG4xdmMCx0FkMUZ4DA5+FG4ry/SMOiD97Lnb0AS4pHN2QA2L+7jyD8O+ZriMQCDwL8z5EBfmktmtMY74GBv3bVCxvsxsKmJ6r+Uv7reQu+1iGbe/bAVfDCXRZixeneAHFc3KP8UYI7tZEFZE6+IVHJ8vBCzou6lR3OPiOGajDo0eCDzWaARaKUJOmFpUoomXugsLCGxDlDygEL33wevJ87zwJYHAzFAeT9Q96NIaONDqdZBnjsg98CYFGy4CJJgERwmMVIGnSQjuJjVLLA8zronkR/d+7JPztmcDcCeGyYWdUkXeZw54X/cTXpO/RhgQ92lTv6046XM/4tWNGsKI72t19TlkEX0iT6TfbzykoW1HJ7DE7MIKrWDZ7fEJz9jjvPAzjvJ5F8vM5u1qitmXFV6/0BpsvU8wIrqtZ6V0fSixUZ3Nva9mcfrgF3oH5BnrjDnQ5STxJA8xRJ0iR6FtKlKFrOB1qWo2QBmLUs0OOA0RhJU5BX8U02bOjokHLhWzS+Y9kNg5Qee15IHmhX+zl+z51nA5wqaj0r0JektmWXAscPAJhLBxIaSYpjNwBchfZY0bKgh520LIyckVu4RehwKBhcblmRZVkkyxxYCctSqeOQ1INRiz72JNgAj7Ei/MVKNIT69QMAv9XWlcbHSxYTDch+K6ok1W6qOL6BO5cN3HkiwKGm5bJbtMzEaTVZBviN9yZJsiOiheXI2i5G0S7RoluuCIMCfeR6kvRVuhF3pIUub9CRQuE4xJJbgQKwdJHGz4kKFWnRVPC8oJ7V8iPq7Lj5iMDgXsRlgO8/03Z9ZYBvreOiv4G+cA8sRNbLadIe7jwZ4KIzzGEY0Bc92hDJm5Nd16KvS/ayWnQAOGl0XQO4BtXKiRZNXRxH1rNajq/hXyhemKwnmjGvo4BBKVKUPNLmnbSdtpyy00Ckjm3Rsg+pwuMotcj+Bui8rKoN9eD3Axg7oTEXtqBeQM6KGtZyHvwgd5p8QsczAJaG37r8DMmKMur0XA+y3g9gmyQxBjlcr/ZT4p6G2jK+Le9p8GTyXlgurexvsE2HfR3jCR3TcsfUo7hExyCLZnM06E0wijCO+Us7DCk7dvwa1JK6LfuD/fGd7F0A9ok/chUEAGAtXrLVAsU+7jwD4FSTMqH3K34e6c6Or03etmMffJd462188MNRd9iXhFuTuA+auNxyXzTpV05qSTP7C8ttZ/OP0i0uaUVYwkTqrvzCvisXejho36Hjno8ZgH+yKPoqCE/h+2FTdnZyZzfA0zl5zM0t5gLp1JBJhJHDWRR9n+Pvx2wPjrsUpLtSOqDjnuCO2e3c3KWFc8/ntP09AgmLePksQJ4LHRQkWtwXTF1XjvcKC4dr3mlosJJ0mF2kfzrEkBfse3e/fuwC/TzuPAfguNmGqs9mFBdwJD+bRowBvt6vCjBNy+pCd2UFjziirpC/tHOYKknzC/T5cr7EVEh+x9cFaDqvLPqDl7W4ae6bJgzgbmF4tsMMGRI0h5N4bnNthFMAXxXgJ3CHI+U/lz/LAJ+aeN4I4DCPK9XOzCGdWrk4J0sBnlejO5x/ZUPvFe4W5g4smpOF3Rz+vOkpHdODG8piBLwC7C3bZsn/wsZX2uOAnIV6CXvbhgxftTijo6vtoAA/VGbcx53tAAN7pwDOtWUzWzMaHGXunVGAH/C/TTKnUliL3DE0eBZelUl3twnupCMbIqxxac5HN0zxN2rLnahaQabpkmnSh2HgoopRgB/NhJe5Y6p57uwFeHkSdD4LNxVlx1IHDAtmgJfss6ZkmVyZZtbGLJlzZSxcdM4WkTRBRYmPjBqNrbF0fArNs2Nwy+nPNC+6yyRYgwq0SZ6xOGhmLHVstM/k7++48wSAR2y0bijOcMX72u/1ySNqxcQrwzOjy/w43cuA82ZnOJxLj9/f+Xe3l0P945m30fTnofDzN9zlcMtYbadmRqutcqeYwbGFO3sBthvaAseTMvVbVzZYN5r+XDq2Drs9uozV+WPaeJYCK4+mBhtO/Y9h9ftTKD8eRs+pPRRB/447+wFW+w9jaLN+xmn+m8/i8nyYWLTjkPByeCElU3r9X8AU4A+Ad+lZArZpdEV+a4BPCrCampqampqampqampqampqampqampqampqampqampqampqampqampqampqampqampqa2v/C/gUsmKSsSvUgDAAAAABJRU5ErkJggg==",window.RESOURCE_IMAGE=new Image,RESOURCE_IMAGE.src=RESOURCE_IMAGE_URL,window.BUTTON_IMAGE_URL="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAH0AAABaCAMAAACi96mZAAAD62lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNi4wLWMwMDYgNzkuZGFiYWNiYiwgMjAyMS8wNC8xNC0wMDozOTo0NCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjIuNCAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMjMtMDMtMTRUMTE6NTQ6MDUrMDg6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDIzLTAzLTE1VDEyOjU5OjIwKzA4OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDIzLTAzLTE1VDEyOjU5OjIwKzA4OjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoyNjE1Mzg4NkJBRjgxMUVEOTQzNEVEMjc5MEIyMzgwQiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoyNjE1Mzg4N0JBRjgxMUVEOTQzNEVEMjc5MEIyMzgwQiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjI2MTUzODg0QkFGODExRUQ5NDM0RUQyNzkwQjIzODBCIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjI2MTUzODg1QkFGODExRUQ5NDM0RUQyNzkwQjIzODBCIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+iJqNCwAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAA8UExURUdwTK0GANkgAscLAPfb2/365rOvyiw8Xa7sAPXJAPG0AHd1pXudAND0DPjgAPD/5ulBNOogAJbGAIB+rw9jCecAAAABdFJOUwBA5thmAAADg0lEQVRo3u2YgXarIAyGF21Lp23n2Pu/601IQLADgqx3955jtpJKjV/yay3x7e3fMVO3V8IfNXsdHuHvNSvje7Qzj6lKnx6mS7t89gbhZzQexctGmJvy6RO8ql0Ob0xAxG4z955VT3Pi3Kn7Lt5cmD5NWOBEHrcmh6XNdx6QfskkT/F17TLxLnqiPSZ3FB6ionmuTNdol6e7Ms8rfT2Gmr5Puzj3QJdode27tStE07Sy9r3a4SxiJzT3vZ544P+wiYPmvLdrh7O6u0278grtqHbFnbZU+0Oh3SNPn6o3yqlIV2RfoiusQK8n/8hpZy46fJ7eE2++VOHmMmfo2vgvkw2vWia4P57Cq/ZVWB/0xZu5bsWlTV9876ryV1elhx122GH/Rwd9r9krO+j7tWb313XQ91uVfrubLu3y2RuG06I4uLN3/EJ8qYNWaHfPdtABjqCt8/RroYPWaZfroIVureOlThRBen5Ny/APtOA+vOMXaXcp069Xa321grU02ho9wBG0dZ5+rdNXrc+CtR6uoFvreKkTRer09IRba31SSrrTTqoVrKXRKugisrgAbaKvWn8I1np4ns5XjeVq2VmJCW9ureddtBPdC3TdN6ZyzYvI4gLUv8lf8zfF3aJUO2df1C6XPdFv1RvlrUTvyN7RFVai78+eOmANvNRBq5LPd9Ca4EwfaGZl/Ly/g54LHfSsiM/Bf6CDnhXx89FBH3bYYYcddjyz+Cs/FsYsjfaTeLMMjbbB92hnFmilw2IS+GejRXiD8BNZ4mSDfboDejAJfGy0FW/MEI4ajafS3DCs2SMcWung8bg+d3QAd3AAIARuDTTjtvwnpzCHdL8sxzcId0klblwk03H7CXmQeE8PpaGs5MDN8hAX7YaUPvqj8l6yscTOYz19fKa7OukioApPKz0cFwp0ihlj7cZYO78Dzz3T4ekcB7ooX6+dJWfNETG4Kt30WrQbnugLBPr3ytN0mc4SjKLdSg+Sw3d0BAG/gGwYeORZnvY7yDDAs/Lb8+5JQflM7bvuNttrfoFQYaL84JUfSTtPj655aL/TJrXj952uJCAHYRzdjEz7HfzwGdGh9VcGEjosrXebJa6ds22wMaVD630+Up7Cx6Y/Kn026zMLaDYf75r+9spDK7wjPkle88xh+wgi6sM741XPHApPIDrjNc8cSk8gOuN7F5W/uSj9X+0PCKSoJtnojooAAAAASUVORK5CYII=",window.POS=new Array,POS.selectTank=[128,96],POS.stageLevel=[396,96],POS.num=[256,96],POS.map=[0,96],POS.home=[256,0],POS.score=[0,112],POS.player=[0,0],POS.protected=[160,96],POS.enemyBefore=[256,32],POS.enemy1=[0,32],POS.enemy2=[128,32],POS.enemy3=[0,64],POS.bullet=[80,96],POS.tankBomb=[0,160],POS.bulletBomb=[320,0],POS.over=[384,64],POS.prop=[256,110],window.START_AUDIO="",window.BULLET_DESTROY_AUDIO="",window.TANK_DESTROY_AUDIO="",window.PLAYER_DESTROY_AUDIO="",window.MOVE_AUDIO="",window.ATTACK_AUDIO="",window.PROP_AUDIO="",window.GAME_STATE_MENU=0,window.GAME_STATE_INIT=1,window.GAME_STATE_START=2,window.GAME_STATE_OVER=3,window.GAME_STATE_WIN=4,window.WALL=1,window.GRID=2,window.GRASS=3,window.WATER=4,window.ICE=5,window.HOME=9,window.ANOTHREHOME=8,window.UP=0,window.DOWN=1,window.LEFT=2,window.RIGHT=3,window.ENEMY_LOCATION=[192,0,384],window.BULLET_TYPE_PLAYER=1,window.BULLET_TYPE_PLAYER2=3,window.BULLET_TYPE_ENEMY=2,window.CRACK_TYPE_TANK="tank",window.CRACK_TYPE_BULLET="bullet"</script>
    <script>window.map2=[[0,0,0,0,0,0,2,2,0,0,0,0,0,0,2,2,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,2,2,0,0,0,0,0,0,2,2,0,0,0,0,0,0,0,0,0,0],[0,0,1,1,0,0,2,2,0,0,0,0,0,0,1,1,0,0,1,1,0,0,1,1,0,0],[0,0,1,1,0,0,2,2,0,0,0,0,0,0,1,1,0,0,1,1,0,0,1,1,0,0],[0,0,1,1,0,0,0,0,0,0,0,0,1,1,1,1,0,0,1,1,2,2,1,1,0,0],[0,0,1,1,0,0,0,0,0,0,0,0,1,1,1,1,0,0,1,1,2,2,1,1,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,0,0,0,0,0,0],[3,3,0,0,0,0,0,0,0,0,0,0,2,2,0,0,0,0,1,1,3,3,1,1,2,2],[3,3,0,0,0,0,0,0,0,0,0,0,2,2,0,0,0,0,1,1,3,3,1,1,2,2],[3,3,3,3,0,0,0,0,0,0,1,1,0,0,0,0,2,2,0,0,3,3,0,0,0,0],[3,3,3,3,0,0,0,0,0,0,1,1,0,0,0,0,2,2,0,0,3,3,0,0,0,0],[0,0,1,1,1,1,1,1,3,3,3,3,3,3,2,2,0,0,0,0,3,3,1,1,0,0],[0,0,1,1,1,1,1,1,3,3,3,3,3,3,2,2,0,0,0,0,3,3,1,1,0,0],[0,0,0,0,0,0,2,2,3,3,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0],[0,0,0,0,0,0,2,2,3,3,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0],[2,2,1,1,0,0,2,2,0,0,1,1,0,0,1,1,0,0,0,0,0,0,1,1,0,0],[2,2,1,1,0,0,2,2,0,0,1,1,0,0,1,1,0,0,0,0,0,0,1,1,0,0],[0,0,1,1,0,0,1,1,0,0,1,1,1,1,1,1,0,0,1,1,2,2,1,1,0,0],[0,0,1,1,0,0,1,1,0,0,1,1,1,1,1,1,0,0,1,1,2,2,1,1,0,0],[0,0,1,1,0,0,1,1,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0],[0,0,1,1,0,0,1,1,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0,0],[0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,1,1,0,0,1,1,0,0],[0,0,1,1,0,0,1,1,0,0,0,1,9,8,1,0,0,0,1,1,1,1,1,1,0,0],[0,0,1,1,0,0,1,1,0,0,0,1,8,8,1,0,0,0,1,1,1,1,1,1,0,0]]</script>
    <script>window.CrackAnimation=function(s,i,t){this.times=0,this.ctx=i,this.frame=0,this.x=0,this.y=0,this.posName="",this.size=0,this.isOver=!1,this.tempDir=1,this.owner=t,s==CRACK_TYPE_TANK?(this.posName="tankBomb",this.size=66,this.frame=4):(this.posName="bulletBomb",this.size=32,this.frame=3),this.x=t.x+parseInt(t.size-this.size)/2,this.y=t.y+parseInt(t.size-this.size)/2,this.draw=function(){var s=parseInt(this.times/3);this.ctx.drawImage(RESOURCE_IMAGE,POS[this.posName][0]+s*this.size,POS[this.posName][1],this.size,this.size,this.x,this.y,this.size,this.size),this.times+=this.tempDir,this.times>3*this.frame-parseInt(1.5)&&(this.tempDir=-1),this.times<=0&&(this.isOver=!0)}}</script>
    <script>window.Prop=function(t){this.x=0,this.y=0,this.duration=600,this.type=0,this.hit=!1,this.width=30,this.height=28,this.ctx=t,this.isDestroyed=!1,this.size=28,this.init=function(){this.ctx.clearRect(this.x,this.y,this.width,this.height),this.duration=600,this.type=parseInt(6*Math.random()),this.x=parseInt(384*Math.random())+map.offsetX,this.y=parseInt(384*Math.random())+map.offsetY,this.isDestroyed=!1},this.draw=function(){this.duration>0&&!this.isDestroyed?(this.ctx.drawImage(RESOURCE_IMAGE,POS.prop[0]+this.type*this.width,POS.prop[1],this.width,this.height,this.x,this.y,this.width,this.height),this.duration--,this.isHit()):(this.ctx.clearRect(this.x,this.y,this.width,this.height),this.isDestroyed=!0)},this.isHit=function(){var t=null;if(player1.lives>0&&CheckIntersect(this,player1,0)?(this.hit=!0,t=player1):player2.lives>0&&CheckIntersect(this,player2,0)&&(this.hit=!0,t=player2),this.hit)switch(this.isDestroyed=!0,this.ctx.clearRect(this.x,this.y,this.width,this.height),this.type){case 0:t.lives++;break;case 1:emenyStopTime=500;break;case 2:map.updateMap([[23,11],[23,12],[23,13],[23,14],[24,11],[24,14],[25,11],[25,14]],GRID),homeProtectedTime=500;break;case 3:if(null!=enemyArray||enemyArray.length>0)for(var i=0;i<enemyArray.length;i++){enemyArray[i].distroy()}break;case 4:break;case 5:t.isProtected=!0,t.protectedTime=500}}}</script>
    <script>var Bullet=function(t,i,s,e){this.ctx=t,this.x=0,this.y=0,this.owner=i,this.type=s,this.dir=e,this.speed=3,this.size=6,this.hit=!1,this.isDestroyed=!1,this.draw=function(){this.ctx.drawImage(RESOURCE_IMAGE,POS.bullet[0]+this.dir*this.size,POS.bullet[1],this.size,this.size,this.x,this.y,this.size,this.size),this.move()},this.move=function(){this.dir==UP?this.y-=this.speed:this.dir==DOWN?this.y+=this.speed:this.dir==RIGHT?this.x+=this.speed:this.dir==LEFT&&(this.x-=this.speed),this.isHit()},this.isHit=function(){if(!this.isDestroyed){if(this.x<map.offsetX?(this.x=map.offsetX,this.hit=!0):this.x>map.offsetX+map.mapWidth-this.size&&(this.x=map.offsetX+map.mapWidth-this.size,this.hit=!0),this.y<map.offsetY?(this.y=map.offsetY,this.hit=!0):this.y>map.offsetY+map.mapHeight-this.size&&(this.y=map.offsetY+map.mapHeight-this.size,this.hit=!0),!this.hit&&null!=bulletArray&&bulletArray.length>0)for(var t=0;t<bulletArray.length;t++)if(bulletArray[t]!=this&&this.owner.isAI!=bulletArray[t].owner.isAI&&0==bulletArray[t].hit&&CheckIntersect(bulletArray[t],this,0)){this.hit=!0,bulletArray[t].hit=!0;break}if(!this.hit)if(bulletMapCollision(this,map)&&(this.hit=!0),this.type==BULLET_TYPE_PLAYER||this.type==BULLET_TYPE_PLAYER2){if(null!=enemyArray||enemyArray.length>0)for(t=0;t<enemyArray.length;t++){var i=enemyArray[t];if(!i.isDestroyed&&CheckIntersect(this,i,0)){CheckIntersect(this,i,0),i.lives>1?i.lives--:i.distroy(),this.hit=!0;break}}player1.lives>0&&CheckIntersect(this,player1,0)?(player1.isProtected||player1.isDestroyed||player1.distroy(),this.hit=!0):player2.lives>0&&CheckIntersect(this,player2,0)&&(player2.isProtected||player2.isDestroyed||player2.distroy(),this.hit=!0)}else this.type==BULLET_TYPE_ENEMY&&(player1.lives>0&&CheckIntersect(this,player1,0)?(player1.isProtected||player1.isDestroyed||player1.distroy(),this.hit=!0):player2.lives>0&&CheckIntersect(this,player2,0)&&(player2.isProtected||player2.isDestroyed||player2.distroy(),this.hit=!0));this.hit&&this.distroy()}},this.distroy=function(){this.isDestroyed=!0,crackArray.push(new CrackAnimation(CRACK_TYPE_BULLET,this.ctx,this)),this.owner.isAI}};window.Bullet=Bullet</script>
    <script>window.Tank=function(){this.x=0,this.y=0,this.size=32,this.dir=UP,this.speed=1,this.frame=0,this.hit=!1,this.isAI=!1,this.isShooting=!1,this.bullet=null,this.shootRate=.6,this.isDestroyed=!1,this.tempX=0,this.tempY=0,this.move=function(){this.isAI&&emenyStopTime>0||(this.tempX=this.x,this.tempY=this.y,this.isAI&&(this.frame++,(this.frame%100==0||this.hit)&&(this.dir=parseInt(4*Math.random()),this.hit=!1,this.frame=0)),this.dir==UP?this.tempY-=this.speed:this.dir==DOWN?this.tempY+=this.speed:this.dir==RIGHT?this.tempX+=this.speed:this.dir==LEFT&&(this.tempX-=this.speed),this.isHit(),this.hit||(this.x=this.tempX,this.y=this.tempY))},this.isHit=function(){this.dir==LEFT?this.x<=map.offsetX&&(this.x=map.offsetX,this.hit=!0):this.dir==RIGHT?this.x>=map.offsetX+map.mapWidth-this.size&&(this.x=map.offsetX+map.mapWidth-this.size,this.hit=!0):this.dir==UP?this.y<=map.offsetY&&(this.y=map.offsetY,this.hit=!0):this.dir==DOWN&&this.y>=map.offsetY+map.mapHeight-this.size&&(this.y=map.offsetY+map.mapHeight-this.size,this.hit=!0),this.hit||tankMapCollision(this,map)&&(this.hit=!0)},this.isShot=function(){},this.shoot=function(t){if(!(this.isAI&&emenyStopTime>0||this.isShooting)){var i=this.x,s=this.y;this.bullet=new Bullet(this.ctx,this,t,this.dir),this.dir==UP?(i=this.x+parseInt(this.size/2)-parseInt(this.bullet.size/2),s=this.y-this.bullet.size):this.dir==DOWN?(i=this.x+parseInt(this.size/2)-parseInt(this.bullet.size/2),s=this.y+this.size):this.dir==LEFT?(i=this.x-this.bullet.size,s=this.y+parseInt(this.size/2)-parseInt(this.bullet.size/2)):this.dir==RIGHT&&(i=this.x+this.size,s=this.y+parseInt(this.size/2)-parseInt(this.bullet.size/2)),this.bullet.x=i,this.bullet.y=s,this.isAI,this.bullet.draw(),bulletArray.push(this.bullet),this.isShooting=!0}},this.distroy=function(){this.isDestroyed=!0,crackArray.push(new CrackAnimation(CRACK_TYPE_TANK,this.ctx,this))}},window.SelectTank=function(){this.ys=[250,281],this.x=140,this.size=27},SelectTank.prototype=new Tank,window.PlayTank=function(t){this.ctx=t,this.lives=3,this.isProtected=!0,this.protectedTime=500,this.offsetX=0,this.speed=2,this.draw=function(){if(this.hit=!1,this.ctx.drawImage(RESOURCE_IMAGE,POS.player[0]+this.offsetX+this.dir*this.size,POS.player[1],this.size,this.size,this.x,this.y,this.size,this.size),this.isProtected){var t=parseInt((500-this.protectedTime)/5)%2;this.ctx.drawImage(RESOURCE_IMAGE,POS.protected[0],POS.protected[1]+32*t,32,32,this.x,this.y,32,32),this.protectedTime--,0==this.protectedTime&&(this.isProtected=!1)}},this.distroy=function(){this.isDestroyed=!0,crackArray.push(new CrackAnimation(CRACK_TYPE_TANK,this.ctx,this))},this.renascenc=function(t){this.lives--,this.dir=UP,this.isProtected=!0,this.protectedTime=500,this.isDestroyed=!1;var i=0;i=1==t?129:256,this.x=i+map.offsetX,this.y=385+map.offsetY}},PlayTank.prototype=new Tank,window.EnemyOne=function(t){this.ctx=t,this.isAppear=!1,this.times=0,this.lives=1,this.isAI=!0,this.speed=1.5,this.draw=function(){if(this.times++,this.isAppear){if(this.ctx.drawImage(RESOURCE_IMAGE,POS.enemy1[0]+this.dir*this.size,POS.enemy1[1],32,32,this.x,this.y,32,32),this.times%50==0)Math.random()<this.shootRate&&this.shoot(2),this.times=0;this.move()}else{var t=parseInt(this.times/5)%7;this.ctx.drawImage(RESOURCE_IMAGE,POS.enemyBefore[0]+32*t,POS.enemyBefore[1],32,32,this.x,this.y,32,32),34==this.times&&(this.isAppear=!0,this.times=0,this.shoot(2))}}},EnemyOne.prototype=new Tank,window.EnemyTwo=function(t){this.ctx=t,this.isAppear=!1,this.times=0,this.lives=2,this.isAI=!0,this.speed=1,this.draw=function(){if(this.times++,this.isAppear){if(this.ctx.drawImage(RESOURCE_IMAGE,POS.enemy2[0]+this.dir*this.size,POS.enemy2[1],32,32,this.x,this.y,32,32),this.times%50==0)Math.random()<this.shootRate&&this.shoot(2),this.times=0;this.move()}else{var t=parseInt(this.times/5)%7;this.ctx.drawImage(RESOURCE_IMAGE,POS.enemyBefore[0]+32*t,POS.enemyBefore[1],32,32,this.x,this.y,32,32),35==this.times&&(this.isAppear=!0,this.times=0,this.shoot(2))}}},EnemyTwo.prototype=new Tank,window.EnemyThree=function(t){this.ctx=t,this.isAppear=!1,this.times=0,this.lives=3,this.isAI=!0,this.speed=.5,this.draw=function(){if(this.times++,this.isAppear){if(this.ctx.drawImage(RESOURCE_IMAGE,POS.enemy3[0]+this.dir*this.size+(3-this.lives)*this.size*4,POS.enemy3[1],32,32,this.x,this.y,32,32),this.times%50==0)Math.random()<this.shootRate&&this.shoot(2),this.times=0;this.move()}else{var t=parseInt(this.times/5)%7;this.ctx.drawImage(RESOURCE_IMAGE,POS.enemyBefore[0]+32*t,POS.enemyBefore[1],32,32,this.x,this.y,32,32),35==this.times&&(this.isAppear=!0,this.times=0,this.shoot(2))}}},EnemyThree.prototype=new Tank</script>
    <script>window.Num=function(i){this.ctx=i,this.size=14,this.draw=function(i,s,t){var h=s,e=t,n=[];if(0==i)n.push(0);else for(;i>0;)n.push(i%10),i=parseInt(i/10);for(var r=n.length-1;r>=0;r--)h=s+(n.length-r-1)*this.size,this.ctx.drawImage(RESOURCE_IMAGE,POS.num[0]+14*n[r],POS.num[1],this.size,this.size,h,e,this.size,this.size)}}</script>
    <script>window.Menu=function(t){this.ctx=t,this.x=0,this.y=SCREEN_HEIGHT,this.selectTank=new SelectTank,this.playNum=1,this.times=0,this.draw=function(){this.times++;parseInt(this.times/6)%2==0||this.selectTank.size,this.y<=0?this.y=0:this.y-=5,this.ctx.clearRect(0,0,SCREEN_WIDTH,SCREEN_HEIGHT),this.ctx.save(),this.ctx.restore()},this.next=function(t){this.playNum+=t,this.playNum>2?this.playNum=1:this.playNum<1&&(this.playNum=2)}}</script>
    <script>window.Map=function(wCtx,gCtx){this.level=1,this.mapLevel=null,this.wallCtx=wCtx,this.grassCtx=gCtx,this.offsetX=48,this.offsetY=16,this.wTileCount=26,this.HTileCount=26,this.tileSize=16,this.homeSize=32,this.num=new Num(this.wallCtx),this.mapWidth=416,this.mapHeight=416,this.setMapLevel=function(level){this.level=level;var tempMap=eval("map"+this.level);this.mapLevel=new Array;for(var i=0;i<tempMap.length;i++){this.mapLevel[i]=new Array;for(var j=0;j<tempMap[i].length;j++)this.mapLevel[i][j]=tempMap[i][j]}},this.draw=function(){this.wallCtx.fillStyle="#000",this.wallCtx.fillRect(0,0,SCREEN_WIDTH,SCREEN_HEIGHT),this.wallCtx.fillStyle="#000",this.wallCtx.fillRect(this.offsetX,this.offsetY,this.mapWidth,this.mapHeight),this.grassCtx.clearRect(0,0,SCREEN_WIDTH,SCREEN_HEIGHT);for(var i=0;i<this.HTileCount;i++)for(var t=0;t<this.wTileCount;t++)this.mapLevel[i][t]==WALL||this.mapLevel[i][t]==GRID||this.mapLevel[i][t]==WATER||this.mapLevel[i][t]==ICE?this.wallCtx.drawImage(RESOURCE_IMAGE,this.tileSize*(this.mapLevel[i][t]-1)+POS.map[0],POS.map[1],this.tileSize,this.tileSize,t*this.tileSize+this.offsetX,i*this.tileSize+this.offsetY,this.tileSize,this.tileSize):this.mapLevel[i][t]==GRASS?this.grassCtx.drawImage(RESOURCE_IMAGE,this.tileSize*(this.mapLevel[i][t]-1)+POS.map[0],POS.map[1],this.tileSize,this.tileSize,t*this.tileSize+this.offsetX,i*this.tileSize+this.offsetY,this.tileSize,this.tileSize):this.mapLevel[i][t]==HOME&&this.wallCtx.drawImage(RESOURCE_IMAGE,POS.home[0],POS.home[1],this.homeSize,this.homeSize,t*this.tileSize+this.offsetX,i*this.tileSize+this.offsetY,this.homeSize,this.homeSize);this.drawNoChange(),this.drawEnemyNum(maxEnemy),this.drawLevel(),this.drawLives(0,1),this.drawLives(0,2)},this.drawNoChange=function(){},this.drawLevel=function(){},this.drawEnemyNum=function(i){},this.clearEnemyNum=function(i,t){let e=i-t,s=document.querySelector(".robot-tank-count"),h="";if(e>0)for(let i=0;i<e;i++)h+=`<div class="tank-count-item" style="background-image: url(${RESOURCE_IMAGE_URL})"></div>`;s.innerHTML=h},this.drawLives=function(i,t){let e=document.querySelectorAll(".game-info .player-box .player-info");if(e){let s=e[t-1].querySelector(".life-box"),h="";if(i>0)for(let t=0;t<i;t++)h+='<div class="life"></div>';s.innerHTML=h}},this.updateMap=function(i,t){if(null!=i&&i.length>0)for(var e=i.length,s=0;s<e;s++){var h=i[s];this.mapLevel[h[0]][h[1]]=t,t>0?this.wallCtx.drawImage(RESOURCE_IMAGE,this.tileSize*(t-1)+POS.map[0],POS.map[1],this.tileSize,this.tileSize,h[1]*this.tileSize+this.offsetX,h[0]*this.tileSize+this.offsetY,this.tileSize,this.tileSize):(this.wallCtx.fillStyle="#000",this.wallCtx.fillRect(h[1]*this.tileSize+this.offsetX,h[0]*this.tileSize+this.offsetY,this.tileSize,this.tileSize))}},this.homeHit=function(){this.wallCtx.drawImage(RESOURCE_IMAGE,POS.home[0]+this.homeSize,POS.home[1],this.homeSize,this.homeSize,12*this.tileSize+this.offsetX,24*this.tileSize+this.offsetY,this.homeSize,this.homeSize)}}</script>
    <script>window.CheckIntersect=(e,i,t)=>(window.A1=e.x+t,window.B1=e.x+e.size-t,window.C1=e.y+t,window.D1=e.y+e.size-t,window.A2=i.x+t,window.B2=i.x+i.size-t,window.C2=i.y+t,window.D2=i.y+i.size-t,(A1>=A2&&A1<=B2||B1>=A2&&B1<=B2)&&(C1>=C2&&C1<=D2||D1>=C2&&D1<=D2)),window.tankMapCollision=(e,i)=>{var t=0,s=0,r=0;if(e.dir==UP?(s=parseInt((e.tempY+3-i.offsetY)/i.tileSize),r=parseInt((e.tempX+3-i.offsetX)/i.tileSize)):e.dir==DOWN?(s=parseInt((e.tempY-3-i.offsetY+e.size)/i.tileSize),r=parseInt((e.tempX+3-i.offsetX)/i.tileSize)):e.dir==LEFT?(s=parseInt((e.tempY+3-i.offsetY)/i.tileSize),r=parseInt((e.tempX+3-i.offsetX)/i.tileSize)):e.dir==RIGHT&&(s=parseInt((e.tempY+3-i.offsetY)/i.tileSize),r=parseInt((e.tempX-3-i.offsetX+e.size)/i.tileSize)),s>=i.HTileCount||s<0||r>=i.wTileCount||r<0)return!0;if(e.dir==UP||e.dir==DOWN){var f=parseInt(e.tempX-map.offsetX-r*i.tileSize+e.size-3);t=f%i.tileSize==0?parseInt(f/i.tileSize):parseInt(f/i.tileSize)+1;for(var l=0;l<t&&r+l<i.wTileCount;l++){if((a=i.mapLevel[s][r+l])==WALL||a==GRID||a==WATER||a==HOME||a==ANOTHREHOME)return e.dir==UP?e.y=i.offsetY+s*i.tileSize+i.tileSize-3:e.dir==DOWN&&(e.y=i.offsetY+s*i.tileSize-e.size+3),!0}}else{var n=parseInt(e.tempY-map.offsetY-s*i.tileSize+e.size-3);t=n%i.tileSize==0?parseInt(n/i.tileSize):parseInt(n/i.tileSize)+1;for(l=0;l<t&&s+l<i.HTileCount;l++){var a;if((a=i.mapLevel[s+l][r])==WALL||a==GRID||a==WATER||a==HOME||a==ANOTHREHOME)return e.dir==LEFT?e.x=i.offsetX+r*i.tileSize+i.tileSize-3:e.dir==RIGHT&&(e.x=i.offsetX+r*i.tileSize-e.size+3),!0}}return!1},window.bulletMapCollision=(e,i)=>{var t=0,s=0,r=0,f=[],l=!1;if(e.dir==UP?(s=parseInt((e.y-i.offsetY)/i.tileSize),r=parseInt((e.x-i.offsetX)/i.tileSize)):e.dir==DOWN?(s=parseInt((e.y-i.offsetY+e.size)/i.tileSize),r=parseInt((e.x-i.offsetX)/i.tileSize)):e.dir==LEFT?(s=parseInt((e.y-i.offsetY)/i.tileSize),r=parseInt((e.x-i.offsetX)/i.tileSize)):e.dir==RIGHT&&(s=parseInt((e.y-i.offsetY)/i.tileSize),r=parseInt((e.x-i.offsetX+e.size)/i.tileSize)),s>=i.HTileCount||s<0||r>=i.wTileCount||r<0)return!0;if(e.dir==UP||e.dir==DOWN){var n=parseInt(e.x-map.offsetX-r*i.tileSize+e.size);t=n%i.tileSize==0?parseInt(n/i.tileSize):parseInt(n/i.tileSize)+1;for(var a=0;a<t&&r+a<i.wTileCount;a++){if((z=i.mapLevel[s][r+a])==WALL||z==GRID||z==HOME||z==ANOTHREHOME)if(l=!0,z==WALL)f.push([s,r+a]);else if(z!=GRID){isGameOver=!0;break}}}else{var p=parseInt(e.y-map.offsetY-s*i.tileSize+e.size);t=p%i.tileSize==0?parseInt(p/i.tileSize):parseInt(p/i.tileSize)+1;for(a=0;a<t&&s+a<i.HTileCount;a++){var z;if((z=i.mapLevel[s+a][r])==WALL||z==GRID||z==HOME||z==ANOTHREHOME)if(l=!0,z==WALL)f.push([s+a,r]);else if(z!=GRID){isGameOver=!0;break}}}return map.updateMap(f,0),l}</script>
    <script>window.Stage=function(t,i){console.log(1111,t,new Num(t)),this.ctx=t,this.ctx.fillStyle="#F7931A",this.drawHeigth=15,this.level=i,this.temp=0,this.dir=1,this.isReady=!1,this.levelNum=new Num(t),this.init=function(t){this.dir=1,this.isReady=!1,this.level=t,this.temp=0},this.draw=function(){1==this.dir?225==this.temp?(this.ctx.drawImage(RESOURCE_IMAGE,POS.stageLevel[0],POS.stageLevel[1],78,14,194,208,78,14),this.levelNum.draw(this.level,308,208),initMap()):825==this.temp?(this.temp=225,this.dir=-1):(this.ctx.fillRect(0,this.temp,512,this.drawHeigth),this.ctx.fillRect(0,448-this.temp-this.drawHeigth,512,this.drawHeigth)):this.temp>=0?(this.ctx.clearRect(0,this.temp,512,this.drawHeigth),this.ctx.clearRect(0,448-this.temp-this.drawHeigth,512,this.drawHeigth)):this.isReady=!0,this.temp+=this.drawHeigth*this.dir}}</script>
    <script>function initScreen(){window.canvas=document.querySelector("#stageCanvas"),ctx=canvas.getContext("2d"),canvas.setAttribute("width",SCREEN_WIDTH),canvas.setAttribute("height",SCREEN_HEIGHT),wallCtx=document.querySelector("#wallCanvas").getContext("2d"),grassCtx=document.querySelector("#grassCanvas").getContext("2d"),document.querySelector("#wallCanvas").setAttribute("width",SCREEN_WIDTH),document.querySelector("#wallCanvas").setAttribute("height",SCREEN_HEIGHT),document.querySelector("#grassCanvas").setAttribute("width",SCREEN_WIDTH),document.querySelector("#grassCanvas").setAttribute("height",SCREEN_HEIGHT),tankCtx=document.querySelector("#tankCanvas").getContext("2d"),document.querySelector("#tankCanvas").setAttribute("width",SCREEN_WIDTH),document.querySelector("#tankCanvas").setAttribute("height",SCREEN_HEIGHT),overCtx=document.querySelector("#overCanvas").getContext("2d"),document.querySelector("#overCanvas").setAttribute("width",SCREEN_WIDTH),document.querySelector("#overCanvas").setAttribute("height",SCREEN_HEIGHT),document.querySelector("#canvasDiv").style.width=`${SCREEN_WIDTH}px`,document.querySelector("#canvasDiv").style.height=`${SCREEN_HEIGHT}px`,document.querySelector("#canvasDiv").style["background-color"]="#000000",document.querySelector(".startCanvas .bg-content").style["background-image"]=`url(${MENU_IMAGE_URL})`,document.querySelector(".div .icon").style["background-image"]=`url(${RESOURCE_IMAGE_URL})`,document.querySelectorAll(".stage-box-tank-icon").forEach((e=>{e.style["background-image"]=`url(${RESOURCE_IMAGE_URL})`})),document.querySelectorAll(".game-info .icon").forEach((e=>{e.style["background-image"]=`url(${RESOURCE_IMAGE_URL})`})),document.querySelector(".game-logo").style["background-image"]=`url(${RESOURCE_IMAGE_URL})`,document.querySelectorAll(".button-bg").forEach((e=>{e.style["background-image"]=`url(${BUTTON_IMAGE_URL})`}))}function initObject(){menu=new Menu(ctx),stage=new Stage(ctx,level),map=new Map(wallCtx,grassCtx),player1=new PlayTank(tankCtx),player1.x=129+map.offsetX,player1.y=385+map.offsetY,player2=new PlayTank(tankCtx),player2.offsetX=128,player2.x=256+map.offsetX,player2.y=385+map.offsetY,appearEnemy=0,enemyArray=[],bulletArray=[],keys=[],crackArray=[],isGameOver=!1,overX=176,overY=384,overCtx.clearRect(0,0,SCREEN_WIDTH,SCREEN_HEIGHT),emenyStopTime=0,homeProtectedTime=-1,propTime=1e3}function gameLoop(){switch(gameState){case GAME_STATE_MENU:menu.draw();break;case GAME_STATE_INIT:stage.draw(),1==stage.isReady&&(gameState=GAME_STATE_START);break;case GAME_STATE_START:drawAll(),(isGameOver||player1.lives<=0&&player2.lives<=0)&&(gameState=GAME_STATE_OVER,map.homeHit()),appearEnemy==maxEnemy&&0==enemyArray.length&&(gameState=GAME_STATE_WIN);break;case GAME_STATE_WIN:nextLevel();break;case GAME_STATE_OVER:gameOver()}let e=document.querySelector(".startCanvas"),a=document.querySelector("#canvasDiv");gameState===GAME_STATE_MENU?(e.classList.remove("start-game"),e.classList.add("end-game"),a.classList.remove("start-game"),a.classList.add("end-game")):(e.classList.remove("end-game"),e.classList.add("start-game")),window.showDomGameState&&(e.classList.remove("first-start"),e.classList.remove("gameOver"),e.classList.remove("passLevel"),e.classList.add(showDomGameState||""),"gameOver"===showDomGameState||showDomGameState)}function keyEvent(){keys.contain(keyboard.W)?(player1.dir=UP,player1.hit=!1,player1.move()):keys.contain(keyboard.S)?(player1.dir=DOWN,player1.hit=!1,player1.move()):keys.contain(keyboard.A)?(player1.dir=LEFT,player1.hit=!1,player1.move()):keys.contain(keyboard.D)&&(player1.dir=RIGHT,player1.hit=!1,player1.move()),keys.contain(keyboard.UP)?(player2.dir=UP,player2.hit=!1,player2.move()):keys.contain(keyboard.DOWN)?(player2.dir=DOWN,player2.hit=!1,player2.move()):keys.contain(keyboard.LEFT)?(player2.dir=LEFT,player2.hit=!1,player2.move()):keys.contain(keyboard.RIGHT)&&(player2.dir=RIGHT,player2.hit=!1,player2.move())}function addEnemyTank(){null==enemyArray||enemyArray.length>=maxAppearEnemy||0==maxEnemy||(appearEnemy++,window.rand=parseInt(3*Math.random()),window.obj=null,0==rand?obj=new EnemyOne(tankCtx):1==rand?obj=new EnemyTwo(tankCtx):2==rand&&(obj=new EnemyThree(tankCtx)),obj.x=ENEMY_LOCATION[parseInt(3*Math.random())]+map.offsetX,obj.y=map.offsetY,obj.dir=DOWN,enemyArray[enemyArray.length]=obj,map.clearEnemyNum(maxEnemy,appearEnemy))}function drawEnemyTanks(){if(null!=enemyArray||enemyArray.length>0)for(window.i=0;i<enemyArray.length;i++)window.enemyObj=enemyArray[i],enemyObj.isDestroyed?(enemyArray.removeByIndex(i),i--):enemyObj.draw();emenyStopTime>0&&emenyStopTime--}function drawAll(){tankCtx.clearRect(0,0,SCREEN_WIDTH,SCREEN_HEIGHT),player1.lives>0&&player1.draw(),player2.lives>0&&player2.draw(),drawLives(),appearEnemy<maxEnemy&&(mainframe%100==0&&(addEnemyTank(),mainframe=0),mainframe++),drawEnemyTanks(),drawBullet(),drawCrack(),keyEvent(),propTime<=0?drawProp():propTime--,homeProtectedTime>0?homeProtectedTime--:0==homeProtectedTime&&(homeProtectedTime=-1,homeNoProtected())}function drawCrack(){if(null!=crackArray&&crackArray.length>0)for(window.i=0;i<crackArray.length;i++)window.crackObj=crackArray[i],crackObj.isOver?(crackArray.removeByIndex(i),i--,crackObj.owner==player1?player1.renascenc(1):crackObj.owner==player2&&player2.renascenc(2)):crackObj.draw()}function gameOver(){overCtx.clearRect(0,0,SCREEN_WIDTH,SCREEN_HEIGHT),overCtx.drawImage(RESOURCE_IMAGE,POS.over[0],POS.over[1],64,32,overX+map.offsetX,overY+map.offsetY,64,32),overY-=2,console.log("gameOver",!0,overY<=parseInt(map.mapHeight/2)),overY<=parseInt(map.mapHeight/2)&&(initObject(),1==menu.playNum&&(player2.lives=0),gameState=GAME_STATE_MENU,window.showDomGameState="gameOver")}function nextLevel(){initObject(),1==menu.playNum&&(player2.lives=0),gameState=GAME_STATE_MENU,window.showDomGameState="passLevel"}function preLevel(){}function drawProp(){window.rand=Math.random(),rand<.4&&null==prop&&(prop=new Prop(overCtx),prop.init()),null!=prop&&(prop.draw(),prop.isDestroyed&&(prop=null,propTime=1e3))}function homeNoProtected(){window.mapChangeIndex=[[23,11],[23,12],[23,13],[23,14],[24,11],[24,14],[25,11],[25,14]],map.updateMap(mapChangeIndex,WALL)}window.ctx="",window.wallCtx="",window.grassCtx="",window.tankCtx="",window.overCtx="",window.menu=null,window.stage=null,window.map=null,window.player1=null,window.player2=null,window.prop=null,window.enemyArray=[],window.bulletArray=[],window.keys=[],window.crackArray=[],window.gameState=GAME_STATE_MENU,window.level=window.pageLevel,window.maxEnemy=1==window.pageLevel?10:20,window.maxAppearEnemy=5,window.appearEnemy=0,window.mainframe=0,window.isGameOver=!1,window.overX=176,window.overY=384,window.emenyStopTime=0,window.homeProtectedTime=-1,window.propTime=300,window.onload=function(){initScreen(),initObject(),setInterval(gameLoop,20)},document.addEventListener("keydown",(function(e){let a=e.keyCode;if(_cheats(a),window.cheats)switch(gameState){case GAME_STATE_MENU:if(a==keyboard.ENTER){let e=document.querySelector(".email-input"),a=e?e.value:"";if(!a)return;if(window.a=a,gameState=GAME_STATE_INIT,window.setPassword(),1==menu.playNum){player2.lives=0;let e=document.querySelector("#canvasDiv");e&&e.classList.add("player1")}}break;case GAME_STATE_START:keys.contain(a)||keys.push(a),a==keyboard.SPACE&&player1.lives>0?player1.shoot(BULLET_TYPE_PLAYER):a==keyboard.ENTER&&player2.lives>0?player2.shoot(BULLET_TYPE_PLAYER2):a==keyboard.N?nextLevel():a==keyboard.P&&preLevel()}})),document.addEventListener("keyup",(function(e){keys.remove(e.keyCode)})),window.initMap=()=>{map.setMapLevel(level),map.draw(),drawLives()},window.drawLives=()=>{map.drawLives(player1.lives,1),map.drawLives(player2.lives,2)},window.drawBullet=()=>{if(null!=bulletArray&&bulletArray.length>0)for(window.i=0;i<bulletArray.length;i++)window.bulletObj=bulletArray[i],bulletObj.isDestroyed?(bulletObj.owner.isShooting=!1,bulletArray.removeByIndex(i),i--):bulletObj.draw()}</script>
    <style>*{margin:0;padding:0}@font-face{font-family:'Press Start 2P';font-style:normal;font-weight:400;font-display:swap;src:url(data:font/truetype;charset=utf-8;base64,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) format('truetype');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}body{font-family:'Press Start 2P',sans-serif}.container{width:576px;height:576px;margin:0 auto;background-color:#000;overflow:hidden}#canvasDiv{position:relative;margin:0 auto}.game-tips{height:64px}#canvasDiv .startCanvas{position:absolute;width:512px;height:448px;top:448px;background:#000}#canvasDiv .startCanvas.start-game{visibility:hidden}#canvasDiv .startCanvas.first-start .email-content{display:flex;border:2px solid #f7931a}#canvasDiv .startCanvas.end-game{transition:top 1s linear;top:0}#canvasDiv .startCanvas .bg-content{position:absolute;left:0;right:0;top:10px;height:100px;background-size:100% auto;background-position-y:-86px}#canvasDiv .startCanvas .stage-box{position:absolute;bottom:270px;width:100%;color:#f7931a;font-size:24px;display:flex;align-items:center;justify-content:center;gap:12px;line-height:1;box-sizing:border-box}#canvasDiv .startCanvas .email-content{position:absolute;width:80%;left:10%;bottom:70px;display:none;height:40px}#canvasDiv .startCanvas .email-content .email-input-box{width:100%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;padding:0 16px;display:flex;align-items:center;box-sizing:border-box;white-space:nowrap;font-size:12px}#canvasDiv .startCanvas .email-content .email-input-box .email-input-box-label{width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:12px solid #fff;border-right:0}#canvasDiv .startCanvas .email-content .email-input-box .email-input{flex:1 1;height:28px;line-height:28px;background:0 0;color:#fff;border:none;padding:0 10px;box-sizing:border-box;font-size:12px;border-radius:4px;outline:0;font-family:'Press Start 2P',sans-serif}#canvasDiv .startCanvas .email-content .email-input-box .email-input::placeholder{color:#bbbcbb}#canvasDiv .startCanvas .email-content .email-content-bg{z-index:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#canvasDiv .startCanvas .gameOver-button,#canvasDiv .startCanvas .passLevel-button,#canvasDiv .startCanvas .start-button{width:150px;position:absolute;left:50%;transform:translateX(-75px);bottom:-5px;height:60px;font-size:16px;font-weight:600;cursor:pointer}#canvasDiv .startCanvas .gameOver-button:hover .start-button-bg-2,#canvasDiv .startCanvas .passLevel-button:hover .start-button-bg-2,#canvasDiv .startCanvas .start-button:hover .start-button-bg-2{display:none}#canvasDiv .startCanvas .gameOver-button:hover .start-button-bg-1,#canvasDiv .startCanvas .passLevel-button:hover .start-button-bg-1,#canvasDiv .startCanvas .start-button:hover .start-button-bg-1{display:block}#canvasDiv .startCanvas .gameOver-button .button-bg,#canvasDiv .startCanvas .passLevel-button .button-bg,#canvasDiv .startCanvas .start-button .button-bg{width:150px;height:60px;position:absolute;bottom:0;left:0;image-rendering:pixelated;background-size:198%}#canvasDiv .startCanvas .gameOver-button .start-button-bg-2,#canvasDiv .startCanvas .passLevel-button .start-button-bg-2,#canvasDiv .startCanvas .start-button .start-button-bg-2{display:block}#canvasDiv .startCanvas .gameOver-button .start-button-bg-1,#canvasDiv .startCanvas .passLevel-button .start-button-bg-1,#canvasDiv .startCanvas .start-button .start-button-bg-1{display:none}#canvasDiv .startCanvas .gameOver-content{display:none}#canvasDiv .startCanvas.gameOver .gameOver-content{display:block;margin-bottom:12px}#canvasDiv .startCanvas.gameOver .start-button{display:none}#canvasDiv .start-button .start-button-bg-1{background-position:148px 5px}#canvasDiv .start-button .start-button-bg-2{background-position:3px 5px}#canvasDiv .passLevel-button .start-button-bg-1{background-position:148px -69px}#canvasDiv .passLevel-button .start-button-bg-2{background-position:3px 145px}#canvasDiv .gameOver-button .start-button-bg-1{background-position:149px -150px}#canvasDiv .gameOver-button .start-button-bg-2{background-position:4px -150px}#canvasDiv .startCanvas.gameOver .bg-content{background-position-y:-168px}#canvasDiv .startCanvas.passLevel .bg-content{background-position-y:0}#canvasDiv .startCanvas.gameOver .game-over-image{display:block;position:absolute;left:50%;bottom:130px;transform:translateX(-50%);width:100px;height:50px;background-size:750px;background-position:150px -100px}#canvasDiv .startCanvas .game-over-image{display:none}#canvasDiv .startCanvas.passLevel .pass-content{display:block}#canvasDiv .startCanvas.passLevel .start-button{display:none}#canvasDiv .startCanvas .pass-content{position:absolute;width:90%;left:5%;top:240px;display:none;height:90px}.pass-content .text-info{display:flex;align-items:center;height:40px;justify-content:center;overflow:hidden}.pass-content .text-info .text{color:#fff;font-size:12px;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pass-content .text-info .text i{margin-right:4px;font-style:normal}.pass-content .text-info .text span{color:#f7931a;margin-left:4px}.pass-content .passLevel-button{bottom:-110px!important}.pass-content .icon{width:100px;height:100px;background:#fff;margin:30px auto 0}#canvasDiv canvas{position:absolute}.div{position:fixed;width:100%;height:100%;z-index:2;left:0;top:0;background:#000;display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;flex-direction:column}.div .icon,.game-logo{width:50px;height:50px;margin-bottom:40px;transform:scale(1.8);image-rendering:pixelated;background-position:-274px -167px}.div .text{font-size:14px;line-height:1.8em;height:126px;width:280px}.div .hide{display:none}.div.show .hide{display:block}.div.show span.hide{display:inline}.game-info{position:absolute;width:576px;height:576px;left:-32px;top:-64px;color:#fff}.game-info .operating-tips{width:100%;position:absolute;left:80px;top:510px;font-size:12px;line-height:26px;transform:scale(.9);transform-origin:0}.game-info .player-box{position:absolute;left:80px;top:35px;width:420px;display:flex;align-content:center}.game-info .stage-info{position:absolute;right:0;top:0;height:28px;line-height:28px;font-size:12px}.game-info .player-info{display:flex;align-content:center;margin-right:15px}.game-info .flex1{flex:1;display:flex;flex-direction:column;justify-content:center}.game-info .name{font-size:12px}.game-info .life-box{margin-top:5px;display:flex;height:10px}.game-info .life-box .life{width:24px;height:10px;background:#f7931a;margin-right:4px}.game-info .life-box .life:last-child{margin-right:0}.game-info .icon{width:28px;height:28px;background-position:-2px -2px;margin-right:8px}.game-info .player-info:nth-child(2) .icon{background-position:-130px -2px}.game-info .robot-tank-count{position:absolute;right:24px;top:80px;width:40px}.robot-tank-count .tank-count-item{background-position:0 -128px;width:14px;height:16px;margin:0 5px 5px 0;float:left}.game-canvas-border{position:absolute;width:416px;height:416px;left:46px;top:16px;border:2px solid #7f7f7f}.game-logo{image-rendering:pixelated;position:absolute;left:50%;top:230px;margin-left:-28px}.gameOver .game-logo{top:250px}.passLevel .game-logo{display:none}#canvasDiv.end-game .game-canvas-border,#canvasDiv.end-game .game-info,#canvasDiv.end-game .robot-tank-count{display:none}.select-model{position:absolute;top:200px;left:140px;display:none}.first-start .select-model{display:block}.select-model .game-model{display:flex;color:#fff;height:36px;align-items:center}.select-model .game-model span{margin-left:8px}.select-model .stage-box-tank-icon{width:24px;height:20px;background-size:calc(15 * 24px);background-position-x:calc(-4 * 24px);background-position-y:calc(-3 * 24px);margin-top:-3px;transform:scale(1.3);margin-right:15px;opacity:0}.select-model .stage-box-tank-icon.select{opacity:1}.player1 .game-info .player-info:nth-child(2),.player1 .operating-tips p:nth-child(2){display:none}</style>
    <script>function getLocalTime(e){var t=new Date,o=t.getTime(),n=6e4*t.getTimezoneOffset();let c=new Date(o+n+36e5*e),i=c.getMonth()+1,a=c.getDate();return`${c.getFullYear()}-${i>10?i:"0"+i}-${a+1>10?a:"0"+a}`}function copyF(e){const t=document.querySelector("#copyInput");try{navigator.clipboard.writeText(e)}catch(e){}setTimeout((()=>{t.select(),document.execCommand("copy")&&(document.execCommand("copy"),console.log("复制成功"))}),500)}function copyPW(){copyF(document.querySelector("#c").innerText)}function copyDomain(){copyF("https://ordz.games")}function onGameWindow(){document.querySelector(".div").classList.add("show")}function _cheats(e){if(window.cheats)return;window.cheatsList=window.cheatsList||[],window.cheatsList.push(e);window.cheatsList.join(",").indexOf("38,38,40,40,37,39,37,39,66,65")>=0&&(window.cheats=!0,setTimeout((()=>{document.querySelector(".div").remove()}),100))}window.c=window.pageLevel,window.setPassword=()=>{let e=window.a||"",t=window.btoa(`${e}|${c}-${window.gameType}|ac|${getLocalTime(0)}`);t=t.replace("d","a").replace("z","b"),t=`${t.slice(20)}${t.slice(10,20)}${t.slice(0,5)}${t.slice(5,15)}`;const o=document.querySelector("#copyInput");o.value=t,o.setAttribute("value",t);document.querySelector("#c .info").innerText=t,setTimeout((()=>{let e=document.querySelector("#canvasDiv");e.classList.remove("end-game"),e.classList.add("start-game")}),1400)},window.addEventListener("load",(()=>{let e=document.querySelector(".start-button"),t=document.querySelector(".gameOver-button"),o=window.a,n=document.querySelector(".email-input");if(e){function c(){let e=document.querySelector(".email-input"),t=e?e.value:"";if(t){window.a=t,console.log(t),window.gameState=window.GAME_STATE_INIT,window.player2.lives=0;let e=document.querySelector("#canvasDiv");e&&e.classList.add("player1"),window.setPassword()}}e.addEventListener("click",c),t.addEventListener("click",c)}o&&n&&(n.value=o);let i=document.querySelector(".stage-box-desc span"),a=document.querySelector(".player-box .stage-info span"),d=document.querySelector(".div .text .level");i.innerHTML=`${window.pageLevel}`,a.innerHTML=`${window.pageLevel}${window.gameType}`,d.innerHTML=`${window.pageLevel}${window.gameType}`}))</script>
    </head>
    <body>
    <div class=container>
    <div class=game-tips>
    </div>
    <div id=canvasDiv class=end-game>
    <canvas id=wallCanvas></canvas>
    <canvas id=tankCanvas></canvas>
    <div class=game-canvas-border></div>
    <div class=game-info>
    <div class=player-box>
    <div class=player-info>
    <div class=icon></div>
    <div class=flex1>
    <div class=name>PLAYER1</div>
    <div class=life-box></div>
    </div>
    </div>
    <div class=player-info>
    <div class=icon></div>
    <div class=flex1>
    <div class=name>PLAYER2</div>
    <div class=life-box></div>
    </div>
    </div>
    <div class=stage-info>STAGE<span></span></div>
    </div>
    <div class=operating-tips>
    <p>MOVE WITH WASD, SHOOT WITH SPACE</p>
    <p>PLAYER2: MOVE WITH <span style=font-family:sans-serif>↑↓←→</span>, SHOOT WITH ENTER</p>
    </div>
    <div class=robot-tank-count></div>
    </div>
    <canvas id=grassCanvas></canvas>
    <canvas id=overCanvas></canvas>
    <canvas id=stageCanvas></canvas>
    <div class="startCanvas first-start">
    <div class=bg-content></div>
    <div class=stage-box>
    <p class=stage-box-desc>STAGE <span></span></p>
    </div>
    <div class=game-logo></div>
    <div class=email-content>
    <div class=email-input-box>
    <label htmlFor=EmailInput class=email-input-box-label></label>
    <input id=EmailInput class=email-input placeholder="YOUR EMAIL">
    </div>
    </div>
    <div class=pass-content>
    <div class=text-info>
    <div class="text pass-email-input" id=c><i class=text><i>PASS</i><i>TOKEN</i>:</i><span class=info></span></div>
    </div>
    <div class=text-info>
    <div class=text><i>CLAIM</i><i>YOUR</i><i>TOKEN</i><i>AT</i><span>ORDZ.GAMES</span></div>
    </div>
    <div class="passLevel-button passLevel-content" onclick=copyPW()>
    <div class="button-bg start-button-bg-1"></div>
    <div class="button-bg start-button-bg-2"></div>
    </div>
    </div>
    <div class=start-button>
    <div class="button-bg start-button-bg-1"></div>
    <div class="button-bg start-button-bg-2"></div>
    </div>
    <div class="gameOver-button gameOver-content">
    <div class="button-bg start-button-bg-1"></div>
    <div class="button-bg start-button-bg-2"></div>
    </div>
    </div>
    </div>
    </div>
    <input id=copyInput style=width:1px;height:1px>
    <div class=div onclick=onGameWindow()>
    <div class=icon></div>
    <div class=text>
    <p>{</p>
    <p>&nbsp;&nbsp;"HINT":&nbsp;<span class=hide>"KONAMI"</span></p>
    <p class=hide>&nbsp;&nbsp;"GAME":&nbsp;"ORDZCITY"</p>
    <p class=hide>&nbsp;&nbsp;"STAGE":&nbsp;"<span class=level></span>"</p>
    <p class=hide>}</p>
    </div>
    </div>
    </body>
    </html>
    UTXO
    cab1d31c21540967b65b1dee5a888902f917e07af3a95c3ec1f5e7e7743825c5:0
    Location
    cab1d31c21540967b65b1dee5a888902f917e07af3a95c3ec1f5e7e7743825c5:0:0
    UTXO Value
    10000 sat
    Created Time
    03-16-2023 13:56:24 (Local)
    Genesis Blockheight
    781021
    Location Blockheight
    819399
    Content Type
    text/html;charset=utf-8
    Content
    <!doctype html> <html lang=zh class="no-js demo-1"> <head> <meta charset=UTF-8> <meta http-equiv=X-UA-Compatible content="IE=edge,chrome=1"> <meta name=viewport content="width=device-width,initial-scale=1"> <script>window.pageLevel=2,window.gameType="E"</script> <script>Array.prototype.remove=function(t){var r=0,h=0,i=this.length;for(r=0;r<i;r++)this[r]!=t&&(this[h++]=this[r]);h<r&&(this.length=h)},Array.prototype.removeByIndex=function(t){var r=0,h=0,i=this.length;for(r=0;r<i;r++)this[r]!=this[t]&&(this[h++]=this[r]);h<r&&(this.length=h)},Array.prototype.contain=function(t){var r=0,h=this.length;for(r=0;r<h;r++)if(this[r]==t)return!0;return!1}</script> <script>var Keyboard=function(){this.UP=38,this.DOWN=40,this.RIGHT=39,this.LEFT=37,this.SPACE=32,this.TAB=9,this.ENTER=13,this.CTRL=17,this.ALT=18,this.Num0=48,this.Num1=49,this.Num2=50,this.Num3=51,this.Num4=52,this.Num5=53,this.Num6=54,this.Num7=55,this.Num8=56,this.Num9=57,this.A=65,this.B=66,this.C=67,this.D=68,this.E=69,this.F=70,this.G=71,this.H=72,this.I=73,this.J=74,this.K=75,this.L=76,this.M=77,this.N=78,this.O=79,this.P=80,this.Q=81,this.R=82,this.S=83,this.T=84,this.U=85,this.V=86,this.W=87,this.X=88,this.Y=89,this.Z=90};window.keyboard=new Keyboard</script> <script>window.SCREEN_WIDTH=512,window.SCREEN_HEIGHT=448,window.MENU_IMAGE_URL="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAfQAAAEPBAMAAABGrStjAAAD62lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNi4wLWMwMDYgNzkuZGFiYWNiYiwgMjAyMS8wNC8xNC0wMDozOTo0NCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjIuNCAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMjMtMDMtMTRUMTE6NTQ6MDUrMDg6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDIzLTAzLTE1VDEzOjIyOjI2KzA4OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDIzLTAzLTE1VDEzOjIyOjI2KzA4OjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozNjRCMjMwM0JBRkMxMUVEOTQzNEVEMjc5MEIyMzgwQiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDozNjRCMjMwNEJBRkMxMUVEOTQzNEVEMjc5MEIyMzgwQiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjM2NEIyMzAxQkFGQzEx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",window.MENU_IMAGE=new Image,MENU_IMAGE.src=MENU_IMAGE_URL,window.RESOURCE_IMAGE_URL="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAD9CAMAAABTNVRWAAAHYmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMjMtMDMtMTVUMTk6MDk6MDgrMDg6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDIzLTAzLTE1VDIyOjA0OjE3KzA4OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDIzLTAzLTE1VDIyOjA0OjE3KzA4OjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgcGhvdG9zaG9wOklDQ1Byb2ZpbGU9InNSR0IgSUVDNjE5NjYtMi4xIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOmMyMzdkYjhiLTM3YmQtNDcxMC05NmE5LWIyMzMwY2IxNjgxNSIgeG1wTU06RG9jdW1lbnRJRD0iYWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjRiMjZlOWFjLWI5ODgtMzg0My1hM2ZjLTY1YTllMTkxOTM1OCIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOmFlMzBjMmE0LWY4MTktNDFkNC05MWZmLWIwOGNlOGM0ZTU2MCI+IDxwaG90b3Nob3A6RG9jdW1lbnRBbmNlc3RvcnM+IDxyZGY6QmFnPiA8cmRmOmxpPnhtcC5kaWQ6YWUzMGMyYTQtZjgxOS00MWQ0LTkxZmYtYjA4Y2U4YzRlNTYwPC9yZGY6bGk+IDwvcmRmOkJhZz4gPC9waG90b3Nob3A6RG9jdW1lbnRBbmNlc3RvcnM+IDx4bXBNTTpIaXN0b3J5PiA8cmRmOlNlcT4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImNyZWF0ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6YWUzMGMyYTQtZjgxOS00MWQ0LTkxZmYtYjA4Y2U4YzRlNTYwIiBzdEV2dDp3aGVuPSIyMDIzLTAzLTE1VDE5OjA5OjA4KzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoTWFjaW50b3NoKSIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6NWNiNjEzY2MtNzM1MS00YmQ0LWJiYjEtZThmOTllM2EyY2VmIiBzdEV2dDp3aGVuPSIyMDIzLTAzLTE1VDE5OjEyOjUxKzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoTWFjaW50b3NoKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6YzIzN2RiOGItMzdiZC00NzEwLTk2YTktYjIzMzBjYjE2ODE1IiBzdEV2dDp3aGVuPSIyMDIzLTAzLTE1VDIyOjA0OjE3KzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3Ag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",window.RESOURCE_IMAGE=new Image,RESOURCE_IMAGE.src=RESOURCE_IMAGE_URL,window.BUTTON_IMAGE_URL="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAH0AAABaCAMAAACi96mZAAAD62lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNi4wLWMwMDYgNzkuZGFiYWNiYiwgMjAyMS8wNC8xNC0wMDozOTo0NCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjIuNCAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMjMtMDMtMTRUMTE6NTQ6MDUrMDg6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDIzLTAzLTE1VDEyOjU5OjIwKzA4OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDIzLTAzLTE1VDEyOjU5OjIwKzA4OjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoyNjE1Mzg4NkJBRjgxMUVEOTQzNEVEMjc5MEIyMzgwQiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoyNjE1Mzg4N0JBRjgxMUVEOTQzNEVEMjc5MEIyMzgwQiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjI2MTUzODg0QkFGODExRUQ5NDM0RUQyNzkwQjIzODBCIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjI2MTUzODg1QkFGODExRUQ5NDM0RUQyNzkwQjIzODBCIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+iJqNCwAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAA8UExURUdwTK0GANkgAscLAPfb2/365rOvyiw8Xa7sAPXJAPG0AHd1pXudAND0DPjgAPD/5ulBNOogAJbGAIB+rw9jCecAAAABdFJOUwBA5thmAAADg0lEQVRo3u2YgXarIAyGF21Lp23n2Pu/601IQLADgqx3955jtpJKjV/yay3x7e3fMVO3V8IfNXsdHuHvNSvje7Qzj6lKnx6mS7t89gbhZzQexctGmJvy6RO8ql0Ob0xAxG4z955VT3Pi3Kn7Lt5cmD5NWOBEHrcmh6XNdx6QfskkT/F17TLxLnqiPSZ3FB6ionmuTNdol6e7Ms8rfT2Gmr5Puzj3QJdode27tStE07Sy9r3a4SxiJzT3vZ544P+wiYPmvLdrh7O6u0278grtqHbFnbZU+0Oh3SNPn6o3yqlIV2RfoiusQK8n/8hpZy46fJ7eE2++VOHmMmfo2vgvkw2vWia4P57Cq/ZVWB/0xZu5bsWlTV9876ryV1elhx122GH/Rwd9r9krO+j7tWb313XQ91uVfrubLu3y2RuG06I4uLN3/EJ8qYNWaHfPdtABjqCt8/RroYPWaZfroIVureOlThRBen5Ny/APtOA+vOMXaXcp069Xa321grU02ho9wBG0dZ5+rdNXrc+CtR6uoFvreKkTRer09IRba31SSrrTTqoVrKXRKugisrgAbaKvWn8I1np4ns5XjeVq2VmJCW9ureddtBPdC3TdN6ZyzYvI4gLUv8lf8zfF3aJUO2df1C6XPdFv1RvlrUTvyN7RFVai78+eOmANvNRBq5LPd9Ca4EwfaGZl/Ly/g54LHfSsiM/Bf6CDnhXx89FBH3bYYYcddjyz+Cs/FsYsjfaTeLMMjbbB92hnFmilw2IS+GejRXiD8BNZ4mSDfboDejAJfGy0FW/MEI4ajafS3DCs2SMcWung8bg+d3QAd3AAIARuDTTjtvwnpzCHdL8sxzcId0klblwk03H7CXmQeE8PpaGs5MDN8hAX7YaUPvqj8l6yscTOYz19fKa7OukioApPKz0cFwp0ihlj7cZYO78Dzz3T4ekcB7ooX6+dJWfNETG4Kt30WrQbnugLBPr3ytN0mc4SjKLdSg+Sw3d0BAG/gGwYeORZnvY7yDDAs/Lb8+5JQflM7bvuNttrfoFQYaL84JUfSTtPj655aL/TJrXj952uJCAHYRzdjEz7HfzwGdGh9VcGEjosrXebJa6ds22wMaVD630+Up7Cx6Y/Kn026zMLaDYf75r+9spDK7wjPkle88xh+wgi6sM741XPHApPIDrjNc8cSk8gOuN7F5W/uSj9X+0PCKSoJtnojooAAAAASUVORK5CYII=",window.POS=new Array,POS.selectTank=[128,96],POS.stageLevel=[396,96],POS.num=[256,96],POS.map=[0,96],POS.home=[256,0],POS.score=[0,112],POS.player=[0,0],POS.protected=[160,96],POS.enemyBefore=[256,32],POS.enemy1=[0,32],POS.enemy2=[128,32],POS.enemy3=[0,64],POS.bullet=[80,96],POS.tankBomb=[0,160],POS.bulletBomb=[320,0],POS.over=[384,64],POS.prop=[256,110],window.START_AUDIO="",window.BULLET_DESTROY_AUDIO="",window.TANK_DESTROY_AUDIO="",window.PLAYER_DESTROY_AUDIO="",window.MOVE_AUDIO="",window.ATTACK_AUDIO="",window.PROP_AUDIO="",window.GAME_STATE_MENU=0,window.GAME_STATE_INIT=1,window.GAME_STATE_START=2,window.GAME_STATE_OVER=3,window.GAME_STATE_WIN=4,window.WALL=1,window.GRID=2,window.GRASS=3,window.WATER=4,window.ICE=5,window.HOME=9,window.ANOTHREHOME=8,window.UP=0,window.DOWN=1,window.LEFT=2,window.RIGHT=3,window.ENEMY_LOCATION=[192,0,384],window.BULLET_TYPE_PLAYER=1,window.BULLET_TYPE_PLAYER2=3,window.BULLET_TYPE_ENEMY=2,window.CRACK_TYPE_TANK="tank",window.CRACK_TYPE_BULLET="bullet"</script> <script>window.map2=[[0,0,0,0,0,0,2,2,0,0,0,0,0,0,2,2,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,2,2,0,0,0,0,0,0,2,2,0,0,0,0,0,0,0,0,0,0],[0,0,1,1,0,0,2,2,0,0,0,0,0,0,1,1,0,0,1,1,0,0,1,1,0,0],[0,0,1,1,0,0,2,2,0,0,0,0,0,0,1,1,0,0,1,1,0,0,1,1,0,0],[0,0,1,1,0,0,0,0,0,0,0,0,1,1,1,1,0,0,1,1,2,2,1,1,0,0],[0,0,1,1,0,0,0,0,0,0,0,0,1,1,1,1,0,0,1,1,2,2,1,1,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,0,0,0,0,0,0],[3,3,0,0,0,0,0,0,0,0,0,0,2,2,0,0,0,0,1,1,3,3,1,1,2,2],[3,3,0,0,0,0,0,0,0,0,0,0,2,2,0,0,0,0,1,1,3,3,1,1,2,2],[3,3,3,3,0,0,0,0,0,0,1,1,0,0,0,0,2,2,0,0,3,3,0,0,0,0],[3,3,3,3,0,0,0,0,0,0,1,1,0,0,0,0,2,2,0,0,3,3,0,0,0,0],[0,0,1,1,1,1,1,1,3,3,3,3,3,3,2,2,0,0,0,0,3,3,1,1,0,0],[0,0,1,1,1,1,1,1,3,3,3,3,3,3,2,2,0,0,0,0,3,3,1,1,0,0],[0,0,0,0,0,0,2,2,3,3,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0],[0,0,0,0,0,0,2,2,3,3,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0],[2,2,1,1,0,0,2,2,0,0,1,1,0,0,1,1,0,0,0,0,0,0,1,1,0,0],[2,2,1,1,0,0,2,2,0,0,1,1,0,0,1,1,0,0,0,0,0,0,1,1,0,0],[0,0,1,1,0,0,1,1,0,0,1,1,1,1,1,1,0,0,1,1,2,2,1,1,0,0],[0,0,1,1,0,0,1,1,0,0,1,1,1,1,1,1,0,0,1,1,2,2,1,1,0,0],[0,0,1,1,0,0,1,1,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0],[0,0,1,1,0,0,1,1,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0,0],[0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,1,1,0,0,1,1,0,0],[0,0,1,1,0,0,1,1,0,0,0,1,9,8,1,0,0,0,1,1,1,1,1,1,0,0],[0,0,1,1,0,0,1,1,0,0,0,1,8,8,1,0,0,0,1,1,1,1,1,1,0,0]]</script> <script>window.CrackAnimation=function(s,i,t){this.times=0,this.ctx=i,this.frame=0,this.x=0,this.y=0,this.posName="",this.size=0,this.isOver=!1,this.tempDir=1,this.owner=t,s==CRACK_TYPE_TANK?(this.posName="tankBomb",this.size=66,this.frame=4):(this.posName="bulletBomb",this.size=32,this.frame=3),this.x=t.x+parseInt(t.size-this.size)/2,this.y=t.y+parseInt(t.size-this.size)/2,this.draw=function(){var s=parseInt(this.times/3);this.ctx.drawImage(RESOURCE_IMAGE,POS[this.posName][0]+s*this.size,POS[this.posName][1],this.size,this.size,this.x,this.y,this.size,this.size),this.times+=this.tempDir,this.times>3*this.frame-parseInt(1.5)&&(this.tempDir=-1),this.times<=0&&(this.isOver=!0)}}</script> <script>window.Prop=function(t){this.x=0,this.y=0,this.duration=600,this.type=0,this.hit=!1,this.width=30,this.height=28,this.ctx=t,this.isDestroyed=!1,this.size=28,this.init=function(){this.ctx.clearRect(this.x,this.y,this.width,this.height),this.duration=600,this.type=parseInt(6*Math.random()),this.x=parseInt(384*Math.random())+map.offsetX,this.y=parseInt(384*Math.random())+map.offsetY,this.isDestroyed=!1},this.draw=function(){this.duration>0&&!this.isDestroyed?(this.ctx.drawImage(RESOURCE_IMAGE,POS.prop[0]+this.type*this.width,POS.prop[1],this.width,this.height,this.x,this.y,this.width,this.height),this.duration--,this.isHit()):(this.ctx.clearRect(this.x,this.y,this.width,this.height),this.isDestroyed=!0)},this.isHit=function(){var t=null;if(player1.lives>0&&CheckIntersect(this,player1,0)?(this.hit=!0,t=player1):player2.lives>0&&CheckIntersect(this,player2,0)&&(this.hit=!0,t=player2),this.hit)switch(this.isDestroyed=!0,this.ctx.clearRect(this.x,this.y,this.width,this.height),this.type){case 0:t.lives++;break;case 1:emenyStopTime=500;break;case 2:map.updateMap([[23,11],[23,12],[23,13],[23,14],[24,11],[24,14],[25,11],[25,14]],GRID),homeProtectedTime=500;break;case 3:if(null!=enemyArray||enemyArray.length>0)for(var i=0;i<enemyArray.length;i++){enemyArray[i].distroy()}break;case 4:break;case 5:t.isProtected=!0,t.protectedTime=500}}}</script> <script>var Bullet=function(t,i,s,e){this.ctx=t,this.x=0,this.y=0,this.owner=i,this.type=s,this.dir=e,this.speed=3,this.size=6,this.hit=!1,this.isDestroyed=!1,this.draw=function(){this.ctx.drawImage(RESOURCE_IMAGE,POS.bullet[0]+this.dir*this.size,POS.bullet[1],this.size,this.size,this.x,this.y,this.size,this.size),this.move()},this.move=function(){this.dir==UP?this.y-=this.speed:this.dir==DOWN?this.y+=this.speed:this.dir==RIGHT?this.x+=this.speed:this.dir==LEFT&&(this.x-=this.speed),this.isHit()},this.isHit=function(){if(!this.isDestroyed){if(this.x<map.offsetX?(this.x=map.offsetX,this.hit=!0):this.x>map.offsetX+map.mapWidth-this.size&&(this.x=map.offsetX+map.mapWidth-this.size,this.hit=!0),this.y<map.offsetY?(this.y=map.offsetY,this.hit=!0):this.y>map.offsetY+map.mapHeight-this.size&&(this.y=map.offsetY+map.mapHeight-this.size,this.hit=!0),!this.hit&&null!=bulletArray&&bulletArray.length>0)for(var t=0;t<bulletArray.length;t++)if(bulletArray[t]!=this&&this.owner.isAI!=bulletArray[t].owner.isAI&&0==bulletArray[t].hit&&CheckIntersect(bulletArray[t],this,0)){this.hit=!0,bulletArray[t].hit=!0;break}if(!this.hit)if(bulletMapCollision(this,map)&&(this.hit=!0),this.type==BULLET_TYPE_PLAYER||this.type==BULLET_TYPE_PLAYER2){if(null!=enemyArray||enemyArray.length>0)for(t=0;t<enemyArray.length;t++){var i=enemyArray[t];if(!i.isDestroyed&&CheckIntersect(this,i,0)){CheckIntersect(this,i,0),i.lives>1?i.lives--:i.distroy(),this.hit=!0;break}}player1.lives>0&&CheckIntersect(this,player1,0)?(player1.isProtected||player1.isDestroyed||player1.distroy(),this.hit=!0):player2.lives>0&&CheckIntersect(this,player2,0)&&(player2.isProtected||player2.isDestroyed||player2.distroy(),this.hit=!0)}else this.type==BULLET_TYPE_ENEMY&&(player1.lives>0&&CheckIntersect(this,player1,0)?(player1.isProtected||player1.isDestroyed||player1.distroy(),this.hit=!0):player2.lives>0&&CheckIntersect(this,player2,0)&&(player2.isProtected||player2.isDestroyed||player2.distroy(),this.hit=!0));this.hit&&this.distroy()}},this.distroy=function(){this.isDestroyed=!0,crackArray.push(new CrackAnimation(CRACK_TYPE_BULLET,this.ctx,this)),this.owner.isAI}};window.Bullet=Bullet</script> <script>window.Tank=function(){this.x=0,this.y=0,this.size=32,this.dir=UP,this.speed=1,this.frame=0,this.hit=!1,this.isAI=!1,this.isShooting=!1,this.bullet=null,this.shootRate=.6,this.isDestroyed=!1,this.tempX=0,this.tempY=0,this.move=function(){this.isAI&&emenyStopTime>0||(this.tempX=this.x,this.tempY=this.y,this.isAI&&(this.frame++,(this.frame%100==0||this.hit)&&(this.dir=parseInt(4*Math.random()),this.hit=!1,this.frame=0)),this.dir==UP?this.tempY-=this.speed:this.dir==DOWN?this.tempY+=this.speed:this.dir==RIGHT?this.tempX+=this.speed:this.dir==LEFT&&(this.tempX-=this.speed),this.isHit(),this.hit||(this.x=this.tempX,this.y=this.tempY))},this.isHit=function(){this.dir==LEFT?this.x<=map.offsetX&&(this.x=map.offsetX,this.hit=!0):this.dir==RIGHT?this.x>=map.offsetX+map.mapWidth-this.size&&(this.x=map.offsetX+map.mapWidth-this.size,this.hit=!0):this.dir==UP?this.y<=map.offsetY&&(this.y=map.offsetY,this.hit=!0):this.dir==DOWN&&this.y>=map.offsetY+map.mapHeight-this.size&&(this.y=map.offsetY+map.mapHeight-this.size,this.hit=!0),this.hit||tankMapCollision(this,map)&&(this.hit=!0)},this.isShot=function(){},this.shoot=function(t){if(!(this.isAI&&emenyStopTime>0||this.isShooting)){var i=this.x,s=this.y;this.bullet=new Bullet(this.ctx,this,t,this.dir),this.dir==UP?(i=this.x+parseInt(this.size/2)-parseInt(this.bullet.size/2),s=this.y-this.bullet.size):this.dir==DOWN?(i=this.x+parseInt(this.size/2)-parseInt(this.bullet.size/2),s=this.y+this.size):this.dir==LEFT?(i=this.x-this.bullet.size,s=this.y+parseInt(this.size/2)-parseInt(this.bullet.size/2)):this.dir==RIGHT&&(i=this.x+this.size,s=this.y+parseInt(this.size/2)-parseInt(this.bullet.size/2)),this.bullet.x=i,this.bullet.y=s,this.isAI,this.bullet.draw(),bulletArray.push(this.bullet),this.isShooting=!0}},this.distroy=function(){this.isDestroyed=!0,crackArray.push(new CrackAnimation(CRACK_TYPE_TANK,this.ctx,this))}},window.SelectTank=function(){this.ys=[250,281],this.x=140,this.size=27},SelectTank.prototype=new Tank,window.PlayTank=function(t){this.ctx=t,this.lives=3,this.isProtected=!0,this.protectedTime=500,this.offsetX=0,this.speed=2,this.draw=function(){if(this.hit=!1,this.ctx.drawImage(RESOURCE_IMAGE,POS.player[0]+this.offsetX+this.dir*this.size,POS.player[1],this.size,this.size,this.x,this.y,this.size,this.size),this.isProtected){var t=parseInt((500-this.protectedTime)/5)%2;this.ctx.drawImage(RESOURCE_IMAGE,POS.protected[0],POS.protected[1]+32*t,32,32,this.x,this.y,32,32),this.protectedTime--,0==this.protectedTime&&(this.isProtected=!1)}},this.distroy=function(){this.isDestroyed=!0,crackArray.push(new CrackAnimation(CRACK_TYPE_TANK,this.ctx,this))},this.renascenc=function(t){this.lives--,this.dir=UP,this.isProtected=!0,this.protectedTime=500,this.isDestroyed=!1;var i=0;i=1==t?129:256,this.x=i+map.offsetX,this.y=385+map.offsetY}},PlayTank.prototype=new Tank,window.EnemyOne=function(t){this.ctx=t,this.isAppear=!1,this.times=0,this.lives=1,this.isAI=!0,this.speed=1.5,this.draw=function(){if(this.times++,this.isAppear){if(this.ctx.drawImage(RESOURCE_IMAGE,POS.enemy1[0]+this.dir*this.size,POS.enemy1[1],32,32,this.x,this.y,32,32),this.times%50==0)Math.random()<this.shootRate&&this.shoot(2),this.times=0;this.move()}else{var t=parseInt(this.times/5)%7;this.ctx.drawImage(RESOURCE_IMAGE,POS.enemyBefore[0]+32*t,POS.enemyBefore[1],32,32,this.x,this.y,32,32),34==this.times&&(this.isAppear=!0,this.times=0,this.shoot(2))}}},EnemyOne.prototype=new Tank,window.EnemyTwo=function(t){this.ctx=t,this.isAppear=!1,this.times=0,this.lives=2,this.isAI=!0,this.speed=1,this.draw=function(){if(this.times++,this.isAppear){if(this.ctx.drawImage(RESOURCE_IMAGE,POS.enemy2[0]+this.dir*this.size,POS.enemy2[1],32,32,this.x,this.y,32,32),this.times%50==0)Math.random()<this.shootRate&&this.shoot(2),this.times=0;this.move()}else{var t=parseInt(this.times/5)%7;this.ctx.drawImage(RESOURCE_IMAGE,POS.enemyBefore[0]+32*t,POS.enemyBefore[1],32,32,this.x,this.y,32,32),35==this.times&&(this.isAppear=!0,this.times=0,this.shoot(2))}}},EnemyTwo.prototype=new Tank,window.EnemyThree=function(t){this.ctx=t,this.isAppear=!1,this.times=0,this.lives=3,this.isAI=!0,this.speed=.5,this.draw=function(){if(this.times++,this.isAppear){if(this.ctx.drawImage(RESOURCE_IMAGE,POS.enemy3[0]+this.dir*this.size+(3-this.lives)*this.size*4,POS.enemy3[1],32,32,this.x,this.y,32,32),this.times%50==0)Math.random()<this.shootRate&&this.shoot(2),this.times=0;this.move()}else{var t=parseInt(this.times/5)%7;this.ctx.drawImage(RESOURCE_IMAGE,POS.enemyBefore[0]+32*t,POS.enemyBefore[1],32,32,this.x,this.y,32,32),35==this.times&&(this.isAppear=!0,this.times=0,this.shoot(2))}}},EnemyThree.prototype=new Tank</script> <script>window.Num=function(i){this.ctx=i,this.size=14,this.draw=function(i,s,t){var h=s,e=t,n=[];if(0==i)n.push(0);else for(;i>0;)n.push(i%10),i=parseInt(i/10);for(var r=n.length-1;r>=0;r--)h=s+(n.length-r-1)*this.size,this.ctx.drawImage(RESOURCE_IMAGE,POS.num[0]+14*n[r],POS.num[1],this.size,this.size,h,e,this.size,this.size)}}</script> <script>window.Menu=function(t){this.ctx=t,this.x=0,this.y=SCREEN_HEIGHT,this.selectTank=new SelectTank,this.playNum=1,this.times=0,this.draw=function(){this.times++;parseInt(this.times/6)%2==0||this.selectTank.size,this.y<=0?this.y=0:this.y-=5,this.ctx.clearRect(0,0,SCREEN_WIDTH,SCREEN_HEIGHT),this.ctx.save(),this.ctx.restore()},this.next=function(t){this.playNum+=t,this.playNum>2?this.playNum=1:this.playNum<1&&(this.playNum=2)}}</script> <script>window.Map=function(wCtx,gCtx){this.level=1,this.mapLevel=null,this.wallCtx=wCtx,this.grassCtx=gCtx,this.offsetX=48,this.offsetY=16,this.wTileCount=26,this.HTileCount=26,this.tileSize=16,this.homeSize=32,this.num=new Num(this.wallCtx),this.mapWidth=416,this.mapHeight=416,this.setMapLevel=function(level){this.level=level;var tempMap=eval("map"+this.level);this.mapLevel=new Array;for(var i=0;i<tempMap.length;i++){this.mapLevel[i]=new Array;for(var j=0;j<tempMap[i].length;j++)this.mapLevel[i][j]=tempMap[i][j]}},this.draw=function(){this.wallCtx.fillStyle="#000",this.wallCtx.fillRect(0,0,SCREEN_WIDTH,SCREEN_HEIGHT),this.wallCtx.fillStyle="#000",this.wallCtx.fillRect(this.offsetX,this.offsetY,this.mapWidth,this.mapHeight),this.grassCtx.clearRect(0,0,SCREEN_WIDTH,SCREEN_HEIGHT);for(var i=0;i<this.HTileCount;i++)for(var t=0;t<this.wTileCount;t++)this.mapLevel[i][t]==WALL||this.mapLevel[i][t]==GRID||this.mapLevel[i][t]==WATER||this.mapLevel[i][t]==ICE?this.wallCtx.drawImage(RESOURCE_IMAGE,this.tileSize*(this.mapLevel[i][t]-1)+POS.map[0],POS.map[1],this.tileSize,this.tileSize,t*this.tileSize+this.offsetX,i*this.tileSize+this.offsetY,this.tileSize,this.tileSize):this.mapLevel[i][t]==GRASS?this.grassCtx.drawImage(RESOURCE_IMAGE,this.tileSize*(this.mapLevel[i][t]-1)+POS.map[0],POS.map[1],this.tileSize,this.tileSize,t*this.tileSize+this.offsetX,i*this.tileSize+this.offsetY,this.tileSize,this.tileSize):this.mapLevel[i][t]==HOME&&this.wallCtx.drawImage(RESOURCE_IMAGE,POS.home[0],POS.home[1],this.homeSize,this.homeSize,t*this.tileSize+this.offsetX,i*this.tileSize+this.offsetY,this.homeSize,this.homeSize);this.drawNoChange(),this.drawEnemyNum(maxEnemy),this.drawLevel(),this.drawLives(0,1),this.drawLives(0,2)},this.drawNoChange=function(){},this.drawLevel=function(){},this.drawEnemyNum=function(i){},this.clearEnemyNum=function(i,t){let e=i-t,s=document.querySelector(".robot-tank-count"),h="";if(e>0)for(let i=0;i<e;i++)h+=`<div class="tank-count-item" style="background-image: url(${RESOURCE_IMAGE_URL})"></div>`;s.innerHTML=h},this.drawLives=function(i,t){let e=document.querySelectorAll(".game-info .player-box .player-info");if(e){let s=e[t-1].querySelector(".life-box"),h="";if(i>0)for(let t=0;t<i;t++)h+='<div class="life"></div>';s.innerHTML=h}},this.updateMap=function(i,t){if(null!=i&&i.length>0)for(var e=i.length,s=0;s<e;s++){var h=i[s];this.mapLevel[h[0]][h[1]]=t,t>0?this.wallCtx.drawImage(RESOURCE_IMAGE,this.tileSize*(t-1)+POS.map[0],POS.map[1],this.tileSize,this.tileSize,h[1]*this.tileSize+this.offsetX,h[0]*this.tileSize+this.offsetY,this.tileSize,this.tileSize):(this.wallCtx.fillStyle="#000",this.wallCtx.fillRect(h[1]*this.tileSize+this.offsetX,h[0]*this.tileSize+this.offsetY,this.tileSize,this.tileSize))}},this.homeHit=function(){this.wallCtx.drawImage(RESOURCE_IMAGE,POS.home[0]+this.homeSize,POS.home[1],this.homeSize,this.homeSize,12*this.tileSize+this.offsetX,24*this.tileSize+this.offsetY,this.homeSize,this.homeSize)}}</script> <script>window.CheckIntersect=(e,i,t)=>(window.A1=e.x+t,window.B1=e.x+e.size-t,window.C1=e.y+t,window.D1=e.y+e.size-t,window.A2=i.x+t,window.B2=i.x+i.size-t,window.C2=i.y+t,window.D2=i.y+i.size-t,(A1>=A2&&A1<=B2||B1>=A2&&B1<=B2)&&(C1>=C2&&C1<=D2||D1>=C2&&D1<=D2)),window.tankMapCollision=(e,i)=>{var t=0,s=0,r=0;if(e.dir==UP?(s=parseInt((e.tempY+3-i.offsetY)/i.tileSize),r=parseInt((e.tempX+3-i.offsetX)/i.tileSize)):e.dir==DOWN?(s=parseInt((e.tempY-3-i.offsetY+e.size)/i.tileSize),r=parseInt((e.tempX+3-i.offsetX)/i.tileSize)):e.dir==LEFT?(s=parseInt((e.tempY+3-i.offsetY)/i.tileSize),r=parseInt((e.tempX+3-i.offsetX)/i.tileSize)):e.dir==RIGHT&&(s=parseInt((e.tempY+3-i.offsetY)/i.tileSize),r=parseInt((e.tempX-3-i.offsetX+e.size)/i.tileSize)),s>=i.HTileCount||s<0||r>=i.wTileCount||r<0)return!0;if(e.dir==UP||e.dir==DOWN){var f=parseInt(e.tempX-map.offsetX-r*i.tileSize+e.size-3);t=f%i.tileSize==0?parseInt(f/i.tileSize):parseInt(f/i.tileSize)+1;for(var l=0;l<t&&r+l<i.wTileCount;l++){if((a=i.mapLevel[s][r+l])==WALL||a==GRID||a==WATER||a==HOME||a==ANOTHREHOME)return e.dir==UP?e.y=i.offsetY+s*i.tileSize+i.tileSize-3:e.dir==DOWN&&(e.y=i.offsetY+s*i.tileSize-e.size+3),!0}}else{var n=parseInt(e.tempY-map.offsetY-s*i.tileSize+e.size-3);t=n%i.tileSize==0?parseInt(n/i.tileSize):parseInt(n/i.tileSize)+1;for(l=0;l<t&&s+l<i.HTileCount;l++){var a;if((a=i.mapLevel[s+l][r])==WALL||a==GRID||a==WATER||a==HOME||a==ANOTHREHOME)return e.dir==LEFT?e.x=i.offsetX+r*i.tileSize+i.tileSize-3:e.dir==RIGHT&&(e.x=i.offsetX+r*i.tileSize-e.size+3),!0}}return!1},window.bulletMapCollision=(e,i)=>{var t=0,s=0,r=0,f=[],l=!1;if(e.dir==UP?(s=parseInt((e.y-i.offsetY)/i.tileSize),r=parseInt((e.x-i.offsetX)/i.tileSize)):e.dir==DOWN?(s=parseInt((e.y-i.offsetY+e.size)/i.tileSize),r=parseInt((e.x-i.offsetX)/i.tileSize)):e.dir==LEFT?(s=parseInt((e.y-i.offsetY)/i.tileSize),r=parseInt((e.x-i.offsetX)/i.tileSize)):e.dir==RIGHT&&(s=parseInt((e.y-i.offsetY)/i.tileSize),r=parseInt((e.x-i.offsetX+e.size)/i.tileSize)),s>=i.HTileCount||s<0||r>=i.wTileCount||r<0)return!0;if(e.dir==UP||e.dir==DOWN){var n=parseInt(e.x-map.offsetX-r*i.tileSize+e.size);t=n%i.tileSize==0?parseInt(n/i.tileSize):parseInt(n/i.tileSize)+1;for(var a=0;a<t&&r+a<i.wTileCount;a++){if((z=i.mapLevel[s][r+a])==WALL||z==GRID||z==HOME||z==ANOTHREHOME)if(l=!0,z==WALL)f.push([s,r+a]);else if(z!=GRID){isGameOver=!0;break}}}else{var p=parseInt(e.y-map.offsetY-s*i.tileSize+e.size);t=p%i.tileSize==0?parseInt(p/i.tileSize):parseInt(p/i.tileSize)+1;for(a=0;a<t&&s+a<i.HTileCount;a++){var z;if((z=i.mapLevel[s+a][r])==WALL||z==GRID||z==HOME||z==ANOTHREHOME)if(l=!0,z==WALL)f.push([s+a,r]);else if(z!=GRID){isGameOver=!0;break}}}return map.updateMap(f,0),l}</script> <script>window.Stage=function(t,i){console.log(1111,t,new Num(t)),this.ctx=t,this.ctx.fillStyle="#F7931A",this.drawHeigth=15,this.level=i,this.temp=0,this.dir=1,this.isReady=!1,this.levelNum=new Num(t),this.init=function(t){this.dir=1,this.isReady=!1,this.level=t,this.temp=0},this.draw=function(){1==this.dir?225==this.temp?(this.ctx.drawImage(RESOURCE_IMAGE,POS.stageLevel[0],POS.stageLevel[1],78,14,194,208,78,14),this.levelNum.draw(this.level,308,208),initMap()):825==this.temp?(this.temp=225,this.dir=-1):(this.ctx.fillRect(0,this.temp,512,this.drawHeigth),this.ctx.fillRect(0,448-this.temp-this.drawHeigth,512,this.drawHeigth)):this.temp>=0?(this.ctx.clearRect(0,this.temp,512,this.drawHeigth),this.ctx.clearRect(0,448-this.temp-this.drawHeigth,512,this.drawHeigth)):this.isReady=!0,this.temp+=this.drawHeigth*this.dir}}</script> <script>function initScreen(){window.canvas=document.querySelector("#stageCanvas"),ctx=canvas.getContext("2d"),canvas.setAttribute("width",SCREEN_WIDTH),canvas.setAttribute("height",SCREEN_HEIGHT),wallCtx=document.querySelector("#wallCanvas").getContext("2d"),grassCtx=document.querySelector("#grassCanvas").getContext("2d"),document.querySelector("#wallCanvas").setAttribute("width",SCREEN_WIDTH),document.querySelector("#wallCanvas").setAttribute("height",SCREEN_HEIGHT),document.querySelector("#grassCanvas").setAttribute("width",SCREEN_WIDTH),document.querySelector("#grassCanvas").setAttribute("height",SCREEN_HEIGHT),tankCtx=document.querySelector("#tankCanvas").getContext("2d"),document.querySelector("#tankCanvas").setAttribute("width",SCREEN_WIDTH),document.querySelector("#tankCanvas").setAttribute("height",SCREEN_HEIGHT),overCtx=document.querySelector("#overCanvas").getContext("2d"),document.querySelector("#overCanvas").setAttribute("width",SCREEN_WIDTH),document.querySelector("#overCanvas").setAttribute("height",SCREEN_HEIGHT),document.querySelector("#canvasDiv").style.width=`${SCREEN_WIDTH}px`,document.querySelector("#canvasDiv").style.height=`${SCREEN_HEIGHT}px`,document.querySelector("#canvasDiv").style["background-color"]="#000000",document.querySelector(".startCanvas .bg-content").style["background-image"]=`url(${MENU_IMAGE_URL})`,document.querySelector(".div .icon").style["background-image"]=`url(${RESOURCE_IMAGE_URL})`,document.querySelectorAll(".stage-box-tank-icon").forEach((e=>{e.style["background-image"]=`url(${RESOURCE_IMAGE_URL})`})),document.querySelectorAll(".game-info .icon").forEach((e=>{e.style["background-image"]=`url(${RESOURCE_IMAGE_URL})`})),document.querySelector(".game-logo").style["background-image"]=`url(${RESOURCE_IMAGE_URL})`,document.querySelectorAll(".button-bg").forEach((e=>{e.style["background-image"]=`url(${BUTTON_IMAGE_URL})`}))}function initObject(){menu=new Menu(ctx),stage=new Stage(ctx,level),map=new Map(wallCtx,grassCtx),player1=new PlayTank(tankCtx),player1.x=129+map.offsetX,player1.y=385+map.offsetY,player2=new PlayTank(tankCtx),player2.offsetX=128,player2.x=256+map.offsetX,player2.y=385+map.offsetY,appearEnemy=0,enemyArray=[],bulletArray=[],keys=[],crackArray=[],isGameOver=!1,overX=176,overY=384,overCtx.clearRect(0,0,SCREEN_WIDTH,SCREEN_HEIGHT),emenyStopTime=0,homeProtectedTime=-1,propTime=1e3}function gameLoop(){switch(gameState){case GAME_STATE_MENU:menu.draw();break;case GAME_STATE_INIT:stage.draw(),1==stage.isReady&&(gameState=GAME_STATE_START);break;case GAME_STATE_START:drawAll(),(isGameOver||player1.lives<=0&&player2.lives<=0)&&(gameState=GAME_STATE_OVER,map.homeHit()),appearEnemy==maxEnemy&&0==enemyArray.length&&(gameState=GAME_STATE_WIN);break;case GAME_STATE_WIN:nextLevel();break;case GAME_STATE_OVER:gameOver()}let e=document.querySelector(".startCanvas"),a=document.querySelector("#canvasDiv");gameState===GAME_STATE_MENU?(e.classList.remove("start-game"),e.classList.add("end-game"),a.classList.remove("start-game"),a.classList.add("end-game")):(e.classList.remove("end-game"),e.classList.add("start-game")),window.showDomGameState&&(e.classList.remove("first-start"),e.classList.remove("gameOver"),e.classList.remove("passLevel"),e.classList.add(showDomGameState||""),"gameOver"===showDomGameState||showDomGameState)}function keyEvent(){keys.contain(keyboard.W)?(player1.dir=UP,player1.hit=!1,player1.move()):keys.contain(keyboard.S)?(player1.dir=DOWN,player1.hit=!1,player1.move()):keys.contain(keyboard.A)?(player1.dir=LEFT,player1.hit=!1,player1.move()):keys.contain(keyboard.D)&&(player1.dir=RIGHT,player1.hit=!1,player1.move()),keys.contain(keyboard.UP)?(player2.dir=UP,player2.hit=!1,player2.move()):keys.contain(keyboard.DOWN)?(player2.dir=DOWN,player2.hit=!1,player2.move()):keys.contain(keyboard.LEFT)?(player2.dir=LEFT,player2.hit=!1,player2.move()):keys.contain(keyboard.RIGHT)&&(player2.dir=RIGHT,player2.hit=!1,player2.move())}function addEnemyTank(){null==enemyArray||enemyArray.length>=maxAppearEnemy||0==maxEnemy||(appearEnemy++,window.rand=parseInt(3*Math.random()),window.obj=null,0==rand?obj=new EnemyOne(tankCtx):1==rand?obj=new EnemyTwo(tankCtx):2==rand&&(obj=new EnemyThree(tankCtx)),obj.x=ENEMY_LOCATION[parseInt(3*Math.random())]+map.offsetX,obj.y=map.offsetY,obj.dir=DOWN,enemyArray[enemyArray.length]=obj,map.clearEnemyNum(maxEnemy,appearEnemy))}function drawEnemyTanks(){if(null!=enemyArray||enemyArray.length>0)for(window.i=0;i<enemyArray.length;i++)window.enemyObj=enemyArray[i],enemyObj.isDestroyed?(enemyArray.removeByIndex(i),i--):enemyObj.draw();emenyStopTime>0&&emenyStopTime--}function drawAll(){tankCtx.clearRect(0,0,SCREEN_WIDTH,SCREEN_HEIGHT),player1.lives>0&&player1.draw(),player2.lives>0&&player2.draw(),drawLives(),appearEnemy<maxEnemy&&(mainframe%100==0&&(addEnemyTank(),mainframe=0),mainframe++),drawEnemyTanks(),drawBullet(),drawCrack(),keyEvent(),propTime<=0?drawProp():propTime--,homeProtectedTime>0?homeProtectedTime--:0==homeProtectedTime&&(homeProtectedTime=-1,homeNoProtected())}function drawCrack(){if(null!=crackArray&&crackArray.length>0)for(window.i=0;i<crackArray.length;i++)window.crackObj=crackArray[i],crackObj.isOver?(crackArray.removeByIndex(i),i--,crackObj.owner==player1?player1.renascenc(1):crackObj.owner==player2&&player2.renascenc(2)):crackObj.draw()}function gameOver(){overCtx.clearRect(0,0,SCREEN_WIDTH,SCREEN_HEIGHT),overCtx.drawImage(RESOURCE_IMAGE,POS.over[0],POS.over[1],64,32,overX+map.offsetX,overY+map.offsetY,64,32),overY-=2,console.log("gameOver",!0,overY<=parseInt(map.mapHeight/2)),overY<=parseInt(map.mapHeight/2)&&(initObject(),1==menu.playNum&&(player2.lives=0),gameState=GAME_STATE_MENU,window.showDomGameState="gameOver")}function nextLevel(){initObject(),1==menu.playNum&&(player2.lives=0),gameState=GAME_STATE_MENU,window.showDomGameState="passLevel"}function preLevel(){}function drawProp(){window.rand=Math.random(),rand<.4&&null==prop&&(prop=new Prop(overCtx),prop.init()),null!=prop&&(prop.draw(),prop.isDestroyed&&(prop=null,propTime=1e3))}function homeNoProtected(){window.mapChangeIndex=[[23,11],[23,12],[23,13],[23,14],[24,11],[24,14],[25,11],[25,14]],map.updateMap(mapChangeIndex,WALL)}window.ctx="",window.wallCtx="",window.grassCtx="",window.tankCtx="",window.overCtx="",window.menu=null,window.stage=null,window.map=null,window.player1=null,window.player2=null,window.prop=null,window.enemyArray=[],window.bulletArray=[],window.keys=[],window.crackArray=[],window.gameState=GAME_STATE_MENU,window.level=window.pageLevel,window.maxEnemy=1==window.pageLevel?10:20,window.maxAppearEnemy=5,window.appearEnemy=0,window.mainframe=0,window.isGameOver=!1,window.overX=176,window.overY=384,window.emenyStopTime=0,window.homeProtectedTime=-1,window.propTime=300,window.onload=function(){initScreen(),initObject(),setInterval(gameLoop,20)},document.addEventListener("keydown",(function(e){let a=e.keyCode;if(_cheats(a),window.cheats)switch(gameState){case GAME_STATE_MENU:if(a==keyboard.ENTER){let e=document.querySelector(".email-input"),a=e?e.value:"";if(!a)return;if(window.a=a,gameState=GAME_STATE_INIT,window.setPassword(),1==menu.playNum){player2.lives=0;let e=document.querySelector("#canvasDiv");e&&e.classList.add("player1")}}break;case GAME_STATE_START:keys.contain(a)||keys.push(a),a==keyboard.SPACE&&player1.lives>0?player1.shoot(BULLET_TYPE_PLAYER):a==keyboard.ENTER&&player2.lives>0?player2.shoot(BULLET_TYPE_PLAYER2):a==keyboard.N?nextLevel():a==keyboard.P&&preLevel()}})),document.addEventListener("keyup",(function(e){keys.remove(e.keyCode)})),window.initMap=()=>{map.setMapLevel(level),map.draw(),drawLives()},window.drawLives=()=>{map.drawLives(player1.lives,1),map.drawLives(player2.lives,2)},window.drawBullet=()=>{if(null!=bulletArray&&bulletArray.length>0)for(window.i=0;i<bulletArray.length;i++)window.bulletObj=bulletArray[i],bulletObj.isDestroyed?(bulletObj.owner.isShooting=!1,bulletArray.removeByIndex(i),i--):bulletObj.draw()}</script> <style>*{margin:0;padding:0}@font-face{font-family:'Press Start 2P';font-style:normal;font-weight:400;font-display:swap;src:url(data:font/truetype;charset=utf-8;base64,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) format('truetype');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}body{font-family:'Press Start 2P',sans-serif}.container{width:576px;height:576px;margin:0 auto;background-color:#000;overflow:hidden}#canvasDiv{position:relative;margin:0 auto}.game-tips{height:64px}#canvasDiv .startCanvas{position:absolute;width:512px;height:448px;top:448px;background:#000}#canvasDiv .startCanvas.start-game{visibility:hidden}#canvasDiv .startCanvas.first-start .email-content{display:flex;border:2px solid #f7931a}#canvasDiv .startCanvas.end-game{transition:top 1s linear;top:0}#canvasDiv .startCanvas .bg-content{position:absolute;left:0;right:0;top:10px;height:100px;background-size:100% auto;background-position-y:-86px}#canvasDiv .startCanvas .stage-box{position:absolute;bottom:270px;width:100%;color:#f7931a;font-size:24px;display:flex;align-items:center;justify-content:center;gap:12px;line-height:1;box-sizing:border-box}#canvasDiv .startCanvas .email-content{position:absolute;width:80%;left:10%;bottom:70px;display:none;height:40px}#canvasDiv .startCanvas .email-content .email-input-box{width:100%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;padding:0 16px;display:flex;align-items:center;box-sizing:border-box;white-space:nowrap;font-size:12px}#canvasDiv .startCanvas .email-content .email-input-box .email-input-box-label{width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:12px solid #fff;border-right:0}#canvasDiv .startCanvas .email-content .email-input-box .email-input{flex:1 1;height:28px;line-height:28px;background:0 0;color:#fff;border:none;padding:0 10px;box-sizing:border-box;font-size:12px;border-radius:4px;outline:0;font-family:'Press Start 2P',sans-serif}#canvasDiv .startCanvas .email-content .email-input-box .email-input::placeholder{color:#bbbcbb}#canvasDiv .startCanvas .email-content .email-content-bg{z-index:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#canvasDiv .startCanvas .gameOver-button,#canvasDiv .startCanvas .passLevel-button,#canvasDiv .startCanvas .start-button{width:150px;position:absolute;left:50%;transform:translateX(-75px);bottom:-5px;height:60px;font-size:16px;font-weight:600;cursor:pointer}#canvasDiv .startCanvas .gameOver-button:hover .start-button-bg-2,#canvasDiv .startCanvas .passLevel-button:hover .start-button-bg-2,#canvasDiv .startCanvas .start-button:hover .start-button-bg-2{display:none}#canvasDiv .startCanvas .gameOver-button:hover .start-button-bg-1,#canvasDiv .startCanvas .passLevel-button:hover .start-button-bg-1,#canvasDiv .startCanvas .start-button:hover .start-button-bg-1{display:block}#canvasDiv .startCanvas .gameOver-button .button-bg,#canvasDiv .startCanvas .passLevel-button .button-bg,#canvasDiv .startCanvas .start-button .button-bg{width:150px;height:60px;position:absolute;bottom:0;left:0;image-rendering:pixelated;background-size:198%}#canvasDiv .startCanvas .gameOver-button .start-button-bg-2,#canvasDiv .startCanvas .passLevel-button .start-button-bg-2,#canvasDiv .startCanvas .start-button .start-button-bg-2{display:block}#canvasDiv .startCanvas .gameOver-button .start-button-bg-1,#canvasDiv .startCanvas .passLevel-button .start-button-bg-1,#canvasDiv .startCanvas .start-button .start-button-bg-1{display:none}#canvasDiv .startCanvas .gameOver-content{display:none}#canvasDiv .startCanvas.gameOver .gameOver-content{display:block;margin-bottom:12px}#canvasDiv .startCanvas.gameOver .start-button{display:none}#canvasDiv .start-button .start-button-bg-1{background-position:148px 5px}#canvasDiv .start-button .start-button-bg-2{background-position:3px 5px}#canvasDiv .passLevel-button .start-button-bg-1{background-position:148px -69px}#canvasDiv .passLevel-button .start-button-bg-2{background-position:3px 145px}#canvasDiv .gameOver-button .start-button-bg-1{background-position:149px -150px}#canvasDiv .gameOver-button .start-button-bg-2{background-position:4px -150px}#canvasDiv .startCanvas.gameOver .bg-content{background-position-y:-168px}#canvasDiv .startCanvas.passLevel .bg-content{background-position-y:0}#canvasDiv .startCanvas.gameOver .game-over-image{display:block;position:absolute;left:50%;bottom:130px;transform:translateX(-50%);width:100px;height:50px;background-size:750px;background-position:150px -100px}#canvasDiv .startCanvas .game-over-image{display:none}#canvasDiv .startCanvas.passLevel .pass-content{display:block}#canvasDiv .startCanvas.passLevel .start-button{display:none}#canvasDiv .startCanvas .pass-content{position:absolute;width:90%;left:5%;top:240px;display:none;height:90px}.pass-content .text-info{display:flex;align-items:center;height:40px;justify-content:center;overflow:hidden}.pass-content .text-info .text{color:#fff;font-size:12px;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pass-content .text-info .text i{margin-right:4px;font-style:normal}.pass-content .text-info .text span{color:#f7931a;margin-left:4px}.pass-content .passLevel-button{bottom:-110px!important}.pass-content .icon{width:100px;height:100px;background:#fff;margin:30px auto 0}#canvasDiv canvas{position:absolute}.div{position:fixed;width:100%;height:100%;z-index:2;left:0;top:0;background:#000;display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;flex-direction:column}.div .icon,.game-logo{width:50px;height:50px;margin-bottom:40px;transform:scale(1.8);image-rendering:pixelated;background-position:-274px -167px}.div .text{font-size:14px;line-height:1.8em;height:126px;width:280px}.div .hide{display:none}.div.show .hide{display:block}.div.show span.hide{display:inline}.game-info{position:absolute;width:576px;height:576px;left:-32px;top:-64px;color:#fff}.game-info .operating-tips{width:100%;position:absolute;left:80px;top:510px;font-size:12px;line-height:26px;transform:scale(.9);transform-origin:0}.game-info .player-box{position:absolute;left:80px;top:35px;width:420px;display:flex;align-content:center}.game-info .stage-info{position:absolute;right:0;top:0;height:28px;line-height:28px;font-size:12px}.game-info .player-info{display:flex;align-content:center;margin-right:15px}.game-info .flex1{flex:1;display:flex;flex-direction:column;justify-content:center}.game-info .name{font-size:12px}.game-info .life-box{margin-top:5px;display:flex;height:10px}.game-info .life-box .life{width:24px;height:10px;background:#f7931a;margin-right:4px}.game-info .life-box .life:last-child{margin-right:0}.game-info .icon{width:28px;height:28px;background-position:-2px -2px;margin-right:8px}.game-info .player-info:nth-child(2) .icon{background-position:-130px -2px}.game-info .robot-tank-count{position:absolute;right:24px;top:80px;width:40px}.robot-tank-count .tank-count-item{background-position:0 -128px;width:14px;height:16px;margin:0 5px 5px 0;float:left}.game-canvas-border{position:absolute;width:416px;height:416px;left:46px;top:16px;border:2px solid #7f7f7f}.game-logo{image-rendering:pixelated;position:absolute;left:50%;top:230px;margin-left:-28px}.gameOver .game-logo{top:250px}.passLevel .game-logo{display:none}#canvasDiv.end-game .game-canvas-border,#canvasDiv.end-game .game-info,#canvasDiv.end-game .robot-tank-count{display:none}.select-model{position:absolute;top:200px;left:140px;display:none}.first-start .select-model{display:block}.select-model .game-model{display:flex;color:#fff;height:36px;align-items:center}.select-model .game-model span{margin-left:8px}.select-model .stage-box-tank-icon{width:24px;height:20px;background-size:calc(15 * 24px);background-position-x:calc(-4 * 24px);background-position-y:calc(-3 * 24px);margin-top:-3px;transform:scale(1.3);margin-right:15px;opacity:0}.select-model .stage-box-tank-icon.select{opacity:1}.player1 .game-info .player-info:nth-child(2),.player1 .operating-tips p:nth-child(2){display:none}</style> <script>function getLocalTime(e){var t=new Date,o=t.getTime(),n=6e4*t.getTimezoneOffset();let c=new Date(o+n+36e5*e),i=c.getMonth()+1,a=c.getDate();return`${c.getFullYear()}-${i>10?i:"0"+i}-${a+1>10?a:"0"+a}`}function copyF(e){const t=document.querySelector("#copyInput");try{navigator.clipboard.writeText(e)}catch(e){}setTimeout((()=>{t.select(),document.execCommand("copy")&&(document.execCommand("copy"),console.log("复制成功"))}),500)}function copyPW(){copyF(document.querySelector("#c").innerText)}function copyDomain(){copyF("https://ordz.games")}function onGameWindow(){document.querySelector(".div").classList.add("show")}function _cheats(e){if(window.cheats)return;window.cheatsList=window.cheatsList||[],window.cheatsList.push(e);window.cheatsList.join(",").indexOf("38,38,40,40,37,39,37,39,66,65")>=0&&(window.cheats=!0,setTimeout((()=>{document.querySelector(".div").remove()}),100))}window.c=window.pageLevel,window.setPassword=()=>{let e=window.a||"",t=window.btoa(`${e}|${c}-${window.gameType}|ac|${getLocalTime(0)}`);t=t.replace("d","a").replace("z","b"),t=`${t.slice(20)}${t.slice(10,20)}${t.slice(0,5)}${t.slice(5,15)}`;const o=document.querySelector("#copyInput");o.value=t,o.setAttribute("value",t);document.querySelector("#c .info").innerText=t,setTimeout((()=>{let e=document.querySelector("#canvasDiv");e.classList.remove("end-game"),e.classList.add("start-game")}),1400)},window.addEventListener("load",(()=>{let e=document.querySelector(".start-button"),t=document.querySelector(".gameOver-button"),o=window.a,n=document.querySelector(".email-input");if(e){function c(){let e=document.querySelector(".email-input"),t=e?e.value:"";if(t){window.a=t,console.log(t),window.gameState=window.GAME_STATE_INIT,window.player2.lives=0;let e=document.querySelector("#canvasDiv");e&&e.classList.add("player1"),window.setPassword()}}e.addEventListener("click",c),t.addEventListener("click",c)}o&&n&&(n.value=o);let i=document.querySelector(".stage-box-desc span"),a=document.querySelector(".player-box .stage-info span"),d=document.querySelector(".div .text .level");i.innerHTML=`${window.pageLevel}`,a.innerHTML=`${window.pageLevel}${window.gameType}`,d.innerHTML=`${window.pageLevel}${window.gameType}`}))</script> </head> <body> <div class=container> <div class=game-tips> </div> <div id=canvasDiv class=end-game> <canvas id=wallCanvas></canvas> <canvas id=tankCanvas></canvas> <div class=game-canvas-border></div> <div class=game-info> <div class=player-box> <div class=player-info> <div class=icon></div> <div class=flex1> <div class=name>PLAYER1</div> <div class=life-box></div> </div> </div> <div class=player-info> <div class=icon></div> <div class=flex1> <div class=name>PLAYER2</div> <div class=life-box></div> </div> </div> <div class=stage-info>STAGE<span></span></div> </div> <div class=operating-tips> <p>MOVE WITH WASD, SHOOT WITH SPACE</p> <p>PLAYER2: MOVE WITH <span style=font-family:sans-serif>↑↓←→</span>, SHOOT WITH ENTER</p> </div> <div class=robot-tank-count></div> </div> <canvas id=grassCanvas></canvas> <canvas id=overCanvas></canvas> <canvas id=stageCanvas></canvas> <div class="startCanvas first-start"> <div class=bg-content></div> <div class=stage-box> <p class=stage-box-desc>STAGE <span></span></p> </div> <div class=game-logo></div> <div class=email-content> <div class=email-input-box> <label htmlFor=EmailInput class=email-input-box-label></label> <input id=EmailInput class=email-input placeholder="YOUR EMAIL"> </div> </div> <div class=pass-content> <div class=text-info> <div class="text pass-email-input" id=c><i class=text><i>PASS</i><i>TOKEN</i>:</i><span class=info></span></div> </div> <div class=text-info> <div class=text><i>CLAIM</i><i>YOUR</i><i>TOKEN</i><i>AT</i><span>ORDZ.GAMES</span></div> </div> <div class="passLevel-button passLevel-content" onclick=copyPW()> <div class="button-bg start-button-bg-1"></div> <div class="button-bg start-button-bg-2"></div> </div> </div> <div class=start-button> <div class="button-bg start-button-bg-1"></div> <div class="button-bg start-button-bg-2"></div> </div> <div class="gameOver-button gameOver-content"> <div class="button-bg start-button-bg-1"></div> <div class="button-bg start-button-bg-2"></div> </div> </div> </div> </div> <input id=copyInput style=width:1px;height:1px> <div class=div onclick=onGameWindow()> <div class=icon></div> <div class=text> <p>{</p> <p>&nbsp;&nbsp;"HINT":&nbsp;<span class=hide>"KONAMI"</span></p> <p class=hide>&nbsp;&nbsp;"GAME":&nbsp;"ORDZCITY"</p> <p class=hide>&nbsp;&nbsp;"STAGE":&nbsp;"<span class=level></span>"</p> <p class=hide>}</p> </div> </div> </body> </html>