From 5529c72570323d88366d8119f353ba60131a3eb2 Mon Sep 17 00:00:00 2001 From: Cristiano Magro <cristiano.magro@vola.it> Date: Fri, 27 Dec 2024 00:02:28 +0100 Subject: [PATCH] implement special attack --- 04 - monster slayer game/prj-monster-01-starting-setup/app.js | 32 +++++++++++++++++++++----------- 1 files changed, 21 insertions(+), 11 deletions(-) diff --git a/04 - monster slayer game/prj-monster-01-starting-setup/app.js b/04 - monster slayer game/prj-monster-01-starting-setup/app.js index 75dc449..d7283b0 100644 --- a/04 - monster slayer game/prj-monster-01-starting-setup/app.js +++ b/04 - monster slayer game/prj-monster-01-starting-setup/app.js @@ -1,33 +1,43 @@ -function getRandomValue(min, max){ - return Math.floor(Math.random() * (max - min)) + min; +function getRandomValue(min, max) { + return Math.floor(Math.random() * (max - min)) + min; } - const app = Vue.createApp({ data() { return { playerHealth: 100, monsterHealth: 100, + currentRound: 0, }; }, computed: { - monsterBarStyle(){ - return {width: this.monsterHealth + '%'} + monsterBarStyle() { + return { width: this.monsterHealth + "%" }; }, - playerBarStyle(){ - return {width: this.playerHealth + '%'} + playerBarStyle() { + return { width: this.playerHealth + "%" }; + }, + mayUseSpecialAttack() { + return this.currentRound % 3 !== 0; }, }, watch: {}, methods: { attackMonster() { - const attackValue = getRandomValue(5,12); + this.currentRound++; + const attackValue = getRandomValue(5, 12); this.monsterHealth -= attackValue; this.attackPlayer(); }, - attackPlayer(){ - const attackValue = getRandomValue(8,15); - this.playerHealth -= attackValue; + attackPlayer() { + const attackValue = getRandomValue(8, 15); + this.playerHealth -= attackValue; + }, + specialAttackMonster() { + this.currentRound++; + const attackValue = getRandomValue(10, 20); + this.monsterHealth -= attackValue; + this.attackPlayer(); }, }, }); -- Gitblit v1.8.0