• 网络游戏剧情副本的一种实现方式(上)


        在网络游戏中,常常出现一种剧情副本的情况。比如玩家进入游戏后,提示“少侠,欢迎来到新手村,最近野猪一直在骚扰村子,你去打几只吧”。然后镜头移向野猪,野猪做出暴怒的表情。玩家走过去杀死野猪后,将玩家传至主城。

       这个剧情比较简单,实际情况可能要比这复杂的多。在程序中,如何做统一处理呢?

       先写一下大体思路

       我们采用配置的方法,简单来说,前台是基于事件组的节点,后台是调用场景的lua脚本内的函数与前台交互。

        后台向前台发送groupID(事件组ID),前台播放本组内的所有事件。事件内包含属性(即参数)。如果向下执行带有条件判断,比如杀某怪后发生某对话,则后台在判断玩家杀怪数后正确后,会向前台发移到某新group的消息,前台继续执行新的事件组。

       根据“对添加开放,对修改关闭”的原则,我们将前台的每个事件处理类分到不同的类处理,并继承同一个父类。

       后台使用lua写各种的处理函数,如杀怪。当杀怪后,C++将调用lua文件内的函数,函数内部判断如果杀的怪ID是某特定ID,则lua调用C++代码里的发送下个group的消息。前台收到后,则继续执行。

  • 相关阅读:
    T4设计时模板调试
    MVC开发T4代码生成之一文本模板基础
    经典选项卡
    IE 调试工具 Utilu IE Collection:IE5.5、6.0、7.0, 8.0…各版本浏览器兼容性测试工具
    滚动读行!
    自定义标签的用法、支持IE6
    jQuery 参数传递例子
    IMG在IE6下不能HOVER的解决办法!
    点击渐变弹出层
    操作滚动条滚动到指定位置
  • 原文地址:https://www.cnblogs.com/fox7nights/p/2644337.html
Copyright © 2020-2023  润新知