回答
下面是使用一臺發電機和分數做在Python 3.0的一種方法:
def get_attack_sequence(a, b):
from fractions import Fraction
count_a = count_b = 0
rate_a = Fraction(1, a)
rate_b = Fraction(1, b)
while 1:
new_count_a = count_a + rate_a
new_count_b = count_b + rate_b
if new_count_a < new_count_b:
yield "A"
count_a = new_count_a
elif new_count_a > new_count_b:
yield "B"
count_b = new_count_b
else:
yield "A|B"
count_a = new_count_a
count_b = new_count_b
attack_sequence = get_attack_sequence(3, 2)
print(' '.join(next(attack_sequence) for _ in range(10)))
輸出:
A B A A|B A B A A|B A B
的0需求的攻擊頻率進行檢查。我並沒有在上面的代碼中做到這一點,但它很容易修復,並且可能在這個功能之外最好的處理(一個玩家無法攻擊的戰鬥無論如何都不會很有趣)。
這種想法的一個優點是,它可以很容易地擴展到超過2名同時球員。
另一個優點是,它也可以處理小於每秒一個攻擊的攻擊率沒有任何修改(例如乙攻擊僅每兩秒一次,即攻擊頻率= 0.5)。
它應該是'A B A A | B ...' – user198729 2010-01-03 14:42:36
第三個A之後的行是什麼意思?同時攻擊? – 2010-01-03 15:33:08
是的,這就是它的意思。你的意見是什麼? – user198729 2010-01-03 16:31:01
伯爵誰擁有更多的攻擊。給他打電話。將MORE/LESS分爲底層,結果爲N.然後對於每N個MORE攻擊添加一個LESS,並在完成時添加MORE攻擊。這是每秒。
實施例:
MORE = 5
LESS = 2
MORE/LESS floor = 2
Then:
MORE MORE LESS MORE MORE LESS MORE
又如:
MORE = 3
LESS = 2
MORE/LESS floor = 1
Then:
MORE LESS MORE LESS MORE
+1我真的很喜歡這個解決方案 - 簡單而有效。雖然澄清了這個問題多一點,但這並不完全符合所有要求。也許它可以適應工作。 – 2010-01-03 16:39:08
- 1. 如何減少遊戲中攻擊頻率的影響?
- 2. 在java遊戲中的子彈實施
- 3. 在井字遊戲中實施Minimax Algo
- 4. 在遊戲中正確實施延遲
- 5. 在遊戲中觸摸實施
- 6. 實施和行(connect4)遊戲
- 7. 如何在我的比賽遊戲中實施地圖?
- 8. 如何防止基於Web的遊戲被黑客攻擊?
- 9. 如何在iPhone遊戲中實現遊戲中心
- 10. 如何設置射擊遊戲中精靈的概率?
- 11. 如何在我的iphone遊戲中實現多人遊戲?
- 12. 如何在玩遊戲時創建遊戲視頻?
- 13. zynga如何在Flash遊戲中實現右鍵點擊?
- 14. 概率在很多遊戲
- 15. 如何實施遊戲的庫存系統?
- 16. Java:如何實施康威的人生遊戲?
- 17. 我該如何着手實施九人莫里斯遊戲
- 18. 如何捕捉iPhone遊戲的視頻,遊戲內
- 19. django頻道適合實時遊戲嗎?
- 20. 加工塔防禦遊戲 - 塔攻擊敵人
- 21. 控制檯RPG遊戲 - 攻擊和健康功能 - C++
- 22. 遊戲製作者攻擊不會工作
- 23. 實施RSS源時,您如何處理更新頻率?
- 24. 如何計算贏得N個遊戲中至少k個遊戲的概率
- 25. 在射擊遊戲中進行遊戲AI研究的API
- 26. 如何應對攻擊xmlrpc.php攻擊
- 27. 如何在Windows 8 WinJS遊戲中處理分辨率?
- 28. 在iPhone遊戲中播放音頻
- 29. 將遊戲實現爲快速遊戲
- 30. 在Flash遊戲中實現動態的遊戲內廣告
這是一個併發的問題或者你只是想知道有多少攻擊? – 2010-01-03 10:28:05
目標是獲得整個攻擊序列,直到其中一個死亡。 – user198729 2010-01-03 10:31:51
在同一場戰鬥中可以有兩個以上的角色嗎? – 2010-01-03 10:46:02