首页 > 解决方案 > 我怎样才能创建一个动作将与我的主要动作同时发生一段时间?

问题描述

我正在制作一个可以与角色战斗的小游戏。但是,就像在许多每回合的战斗回合中一样,我想创建一些动作会在一定时间内发生。例如,一个动作将改变一个 3 回合或更少/更多的统计数据。如果有人可以帮助我,请。谢谢

标签: python

解决方案


计划操作的日志

您似乎需要的(导致在一定数量的回合后会发生的效果)是预定操作的日志。

实现它的一种方法是保留“活动效果”列表。

举个粗略的例子,

# in the beginning
active_effects = []

# when the effect is caused
active_effects.append( { 'turn' : current_turn + 3, 'target' : 'player', 'damage' : 10 } )

# at the start of every turn
for effect in active_effects:
    if effect['turn'] == current_turn:
         apply_effect(effect)

(您可能想改用类并将效果指定为函数,但这应该说明一般概念)。


推荐阅读