我正在编写一个文字游戏,需要一个简单的战斗系统,类似于MUD游戏,您可以输入命令,每隔一段时间会发生“tick”,当所有命令执行时,玩家和怪物会造成伤害,发生各种不同的事情。我该如何实现这个概念? 我考虑创建一个变量来保存上一个tick时间,并创建一个函数将事件放入堆栈中,当时间为(time + x)时同时执行它们。有没有更简单或更清晰的方法来实现这个功能?
那么可能的语法是什么?
那么可能的语法是什么?
double lastTickTime;
double currentTime;
void eventsPile(int event, int target)
{
// how do i implement stack of events? And send them to execute() when time is up?
}
void execute(int event, int target)
{
if ((currentTime - lastTickTime) == 2)
{
eventsHandler(event, target);
}
else
{ // How do I put events on stack?
}
}