目前共有8篇帖子。 內容轉換:不轉換▼
 
點擊 回復
242 7
【脚本】事件中常用脚本
高級弟子 五級
1樓 發表于:2011-2-10 23:05
显示文章:
$game_temp.message_text= ""
显示引号中的文章。

更改文章选项:
$game_system.message_position =0,1,2
表示上、中、下,三个位置

$game_system.message_frame = 0 ,1
0表示不透明,其他的话就透明

等待:
@wait_count = X
等待X帧

中断事件处理:
command_end

把某一个事件暂时消除
$game_map.events[X].erase
其中X表示把X号事件暂时消除,如果是消除本事件X = @event_id

执行公共事件:
$game_temp.common_event_id = 编号
执行编号的公共事件。注意,这个执行和直接在事件中的公共事件有微妙区别。

开关操作:
$game_switches[编号] = true / false
true是打开,false是关闭

变量操作:
$game_variables[编号] = 数值
这里有一些常用的内容:
rand(100):返回0-99的随机数
rand(100)+10000:返回10000-10099的随机数
$game_party.item_number(编号):编号物品的个数

角色相关:以下为某编号的角色的相关属性
生命:$game_actors[编号].hp
精神:$game_actors[编号].sp
经验:$game_actors[编号].exp
等级:$game_actors[编号].level
最大生命:$game_actors[编号].maxhp
最大精神:$game_actors[编号].maxsp
力量:$game_actors[编号].str
灵巧:$game_actors[编号].dex
速度:$game_actors[编号].agi
魔力:$game_actors[编号].int
攻击力:$game_actors[编号].atk
物理防御:$game_actors[编号].pdef
魔法防御:$game_actors[编号].mdef
回避修正:$game_actors[编号].eva
姓名:$game_actors[编号].name
职业编号:$game_actors[编号].class_id
职业名称:$game_actors[编号].class_name
武器编号:$game_actors[编号].weapon_id
防具1编号:$game_actors[编号].armor1_id
防具2编号:$game_actors[编号].armor2_id
防具3编号:$game_actors[编号].armor3_id
防具4编号:$game_actors[编号].armor4_id
完全回复:$game_actors[编号].recover_all
领悟特技:$game_actors[编号].learn_skill(编号)
遗忘特技:$game_actors[编号].forget_skill(编号)

位置(前卫返回0,中卫返回1,后卫返回2):$data_classes[$game_actors[编号].class_id].position
学会特技总数:$game_actors[编号].skills.size

敌人:$game_troop.enemies[编号]
敌人拥有角色的部分功能,包括.hp,.sp,.maxhp,.maxsp,.str,.dex,.agi,.int,.atk,.pdef,.mdef,.eva

地图的事件属性:
$game_map.events[编号].x,$game_map.events[编号].y
编号事件的x,y坐标
$game_map.events[编号].screen_x,$game_map.events[编号].screen_y
编号事件的屏幕x,y坐标
$game_map.events[编号].direction
编号事件的朝向
$game_map.events[编号].terrain_tag
编号事件所处的地形标志
$game_map.events[编号].moveto(x,y)
把事件扔到(x,y)
——————————————————以上几个事件的,如果要求为角色,则为“$game_player.x”等

地图ID:$game_map.map_id
同伴总人数:$game_party.actors.size
步数:$game_party.steps
金钱:$game_party.gold
游戏总时间(秒数):Graphics.frame_count / Graphics.frame_rate
游戏总帧数:Graphics.frame_count
游戏帧速率(可直接=n调整):Graphics.frame_rate
计时器剩余秒数:$game_system.timer / Graphics.frame_rate
存档次数:$game_system.save_count

独立开关操作:
$game_self_switches[[地图编号,事件编号,"A"]] = true/false
把地图编号的地图上的事件编号的事件的A开关打开。其实不光ABCD,还可以建立更多独立开关,不过调用也得用同样脚本。

计时器打开:
$game_system.timer = 需要的秒数;$game_system.timer_working = true

计时器关闭:

高級弟子 五級
2樓 發表于:2011-2-10 23:05
$game_system.timer_working = false

增减金钱:
$game_party.gain_gold(金钱量)

增减物品:
$game_party.gain_item(物品编号,数量)
举例:
$game_party.gain_item(rand(10),rand(10)):随机获得0-9号中某一物品,数量为0-9随机。

增减武器:
$game_party.gain_weapon(物品编号,数量)

增减防具:
$game_party.gain_armor(物品编号,数量)

清空现有所有物品:
$game_party.items.clear

清空所有武器:
$game_party.weapons.clear

清空所有防具:
$game_party.armors.clear

角色替换:
加入角色:$game_party.add_actor(编号)
删除角色:$game_party.remove_actor(编号)
初始化角色:$game_party[编号].setup(编号)

更改窗口外观:
$game_system.windowskin_name = 文件名

更改禁止存档
$game_system.save_disabled = true/false

更改禁止菜单:
$game_system.menu_disabled = true/false

更改禁止遇敌:
$game_system.encounter_disabled = true/false

地图卷动:
$game_map.start_scroll(方向,距离,速度)

地图某角色显示动画:
$game_map.events[id].animation_id = 动画编号

角色透明:
$game_player.transparent = true/false

等待移动结束:
@move_route_waiting = true

开始更改色调:
$game_screen.start_tone_change(Tone.new(R,G,B,A),帧数)

画面闪烁:
$game_screen.start_flash(Color.new(R,G,B,A),帧数)

画面振动:
$game_screen.start_shake(力度,速度,帧数)

高級弟子 五級
3樓 發表于:2011-2-10 23:06
$game_system.timer_working = false

增减金钱:
$game_party.gain_gold(金钱量)

增减物品:
$game_party.gain_item(物品编号,数量)
举例:
$game_party.gain_item(rand(10),rand(10)):随机获得0-9号中某一物品,数量为0-9随机。

增减武器:
$game_party.gain_weapon(物品编号,数量)

增减防具:
$game_party.gain_armor(物品编号,数量)

清空现有所有物品:
$game_party.items.clear

清空所有武器:
$game_party.weapons.clear

清空所有防具:
$game_party.armors.clear

角色替换:
加入角色:$game_party.add_actor(编号)
删除角色:$game_party.remove_actor(编号)
初始化角色:$game_party[编号].setup(编号)

更改窗口外观:
$game_system.windowskin_name = 文件名

更改禁止存档
$game_system.save_disabled = true/false

更改禁止菜单:
$game_system.menu_disabled = true/false

更改禁止遇敌:
$game_system.encounter_disabled = true/false

地图卷动:
$game_map.start_scroll(方向,距离,速度)

地图某角色显示动画:
$game_map.events[id].animation_id = 动画编号

角色透明:
$game_player.transparent = true/false

等待移动结束:
@move_route_waiting = true

开始更改色调:
$game_screen.start_tone_change(Tone.new(R,G,B,A),帧数)

画面闪烁:
$game_screen.start_flash(Color.new(R,G,B,A),帧数)

画面振动:
$game_screen.start_shake(力度,速度,帧数)

高級弟子 五級
4樓 發表于:2011-2-10 23:06
$game_system.bgm_play(a); # 播放bgm,其中参数a为要播放的声音文件
$game_system.bgm_stop; # 停止bgm
$game_system.bgm_fade(time); # 淡出bgm,其中参数time是需要的秒数
$game_system.bgm_memorize; # 记忆当前播放的bgm
$game_system.bgm_restore; # 还原记忆的bgm
$game_system.bgs_play(bgs); # 演奏bgs,其中参数bgs为需要播放的声音文件
$game_system.bgs_fade(time); # 淡出bgs,其中参数time是需要的秒数
$game_system.bgs_memorize; # 记忆bgs
$game_system.bgs_restore; # 还原bgs
$game_system.me_play(me); # 演奏me,其中参数me是要播放的声音文件
$game_system.se_play(se); # 播放se(我不想再多说了)
$game_system.se_stop; # 停止se
$game_system.playing_bgm; # 返回演奏的bgm(也就是说获取演奏的bgm,可以代入变量)
$game_system.playing_bgs; # 返回演奏的bgs
$game_system.windowskin_name; # 返回当前正在使用的窗口的文件名,此属性值可读写
$game_system.battle_bgm; # 返回数据库中设置的战斗时播放的bgm,此属性值可读写
$game_system.battle_end_me; # 返回数据库中设置的战斗结束时播放的bgm,此属性值可读写
$game_screen.start_tone_change(tone, duration); # 这个是更改画面的色调,其中参数tone为色调,duration为所用的时间
$game_screen.start_flash(color, duration); # 这个是开始画面闪烁。其中参数color是颜色,duration是时间
$game_screen.start_shake(power, speed, duration); # 这个是震动画面。其中参数power是强度,speed是速度,duration是时间
$game_screen.weather(type, power, duration); # 这个是设置天气。type是类型,power是强度,duration是时间
$game_map.encounter_list; # 当前地图的遇敌列表
$game_map.encounter_step; # 当前地图的遇敌步数
$game_player.move_down; # 让勇士向下走一步
$game_player.move_left; # 让勇士向左走一步
$game_player.move_up; # 让勇士向上走一步
$game_player.move_right; # 让勇士向右走一步
$game_player.moveto(x, y); # 让勇士向指定坐标处移动
$game_map.height; # 当前地图的宽度
$game_map.width; # 当前地图的高度
$game_map.map_id; # 当前地图的id
$game_map.tileset_name; # 这个是当前所用地图元件图片的文件名
$game_map.autotile_names; # 这个是当前地图有哪些自动元件,返回值是数组
$game_map.panorama_name; # 这个是当前地图的全景图
$game_map.panorama_hue; # 当前地图的全景图的色相
$game_map.fog_name; # 当前地图的全景图的色相
$game_map.fog_hue; # 当前地图的全景图的色相
$game_map.fog_opacity; # 当前地图雾的不透明度
$game_map.fog_blend_type; # 当前地图雾的混合方式
$game_map.fog_zoom; # 当前地图雾的放大率
$game_map.fog_sx; # 当前地图雾的x坐标
$game_map.fog_sy; # 当前地图雾的y坐标
$game_map.battleback_name; # 当前地图的战斗背景
$game_map.terrain_tags; # 当前地图的地形标志
$game_map.events; # 当前地图的全部事件及事件的属性
$game_map.fog_ox; # 雾的原点x坐标
$game_map.fog_oy; # 雾的原点y坐标
$game_map.fog_tone; # 雾的色调

$game_map.events是当前地图全部事件及属性,所以它还具有如下列举的方法,它是一个对象。
$game_map.events[编号].list; # 指定事件的执行内容
$game_map.events[编号].list; # 指定事件的执行内容
$game_map.events[编号].trigger; # 指定事件的开始条件。从0开始
$game_map.events[编号].start # 强行执行指定的事件
$game_map.events[编号].erase # 将指定事件消失,注意切换地图后它还会出现
高級弟子 五級
5樓 發表于:2011-2-11 12:26

Color.new

这是初始化一个color类,ruby的语法。。。

高級弟子 五級
6樓 發表于:2011-2-11 12:26

回复:5楼

应该是实例化

高級弟子 五級
7樓 發表于:2011-2-11 12:27

class A

 

end

 

@s=A.new

 

该这样

高級弟子 五級
8樓 發表于:2011-2-11 12:27
ruby中类名第一个字符必须是大写的,否则会脚本错误

回復帖子

內容:
用戶名: 您目前是匿名發表
驗證碼:
(快捷鍵:Ctrl+Enter)
 

本帖信息

點擊數:242 回複數:7
評論數: ?
作者: 蓝晶の骑士
最後回復:蓝晶の骑士
最後回復時間:2011-2-11 12:27
 
©2010-2024 Arslanbar Ver2.0
除非另有聲明,本站採用創用CC姓名標示-相同方式分享 3.0 Unported許可協議進行許可。