From c2b68758a9cf4b123f37babeb1db3c2f22004f5c Mon Sep 17 00:00:00 2001 From: clmaisonha Date: Fri, 12 Jun 2020 23:53:41 +0200 Subject: [PATCH] =?UTF-8?q?Ajout=20de=20plusieurs=20sprite=20d'action=20(A?= =?UTF-8?q?ttaque,=20Mouvement,=20Condition)=20-=20Incorporation=20de=20ce?= =?UTF-8?q?s=20sprites=20dans=20le=20code=20-=20gestion=20du=20sprite=20?= =?UTF-8?q?=C3=A0=20s=C3=A9lectionner=20en=20foncion=20des=20param=C3=A8tr?= =?UTF-8?q?es=20-=20Modification=20du=20bouton=20play=20/=20pause=20et=20d?= =?UTF-8?q?e=20son=20positionnement=20(maintenant=20il=20est=20en=20dessou?= =?UTF-8?q?s=20=C3=A0=20droite=20de=20la=20carte)=20-=20Quand=20on=20drag?= =?UTF-8?q?=20une=20action,=20=C3=A7a=20met=20le=20jeu=20en=20pause?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Code/assets/nodes/attackNode.png | Bin 4512 -> 28985 bytes Code/assets/nodes/conditionNode.png | Bin 8023 -> 52251 bytes Code/assets/nodes/moveNode.png | Bin 4715 -> 21936 bytes Code/assets/play.png | Bin 0 -> 14886 bytes Code/public/js/class.min.js | 2 +- Code/src/js/classes/Boot.js | 7 +++--- Code/src/js/classes/Game.js | 35 +++++++++++++++++++-------- Code/src/js/classes/RectangleNode.js | 19 +++++++++++++++ Code/src/js/classes/Robot.js | 3 ++- 9 files changed, 51 insertions(+), 15 deletions(-) create mode 100644 Code/assets/play.png diff --git a/Code/assets/nodes/attackNode.png b/Code/assets/nodes/attackNode.png index 33db8bf58df8a8b24d135222250395d384796984..c17404a9f72b15e0a3a8ed59febc4d6f2065ea8c 100644 GIT binary patch literal 28985 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 literal 4512 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

%|3=DFI0x1bvlnwuS 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%0DMF7QFY8siBtp+ks_!>!-Y?;=Y-YBH_Kc>VnOg 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 delta 6288 zcma)hS5OmNv^630Djn%nY9O=_LPsEgh&1U+4ZRZxJs`acLBIe~LKA69FCw5cmEM#h zT>?mN0-`_n<)8aM?=1{VNFik^B@dHTfXPBIKM476p)?o=9s0CQwYkK}uQG)M}e0CAGHmveBIb-=6u1^K}U8Aqs;6i5aFwZ9dWg@7EK9UMV&vQQ_m z1402|?<9v2Ci2nz4?I4e0HjtB5{7a`cq{WsgQdYBFa#v^zwWm{6sReUkd~2^lLyI5 z$vA)@3bL{w2dFFpWDkMJIZDYOI{+tODllnoMjb2_Rh{uAh5iQvy;3W)Byr@_&*i@f30s78%K!+09yZ{!czZ9?lwVY zOaiG6=)WdtjBtiIVUB=||EVc5WP*bKr74ma7jiYUFvrhi0s^K+T}^e<;DWuvu;(28 zAwB2-R0jh+Jx{F2IAv=2I#WJT1K9NQW}cnnQxbkEl&QkcRkFli6zcQ>E~%^Fwa0f- z)%bcd$N;lP6s*<&hml_s7-2HODaL;yz z*|inDb=`flzwmOuzVpL*__7em0pT@)B9bjkD%M>7v{b@%lBo;1ZLBo*@q`bN(@bl< zAK04kV1MWAK{>sbm)Fj6cgEZjS9Slv4so&87ec|IE$rQSvzS-b+D4lPB|agJR;wz8 z6qmo=xtIIJ?#3IrcJdSrQv9j*(EgM82K0yz4L!Z8XrMLr^?dGoV+;3sMNTh~-gJmX z8;Z;kQLtzk|CU&W>HMZMo_`kmAzN)U=*g-sSyy1f(ir^r*ullCdG>v zXx0+p4XnjYwmGDG)R!BP!Jgq{@{gI${C5Hf=C-8@Ir9Nfo8wO(xkt31za`k$jYsfY zP~VvE=3pyq>4m>N5^g%aD&+k8m8LoeY@NT=5%E-9 z`|-iA2LD{1h^c-s(8w&SjEFi~A8ZUc`I*U`I-NPc&L8>AD5B2l_mlU6#eq{54}-V# zpIyrnD2Bm4>g$%`I_l;7rrc7s>)A7hzRYM>rfpv&%^e)+Ej(0U+9;Fp)Is6 z{(=~v;I>SK6;$f7$l_(PR1O&mDc$cz_{KFX80S|ES~9_CDLn*U#D0C2EB5z;vjo-3 zA5X8OwAqFoQU%u12La>x_EI2hg#Hk-#?Nr~n>+GOjwz7!K9wrOX&DvOgy3Tr7`Q_E z=V=v*k+#POKgEfTDX>t;;gzZ$2>qlZW;EaR-L zB^@1;82Tn#A&c_J$-11)|9w*CXD zZL-PKcXEDsWA5=ojpa4b2GKObTjnufkpW*9Oi4gVxmaY&RhETLGZRt~v4-~J{%y=w zuA3J50=eBdIAv2Lpd_Furh<0=#O*=AIXFc*d{3dBGnjvrSl4XBsdq5xh(GQ4lx0Z% zY!}F)EthN+-D&fcBVwPg_uVSF5zA&QZ7TUy@jQMmDe~RsaDuvz8T(BV2bFHxUP#6Z zb)R|fQFOZG(*DVWKGzePkZm)<UVE%Tik-ohGU{4cD~uo(j+b`#HY{D(&U@jcPEdt5iKcjQAuL-Q0- z-Xkd*rIwMk<`e?CN#z5(-pi|~GXu>f4T3zsLGmt0Bz5!W{3kbW;%qK+`Lq5Vgf8u6 zhP9mtoN{@s%^IP5O?tL4HqgL~n@1Mcz41bEdr4)lyg5=D(mnIE5G5mCxDYXh zvV!vl^x5Dg=LCeDJ;4bbyULYF4o7Fc3-B4y-SVyy&l($gGSHrxi=!?1wYbyA9}-{@ z2SRO@%RYe9N^YM-n@dk);weQIf`f9B%Q%$_sE*%4F=*z#i0s0@er~JA>5&=!2+lWG zKgmOYXAvzpcU0NEG+dYnyyq$XfQ1f&=-eLWU5$nf-2B{V{c&j>`W*LXi8~|gZ92}U z-tchFkBKo`(&&5`0b|irxC*f7dNxkql=JU4&h42!ZDC}qweKFS<@dEt0veK!1X$0o86-S`!udq$>rR9>F;38X(YINr26)34qzo-8w-72EN`QL^gu^E^D?uaHgN zO^jTbZ_=2AcAQt|tbwgGbml*Okej-^%bSCyFxbUkL@n#FI`C!y>UGI6d7oj%YVm0W zq9Xe4qu_Tf{)N2V-?TqZWE8hbzTtw(Q-a^+vntmOus z%ExVP4s%&jw0hA}4((N0sik(1TRP_BxCy%XgvYQW8Z8Q;E+sC!HGWOoarhY<#5_8x zrU6u{E>T@+H!&){z{gfhZBbwxpP*$xqR2_@u9^a$nP{i;)V!*qRrl-)B$^=ldY>~< z3ix>WJhvyUCxB#cav%tPkjBOgUurz)IquJcC|((?`6RJxeQtkW(=apf&)_(`;l*gn zk^S$-lY&dNHWc&NC@ zq9hohN9mr8NVk%JYC=q!WG)xHVICJxvdEw2R~()h(Zf5`XkC%(rq?!0po zn%A%kI~*HPEoAp5J9Qb}^_KT*2p67xOn%ZCiZTnZ`F_Dybh&Eo(c7F@f3Bf8HL8}tME?_6T~RCO!@DXEH>^;thVldUKoa1uuN37cQ@-w zETVpWsyzsAn;6R32~EKx1d!4_irn6d)H5ta63&@-TA-og)i(3uydm{j|F(7H-u6z+ z5m-MjGF1jPXMancC>btq;d0LkY^4g61uPhzBvlw#FSsR=!;D&!#nFW}!x}4l1xR8C zzEb&O3iZvA?kdvF%BbbdTBWhXS4mf;_X=!=9|$Z$i{iUDZj?gdCY$|7RjOCtx)`1J z@FG=`NYjDPtarq1O0-&*uq&Z5*6@v?z@BSMvEem)XuRiDzvVljom>>hp*}N38UIyh zRkxqALVK1i?fXxe$!NS133rH}_-0?rKOsR=zEZ^@)L|ye0d9YpuPhMBoij2*9-y!j zg29%hb8&_LlC+QAOw}r$^reR{KzzR@dWr1DLEKdvLao4ZQ+ zVA-PU;nyaQY}{aRDC0z9S=yjhl})QzgSK4tRxg~ZspO{uKl-h`=$jwg<8F+bcr*jJ z3{Uh5Z1XT1hZ|k@M%K-GRRv@O#h!33#ltS}w&mcmp-=P9mFxI=A=xtgC((t9b-X-1 zn=!JfBk&_W=%A)L!XEIp5|8AJcxuy2EEIGZ@dUorP1EP^Py}UjaccYW_Z5QCX`aT@`Z8R~bKK~!UWskI{;OF9Y1Id-ll&jQKKSXRQxW&RobyS&%mz22R;{CA z5?HqAwu?H`E4#-MwzTK>DE$lLLON+XP5ZH{nOAMg$VAovM~qe_ido?yY_19Lf>EKg z7S{KAh)#L*f6(`ddMu z*a4OGcl0H+D6mbUhW9moW(X#GUEu8po_nrutdrG@juEo+vzbCh_4Zs)7h?ci7DCvp*2NUl(P3A9CD4Z&M6 za7{rSe{j9e^vC@;0$o@?+!ca837^(T`c{8y>bI+p5EuujmA$! z&M!`lr>HRIAd7_MnNGsrdZwLX^<7y3V`+ga4~3VOmO37qGoBr+pw22fek_%IY}c(c za&Zy*l2cy4-{txJ9aJ@y-9$`WSfcp;t#dXneW{x#=fNBk6JrBbj4aQ3AkiM%+pF$8 zf-MglCamvV!WM?N@V-Zjv>OI5?U~=cVb)(8iJyFouC+OzJ`?{ta`PJ#-sVi=d9k`V za+m-bpQFtueZ1}m0>7rF`OZnhO*+E$^ven%0YZ*UM-)bYU)t2{YDOvBAINa#k zyZNv)bgaUG^ROpfz3y*)oOrOaRE*+AawUiSrexbzQ$EygOjjMvjk+~t7s(=x*-a6y zEaTX&pd$t^)!^-37Vn7t!2}=9#hmu;Mq0%r#YbJq%J2*{W8P+9s|RPylY_RX(N_kh zB}>ZG+so(-iZu~dp{!BAJcsuL<7NfQxCleo?l)i$Z4XSFy9W&n;$4!LC!f&FVQJYcp z1e=1AfDN)HwX1g^><-l3-URkt9pSklBu7iF=zd7wI%F{xj+0?yB2_d@sgSO%2QiHc6_1i0MThw@ zaHZR+#9RGucop|f&TzR-j9Qz8c@b&sa|*?gOCO`YX4IyG7VRE$s(eT zzNK*+Mj#USsZ*lhWwGVtc=Z)Rk^3Cf!|v{;<$4

Z>1naP;v|wk*lgt8oV%Cj|*j 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 B0RsR4 literal 4715 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 NyU4{p&35(re*xufT_pej diff --git a/Code/assets/play.png b/Code/assets/play.png new file mode 100644 index 0000000000000000000000000000000000000000..7a3a706562ac8322141a21a77fbc837b19b48cd3 GIT binary patch literal 14886 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 literal 0 HcmV?d00001 diff --git a/Code/public/js/class.min.js b/Code/public/js/class.min.js index 811e4bb..a067b0f 100644 --- a/Code/public/js/class.min.js +++ b/Code/public/js/class.min.js @@ -1 +1 @@ -class Attack{constructor(){}do(t){return!(!t.haveTarget()||!t.isTargetInRange())&&t.attackTarget()}}class Boot extends Phaser.Scene{constructor(){super("Boot")}preload(){let t=this.add.graphics(),e=this.add.graphics(),i=WIDTH_WINDOW/2-160,s=HEIGHT_WINDOW/2-25;e.fillStyle(2236962,.8),e.fillRect(i,s,320,50),this.load.on("progress",function(e){t.clear(),t.fillStyle(16777215,1),t.fillRect(i+10,s+10,300*e,30)}),this.load.on("complete",function(){t.destroy(),e.destroy()}),this.load.spritesheet("btn_play","assets/btnPlay.png",{frameWidth:650,frameHeight:170}),this.load.spritesheet("btn_duel","assets/btnDuel.png",{frameWidth:269,frameHeight:262}),this.load.spritesheet("btn_last","assets/btnLast.png",{frameWidth:269,frameHeight:262}),this.load.spritesheet("btn_team","assets/btnTeam.png",{frameWidth:269,frameHeight:262}),this.load.spritesheet("btn_flag","assets/btnFlag.png",{frameWidth:269,frameHeight:262}),this.load.spritesheet("btn_map","assets/btnMap.png",{frameWidth:269,frameHeight:262}),this.load.image("background","assets/background.png"),this.load.image("bullet","assets/bullet.png"),this.load.image("logoWaria","assets/logoWaria.png"),this.load.image("attackN","assets/nodes/attackNode.png"),this.load.image("moveN","assets/nodes/moveNode.png"),this.load.image("conditionN","assets/nodes/conditionNode.png")}create(){this.add.text(WIDTH_WINDOW/2,HEIGHT_WINDOW/3,"WARIA",{font:"200px stencil",fill:"#e2e2e2"}).setOrigin(.5,.5);let t=this.add.sprite(WIDTH_WINDOW/2,HEIGHT_WINDOW/3*2,"btn_play").setInteractive();t.on("pointerout",()=>t.setFrame(0)),t.on("pointerover",()=>t.setFrame(1)),t.on("pointerdown",()=>this.clickPlay(t))}clickPlay(t){t.setFrame(2),console.log("Play"),this.scene.start("Type")}}class Condition{constructor(t,e=!1,i=!1,s,h){this.shieldFilter=e,this.rangeFilter=i,this.shield=s,this.range=h,this.target=t,this.lNode=[]}addNode(t){this.lNode.push(t)}do(t){if(this.doCondition(t))for(let e=0;et.setFrame(0)),t.on("pointerover",()=>t.setFrame(1)),t.on("pointerdown",()=>this.clickPlay(t)),this.scene.launch("GamingBoard"),this.scene.pause("GamingBoard"),this.tree=new RectangleNode(WIDTH_WINDOW/1.5,100,this,"waria"),this.tree.addRect(new RectangleNode(WIDTH_WINDOW/1.2,400,this,"move",!0)),this.tree.addRect(new RectangleNode(WIDTH_WINDOW/1.5,400,this,"attack"));let e=new Robot(.1*WIDTH_MAP,.1*WIDTH_MAP,.9*WIDTH_MAP,.9*WIDTH_MAP,6711039,this.gm),i=new RectangleNode(WIDTH_WINDOW/1.7,400,this,"condition",e,!0,!1,.5,0);i.addRect(new RectangleNode(WIDTH_WINDOW/1.2,600,this,"move",!1)),i.addRect(new RectangleNode(WIDTH_WINDOW/1.5,600,this,"attack")),this.tree.addRect(i),this.gm.addRobot(e),this.gm.addRobot(new Robot(.1*WIDTH_MAP,.1*WIDTH_MAP,.2*WIDTH_MAP,.1*WIDTH_MAP,16724940,this.gm)),this.gm.addRobot(new Robot(.1*WIDTH_MAP,.1*WIDTH_MAP,.1*WIDTH_MAP,.9*WIDTH_MAP,16777215,this.gm)),this.input.on("drag",this.doDrag)}update(t,e){super.update(t,e),this.tree.updateLine()}doDrag(t,e,i,s){e.setX(i),e.setY(s)}clickPlay(t){t.setFrame(2),this.scene.isPaused("GamingBoard")?this.resume():this.scene.pause("GamingBoard")}resume(){const t=(t,e)=>t.getX()-e.getX();this.tree.lRect.sort(t),this.tree.lRect.forEach(function(e){void 0!==e.lRect&&e.lRect.sort(t)}),this.gm.modifyNodes(this.tree.getNodes()),this.scene.resume("GamingBoard")}}class GamingBoard extends Phaser.Scene{constructor(){super("GamingBoard"),this.listRobot=[]}preload(){this.cameras.main.setViewport(WIDTH_WINDOW/10,HEIGHT_WINDOW/10,WIDTH_MAP,WIDTH_MAP)}create(){this.add.image(0,0,"background").alpha=.1;for(let t=0;tthis.resume())}update(t,e){super.update(t,e),this.listRobot.forEach(function(t){t.read()});for(let t=0;tthis.listRobot[0].addNode(t))}chooseTarget(t){let e=2*WIDTH_MAP,i=[];this.listRobot.forEach(function(s){if(s!==t&&s.isAlive()){let h=Math.hypot(s.x-t.x,s.y-t.y);e>=h&&(e>h&&(e=h,i=[]),i.push(s))}}),this.listRobot.length>1?t.setTarget(i[Math.floor(Math.random()*(i.length+1))]):t.setTarget(i[0])}}class HealthBar{constructor(t,e,i,s,h,a,r){this.bar=new Phaser.GameObjects.Graphics(t),this.width=e,this.height=i,this.valueMax=a,this.value=a,this.color=r,this.draw(),this.setX(s),this.setY(h),t.add.existing(this.bar)}decrease(t){this.value-=t;let e=0;return this.value<0&&(e=-this.value,this.value=0),this.draw(),e}setX(t){this.bar.setX(t-this.width/2)}setY(t){this.bar.setY(t)}draw(){this.bar.clear(),this.bar.fillStyle(0),this.bar.fillRect(0,0,this.width,this.height),this.bar.fillStyle(16777215),this.bar.fillRect(2,2,this.width-4,this.height-4);let t=this.value/this.valueMax;t<.3?this.bar.fillStyle(16711680):this.bar.fillStyle(this.color);let e=Math.floor(t*(this.width-4));this.bar.fillRect(2,2,e,this.height-4)}destroy(){this.bar.destroy()}}class Missile extends Phaser.GameObjects.Image{constructor(t,e,i,s){super(t,0,0,e),this.visible=!1,this.setOrigin(.5,.5),this.setScale(.02)}}class Move{constructor(t){this.toward=t}do(t){return!!t.haveTarget()&&(!0===this.toward?this.moveToward(t):this.fleeFrom(t))}moveToward(t){return t.advanceToTarget()}fleeFrom(t){return t.fleeFromTarget()}}class RectangleNode{constructor(t,e,i,s,...h){switch(s.toString().toLowerCase()){case"attack":this.rect=new Phaser.GameObjects.Image(i,t,e,"attackN"),this.node=new Attack,this.canAddNode=!1,this.line=i.add.graphics();break;case"move":this.rect=new Phaser.GameObjects.Image(i,t,e,"moveN"),this.node=new Move(h[0]),this.canAddNode=!1,this.line=i.add.graphics();break;case"condition":this.rect=new Phaser.GameObjects.Image(i,t,e,"conditionN"),this.node=new Condition(h[0],h[1],h[2],h[3],h[4]),this.canAddNode=!0,this.lRect=[],this.scene=i,this.line=i.add.graphics();break;case"waria":this.rect=new Phaser.GameObjects.Image(i,t,e,"logoWaria"),this.canAddNode=!0,this.lRect=[],this.scene=i,this.scene.add.existing(this.rect);break;default:return void console.log("Création d'un node echoué")}s.toString().toLowerCase(),this.rect.setOrigin(.5,0),this.rect.displayHeight=HEIGHT_WINDOW/6,this.rect.scaleX=this.rect.scaleY}getX(){return this.rect.x}addRect(t){if(!0===this.canAddNode){this.lRect.push(t),this.addLine(t);let e=this.scene.add.existing(t.rect);e.setInteractive(),this.scene.input.setDraggable(e),void 0!==this.node&&this.node.addNode(t.node)}}setLine(t,e){this.xOrigin=t,this.yOrigin=e,this.updateLine(!0)}updateLine(t){!0!==t&&this.xLine===this.rect.x&&this.yLine===this.rect.y||void 0===this.line||(this.xLine=this.rect.x,this.yLine=this.rect.y,this.line.clear(),this.line.lineStyle(10,16777215,1),this.line.lineBetween(this.xOrigin,this.yOrigin,this.rect.x,this.rect.y+this.rect.displayHeight/10)),!0===this.canAddNode&&this.lRect.forEach(t=>this.addLine(t))}addLine(t){t.setLine(this.rect.x,this.rect.y+.9*this.rect.displayHeight)}getNodes(){if(void 0===this.node){let t=[];return this.lRect.forEach(function(e){void 0!==e.node&&(void 0!==e.lRect&&(e.node.clearNodes(),e.lRect.forEach(t=>e.node.addNode(t.node))),t.push(e.node))}),t}}}class Robot{constructor(t,e,i,s,h,a){this.height=t,this.width=e,this.x=i,this.y=s,this.color=h,this.range=WIDTH_MAP/2,this.damage=DAMAGE,this.life=new HealthBar(a,2*this.width,this.width/3,this.x,this.y-this.width,LIFE,32768),this.shield=new HealthBar(a,2*this.width,this.width/3,this.x,this.y-1.5*this.width,SHIELD,255),this.canAttack=!0,this.missile=new Missile(a,"bullet",this.width/5,this.width/4),a.add.existing(this.missile),this.addScene(a),this.lNode=[];let r=new Condition(this,!0,!1,.5,0);r.addNode(new Move(!1)),this.addNode(r),this.addNode(new Attack),this.addNode(new Move(!0))}addScene(t){this.scene=t,this.circle=this.scene.add.circle(this.x,this.y,this.width/2,this.color)}setX(t){this.x=t,this.circle.setX(this.x),this.life.setX(this.x),this.shield.setX(this.x)}setY(t){this.y=t,this.life.setY(this.y-this.width),this.shield.setY(this.y-1.5*this.width),this.circle.setY(this.y)}setTarget(t){this.target=t,this.updateTarget()}updateTarget(){this.verifyTarget()&&this.setTargetPos(this.target.x,this.target.y)}setTargetPos(t,e){let i=this.target.x-this.x,s=this.target.y-this.y,h=Math.hypot(i,s);this.velocityX=i/h*WIDTH_MAP/1e3*SPEED,this.velocityY=s/h*WIDTH_MAP/1e3*SPEED}advanceToTarget(){return!!this.verifyTarget()&&(this.velocityX>=0&&this.x>=this.target.x||this.velocityX<=0&&this.x<=this.target.x?this.setX(this.target.x):this.setX(this.x+this.velocityX),this.velocityY>=0&&this.y>=this.target.y||this.velocityY<=0&&this.y<=this.target.y?this.setY(this.target.y):this.setY(this.y+this.velocityY),!0)}fleeFromTarget(){return!!this.verifyTarget()&&(this.velocityX>=0&&this.x-this.width/2<=0?this.setX(this.width/2):this.velocityX<=0&&this.x+this.width/2>=WIDTH_MAP?this.setX(WIDTH_MAP-this.width/2):this.setX(this.x-this.velocityX),this.velocityY>=0&&this.y-this.width/2<=0?this.setY(this.height/2):this.velocityY<=0&&this.y+this.width/2>=WIDTH_MAP?this.setY(WIDTH_MAP-this.height/2):this.setY(this.y-this.velocityY),!0)}attackTarget(){return!!(this.verifyTarget()&&this.target.isAlive()&&this.isTargetInRange())&&(this.canAttack&&this.attack(this.target),!0)}verifyTarget(){return!!this.haveTarget()&&(!!this.target.isAlive()||(this.setTarget(null),!1))}attack(t){this.canAttack=!1,this.missile.setPosition(this.x,this.y).setVisible(!0),this.missile.setRotation(Math.atan2(this.y-this.target.y,this.x-this.target.x)-1.57),this.scene.tweens.add({targets:this.missile,x:t.x,y:t.y,ease:"Linear",duration:200,onComplete:()=>this.finishAttack(t)}),this.scene.time.addEvent({delay:Phaser.Math.Between(1e3,3e3),callback:this.reload,callbackScope:this})}finishAttack(t){t.beAttack(this.damage)&&this.setTarget(null),this.missile.setVisible(!1)}reload(){this.canAttack=!0}beAttack(t){let e=this.shield.decrease(t);return e>0&&(console.log("Shield Broken"),this.life.decrease(e)),this.die()}isTargetInRange(){return!!this.verifyTarget()&&this.calcDistance(this.target)0}die(){return 0===this.life.value&&(this.circle.destroy(),this.shield.destroy(),this.life.destroy(),!0)}haveTarget(){return null!=this.target}read(){for(let t=0;tt.updateLine())}getNodes(){let t=[];return this.lRect.forEach(function(e){void 0!==e.node&&t.push(e.node)}),t}}class Type extends Phaser.Scene{constructor(){super("Type")}preload(){}create(){this.add.text(WIDTH_WINDOW/2,HEIGHT_WINDOW/4,"WARIA",{font:"200px stencil",fill:"#e2e2e2"}).setOrigin(.5,1);let t=this.add.sprite(WIDTH_WINDOW/8*3,HEIGHT_WINDOW/4*2,"btn_duel").setInteractive();this.createbutton(t);let e=this.add.sprite(WIDTH_WINDOW/8*5,HEIGHT_WINDOW/4*2,"btn_last").setInteractive();this.createbutton(e);let i=this.add.sprite(WIDTH_WINDOW/8*2,HEIGHT_WINDOW/4*3,"btn_team").setInteractive();this.createbutton(i);let s=this.add.sprite(WIDTH_WINDOW/8*4,HEIGHT_WINDOW/4*3,"btn_flag").setInteractive();this.createbutton(s);let h=this.add.sprite(WIDTH_WINDOW/8*6,HEIGHT_WINDOW/4*3,"btn_map").setInteractive();this.createbutton(h)}createbutton(t){t.displayHeight=HEIGHT_WINDOW/4,t.scaleX=t.scaleY,t.on("pointerout",()=>t.setFrame(0)),t.on("pointerover",()=>t.setFrame(1)),t.on("pointerdown",()=>this.clickPlay(t))}clickPlay(t){this.scene.start("Game")}} \ No newline at end of file +class Attack{constructor(){}do(t){return!(!t.haveTarget()||!t.isTargetInRange())&&t.attackTarget()}}class Boot extends Phaser.Scene{constructor(){super("Boot")}preload(){let t=this.add.graphics(),e=this.add.graphics(),i=WIDTH_WINDOW/2-160,s=HEIGHT_WINDOW/2-25;e.fillStyle(2236962,.8),e.fillRect(i,s,320,50),this.load.on("progress",function(e){t.clear(),t.fillStyle(16777215,1),t.fillRect(i+10,s+10,300*e,30)}),this.load.on("complete",function(){t.destroy(),e.destroy()}),this.load.spritesheet("btn_play","assets/btnPlay.png",{frameWidth:650,frameHeight:170}),this.load.spritesheet("btn_duel","assets/btnDuel.png",{frameWidth:269,frameHeight:262}),this.load.spritesheet("btn_last","assets/btnLast.png",{frameWidth:269,frameHeight:262}),this.load.spritesheet("btn_team","assets/btnTeam.png",{frameWidth:269,frameHeight:262}),this.load.spritesheet("btn_flag","assets/btnFlag.png",{frameWidth:269,frameHeight:262}),this.load.spritesheet("btn_map","assets/btnMap.png",{frameWidth:269,frameHeight:262}),this.load.spritesheet("play","assets/play.png",{frameWidth:100,frameHeight:100}),this.load.image("background","assets/background.png"),this.load.image("bullet","assets/bullet.png"),this.load.image("logoWaria","assets/logoWaria.png"),this.load.spritesheet("attackN","assets/nodes/attackNode.png",{frameWidth:180,frameHeight:190}),this.load.spritesheet("moveN","assets/nodes/moveNode.png",{frameWidth:180,frameHeight:190}),this.load.spritesheet("conditionN","assets/nodes/conditionNode.png",{frameWidth:180,frameHeight:190})}create(){this.add.text(WIDTH_WINDOW/2,HEIGHT_WINDOW/3,"WARIA",{font:"200px stencil",fill:"#e2e2e2"}).setOrigin(.5,.5);let t=this.add.sprite(WIDTH_WINDOW/2,HEIGHT_WINDOW/3*2,"btn_play").setInteractive();t.on("pointerout",()=>t.setFrame(0)),t.on("pointerover",()=>t.setFrame(1)),t.on("pointerdown",()=>this.clickPlay(t))}clickPlay(t){t.setFrame(2),console.log("Play"),this.scene.start("Type")}}class Condition{constructor(t,e=!1,i=!1,s,h){this.shieldFilter=e,this.rangeFilter=i,this.shield=s,this.range=h,this.target=t,this.lNode=[]}addNode(t){this.lNode.push(t)}do(t){if(this.doCondition(t))for(let e=0;ethis.changeFrame(t,0)),t.on("pointerover",()=>this.changeFrame(t,1)),t.on("pointerdown",()=>this.clickPlay(t)),this.scene.launch("GamingBoard"),this.scene.pause("GamingBoard"),this.tree=new RectangleNode(WIDTH_WINDOW/1.5,100,this,"waria"),this.tree.addRect(new RectangleNode(WIDTH_WINDOW/1.2,400,this,"move",!0)),this.tree.addRect(new RectangleNode(WIDTH_WINDOW/1.5,400,this,"attack"));let e=new Robot(.1*WIDTH_MAP,.1*WIDTH_MAP,.9*WIDTH_MAP,.9*WIDTH_MAP,6711039,this.gm,"myself"),i=new RectangleNode(WIDTH_WINDOW/1.7,400,this,"condition",e,!0,!1,1/3,0);i.addRect(new RectangleNode(WIDTH_WINDOW/1.2,600,this,"move",!1)),i.addRect(new RectangleNode(WIDTH_WINDOW/1.5,600,this,"attack")),this.tree.addRect(i),this.gm.addRobot(e),this.gm.addRobot(new Robot(.1*WIDTH_MAP,.1*WIDTH_MAP,.2*WIDTH_MAP,.1*WIDTH_MAP,16711680,this.gm)),this.gm.addRobot(new Robot(.1*WIDTH_MAP,.1*WIDTH_MAP,.1*WIDTH_MAP,.9*WIDTH_MAP,16711680,this.gm)),this.input.on("drag",this.doDrag),this.input.on("dragstart",()=>this.pauseScene(t))}update(t,e){super.update(t,e),this.tree.updateLine()}doDrag(t,e,i,s){e.setX(i),e.setY(s)}pauseScene(t){this.line=0,this.scene.pause("GamingBoard"),this.changeFrame(t,0)}clickPlay(t){this.scene.isPaused("GamingBoard")?this.resume():this.pauseScene(),this.changeFrame(t,1)}changeFrame(t,e){t.setFrame(2*this.line+e)}resume(){this.line=1;const t=(t,e)=>t.getX()-e.getX();this.tree.lRect.sort(t),this.tree.lRect.forEach(function(e){void 0!==e.lRect&&e.lRect.sort(t)}),this.gm.modifyNodes(this.tree.getNodes()),this.scene.resume("GamingBoard")}}class GamingBoard extends Phaser.Scene{constructor(){super("GamingBoard"),this.listRobot=[]}preload(){this.cameras.main.setViewport(WIDTH_WINDOW/10,HEIGHT_WINDOW/10,WIDTH_MAP,WIDTH_MAP)}create(){this.add.image(0,0,"background").alpha=.1;for(let t=0;tthis.resume())}update(t,e){super.update(t,e),this.listRobot.forEach(function(t){t.read()});for(let t=0;tthis.listRobot[0].addNode(t))}chooseTarget(t){let e=2*WIDTH_MAP,i=[];this.listRobot.forEach(function(s){if(s!==t&&s.isAlive()){let h=Math.hypot(s.x-t.x,s.y-t.y);e>=h&&(e>h&&(e=h,i=[]),i.push(s))}}),this.listRobot.length>1?t.setTarget(i[Math.floor(Math.random()*(i.length+1))]):t.setTarget(i[0])}}class HealthBar{constructor(t,e,i,s,h,a,r){this.bar=new Phaser.GameObjects.Graphics(t),this.width=e,this.height=i,this.valueMax=a,this.value=a,this.color=r,this.draw(),this.setX(s),this.setY(h),t.add.existing(this.bar)}decrease(t){this.value-=t;let e=0;return this.value<0&&(e=-this.value,this.value=0),this.draw(),e}setX(t){this.bar.setX(t-this.width/2)}setY(t){this.bar.setY(t)}draw(){this.bar.clear(),this.bar.fillStyle(0),this.bar.fillRect(0,0,this.width,this.height),this.bar.fillStyle(16777215),this.bar.fillRect(2,2,this.width-4,this.height-4);let t=this.value/this.valueMax;t<.3?this.bar.fillStyle(16711680):this.bar.fillStyle(this.color);let e=Math.floor(t*(this.width-4));this.bar.fillRect(2,2,e,this.height-4)}destroy(){this.bar.destroy()}}class Missile extends Phaser.GameObjects.Image{constructor(t,e,i,s){super(t,0,0,e),this.visible=!1,this.setOrigin(.5,.5),this.setScale(.02)}}class Move{constructor(t){this.toward=t}do(t){return!!t.haveTarget()&&(!0===this.toward?this.moveToward(t):this.fleeFrom(t))}moveToward(t){return t.advanceToTarget()}fleeFrom(t){return t.fleeFromTarget()}}class RectangleNode{constructor(t,e,i,s,...h){switch(s.toString().toLowerCase()){case"attack":this.rect=new Phaser.GameObjects.Image(i,t,e,"attackN"),this.node=new Attack,this.canAddNode=!1,this.line=i.add.graphics();break;case"move":this.rect=new Phaser.GameObjects.Image(i,t,e,"moveN"),this.node=new Move(h[0]),this.canAddNode=!1,this.line=i.add.graphics(),!0===h[0]?this.rect.setFrame(0):this.rect.setFrame(2);break;case"condition":let a;this.rect=new Phaser.GameObjects.Image(i,t,e,"conditionN"),this.node=new Condition(h[0],h[1],h[2],h[3],h[4]),this.canAddNode=!0,this.lRect=[],this.scene=i,this.line=i.add.graphics(),a="myself"===h[0].name.toString().toLowerCase()?0:1;let r=0;!0===h[1]&&(r=Math.floor(3*h[3])),h[2],this.rect.setFrame(4*a+r);break;case"waria":this.rect=new Phaser.GameObjects.Image(i,t,e,"logoWaria"),this.canAddNode=!0,this.lRect=[],this.scene=i,this.scene.add.existing(this.rect);break;default:return void console.log("Création d'un node echoué")}s.toString().toLowerCase(),this.rect.setOrigin(.5,0),this.rect.displayHeight=HEIGHT_WINDOW/6,this.rect.scaleX=this.rect.scaleY}getX(){return this.rect.x}addRect(t){if(!0===this.canAddNode){this.lRect.push(t),this.addLine(t);let e=this.scene.add.existing(t.rect);e.setInteractive(),this.scene.input.setDraggable(e),void 0!==this.node&&this.node.addNode(t.node)}}setLine(t,e){this.xOrigin=t,this.yOrigin=e,this.updateLine(!0)}updateLine(t){!0!==t&&this.xLine===this.rect.x&&this.yLine===this.rect.y||void 0===this.line||(this.xLine=this.rect.x,this.yLine=this.rect.y,this.line.clear(),this.line.lineStyle(10,16777215,1),this.line.lineBetween(this.xOrigin,this.yOrigin,this.rect.x,this.rect.y+this.rect.displayHeight/10)),!0===this.canAddNode&&this.lRect.forEach(t=>this.addLine(t))}addLine(t){t.setLine(this.rect.x,this.rect.y+.9*this.rect.displayHeight)}getNodes(){if(void 0===this.node){let t=[];return this.lRect.forEach(function(e){void 0!==e.node&&(void 0!==e.lRect&&(e.node.clearNodes(),e.lRect.forEach(t=>e.node.addNode(t.node))),t.push(e.node))}),t}}}class Robot{constructor(t,e,i,s,h,a,r="enemy"){this.name=r,this.height=t,this.width=e,this.x=i,this.y=s,this.color=h,this.range=WIDTH_MAP/2,this.damage=DAMAGE,this.life=new HealthBar(a,2*this.width,this.width/3,this.x,this.y-this.width,LIFE,32768),this.shield=new HealthBar(a,2*this.width,this.width/3,this.x,this.y-1.5*this.width,SHIELD,255),this.canAttack=!0,this.missile=new Missile(a,"bullet",this.width/5,this.width/4),a.add.existing(this.missile),this.addScene(a),this.lNode=[];let o=new Condition(this,!0,!1,.5,0);o.addNode(new Move(!1)),this.addNode(o),this.addNode(new Attack),this.addNode(new Move(!0))}addScene(t){this.scene=t,this.circle=this.scene.add.circle(this.x,this.y,this.width/2,this.color)}setX(t){this.x=t,this.circle.setX(this.x),this.life.setX(this.x),this.shield.setX(this.x)}setY(t){this.y=t,this.life.setY(this.y-this.width),this.shield.setY(this.y-1.5*this.width),this.circle.setY(this.y)}setTarget(t){this.target=t,this.updateTarget()}updateTarget(){this.verifyTarget()&&this.setTargetPos(this.target.x,this.target.y)}setTargetPos(t,e){let i=this.target.x-this.x,s=this.target.y-this.y,h=Math.hypot(i,s);this.velocityX=i/h*WIDTH_MAP/1e3*SPEED,this.velocityY=s/h*WIDTH_MAP/1e3*SPEED}advanceToTarget(){return!!this.verifyTarget()&&(this.velocityX>=0&&this.x>=this.target.x||this.velocityX<=0&&this.x<=this.target.x?this.setX(this.target.x):this.setX(this.x+this.velocityX),this.velocityY>=0&&this.y>=this.target.y||this.velocityY<=0&&this.y<=this.target.y?this.setY(this.target.y):this.setY(this.y+this.velocityY),!0)}fleeFromTarget(){return!!this.verifyTarget()&&(this.velocityX>=0&&this.x-this.width/2<=0?this.setX(this.width/2):this.velocityX<=0&&this.x+this.width/2>=WIDTH_MAP?this.setX(WIDTH_MAP-this.width/2):this.setX(this.x-this.velocityX),this.velocityY>=0&&this.y-this.width/2<=0?this.setY(this.height/2):this.velocityY<=0&&this.y+this.width/2>=WIDTH_MAP?this.setY(WIDTH_MAP-this.height/2):this.setY(this.y-this.velocityY),!0)}attackTarget(){return!!(this.verifyTarget()&&this.target.isAlive()&&this.isTargetInRange())&&(this.canAttack&&this.attack(this.target),!0)}verifyTarget(){return!!this.haveTarget()&&(!!this.target.isAlive()||(this.setTarget(null),!1))}attack(t){this.canAttack=!1,this.missile.setPosition(this.x,this.y).setVisible(!0),this.missile.setRotation(Math.atan2(this.y-this.target.y,this.x-this.target.x)-1.57),this.scene.tweens.add({targets:this.missile,x:t.x,y:t.y,ease:"Linear",duration:200,onComplete:()=>this.finishAttack(t)}),this.scene.time.addEvent({delay:Phaser.Math.Between(1e3,3e3),callback:this.reload,callbackScope:this})}finishAttack(t){t.beAttack(this.damage)&&this.setTarget(null),this.missile.setVisible(!1)}reload(){this.canAttack=!0}beAttack(t){let e=this.shield.decrease(t);return e>0&&(console.log("Shield Broken"),this.life.decrease(e)),this.die()}isTargetInRange(){return!!this.verifyTarget()&&this.calcDistance(this.target)0}die(){return 0===this.life.value&&(this.circle.destroy(),this.shield.destroy(),this.life.destroy(),!0)}haveTarget(){return null!=this.target}read(){for(let t=0;tt.setFrame(0)),t.on("pointerover",()=>t.setFrame(1)),t.on("pointerdown",()=>this.clickPlay(t))}clickPlay(t){this.scene.start("Game")}} \ No newline at end of file diff --git a/Code/src/js/classes/Boot.js b/Code/src/js/classes/Boot.js index eae8cbf..cbd0040 100644 --- a/Code/src/js/classes/Boot.js +++ b/Code/src/js/classes/Boot.js @@ -30,12 +30,13 @@ class Boot extends Phaser.Scene { this.load.spritesheet('btn_team', 'assets/btnTeam.png', {frameWidth: 269, frameHeight: 262}); this.load.spritesheet('btn_flag', 'assets/btnFlag.png', {frameWidth: 269, frameHeight: 262}); this.load.spritesheet('btn_map', 'assets/btnMap.png', {frameWidth: 269, frameHeight: 262}); + this.load.spritesheet('play', 'assets/play.png', {frameWidth: 100, frameHeight: 100}); this.load.image('background', 'assets/background.png'); this.load.image('bullet', 'assets/bullet.png'); this.load.image('logoWaria', 'assets/logoWaria.png'); - this.load.image('attackN','assets/nodes/attackNode.png'); - this.load.image('moveN','assets/nodes/moveNode.png'); - this.load.image('conditionN','assets/nodes/conditionNode.png'); + this.load.spritesheet('attackN','assets/nodes/attackNode.png', {frameWidth: 180, frameHeight: 190}); + this.load.spritesheet('moveN','assets/nodes/moveNode.png', {frameWidth: 180, frameHeight: 190}); + this.load.spritesheet('conditionN','assets/nodes/conditionNode.png', {frameWidth: 180, frameHeight: 190}); } create() { diff --git a/Code/src/js/classes/Game.js b/Code/src/js/classes/Game.js index 1e3851e..6cc81cb 100644 --- a/Code/src/js/classes/Game.js +++ b/Code/src/js/classes/Game.js @@ -12,10 +12,12 @@ class Game extends Phaser.Scene { create() { //this.add.image(0,0,'background').alpha = 0.1; - let btn = this.add.sprite(WIDTH_WINDOW / 1.5, (HEIGHT_WINDOW / 3) * 2, 'btn_play').setOrigin(0.5, 0.5).setInteractive(); - //btn.setFrame(0); - btn.on('pointerout', () => btn.setFrame(0)); - btn.on('pointerover', () => btn.setFrame(1)); + let btn = this.add.sprite(WIDTH_MAP + WIDTH_WINDOW / 10, WIDTH_MAP + HEIGHT_WINDOW / 10 + 5, 'play').setOrigin(1, 0).setInteractive(); + this.line = 0; + btn.displayHeight = HEIGHT_WINDOW / 15; + btn.scaleX = btn.scaleY; + btn.on('pointerout', () => this.changeFrame(btn, 0)); + btn.on('pointerover', () => this.changeFrame(btn, 1)); btn.on('pointerdown', () => this.clickPlay(btn)); this.scene.launch('GamingBoard'); this.scene.pause('GamingBoard'); @@ -26,17 +28,18 @@ class Game extends Phaser.Scene { this.tree.addRect(new RectangleNode(WIDTH_WINDOW / 1.5, 400, this, 'attack')); - let robot = new Robot(WIDTH_MAP * 0.1, WIDTH_MAP * 0.1, WIDTH_MAP * 0.9, WIDTH_MAP * 0.9, 0x6666ff, this.gm); - let condition = new RectangleNode(WIDTH_WINDOW / 1.7, 400, this, 'condition', robot, true, false, 0.5, 0); + let robot = new Robot(WIDTH_MAP * 0.1, WIDTH_MAP * 0.1, WIDTH_MAP * 0.9, WIDTH_MAP * 0.9, 0x6666ff, this.gm, 'myself'); + let condition = new RectangleNode(WIDTH_WINDOW / 1.7, 400, this, 'condition', robot, true, false, 1 / 3, 0); condition.addRect(new RectangleNode(WIDTH_WINDOW / 1.2, 600, this, 'move', false)); condition.addRect(new RectangleNode(WIDTH_WINDOW / 1.5, 600, this, 'attack')) this.tree.addRect(condition); this.gm.addRobot(robot); - this.gm.addRobot(new Robot(WIDTH_MAP * 0.1, WIDTH_MAP * 0.1, WIDTH_MAP * 0.2, WIDTH_MAP * 0.1, 0xff33cc, this.gm)); - this.gm.addRobot(new Robot(WIDTH_MAP * 0.1, WIDTH_MAP * 0.1, WIDTH_MAP * 0.1, WIDTH_MAP * 0.9, 0xffffff, this.gm)); + this.gm.addRobot(new Robot(WIDTH_MAP * 0.1, WIDTH_MAP * 0.1, WIDTH_MAP * 0.2, WIDTH_MAP * 0.1, 0xff0000, this.gm)); + this.gm.addRobot(new Robot(WIDTH_MAP * 0.1, WIDTH_MAP * 0.1, WIDTH_MAP * 0.1, WIDTH_MAP * 0.9, 0xff0000, this.gm)); this.input.on('drag', this.doDrag); + this.input.on('dragstart', () => this.pauseScene(btn)); } update(time, delta) { @@ -49,15 +52,27 @@ class Game extends Phaser.Scene { target.setY(dragY); } + pauseScene(btn) { + this.line = 0; + this.scene.pause('GamingBoard'); + this.changeFrame(btn, 0); + } + clickPlay(btn) { - btn.setFrame(2); if (this.scene.isPaused('GamingBoard')) this.resume(); else - this.scene.pause('GamingBoard'); + this.pauseScene(); + + this.changeFrame(btn, 1); + } + + changeFrame(btn, bonus) { + btn.setFrame(this.line * 2 + bonus); } resume() { + this.line = 1; const sortDesc = (a, b) => a.getX() - b.getX(); this.tree.lRect.sort(sortDesc); this.tree.lRect.forEach(function (element) { diff --git a/Code/src/js/classes/RectangleNode.js b/Code/src/js/classes/RectangleNode.js index 82d00af..bd75711 100644 --- a/Code/src/js/classes/RectangleNode.js +++ b/Code/src/js/classes/RectangleNode.js @@ -12,6 +12,11 @@ class RectangleNode { this.node = new Move(option[0]); this.canAddNode = false; this.line = scene.add.graphics(); + if (option[0] === true) { + this.rect.setFrame(0); + } else { + this.rect.setFrame(2); + } break; case 'condition': this.rect = new Phaser.GameObjects.Image(scene, x, y, 'conditionN'); @@ -20,6 +25,20 @@ class RectangleNode { this.lRect = []; this.scene = scene; this.line = scene.add.graphics(); + let line; + if (option[0].name.toString().toLowerCase() === 'myself') { + line = 0; + } else { + line = 1; + } + let shield = 0; + if (option[1] === true) { //shield + shield = Math.floor(option[3] * 3); + } + if (option[2] === true) { //range + + } + this.rect.setFrame(line * 4 + shield); break; case 'waria': this.rect = new Phaser.GameObjects.Image(scene, x, y, 'logoWaria'); diff --git a/Code/src/js/classes/Robot.js b/Code/src/js/classes/Robot.js index cba5e12..789368f 100644 --- a/Code/src/js/classes/Robot.js +++ b/Code/src/js/classes/Robot.js @@ -1,5 +1,6 @@ class Robot { - constructor(height, width, posX, posY, color, scene) { + constructor(height, width, posX, posY, color, scene, name = 'enemy') { + this.name = name; this.height = height; this.width = width; this.x = posX;