gestione del log della battaglia
| | |
| | | monsterHealth: 100, |
| | | currentRound: 0, |
| | | winner: null, |
| | | logMessages: [], |
| | | }; |
| | | }, |
| | | computed: { |
| | |
| | | this.monsterHealth = 100; |
| | | this.currentRound = 0; |
| | | this.winner = null; |
| | | this.logMessages = []; |
| | | }, |
| | | attackMonster() { |
| | | this.currentRound++; |
| | | const attackValue = getRandomValue(5, 12); |
| | | this.monsterHealth -= attackValue; |
| | | this.addLogMessage('player', 'attack', attackValue); |
| | | this.attackPlayer(); |
| | | }, |
| | | attackPlayer() { |
| | | const attackValue = getRandomValue(8, 15); |
| | | this.playerHealth -= attackValue; |
| | | this.addLogMessage('monster', 'attack', attackValue); |
| | | }, |
| | | specialAttackMonster() { |
| | | this.currentRound++; |
| | | const attackValue = getRandomValue(10, 20); |
| | | this.monsterHealth -= attackValue; |
| | | this.addLogMessage('player', 'attack Sp', attackValue); |
| | | this.attackPlayer(); |
| | | }, |
| | | healPlayer() { |
| | |
| | | } else { |
| | | this.playerHealth += healValue; |
| | | } |
| | | this.addLogMessage('player', 'heal', healValue); |
| | | this.attackPlayer(); |
| | | }, |
| | | surrender(){ |
| | | this.winner = 'monster'; |
| | | } |
| | | surrender() { |
| | | this.winner = "monster"; |
| | | }, |
| | | addLogMessage(who, whath, value) { |
| | | this.logMessages.unshift({ |
| | | actionBy: who, |
| | | actionType: whath, |
| | | actionValue: value |
| | | }); |
| | | }, |
| | | }, |
| | | }); |
| | | |
| | |
| | | </section> |
| | | <section id="log" class="container"> |
| | | <h2>Battle Log</h2> |
| | | <ul></ul> |
| | | <ul> |
| | | <li v-for="logMessage in logMessages"> |
| | | <span :class="{'log--player': logMessage.actionBy === 'player' , 'log--monster': logMessage.actionBy === 'monster'}" |
| | | >{{logMessage.actionBy === 'player' ? "Player" : 'Monster'}} |
| | | </span> |
| | | <span v-if="logMessage.actionType === 'heal'" |
| | | > heal himself for <span class="log--heal">{{logMessage.actionValue}} </span> |
| | | </span> |
| | | <span v-else> |
| | | attacks and deals <span class="log--damage">{{logMessage.actionValue}}</span></span> |
| | | </li> |
| | | </ul> |
| | | </section> |
| | | </div> |
| | | </body> |