コード例 #1
0
 def sword_attack_giant_normal(self, target):
     assert_type(target, characters.Character)
     attacker = self.action_manager
     if d6() == 1:
         damage = d6(2) + (attacker.get_force() * 4)
         defense = target.get_armor()
         target.apply_damage(damage - defense)
コード例 #2
0
ファイル: advantages.py プロジェクト: wolmir/cristina
 def sword_attack_giant_normal(self, target):
     assert_type(target, characters.Character)
     attacker = self.action_manager
     if d6() == 1:
         damage = d6(2) + (attacker.get_force() * 4)
         defense = target.get_armor()
         target.apply_damage(damage - defense)
コード例 #3
0
 def light_saber_attack_giant_normal(self, target):
     assert_type(target, characters.Character)
     attacker = self.action_manager
     if self.light_saber_mode and d6() == 1:
         damage = d6(3) + (attacker.get_force() * 4)
         defense = target.get_armor()
         target.apply_damage(damage - defense)
         self.light_saber_mode = False
コード例 #4
0
ファイル: advantages.py プロジェクト: wolmir/cristina
 def light_saber_attack_giant_normal(self, target):
     assert_type(target, characters.Character)
     attacker = self.action_manager
     if self.light_saber_mode and d6() == 1:
         damage = d6(3) + (attacker.get_force() * 4)
         defense = target.get_armor()
         target.apply_damage(damage - defense)
         self.light_saber_mode = False
コード例 #5
0
ファイル: advantages.py プロジェクト: wolmir/cristina
 def combo_attack(self, attackers, target):
     assert_type(target, characters.Character)
     if all([character.has_advantage(self.name) for character in attackers]) and not self.already_used:
         best_skill = max([character.get_skill() for character in attackers])
         if d6() <= best_skill:
             combo_fire_power = sum([character.get_fire_power() for character in attackers])
             damage = d6(1) + combo_fire_power
             defense = target.get_armor()
             target.apply_damage(damage - defense)
             self.already_used = True
コード例 #6
0
 def combo_attack(self, attackers, target):
     assert_type(target, characters.Character)
     if all([character.has_advantage(self.name)
             for character in attackers]) and not self.already_used:
         best_skill = max(
             [character.get_skill() for character in attackers])
         if d6() <= best_skill:
             combo_fire_power = sum(
                 [character.get_fire_power() for character in attackers])
             damage = d6(1) + combo_fire_power
             defense = target.get_armor()
             target.apply_damage(damage - defense)
             self.already_used = True
コード例 #7
0
 def sword_attack_normal_giant(self, target):
     assert_type(target, characters.Character)
     attacker = self.action_manager
     if attacker.check_skill():
         damage = d6(2) + attacker.get_force()
         defense = (target.get_armor() * 4)
         target.apply_damage(damage - defense)
コード例 #8
0
ファイル: advantages.py プロジェクト: wolmir/cristina
 def sword_attack_normal_giant(self, target):
     assert_type(target, characters.Character)
     attacker = self.action_manager
     if attacker.check_skill():
         damage = d6(2) + attacker.get_force()
         defense = (target.get_armor() * 4)
         target.apply_damage(damage - defense)
コード例 #9
0
 def light_saber_attack_normal_giant(self, target):
     assert_type(target, characters.Character)
     attacker = self.action_manager
     if self.light_saber_mode and attacker.check_skill():
         damage = d6(3) + attacker.get_force()
         defense = (target.get_armor() * 4)
         target.apply_damage(damage - defense)
         self.light_saber_mode = False
コード例 #10
0
ファイル: advantages.py プロジェクト: wolmir/cristina
 def light_saber_attack_normal_giant(self, target):
     assert_type(target, characters.Character)
     attacker = self.action_manager
     if self.light_saber_mode and attacker.check_skill():
         damage = d6(3) + attacker.get_force()
         defense = (target.get_armor() * 4)
         target.apply_damage(damage - defense)
         self.light_saber_mode = False
コード例 #11
0
 def devastating_blow_fire_power(self, target):
     assert_type(target, characters.Character)
     if self.action_manager.check_skill():
         damage = (d6() + self.action_manager.get_force()) * 2
         defense = target.get_armor()
         target.apply_damage(damage - defense)
コード例 #12
0
ファイル: advantages.py プロジェクト: wolmir/cristina
 def devastating_blow_fire_power(self, target):
     assert_type(target, characters.Character)
     if self.action_manager.check_skill():
         damage = (d6() + self.action_manager.get_force()) * 2
         defense = target.get_armor()
         target.apply_damage(damage - defense)
コード例 #13
0
 def check_fire_power(self):
     return d6() < self.fire_power
コード例 #14
0
 def check_endurance(self):
     return d6() < self.endurance
コード例 #15
0
 def check_skill(self):
     return d6() < self.skill
コード例 #16
0
 def check_force(self):
     return d6() <= self.force