易码技术论坛

 找回密码
 加入易码
搜索
查看: 121312|回复: 2

BBK 伏魔记2个脚本分析

[复制链接]
发表于 2006-2-9 16:24:00 | 显示全部楼层
最近在研究BBK,所以把他们的一些东西发上来,大家别见怪,知己知彼,百战百胜嘛!!
发表于 2006-2-9 21:54:00 | 显示全部楼层
支持一下
 楼主| 发表于 2006-2-9 16:22:39 | 显示全部楼层 |阅读模式
现在我给大家详细解释下两个脚本,从1-1开始:

首先打开伏魔记的脚本1-1,内容如下:

@开始游戏  @表示注释,脚本不会编译他后面的内容

@------------------调试---------------------
@loadmap 1 39 23 6
@CREATEACTOR 1 4 3
@STARTCHAPTER 7 1
@---------------------------------------

SHOWGUT 1 0 "引: 天地玄黄,宇宙洪荒 自古道魔不两立, 世虽以道为正,道魔 之争却从未休止。 究其因,何以道正而 魔始未灭, 属正邪者,心也! 正所谓: 道非道,魔非魔 善恶在人心! 江湖中有耳朵的人,绝无一人没有听见过“无机道长”这人的名字,江湖中有眼睛的人,也绝无一人不想瞧瞧“无机道长”绝世风采和他的绝代神功。 只因为任何人都知道,世上绝没有一个少女能抵挡“无机道长”的微微一笑,也绝没有一个英雄能抵挡“无机道长”的轻轻一剑! 任何人都相信,“无机道长”的剑非但能在百万军中取主帅之首级,也能将一根头发分成两根,而他的笑,却可令少女的心碎。 3月28日晚,无机和 当时危害人间的大魔头——赤血天魔依约在三清山的伏魔洞前进行生死决斗。 决斗后,无机负伤而归,赤血天魔不知所终。决斗结果无人知晓。 二十年后…… "    SHOWGUT是字幕 1 0表示字幕最上面的图片
loadmap 1 2 15 0   loadmap后面的数字是地图类型,你可以通过地图编辑器的文件→设置来查看,是不是和脚本里的一样~~地图编辑器最上面的Pos后面的数字是放置宝箱、NPC以及场景对象的坐标,而Load后面的坐标则是创建人物以及读取地图时候的坐标

[table=]

[tr]
[td][/td][/tr][/table]

MOVIE 1 2 0 0 2     MOVIE是播放的动画,你可以用特效打开伏魔记的飞翔蝴蝶,看看。之前我已经说过了,过场动画代表1 序号,现在知道了吧~~

[table=]

[tr]
[td][/td][/tr][/table]

CREATEACTOR 1 4 3  表示在该地图创建主角1,坐标为(4,3)
NPCSTEP 0 0 1      不用管它,是改变主角面对方向的,新手一般用不到
say 1 "小蝴蝶,不要跑……" say命令不用我说了吧?
NPCSTEP 0 1 1
say 1 "小蝴蝶,不要跑……"
NPCSTEP 0 2 1
say 1 "小蝴蝶,快出来……"
NPCSTEP 0 3 1
say 1 "小蝴蝶……,哪去了??"
CREATENPC 1 2 17 6  表示创建配角,序号为1,图象为角色编辑器里的第二个人物,后面的坐标是地图编辑器Pos里的
MOVE 1 17 3    对配角号为1的NPC进行移动,1表示序号,后面的两个数字表示移动坐标
MOVE 1 18 3
say 0 "师兄,原来你在这啊,师父找不到你,正在无机阁大发雷霆呢,你快点到无机阁见师傅吧。"
say 1 "好,你先走,我就去。"
MOVE 1 17 3
MOVE 1 17 6
DELETENPC 1    删除配角号为1的NPC
NPCSTEP 0 0 1
NPCSTEP 0 1 1
NPCSTEP 0 2 1
NPCSTEP 0 3 1
say 1 "咦,我的小蝴蝶哪去了??"
say 1 "还是先去见师父吧。"
setevent 1     标志人物获得事件1
SETMONEY 500   得到500个游戏币

@======属性测试和修改示例S=======
@ATTRIBSET 1 0 2
@ATTRIBTEST 1 0 12 lowaddr2 higaddr2
@MESSAGE "2级"
@goto addnext
@lowaddr2:
@MESSAGE "小于2级"
@goto addnext
@higaddr2:
@MESSAGE "大于2级"
@
@addnext:
@ATTRIBADD 1 0 10
@ATTRIBTEST 1 0 12 lowaddr12 higaddr12
@MESSAGE "12级"
@goto chapnext
@lowaddr12:
@MESSAGE "小于12级"
@goto chapnext
@higaddr12:
@MESSAGE "大于12级"
@======属性测试和修改示例E=======

chapnext:   其实chapnext:这个可以不要的,可以删除
STARTCHAPTER 2 12  载入类型为2-12的脚本,就是名为2-12M1-2的脚本
callback

那么现在打开脚本2-12M1-2吧

@百草地   注释

createbox 1 18 17 2   创建宝箱,1是脚本里的序号、18是场景对象的序号,后面的坐标是地图编辑器Pos后面的数字
createbox 2 18 4 2
createbox 3 18 7 9
SETSCENENAME "百草地" 标志地图名称
SHOWSCENENAME         显示地图名称        
if 1 outback          检测人物是否标有事件1,如果有则跳转到OUTBACK
INITFIGHT 1 2 3 4 0 0 0 0 2 112 32  开启随机战斗,设置可能碰到的敌人
outback:
callback

三清宫:
delallnpc
loadmap 1 1 1 3
if 259 回马枪
STARTCHAPTER 2 1
callback
回马枪:
STARTCHAPTER 1 2
callback

竹林山道:
IF 1 去见师父
delallnpc
loadmap 1 3 22 7
STARTCHAPTER 2 13
callback
去见师父:
say 1 "还是先去见师父再来玩吧。"
callback

宝箱1:
if 1020 宝箱1开
GAINGOODS 11 5
setevent 1020
宝箱1开:
callback
宝箱2:
if 1021 宝箱2开
GAINGOODS 7 9
setevent 1021
宝箱2开:
callback
宝箱3:
if 1121 宝箱2开
GAINGOODS 11 7
setevent 1121
宝箱3开:
callback

gutevent 1 宝箱1    1表示宝箱的序号,宝箱1为碰到箱子后触发的对话
gutevent 2 宝箱2
gutevent 3 宝箱3
gutevent 41 三清宫  大家看下面的地图,是不是有个1?对,场景事件号是40+X,就是人物走到这里会触发《三清宫》这段脚本的内容,我把复制过来,内容如下:

三清宫:
delallnpc
loadmap 1 1 1 3
if 259 回马枪
STARTCHAPTER 2 1
callback
回马枪:
STARTCHAPTER 1 2
callback



gutevent 42 竹林山道 同上

用地图编辑器打开百草地的地图

[table=]

[tr]
[td][/td][/tr][/table]
您需要登录后才可以回帖 登录 | 加入易码

本版积分规则

Archiver|手机版|小黑屋|EMAX Studio

GMT+8, 2025-5-4 08:44 , Processed in 0.011954 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表