fix calamity

This commit is contained in:
Alberto Xamin 2020-11-24 18:51:43 +01:00
parent baa75c6c7b
commit e7d9175a7c
No known key found for this signature in database
GPG Key ID: 4F026F48309500A2
2 changed files with 7 additions and 5 deletions

View File

@ -101,6 +101,7 @@ class Player:
if self.attacker:
ser['attacker'] = self.attacker.name
ser['sight'] = self.get_sight()
ser['lives'] = max(ser['lives'], 0)
self.sio.emit('self', room=self.sid, data=json.dumps(ser, default=lambda o: o.__dict__))
self.sio.emit('self_vis', room=self.sid, data=json.dumps(self.game.get_visible_players(self), default=lambda o: o.__dict__))
if self.lives <= 0 and self.max_lives > 0:
@ -169,7 +170,7 @@ class Player:
print(f'Did pick {picked}')
self.sio.emit('chat_message', room=self.game.name, data=f'{self.name} ha estratto {picked}.')
if picked.suit == cards.Suit.SPADES and 2 <= picked.number <= 9 and pickable_cards == 0:
self.lives = max(self.lives - 3, 0)
self.lives -= 3
self.game.deck.scrap(self.equipment.pop(i))
if isinstance(self.character, characters.BartCassidy):
self.hand.append(self.game.deck.draw())

View File

@ -187,12 +187,13 @@ export default {
this.$socket.emit('scrap', this.hand.indexOf(c))
},
play_card(card) {
let calamity_special = (card.name === 'Mancato!' && this.character.name === 'Calamity Janet')
let cant_play_bang = (this.has_played_bang && this.equipment.filter(x => x.name == 'Volcanic').length == 0)
if (this.pending_action == 2) {
if (card.need_target &&
!(card.name == 'Bang!' && (this.has_played_bang && this.equipment.filter(x => x.name == 'Volcanic').length == 0))) {
if (card.name == 'Panico!' || (card.name == 'Bang!' && (this.has_played_bang && this.equipment.filter(x => x.name == 'Volcanic').length == 0)))
if ((card.need_target || calamity_special) && !((card.name == 'Bang!' || !calamity_special) && cant_play_bang)) {
if (card.name == 'Panico!' || (card.name == 'Bang!' && cant_play_bang))
this.range = 1
else if (card.name == 'Bang!')
else if (card.name == 'Bang!' || calamity_special)
this.range = this.sight
else
this.range = 999