Suppression de Map et Flag - Ajout d'un niveau supplémentaire sur chaque catégorie ("DUEL", "LAST", "TEAM") => Le niveau supplémentaire de "TEAM" est le même que le premier pour le moment - Modification des actions et des stats initiales des robots ennemis dans "DUEL" et "LAST" pour rendre le second niveau plus compliqué- Correction du problème de fin dans "TEAM" lorsque nos robots gagnaient - Il n'y a pour le moment que deux niveaux par catégories. Lorsque l'on gagne le dernier niveau, le bouton "NEXT" n'apparait pas - Commencement de l'affichage du score, il n'est pour le moment pas utilisable

master
clmaisonha 5 years ago
parent 5983ce37bb
commit f4772e9f16

@ -43,9 +43,12 @@ module.exports = function (grunt) {
minjson: {
compile: {
files: {
'public/json//level1.json': ['src/json/level1.json'],
'public/json//level2.json': ['src/json/level2.json'],
'public/json//level3.json': ['src/json/level3.json'],
'public/json//level10.json': ['src/json/level10.json'],
'public/json//level11.json': ['src/json/level11.json'],
'public/json//level20.json': ['src/json/level20.json'],
'public/json//level21.json': ['src/json/level21.json'],
'public/json//level30.json': ['src/json/level30.json'],
'public/json//level31.json': ['src/json/level31.json'],
'public/json//level4.json': ['src/json/level4.json'],
'public/json//level5.json': ['src/json/level5.json'],
'public/json//listBonus.json': ['src/json/listBonus.json']

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

@ -60,3 +60,13 @@ function endLineJson(json) {
}
return json;
}
function getNextLevel(level = "") {
let newLevel = level;
newLevel = newLevel.slice(0, -1) + (parseInt(level[level.length - 1]) + 1).toString();
console.log(level[level.length - 1]);
if (newLevel[newLevel.length - 1] >= NUMBER_LEVEL) {
return level;
}
return newLevel;
}

@ -5,6 +5,7 @@ class Game extends ManageLang {
SPEED_GAME = 1;
this.level = level;
this.listPositionRobotInit = [];
this.score = 0;
}
preload() {
@ -22,6 +23,7 @@ class Game extends ManageLang {
this.cache.json.remove('level');
}
this.load.json('level', 'public/json/' + this.level + '.json');
console.log("PRELOAD");
this.createGamingBoard();
}
@ -29,6 +31,7 @@ class Game extends ManageLang {
create() {
super.create();
let level = this.cache.json.get('level');
if (level === undefined) {
console.log("ERROR : LEVEL UNDEFINED");
@ -67,9 +70,10 @@ class Game extends ManageLang {
update(time, delta) {
super.update(time, delta);
if (this.doLine)
if (this.doLine) {
this.tree.updateLine();
}
}
createGamingBoard() {
this.gm = new GamingBoard(this);
@ -301,12 +305,20 @@ class Game extends ManageLang {
}
this.muteBtn = new Button(this, x - diffX * 5, y, width, width, 'mute', () => this.clickMute(), line).setOrigin(1, 0);
let style = {font: (width / 2).toString() + 'px stencil', fill: "#e2e2e2"};
this.score = this.add.text(OFFX_MAP, y, "SCORE : " + this.score, style).setOrigin(0, 0);
this.input.on('pointerdown', () => this.clickNode());
this.input.on('drag', this.doDrag);
this.input.on('dragstart', () => this.dragStart());
this.input.on('dragend', () => this.dragEnd());
}
setScore(score) {
this.score.setText("SCORE : " + this.score);
}
clickBonus() {
this.father.scene.stop('GamingBoard');
this.father.scene.remove('GamingBoard');
@ -421,4 +433,12 @@ class Game extends ManageLang {
this.selected = undefined;
}
}
setLevel(level) {
if (this.level !== level) {
this.level = level;
this.listPositionRobotInit = [];
}
console.log(this.level);
}
}

@ -29,14 +29,16 @@ class GamingBoard extends Phaser.Scene {
this.listTeam.forEach(team => team.readAll());
this.listTeam.forEach(team => {
if (!team.actualise(this.getEnemyRobotTeam(team))) {
this.listTeam.splice(this.listTeam.indexOf(team, 1));
this.listTeam.splice(this.listTeam.indexOf(team), 1);
}
});
if (this.getMyTeam() === undefined) {
if (this.getMyTeam() === undefined || this.listTeam.length <= 1) {
this.end = true;
this.finish();
} else {
}
}
}

@ -3,6 +3,7 @@ class Team {
this.freeForAll = freeForAll;
this.listRobot = [];
this.name = name;
this.score = 0;
}
addRobot(robot) {

@ -12,19 +12,13 @@ class Type extends ManageLang {
this.add.text(WIDTH_WINDOW / 2, HEIGHT_WINDOW / 4, "WARIA", style).setOrigin(0.5, 1);
let btnDuel = this.add.sprite((WIDTH_WINDOW / 8) * 3, (HEIGHT_WINDOW / 4) * 2, 'duel').setInteractive();
this.createbutton(btnDuel, 'level1');
this.createbutton(btnDuel, 'level10');
let btnLast = this.add.sprite((WIDTH_WINDOW / 8) * 5, (HEIGHT_WINDOW / 4) * 2, 'last').setInteractive();
this.createbutton(btnLast, 'level2');
this.createbutton(btnLast, 'level20');
let btnTeam = this.add.sprite((WIDTH_WINDOW / 8) * 2, (HEIGHT_WINDOW / 4) * 3, 'team').setInteractive();
this.createbutton(btnTeam, 'level3');
let btnFlag = this.add.sprite((WIDTH_WINDOW / 8) * 4, (HEIGHT_WINDOW / 4) * 3, 'flag').setInteractive();
this.createbutton(btnFlag, 'level4');
let btnMap = this.add.sprite((WIDTH_WINDOW / 8) * 6, (HEIGHT_WINDOW / 4) * 3, 'map').setInteractive();
this.createbutton(btnMap, 'level5');
let btnTeam = this.add.sprite(WIDTH_WINDOW / 2, (HEIGHT_WINDOW / 4) * 3, 'team').setInteractive();
this.createbutton(btnTeam, 'level30');
}
createbutton(btn, level) {

@ -15,6 +15,7 @@ const COLOR_ORANGE = 0xff7f00;
const COLOR_GREEN = 0x008000;
const COLOR_RANGE = 0x008000;
const COLOR_SPEED_RELOAD = 0x7f00ff;
const NUMBER_LEVEL = 2;
const COLOR_MYSELF = 0x6666ff;
const WIDTH_WINDOW = $(document).width() - 20;

@ -8,6 +8,9 @@ class Winner extends Finish {
super.addTitle(selectWord("YOU WIN", "PARTIE GAGNÉE"));
super.btnRetry(super.createButton(WIDTH_WINDOW / 4, 'retry'));
super.btnHome(super.createButton(WIDTH_WINDOW / 2, 'home'));
if (getNextLevel(this.gameSave.level) === this.gameSave.level) {
} else {
super.btnNext(super.createButton(WIDTH_WINDOW / 4 * 3, 'next'));
}
}
}

@ -2,7 +2,7 @@ class Finish extends Phaser.Scene {
constructor(father, game) {
super('Finish');
this.father = father;
this.game = game;
this.gameSave = game;
}
create() {
@ -57,6 +57,8 @@ class Finish extends Phaser.Scene {
next() {
console.log("NEXT");
this.gameSave.setLevel(getNextLevel(this.gameSave.level));
this.retry();
}
close() {

@ -0,0 +1,220 @@
{
"enemyVisible": true,
"bonusVisible": true,
"robotRandomPosition": true,
"tree": {
"type": "waria",
"lRect": [
{
"type": "move",
"option": [
true,
false
]
},
{
"type": "attack",
"option": [
0.3333333333333333
]
},
{
"type": "condition",
"option": [
true,
true,
false,
0.3333333333333333,
0
],
"lRect": [
{
"type": "move",
"option": [
false,
true
]
},
{
"type": "attack",
"option": [
1
]
}
]
},
{
"type": "move",
"option": [
true,
true
]
}
]
},
"initStat": {
"lBar": [
{
"value": 2,
"valueMax": 5,
"color": 16711680,
"colorMin": 16711680
},
{
"value": 3,
"valueMax": 5,
"color": 8323327,
"colorMin": 8323327
},
{
"value": 3,
"valueMax": 5,
"color": 255,
"colorMin": 255
},
{
"value": 2,
"valueMax": 5,
"color": 32768,
"colorMin": 32768
}
],
"lText": [
[
"DAMAGE",
"DEGATS"
],
[
"R.S",
"RECHARGEMENT"
],
[
"SPEED",
"VITESSE"
],
[
"RANGE",
"PORTEE"
]
]
},
"listTeam": [
{
"name": "enemyTeam",
"robots": [
{
"height": 0.1,
"width": 0.1,
"x": 0.1,
"y": 0.1,
"name": "enemy",
"speed": 3,
"speedReload": 3,
"range": 3,
"damage": 5,
"lNode": [
{
"name": "condition",
"option": [
false,
false,
true,
0,
1
],
"lNode": [
{
"name": "condition",
"option": [
true,
true,
false,
0.3333333333333333,
0
],
"lNode": [
{
"name": "move",
"option": [
true,
false
]
}
]
},
{
"name": "attack",
"option": [
0.3333333333333333
]
},
{
"name": "attack",
"option": [
0.6666666666666666
]
},
{
"name": "attack",
"option": [
]
}
]
},
{
"name": "move",
"option": [
true,
false
]
},
{
"name": "move",
"option": [
true
]
}
]
}
]
},
{
"name": "myTeam",
"robots": [
{
"height": 0.1,
"width": 0.1,
"x": 0.9,
"y": 0.9,
"name": "myself",
"speed": 3,
"speedReload": 1,
"range": 3,
"damage": 5,
"lNode": [
]
}
]
}
],
"lBonus": [
{
"style": "shield",
"number": 0,
"x": 0.2,
"y": 0.1
},
{
"style": "shield",
"number": 1,
"x": 0.5,
"y": 0.9
},
{
"style": "shield",
"number": 2,
"x": 0.2,
"y": 0.8
}
]
}

@ -0,0 +1,458 @@
{
"enemyVisible": false,
"bonusVisible": true,
"robotRandomPosition": true,
"tree": {
"type": "waria",
"lRect": [
{
"type": "condition",
"option": [
true,
true,
false,
0.3333333333333333,
0
],
"lRect": [
{
"type": "move",
"option": [
true,
false,
"speed"
]
}
]
},
{
"type": "attack",
"option": [
0.3333333333333333
]
},
{
"type": "move",
"option": [
true,
true
]
}
]
},
"initStat": {
"lBar": [
{
"value": 0,
"valueMax": 5,
"color": 16711680,
"colorMin": 16711680
},
{
"value": 0,
"valueMax": 5,
"color": 8323327,
"colorMin": 8323327
},
{
"value": 5,
"valueMax": 5,
"color": 255,
"colorMin": 255
},
{
"value": 5,
"valueMax": 5,
"color": 32768,
"colorMin": 32768
}
],
"lText": [
[
"DAMAGE",
"DEGATS"
],
[
"R.S",
"RECHARGEMENT"
],
[
"SPEED",
"VITESSE"
],
[
"RANGE",
"PORTEE"
]
]
},
"listTeam": [
{
"name": "myTeam",
"robots": [
{
"height": 0.1,
"width": 0.1,
"x": 0.9,
"y": 0.9,
"name": "myself",
"speed": 3,
"speedReload": 1,
"range": 3,
"damage": 5,
"lNode": [
]
}
]
},
{
"name": "enemyTeam",
"robots": [
{
"height": 0.1,
"width": 0.1,
"x": 0.1,
"y": 0.1,
"name": "enemy",
"speed": 1,
"speedReload": 1,
"range": 5,
"damage": 5,
"lNode": [
{
"name": "attack",
"option": [
]
},
{
"name": "move",
"option": [
true
]
}
]
}
]
},
{
"name": "enemyTeam",
"robots": [
{
"height": 0.1,
"width": 0.1,
"x": 0.3,
"y": 0.1,
"name": "enemy",
"speed": 1,
"speedReload": 1,
"range": 5,
"damage": 5,
"lNode": [
{
"name": "condition",
"option": [
true,
true,
false,
0.5,
0
],
"lNode": [
{
"name": "move",
"option": [
true,
false
]
}
]
},
{
"name": "attack",
"option": [
]
},
{
"name": "move",
"option": [
true
]
}
]
}
]
},
{
"name": "enemyTeam",
"robots": [
{
"height": 0.1,
"width": 0.1,
"x": 0.7,
"y": 0.1,
"name": "enemy",
"speed": 1,
"speedReload": 1,
"range": 5,
"damage": 5,
"lNode": [
{
"name": "condition",
"option": [
true,
true,
false,
0.5,
0
],
"lNode": [
{
"name": "move",
"option": [
true,
false
]
}
]
},
{
"name": "attack",
"option": [
]
},
{
"name": "move",
"option": [
true
]
}
]
}
]
},
{
"name": "enemyTeam",
"robots": [
{
"height": 0.1,
"width": 0.1,
"x": 0.5,
"y": 0.4,
"name": "enemy",
"speed": 1,
"speedReload": 1,
"range": 5,
"damage": 5,
"lNode": [
{
"name": "condition",
"option": [
true,
true,
false,
0.5,
0
],
"lNode": [
{
"name": "move",
"option": [
true,
false
]
}
]
},
{
"name": "attack",
"option": [
]
},
{
"name": "move",
"option": [
true
]
}
]
}
]
},
{
"name": "enemyTeam",
"robots": [
{
"height": 0.1,
"width": 0.1,
"x": 0.1,
"y": 0.9,
"name": "enemy",
"speed": 1,
"speedReload": 1,
"range": 5,
"damage": 5,
"lNode": [
{
"name": "condition",
"option": [
true,
true,
false,
0.5,
0
],
"lNode": [
{
"name": "move",
"option": [
true,
false
]
}
]
},
{
"name": "attack",
"option": [
]
},
{
"name": "move",
"option": [
true
]
}
]
}
]
},
{
"name": "enemyTeam",
"robots": [
{
"height": 0.1,
"width": 0.1,
"x": 0.3,
"y": 0.7,
"name": "enemy",
"speed": 1,
"speedReload": 1,
"range": 5,
"damage": 5,
"lNode": [
{
"name": "condition",
"option": [
true,
true,
false,
0.5,
0
],
"lNode": [
{
"name": "move",
"option": [
true,
false
]
}
]
},
{
"name": "attack",
"option": [
]
},
{
"name": "move",
"option": [
true
]
}
]
}
]
},
{
"name": "enemyTeam",
"robots": [
{
"height": 0.1,
"width": 0.1,
"x": 0.9,
"y": 0.2,
"name": "enemy",
"speed": 3,
"speedReload": 1,
"range": 3,
"damage": 5,
"lNode": [
{
"name": "condition",
"option": [
true,
true,
false,
0.5,
0
],
"lNode": [
{
"name": "move",
"option": [
true,
false
]
}
]
},
{
"name": "attack",
"option": [
]
},
{
"name": "move",
"option": [
true
]
}
]
}
]
}
],
"lBonus": [
{
"style": "speed",
"number": 0,
"x": 0.5,
"y": 0.5
},
{
"style": "attack",
"number": 2,
"x": 0.7,
"y": 0.7
},
{
"style": "shield",
"number": 0,
"x": 0.2,
"y": 0.9
},
{
"style": "shield",
"number": 1,
"x": 0.8,
"y": 0.4
},
{
"style": "shield",
"number": 2,
"x": 0.2,
"y": 0.2
}
]
}

@ -0,0 +1,231 @@
{
"enemyVisible": false,
"bonusVisible": true,
"robotRandomPosition": false,
"tree": {
"type": "waria",
"lRect": [
{
"type": "attack",
"option": [
0.3333333333333333
]
},
{
"type": "condition",
"option": [
false,
false,
true,
0.3333333333333333,
1
],
"lRect": [
{
"type": "move",
"option": [
false,
true
]
},
{
"type": "attack",
"option": [
1
]
}
]
},
{
"type": "move",
"option": [
true,
false
]
},
{
"type": "move",
"option": [
true,
true
]
}
]
},
"initStat": {
"lBar": [
{
"value": 5,
"valueMax": 5,
"color": 16711680,
"colorMin": 16711680
},
{
"value": 0,
"valueMax": 5,
"color": 8323327,
"colorMin": 8323327
},
{
"value": 0,
"valueMax": 5,
"color": 255,
"colorMin": 255
},
{
"value": 5,
"valueMax": 5,
"color": 32768,
"colorMin": 32768
}
],
"lText": [
[
"DAMAGE",
"DEGATS"
],
[
"R.S",
"RECHARGEMENT"
],
[
"SPEED",
"VITESSE"
],
[
"RANGE",
"PORTEE"
]
]
},
"listTeam": [
{
"name": "myTeam",
"robots": [
{
"height": 0.1,
"width": 0.1,
"x": 0.9,
"y": 0.9,
"name": "myself",
"speed": 3,
"speedReload": 1,
"range": 3,
"damage": 5,
"lNode": [
]
},
{
"height": 0.1,
"width": 0.1,
"x": 0.3,
"y": 0.5,
"name": "myself",
"speed": 3,
"speedReload": 1,
"range": 3,
"damage": 5,
"lNode": [
]
}
]
},
{
"name": "enemyTeam",
"robots": [
{
"height": 0.1,
"width": 0.1,
"x": 0.5,
"y": 0.1,
"name": "enemy",
"speed": 3,
"speedReload": 1,
"range": 3,
"damage": 5,
"lNode": [
{
"name": "condition",
"option": [
true,
true,
false,
0.5,
0
],
"lNode": [
{
"name": "move",
"option": [
false
]
}
]
},
{
"name": "attack",
"option": [
]
},
{
"name": "move",
"option": [
true
]
}
]
},
{
"height": 0.1,
"width": 0.1,
"x": 0.1,
"y": 0.9,
"name": "enemy",
"speed": 3,
"speedReload": 1,
"range": 3,
"damage": 5,
"lNode": [
{
"name": "condition",
"option": [
true,
true,
false,
0.5,
0
],
"lNode": [
{
"name": "move",
"option": [
false
]
}
]
},
{
"name": "attack",
"option": [
]
},
{
"name": "move",
"option": [
true
]
}
]
}
]
}
],
"lBonus": [
{
"style": "speed",
"number": 0,
"x": 0.5,
"y": 0.5
}
]
}
Loading…
Cancel
Save