Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何为视频游戏设计实现脚本化事件? 我正在为一个大学项目用C++构建一个游戏(使用SDL),我试图弄清楚如何在玩家做某事时发生脚本事件,或者一些时间过去。_C++_Sdl_Game Engine - Fatal编程技术网

如何为视频游戏设计实现脚本化事件? 我正在为一个大学项目用C++构建一个游戏(使用SDL),我试图弄清楚如何在玩家做某事时发生脚本事件,或者一些时间过去。

如何为视频游戏设计实现脚本化事件? 我正在为一个大学项目用C++构建一个游戏(使用SDL),我试图弄清楚如何在玩家做某事时发生脚本事件,或者一些时间过去。,c++,sdl,game-engine,C++,Sdl,Game Engine,我对如何做有自己的想法和想法,但我不想违背通常的做法 现在我有一个名为Obj的类,其中敌人、物品和玩家是子类,我的想法是向其中添加3个公共变量,如下所示: class Obj{ int eventDeath,eventTouch,eventTalk,eventMeet; } void event(int n){ switch(n){ case 1: dialog("I'm dying"); break; } } 然后我可以创建一个e

我对如何做有自己的想法和想法,但我不想违背通常的做法


现在我有一个名为Obj的类,其中敌人、物品和玩家是子类,我的想法是向其中添加3个公共变量,如下所示:

class Obj{
    int eventDeath,eventTouch,eventTalk,eventMeet;
}
void event(int n){
   switch(n){
   case 1: 
      dialog("I'm dying");
      break;   
   }
}
然后我可以创建一个eventDeath=1的Obj,当它死掉时,它将触发事件(1)。event()应该是这样的:

class Obj{
    int eventDeath,eventTouch,eventTalk,eventMeet;
}
void event(int n){
   switch(n){
   case 1: 
      dialog("I'm dying");
      break;   
   }
}

我还可以在特定位置添加不可见的“Obj”,当玩家走过某个地方时。我不知道这是否是个好主意,但我想不出其他方法来做。通常是怎么做的?还有,我如何跟踪已经发生的事件?

这是一个古老的问题,可能没有真正“正确”的答案。这是最适合你的。请查看以下链接以获取信息