コード例 #1
0
ファイル: tank.py プロジェクト: andrii-myk/battle_sim
 def __init__(self, number, color):
     super(Tank, self).__init__(number, color)
     self.operators = [
         Soldier(1, self.color),
         Soldier(2, self.color),
         Soldier(3, self.color)
     ]
コード例 #2
0
 def __init__(self, number):
     super().__init__()
     self.number = number
     self._health = 100
     self._is_alive = True
     self._operators = [Soldier(1), Soldier(2)]
     self.recharge = self.set_recharge()
     self._total_health = 100
コード例 #3
0
 def test_compute_att_succ_prob(self):
     soldier = Soldier(1)
     soldier._experience = 50
     assert soldier.compute_att_succ_prob() == 1.0
     soldier._health = 50
     assert soldier.compute_att_succ_prob() == 0.75
     soldier._health = 10
     assert soldier.compute_att_succ_prob() == 0.55
コード例 #4
0
 def test_damage(self):
     soldier = Soldier(1)
     assert soldier.damage() == 0.06
     soldier._experience = 30
     assert soldier.damage() == 0.35
     soldier._experience = 50
     assert soldier.damage() == 0.55
コード例 #5
0
 def test_increment_experience(self):
     soldier = Soldier(1)
     soldier._experience = 50
     soldier.increase_exp()
     soldier.increase_exp()
     assert soldier.experience == 50
     soldier.increase_exp()
     soldier.increase_exp()
     assert soldier.experience == 50
コード例 #6
0
ファイル: squad.py プロジェクト: andrii-myk/battle_sim
 def create_squad(self) -> list:
     l = []
     if self.unit_type == "soldier":
         for i in range(1, 11):
             l.append(Soldier(i, self.color))
     elif self.unit_type == "tank":
         for i in range(1, 5):
             l.append(Tank(i, self.color))
     else:
         for i in range(1, 6):
             l.append(Buggy(i, self.color))
     return l
コード例 #7
0
 def test_is_alive(self):
     soldier = Soldier(1)
     assert soldier.is_alive == True
     soldier.under_attack(50)
     assert soldier.is_alive == True
     soldier.under_attack(52)
     assert soldier.is_alive == False
コード例 #8
0
ファイル: tank.py プロジェクト: andrii-myk/battlefield_test
 def __init__(self, number):
     super().__init__(number)
     self._recharge = self.set_recharge()
     self._operators = [Soldier(1), Soldier(2), Soldier(3)]
コード例 #9
0
 def test_set_recharge(self):
     soldier = Soldier(1)
     x = soldier.set_recharge()
     print(2)
     assert (x >= 0.001 and x <= 0.01)
コード例 #10
0
 def test_under_attack(self):
     soldier = Soldier(1)
     soldier.under_attack(50)
     assert soldier.health == 50
     soldier.under_attack(40.25)
     assert soldier.health == 9.75
     soldier.under_attack(0.61)
     assert soldier.health == 9.14
     soldier.under_attack(8.77)
     assert soldier.health == 0.37
     soldier.under_attack(0.01)
     assert soldier.health == 0.36
     soldier.under_attack(0.13)
     assert soldier.health == 0.23