You need to sign in or sign up before continuing.
提交 1164cdc5 编写于 作者: P python_program

Tue Aug 5 22:02:00 CST 2025 inscode

上级 0170e40e
...@@ -42,6 +42,7 @@ class soil: ...@@ -42,6 +42,7 @@ class soil:
class army: class army:
action = 1 #1:防御 2:进攻
number = 0 number = 0
morale = 1 morale = 1
weapons = "腰刀" weapons = "腰刀"
...@@ -73,3 +74,35 @@ class army: ...@@ -73,3 +74,35 @@ class army:
elif self.weapons == "火铳": elif self.weapons == "火铳":
perPower = 10 perPower = 10
return self.number * self.morale * perPower * self.skill return self.number * self.morale * perPower * self.skill
def kill(kingdom1, kingdom2):
kingdom1.gold += kingdom2.gold
kingdom1.pollution += kingdom2.pollution
kingdom1.soil.area += kingdom2.soil.area
kingdom2 = kingdom("", [], None, None, 0, 0)
return
def attack(attacker, defauendert, area):
defauendert.army.number -= attacker.army.battleEffectiveness() / (defauendert.battleEffectiveness()/defauendert.army.number)
defauendert.army.morale -= 0.05
if defauendert.army.number <= 200:
print("进攻方胜利!防守方失败!{}沦陷!".format(area))
defauendert.area.remove(area)
attacker.area.append(area)
if not defauendert.area:
print("{}灭亡!{}占领全境,获得{}黄金,获得{}人口,获得{}土地!".format(defauendert, attacker,defauendert.gold, defauendert.pollution, defauenderter.soil.area))
kill(attacker, defauendert)
defauendert.army.number = 0
defauendert.army.morale -= 0.5
elif defauendert.army.number > 200:
print("防守方胜利!进攻方失败!{}守住了!".format(area))
attacker.army.morale -= 0.05
defauendert.army.morale += 0.05
attacker.army.number -= defauendert.army.battleEffectiveness() / (attacker.battleEffectiveness()/attacker.army.number)
else:
print("NUMBER ERROR!")
return
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册