现在的位置: 首页 > 综合 > 正文

游戏中运用脚本语言

2013年09月02日 ⁄ 综合 ⁄ 共 1132字 ⁄ 字号 评论关闭

现在有许多游戏,都会选择采用脚本语言来编写游戏中的任务。如果想修改游戏中的某些任务或者剧情时,可以直接通过修改脚本来实现,而不用重新编译程序。那样会浪费大量的时间,玩家也需要对客户端进行打补丁,会对玩家造成不便。

  

在游戏中,有些很常见的情况:

 当玩家点击商店NPC时, 会打开购买界面。

      当玩家点击装备打造NPC时,会打开打造的界面,选择武器和材料。

      当玩家点击科举的考官NPC时,会打开问题和答案选择的界面。

      当玩家点击特定的NPC时,可能会接到新的任务。打开任务相关的界面。

 

举个简单的例子,在游戏开发中,可以这样处理:

A.      客户端发送玩家点击的NPCID号给服务端

B.      服务端根据NPCID号,找到对应的脚本,脚本可能像脚本1*技能学习

C.      服务端执行相应的脚本,示例中SysDialogText, SysDialogOption等为服务端提供给脚本调用的系统函数,在这几个函数里,服务端会把相关的数据发给客户端.

D.      客户端接收到服务端下发的数据,根据接收到的数据显示界面.

E.       玩家可以选择界面中的不同选项。这时客户端会把玩家选择的选项的信息上发给服务端。

F.       服务端根据选项的信息,执行不同的操作,示例脚本1*技能学习中,玩家选择的是“我想学习技能”,这时服务端将执行脚本函数Npc_SkillStudy_OpenWindow。在脚本函数中又调用系统函数SysOpenWindow,函数SysOpenWindow根据参数会通知客户端打开相应的界面.

 

===============================================================================

--脚本1*技能学习

function Npc_SkillStudy_Dialog()

         if SysDialogText("想成为三界精英,还要下一番苦功夫啊!") then

         SysDialogOption("我想学习技能","</F>Npc_SkillStudy_OpenWindow")

         SysDialogOption("再见","</F>Null")

         SysDialogEnd()

         end

end

 

function Npc_SkillStudy_OpenWindow()

         SysOpenWindow(100,1000000)

End

===============================================================================

抱歉!评论已关闭.