C2/C3 Wiki

C2/C3开发者的乐园

用户工具

站点工具


通过fsm实现游戏控制器

为什么要用做游戏控制器?

我们制作游戏的时候会遇到这样的情况:我们制作好了一个游戏角色,希望能够控制他。 通常的情况,我们会对其进行键盘或者手柄等的按键设置。例如:W控制上,S控制下,AD控制左右。

这个时候问题来了,如果这个角色是个公用角色,在多人游戏的时候有N个玩家都可以控制他们自己的角色,该怎么办? 设置WASD和↑↓←→两套按键?不行,那样会让两个玩家键位控制同一个角色,或者同时控制了所有角色。

比较土的方法就是有多少个玩家就创建多少个精灵……但这方法太傻了。

所以这篇就是讲我们该如何用控制器的方法,在多人游戏里控制角色的。

控制器是什么?

控制器在本教程里是一个精灵,每当有一个玩家角色被创建的时候,就会同时创建一个控制器精灵与这个玩家角色进行对应匹配。 例如为角色和控制器都添加player的私有变量,在创建角色的时候会赋予角色playerID,与此同时将这个ID赋予控制器,使他们之间存在对应关系,方便选取。

控制器,就是连接操作和角色之间的一个中转器。 当按下键盘或手柄按键的时候,会通知与键位对应的控制器,再由控制器查找与其对应的角色,实现只针对这个角色的操作传递

通过fsm实现游戏控制器.txt · 最后更改: 127.0.0.1