0
我正在构建一个命令行战斗模拟器。我有两支球队:redteam
和blueteam
。轮到游戏的算法?
他们有4个特点:
health
attack
defense
rep
前三个是不言自明的,我想。 rep
是声誉或恐惧因素。用户将输入这两个团队的功能。代表最高的队伍将首先开始攻击。 damage
= attack - defense
。这再次从health
中减去。然后其他队伍进行攻击,并且这个过程一直持续到球队的其中一队health <=0
或者attack <= defense
,因为在这种情况下将不会造成任何损失。
在这种形式下,游戏的相当简单,只有健康的变化,而不是其他任何东西。
我的问题是我目前正在使用数组和一个while循环,其中所有的逻辑被放置在一堆嵌套的if-else
块。代码非常混乱。有这种问题的算法(和datastructres)吗?
一个
“特定类型的问题”是什么意思?你已经为你的特定情况创建了一个算法。 –
具体而言,我的意思是特定于逐转游戏。 – user2559578
我认为每个回合制游戏都有独特之处。对其中大多数算法的算法可能是:while(true){for(p:players){p.take_turn(); if(p.won())return; }}' –