一个基本的脚本管理器的模版

ScriptManager? 脚本管理器

load(String mapId) load脚本资源,开始脚本。

update()           脚本更新

draw(Graphics g)   脚本绘制相关

ScriptCollection? 并行的脚本集合

并行命令
与:所有脚本都结束 = 结束
{
cmd1
cmd2
}

或:只要有一个脚本结束 = 结束
[
cmd1
cmd2
]

Script 脚本模型

 
   

脚本命令

// 这里是注释

cmd0

并行命令
{
cmd1
cmd2
}

[
cmd1
cmd2
]

Dialog 对话框

分成2种
I Dialog (0, 1000, ......)
第一个参数为0 冒泡试dialog,目前只用在主角头上。
参数:para1:0
      para2:显示的时间(ms)
      para3:文本
II Dialog (012, 年轻人别惊慌…欢迎你穿越到<#fff100传世大陆>,能来到这里,证明你有成为<#fff100神武军统领>的潜力。)
第一个参数为非0 对话框模式
参数:para1:NPC头像
      para2:文本

ObjShow? 显示某个NPC或怪物

ObjShow (0, 18)
参数:para1:obj类型 0=NPC 1=怪物 2=地图摆件
      para2:obj在地图中的Instance ID

ObjHide? 隐藏某个NPC或怪物

ObjHide(0, 18)
参数:para1:obj类型 0=NPC 1=怪物 2=地图摆件
      para2:obj在地图中的Instance ID

BtnShow? 显示某个按钮

BtnShow(0)
参数:para1:btn的id
注:btn的id需要在代码中定义,不同的id对应不同的按钮 0=拾取按钮

TipSet? 箭头指示

TipSet(0, 0, 332, 65, 65, 4, 点击拾取装备)
参数:para1:类型 0=普通
      para2:X
      para3:Y
      para4:W
      para5:H
      para6:箭头指示的类型
      para7:提示文本
注:类型 目的是为了定义相对的坐标
	/** 正常绝对坐标 */
	public static final int TIP_SET_CMD_NORMAL = 0;
	/** 背包装备 */
	public static final int TIP_SET_CMD_WEAPON = 1;
	/** 退出 */
	public static final int TIP_SET_CMD_EXIT = 2;
	/** 怪物 */
	@Deprecated
	public static final int TIP_SET_CMD_MONSTER = 3;
	/** 背包 */
	public static final int TIP_SET_CMD_PACKAGE = 4;
	/** 人物属性界面 */
	public static final int TIP_SET_CMD_ATTRIBUTE = 5;
	/** 人物属性界面退出 */
	public static final int TIP_SET_CMD_ATTRIBUTE_EXIT = 6;
	/** 拾取指示 */
	public static final int TIP_SET_CMD_GETLOOT = 7;
	/** 菜单指示 */
	public static final int TIP_SET_CMD_MENU = 8;

     para6:箭头指示的类型     
	/** 上 */
	public static final int GUIDE_ARROW_ACTION_U = 0;
	/** 右上 */
	public static final int GUIDE_ARROW_ACTION_RU = 1;
	/** 右 */
	public static final int GUIDE_ARROW_ACTION_R = 2;
	/** 右下 */
	public static final int GUIDE_ARROW_ACTION_RD = 3;
	/** 下 */
	public static final int GUIDE_ARROW_ACTION_D = 4;
	/** 左下 */
	public static final int GUIDE_ARROW_ACTION_LD = 5;
	/** 左 */
	public static final int GUIDE_ARROW_ACTION_L = 6;
	/** 左上 */
	public static final int GUIDE_ARROW_ACTION_LU = 7;

ObjDrop? 掉落装备

ObjDrop(0, 2000)
参数:para1:类型 0 = 武器
      para2:时间间隔(ms)

CheckHp? 判断怪物血量

CheckHp(79, 0)
参数:para1:怪物在地图中的Instance ID
      para2:血量

ObjPos? 对象设置坐标

需要完善
ObjPos(79, 10, 10)
参数:para1:怪物在地图中的Instance ID
      para2:X
      para3:Y

ObjAction? 对象设置动画

需要完善
ObjAction(0, 79, 1, 5000)
参数:para1:类别 0=NPC 1=怪物 2=地图摆件
      para2:怪物在地图中的Instance ID
      para3:ACTION ID
      para4:持续时间(ms)

Arrive 到达某个目标地址

判断主角是否到达了目标点
Arrive(10, 79)
参数:para1:目标tileX
      para2:目标tileY   

10 CameraMove? 移动镜头

CameraMove(10, 79,50)
参数:para1:目标tileX
      para2:目标tileY
      para3:总的帧数

11 CameraBack? 镜头返回

返回主角当前视角
CameraBack(50)
参数:para1:总的帧数

12 CameraShake? 屏幕抖动

CameraShake(30)
参数:para1:总的帧数

13 ScreenFadeIn? 屏幕渐变 [变黑]

ScreenFadeIn(3000)
参数:para1:时间 目前没用

14 ScreenFadeOut? 屏幕渐变[变清]

ScreenFadeOut(3000)
参数:para1:时间 目前没用

15 ScreenTip? 屏幕文字提示

ScreenTip(别高兴的太早了,更精彩的在后边呢!我等着你!)
参数:para1:文本

16 MoWangShow? 魔王眼睛出现

MoWangShow()

17 MoWangHide? 魔王眼睛消失

MoWangHide()

18 ObjFace? 对象设置动画id,即方向

需要完善
obj_action (0, 79, 4)
参数:para1:类别 0=NPC 1=怪物 2=地图摆件 3=主角
      para2:怪物在地图中的Instance ID 主角时无用
      para3:ACTION ID 

你可能感兴趣的:(一个基本的脚本管理器的模版)