#"Variables are used but never defined"
5 messages · Page 1 of 1 (latest)
@abimethod
def battle(self) -> None:```
This is the method in question:
def battle(self) -> None:
user_address = Address(Txn.sender)
character = self.user[user_address].copy()
random_enemy = self.generate_enemy(current_level=character.combat_level)
character_hp = character.hp.native
enemy_hp = random_enemy.hp.native
player_won = False
while character_hp > 0 and enemy_hp > 0:
player_hit, player_hit_amount = self.determine_player_attack_hit(character, random_enemy)
if player_hit:
if enemy_hp <= player_hit_amount:
player_won = True
break
else:
enemy_hp -= player_hit_amount
else:
pass
enemy_hit, enemy_hit_amount = self.determine_enemy_attack_hit(random_enemy, character)
if enemy_hit:
if character_hp <= enemy_hit_amount:
player_won = False
break
else:
character_hp -= enemy_hit_amount
else:
pass
if player_won:
self.provide_battle_exp(character, random_enemy)
self.user[user_address] = character.copy()```