用python来做个战争模块,模拟玩家防守和电脑进攻。战争是即时的,双方同时进行。
战争的图形界面:
- 由100*100的小方格构成。
- 在每个小方格随机绘制山川、湖泊、平原、森林,但同类型的往往聚在一起,比如山川连着山川。
- 在某个靠近边界的小方格绘制防守方的城池。城池必有一面连着平原,且和进攻方的出现点一直有平原连接。
- 在另一侧边界设置进攻方的出现点,可以是一片连接的方格。
- 防守城池和进攻点直接可以有多条平原连接,但不超过五条。
- 部队在地图中也以方块显示。处于地图的上层
战争的天气,包括雨天、晴天、多云、下雪。不同天气可以施放不同策略。比如雨天或者下雪不能释放火计,火箭。初始随机选择一个(如果是12月则包括下雪,1~11月不包括下雪)
战争的风向,包括东、南、西、北、东南、东北、西南、西北,初始随机从其中选择一个。 风力,从1~10,初始为1。
战争开始需要玩家配置部队:
- 每个部队可以有一个主将,最多两个副将,最多一个军师。
- 一开始部队统一在主帅(一方整个战场的统帅)名下,需要分配给各个部队。
- 然后分配每个部队的主将、副将和军师。
- 需要设置粮仓的位置。粮仓必须设置在平原上,而且和城池有连接。
部队属性包括:总兵数、伤员数、士气、攻击、防御。
- 总兵数:部队一共多少人。
- 伤员数:部队中受伤的人数。
- 士气:部队的士气。取值1~100。
- 攻击:影响部队对敌方造成的伤害。
- 防御:影响部队被对方造成的伤害。
战争是即时进行的。 部队的一般动作包括:休息、行军、用计、分兵、合兵。
- 休息:恢复10%士气和10%伤员。
- 行军:部队移动。每移动一格减少一点士气。士气为0则无法移动。
- 用计:施放计策。
- 分兵:部队拆分。
- 合并:和其他将领合并。
与敌方遭遇后的动作有:
将领属性包括:体、武、智、德、经、忠、统、胆。
- 体:将领的体力。体力为零则将领死亡。取值1~100。
- 武:将领的武力。取值1~100。
- 智:将领的智力。取值1~100。
- 德:将领的仁德。取值1~100。
- 经:将领的经验值。取值1~100。
- 忠:将领的忠心度。取值1~100。该属性对玩家隐藏。
- 统:将领统帅部队的能力。取值1~100。
- 胆:将领的胆色。取值1~100。
将领的属性对于部队属性的影响: