-
-
Save dogtopus/5949573 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# 脚本使用设定: | |
LEVEL_UP_POINT = 1 # 每升一级所增加的点数 | |
LEVEL_UP_VARIABLE = 110 # 储存角色点数的变量编号与角色id编号的差值 | |
# 默认情况 = 100, | |
# 则是数据库里1号角色的加点数存于101号变量 | |
# 3号角色的加点数存于103号变量。 | |
# 你可以直接操作变量赠与角色可分配点数 | |
# 每增加一次点数,各项能力值的变化:357-410行 | |
# 使用方法介绍: | |
# 本脚本不会取代原猩豆δ埽皇且桓龈郊庸δ堋?BR># 也就是说,默认的升级还在,但可以用这个功能手动追加点数。 | |
# 如果你想纯粹使用手动加点(而升级不提升能力),只要把数据库中角色升级能力, | |
# 1-99级全部等于一个相同数值就行了。 | |
# 呼唤加点场景的方法:$scene = Scene_Lvup.new(角色编号,返回菜单编号)。 | |
# 默认都是0号 | |
# 加点场景中,page up,page down换人,如果想加点完毕后返回地图, | |
# 464行$scene = Scene_Menu.new(0)改为$scene = Scene_Map.new | |
# 推荐脚本搭配:魔法商店脚本,两者结合,制作自由型RPG | |
#============================================================================== | |
# ■ Window_Command | |
#------------------------------------------------------------------------------ | |
# 一般的命令选择行窗口。(追加定义) | |
#============================================================================== | |
class Window_Command < Window_Selectable | |
#-------------------------------------------------------------------------- | |
# ● 项目有效化 | |
# index : 项目编号 | |
#-------------------------------------------------------------------------- | |
def able_item(index) | |
draw_item(index, normal_color) | |
end | |
end | |
#============================================================================== | |
# ■ Game_Actor | |
#------------------------------------------------------------------------------ | |
# 处理角色的类。(再定义) | |
#============================================================================== | |
class Game_Actor < Game_Battler | |
#-------------------------------------------------------------------------- | |
# ● 更改 EXP | |
# exp : 新的 EXP | |
#-------------------------------------------------------------------------- | |
def exp=(exp) | |
@exp = [[exp, 9999999].min, 0].max | |
# 升级 | |
while @exp >= @exp_list[@level+1] and @exp_list[@level+1] > 0 | |
@level += 1 | |
# 增加4点可自由分配的点数 | |
$game_variables[self.id + LEVEL_UP_VARIABLE] += LEVEL_UP_POINT | |
# 学会特技 | |
for j in $data_classes[@class_id].learnings | |
if j.level == @level | |
learn_skill(j.skill_id) | |
end | |
end | |
end | |
# 降级 | |
while @exp < @exp_list[@level] | |
@level -= 1 | |
end | |
# 修正当前的 HP 与 SP 超过最大值 | |
@hp = [@hp, self.maxhp].min | |
@sp = [@sp, self.maxsp].min | |
end | |
end | |
#============================================================================== | |
# ■ Window_Base | |
#------------------------------------------------------------------------------ | |
# 游戏中全部窗口的超级类(追加定义) | |
#============================================================================== | |
class Window_Base < Window | |
#-------------------------------------------------------------------------- | |
# ● 描绘 HP | |
# actor : 角色 | |
# x : 描画目标 X 坐标 | |
# y : 描画目标 Y 坐标 | |
# width : 描画目标的宽 | |
#-------------------------------------------------------------------------- | |
def draw_actor_hp_lvup(actor, x, y) | |
self.contents.font.color = system_color | |
self.contents.draw_text(x , y, 96, 32, "最大" + $data_system.words.hp) | |
if $temp_hp == 0 | |
self.contents.font.color = normal_color | |
self.contents.draw_text(x + 120 , y, 48, 32, actor.maxhp.to_s, 2) | |
else | |
maxhp = actor.maxhp + $temp_hp | |
self.contents.font.color = Color.new(255, 128, 128, 255) | |
self.contents.draw_text(x + 120 , y, 48, 32, maxhp.to_s ,2) | |
self.contents.font.color = normal_color | |
self.contents.draw_text(x + 155, y, 36, 32, "( ", 2) | |
if $temp_hp >=0 | |
self.contents.font.color = Color.new(255, 128, 128, 255) | |
self.contents.draw_text(x + 155, y, 36, 32, " +",2) | |
else | |
self.contents.font.color = Color.new(255,255,0,255) | |
self.contents.draw_text(x + 155, y, 36, 32, " -",2) | |
end | |
self.contents.draw_text(x + 200, y, 36, 32, $temp_hp.to_s, 2) | |
self.contents.font.color = normal_color | |
self.contents.draw_text(x + 215, y, 36, 32, ")", 2) | |
end | |
end | |
#-------------------------------------------------------------------------- | |
# ● 描绘 SP | |
# actor : 角色 | |
# x : 描画目标 X 坐标 | |
# y : 描画目标 Y 坐标 | |
# width : 描画目标的宽 | |
#-------------------------------------------------------------------------- | |
def draw_actor_sp_lvup(actor, x, y) | |
self.contents.font.color = system_color | |
self.contents.draw_text(x , y, 96, 32, "最大" + $data_system.words.sp) | |
if $temp_sp == 0 | |
self.contents.font.color = normal_color | |
self.contents.draw_text(x + 120 , y, 48, 32, actor.maxsp.to_s, 2) | |
else | |
maxsp = actor.maxsp + $temp_sp | |
self.contents.font.color = Color.new(255, 128, 128, 255) | |
self.contents.draw_text(x + 120 , y, 48, 32, maxsp.to_s ,2) | |
self.contents.font.color = normal_color | |
self.contents.draw_text(x + 155, y, 36, 32, "( ", 2) | |
if $temp_sp >=0 | |
self.contents.font.color = Color.new(255, 128, 128, 255) | |
self.contents.draw_text(x + 155, y, 36, 32, " +",2) | |
else | |
self.contents.font.color = Color.new(255,255,0,255) | |
self.contents.draw_text(x + 155, y, 36, 32, " -",2) | |
end | |
self.contents.draw_text(x + 200, y, 36, 32, $temp_sp.to_s, 2) | |
self.contents.font.color = normal_color | |
self.contents.draw_text(x + 215, y, 36, 32, ")", 2) | |
end | |
end | |
#-------------------------------------------------------------------------- | |
# ● 描绘能力值 | |
# actor : 角色 | |
# x : 描画目标 X 坐标 | |
# y : 描画目标 Y 坐标 | |
# type : 能力值种类 (0~4) | |
#-------------------------------------------------------------------------- | |
def draw_actor_lvup(actor, x, y, type) | |
# 定义数字颜色 | |
lvup = normal_color | |
upcolor = Color.new(255, 128, 128, 255) | |
self.contents.font.color = normal_color | |
case type | |
when 0 | |
parameter_name = $data_system.words.str | |
parameter_value = actor.str | |
parameter_value_temp = parameter_value + $temp_str | |
if $temp_str != 0 | |
lvup = upcolor | |
self.contents.draw_text(x + 256, y, 16, 32, "(") | |
if $temp_str >= 0 | |
self.contents.font.color = lvup | |
self.contents.draw_text(x + 272, y, 80, 32, "+",0) | |
else | |
self.contents.font.color = Color.new(255,255,0,255) | |
self.contents.draw_text(x + 272, y, 80, 32, "-",0) | |
end | |
self.contents.draw_text(x + 272, y, 80, 32, $temp_str.abs.to_s,1) | |
self.contents.font.color = normal_color | |
self.contents.draw_text(x + 272, y, 80, 32, ")", 2) | |
end | |
when 1 | |
parameter_name = $data_system.words.dex | |
parameter_value = actor.dex | |
parameter_value_temp = parameter_value + $temp_dex | |
if $temp_dex != 0 | |
lvup = upcolor | |
self.contents.draw_text(x + 256, y, 16, 32, "(") | |
if $temp_dex >= 0 | |
self.contents.font.color = lvup | |
self.contents.draw_text(x + 272, y, 80, 32, "+",0) | |
else | |
self.contents.font.color = Color.new(255,255,0,255) | |
self.contents.draw_text(x + 272, y, 80, 32, "-",0) | |
end | |
self.contents.draw_text(x + 272, y, 80, 32, $temp_dex.abs.to_s,1) | |
self.contents.font.color = normal_color | |
self.contents.draw_text(x + 272, y, 80, 32, ")", 2) | |
end | |
when 2 | |
parameter_name = $data_system.words.agi | |
parameter_value = actor.agi | |
parameter_value_temp = parameter_value + $temp_agi | |
if $temp_agi != 0 | |
lvup = upcolor | |
self.contents.draw_text(x + 256, y, 16, 32, "(") | |
if $temp_agi >= 0 | |
self.contents.font.color = lvup | |
self.contents.draw_text(x + 272, y, 80, 32, "+",0) | |
else | |
self.contents.font.color = Color.new(255,255,0,255) | |
self.contents.draw_text(x + 272, y, 80, 32, "-",0) | |
end | |
self.contents.draw_text(x + 272, y, 80, 32, $temp_agi.abs.to_s,1) | |
self.contents.font.color = normal_color | |
self.contents.draw_text(x + 272, y, 80, 32, ")", 2) | |
end | |
when 3 | |
parameter_name = $data_system.words.int | |
parameter_value = actor.int | |
parameter_value_temp = parameter_value + $temp_int | |
if $temp_int != 0 | |
lvup = upcolor | |
self.contents.draw_text(x + 256, y, 16, 32, "(") | |
if $temp_int >= 0 | |
self.contents.font.color = lvup | |
self.contents.draw_text(x + 272, y, 80, 32, "+",0) | |
else | |
self.contents.font.color = Color.new(255,255,0,255) | |
self.contents.draw_text(x + 272, y, 80, 32, "-",0) | |
end | |
self.contents.draw_text(x + 272, y, 80, 32, $temp_int.abs.to_s,1) | |
self.contents.font.color = normal_color | |
self.contents.draw_text(x + 272, y, 80, 32, ")", 2) | |
end | |
when 4 | |
parameter_name = "剩余点数" | |
parameter_value = $point | |
if $point != 0 | |
lvup = upcolor | |
end | |
end | |
self.contents.font.color = system_color | |
self.contents.draw_text(x, y, 120, 32, parameter_name) | |
self.contents.font.color = normal_color | |
self.contents.draw_text(x + 120, y, 36, 32, parameter_value.to_s) | |
if type != 4 | |
self.contents.draw_text(x + 150, y, 36, 32, "→") | |
end | |
self.contents.font.color = lvup | |
self.contents.draw_text(x + 180, y, 60, 32, parameter_value_temp.to_s) | |
self.contents.font.color = normal_color | |
end | |
end | |
#============================================================================== | |
# ■ Window_lvup | |
#------------------------------------------------------------------------------ | |
# 显示升级状态窗口。 | |
#============================================================================== | |
class Window_Lvup < Window_Base | |
#-------------------------------------------------------------------------- | |
# ● 初始化对像 | |
# actor : 角色 | |
#-------------------------------------------------------------------------- | |
def initialize(actor) | |
super(0, 0, 512, 320) | |
self.contents = Bitmap.new(width - 32, height - 32) | |
@actor = actor | |
refresh | |
end | |
#-------------------------------------------------------------------------- | |
# ● 刷新 | |
#-------------------------------------------------------------------------- | |
def refresh | |
self.contents.clear | |
draw_actor_graphic(@actor, 40, 112) | |
draw_actor_name(@actor, 4, 0) | |
draw_actor_class(@actor, 4 + 144, 0) | |
draw_actor_level(@actor, 96, 32) | |
draw_actor_state(@actor, 96, 64) | |
draw_actor_hp_lvup(@actor, 96+128, 32) | |
draw_actor_sp_lvup(@actor, 96+128, 64) | |
draw_actor_lvup(@actor, 96, 128, 0) | |
draw_actor_lvup(@actor, 96, 160, 1) | |
draw_actor_lvup(@actor, 96, 192, 2) | |
draw_actor_lvup(@actor, 96, 224, 3) | |
draw_actor_lvup(@actor, 96, 256, 4) | |
end | |
end | |
#============================================================================== | |
# ■ Window_Help | |
#------------------------------------------------------------------------------ | |
# 特技及物品的说明、角色的状态显示的窗口。 | |
#============================================================================== | |
class Window_Lvup_Help < Window_Base | |
#-------------------------------------------------------------------------- | |
# ● 初始化对像 | |
#-------------------------------------------------------------------------- | |
def initialize | |
super(0, 320, 640, 160) | |
self.contents = Bitmap.new(width - 32, height - 32) | |
@test = "" #——这个东西用来检测,节约内存专用 | |
end | |
#-------------------------------------------------------------------------- | |
# ● 设置文本 | |
#-------------------------------------------------------------------------- | |
def lvup_text(text1, text2 = nil, text3 = nil, text4 = nil, text5 = nil) | |
if @test != text1 | |
@test = text1 | |
else | |
return | |
end | |
self.contents.clear | |
self.contents.font.color = normal_color | |
self.contents.draw_text(5, 0, self.width - 40, 32, text1) | |
if text2 != nil | |
self.contents.draw_text(5 , 32, self.width - 40, 32, text2) | |
end | |
self.contents.font.size -= 5 | |
if text3 != nil | |
self.contents.draw_text(5 , 64, self.width - 40, 32, text3) | |
end | |
if text4 != nil | |
self.contents.draw_text(5 , 96, self.width - 40, 32, text4) | |
end | |
if text5 != nil | |
self.contents.draw_text(5 , 96, self.width - 40, 32, text5) | |
end | |
self.contents.font.size += 5 | |
end | |
end | |
#============================================================================== | |
# ■ Scene_lvup | |
#------------------------------------------------------------------------------ | |
# 处理升级画面的类。 | |
#============================================================================== | |
class Scene_Lvup | |
#-------------------------------------------------------------------------- | |
# ● 初始化对像 | |
# actor_index : 角色索引 | |
# menu_index : 选项起始位置 | |
#-------------------------------------------------------------------------- | |
def initialize(actor_index = 0 , menu_index = 0) | |
@actor_index = actor_index | |
@menu_index = menu_index | |
end | |
#-------------------------------------------------------------------------- | |
# ● 主处理 | |
#-------------------------------------------------------------------------- | |
def main | |
s1 = "增加HP" | |
s2 = "增加PP" | |
s3 = "增加"+$data_system.words.str | |
s4 = "增加"+$data_system.words.dex | |
s5 = "增加"+$data_system.words.agi | |
s6 = "增加"+$data_system.words.int | |
s7 = "确认加点" | |
s8 = "点数重置" | |
@command_window = Window_Command.new(128, [s1, s2, s3, s4, s5, s6, s7, s8]) | |
@command_window.index = @menu_index | |
# 获取角色 | |
@actor = $game_party.actors[@actor_index] | |
# 将角色的剩余点数带入 | |
$point = $game_variables[@actor.id + LEVEL_UP_VARIABLE] | |
# 初始化临时量 | |
$temp_str = 0 | |
$temp_dex = 0 | |
$temp_agi = 0 | |
$temp_int = 0 | |
$temp_hp = 0 | |
$temp_sp = 0 | |
#========================================================================= | |
# 特别提示:这些设置也可以使用小数,但是可能出现0值意外错误 | |
# (各种编程语言都有这种意外),建议还是使用整数,正负不限 | |
#========================================================================= | |
#========================================================================= | |
# 每提升一次HP,提升多少附加能力 | |
#========================================================================= | |
@hp_hp = 20 # 每提升一次体力提升多少HP | |
@hp_sp = 0 # 每提升一次体力提升多少SP | |
@hp_str = 0 # 每提升一次体力提升多少力量 | |
@hp_dex = 0 # 每提升一次体力提升多少速度 | |
@hp_agi = 0 # 每提升一次体力提升多少灵巧 | |
@hp_int = 0 # 每提升一次体力提升多少魔力 | |
#========================================================================= | |
# 每提升一次SP,提升多少附加能力 | |
#========================================================================= | |
@sp_hp = 10 # 每提升一次体力提升多少HP | |
@sp_sp = 10 # 每提升一次体力提升多少SP | |
@sp_str = 0 # 每提升一次体力提升多少力量 | |
@sp_dex = 0 # 每提升一次体力提升多少速度 | |
@sp_agi = 0 # 每提升一次体力提升多少灵巧 | |
@sp_int = 0 # 每提升一次体力提升多少魔力 | |
#========================================================================= | |
# 每提升一次力量,提升多少附加能力 | |
#========================================================================= | |
@str_hp = 10 # 每提升一次力量附加提升多少HP | |
@str_sp = 0 # 每提升一次力量附加提升多少SP | |
@str_dex = 0 # 每提升一次力量附加提升多少灵巧 | |
@str_agi = 0 # 每提升一次力量附加提升多少速度 | |
@str_int = 0 # 每提升一次力量附加提升多少魔力 | |
@str_str = 1 # 每提升一次力量附加提升多少力量 | |
#========================================================================= | |
# 每提升一次灵巧,提升多少附加能力 | |
#========================================================================= | |
@dex_hp = 10 # 每提升一次灵巧附加提升多少HP | |
@dex_sp = 0 # 每提升一次灵巧附加提升多少SP | |
@dex_str = 0 # 每提升一次灵巧附加提升多少力量 | |
@dex_agi = 0 # 每提升一次灵巧附加提升多少速度 | |
@dex_int = 0 # 每提升一次灵巧附加提升多少魔力 | |
@dex_dex = 1 # 每提升一次灵巧附加提升多少灵巧 | |
#========================================================================= | |
# 每提升一次速度,提升多少附加能力 | |
#========================================================================= | |
@agi_hp = 10 # 每提升一次速度附加提升多少HP | |
@agi_sp = 0 # 每提升一次速度附加提升多少SP | |
@agi_str = 0 # 每提升一次速度附加提升多少力量 | |
@agi_dex = 0 # 每提升一次速度附加提升多少灵巧 | |
@agi_int = 0 # 每提升一次速度附加提升多少魔力 | |
@agi_agi = 1 # 每提升一次速度附加提升多少速度 | |
#========================================================================= | |
# 每提升一次魔力,提升多少附加能力 | |
#========================================================================= | |
@int_hp = 10 # 每提升一次魔力附加提升多少HP | |
@int_sp = 0 # 每提升一次魔力附加提升多少SP | |
@int_str = 0 # 每提升一次魔力附加提升多少力量 | |
@int_dex = 0 # 每提升一次魔力附加提升多少灵巧 | |
@int_agi = 0 # 每提升一次魔力附加提升多少速度 | |
@int_int = 1 # 每提升一次魔力附加提升多少魔力 | |
# 定义说明文字 | |
@text_hp_sc = "HP可以增加生存的能力,可以延长生存的时间!" | |
@text_sp_sc = "PP可以增加特技的次数,还可提升自身特防!" | |
@text_str_sc = $data_system.words.str + "可以增加普攻的威力!" | |
@text_dex_sc = $data_system.words.dex + "可以提高防御力、命中率和必杀!" | |
@text_agi_sc = $data_system.words.agi + "可以提高回避、命中!" | |
@text_int_sc = $data_system.words.int + "可以提高特攻的效果!" | |
@text_save = "保存分配情况并返回游戏" | |
@text_reset= "重新分配能力点数" | |
@text_2 = "每增加一次此项能力值,可以提升能力值" | |
@text_hp = "最大" + $data_system.words.hp + "值" | |
@text_sp = "最大" + $data_system.words.sp + "值" | |
@text_str = "最大" + $data_system.words.str + "值" | |
@text_dex = "最大" + $data_system.words.dex + "值" | |
@text_agi = "最大" + $data_system.words.agi + "值" | |
@text_int = "最大" + $data_system.words.int + "值" | |
s_disable | |
# 生成状态窗口 | |
@lvup_window = Window_Lvup.new(@actor) | |
@lvup_window.x = 128 | |
@lvup_window.y = 0 | |
# 生成帮助窗口并初始化帮助文本 | |
@help_window = Window_Lvup_Help.new | |
# 执行过渡 | |
Graphics.transition(0, "Graphics/Transitions/" + $data_system.battle_transition) | |
# 主循环 | |
loop do | |
# 刷新游戏画面 | |
Graphics.update | |
# 刷新输入信息 | |
Input.update | |
# 刷新画面 | |
update | |
# 如果切换画面就中断循环 | |
if $scene != self | |
break | |
end | |
end | |
# 准备过渡 | |
Graphics.freeze | |
# 释放窗口 | |
@command_window.dispose | |
@lvup_window.dispose | |
@help_window.dispose | |
end | |
#-------------------------------------------------------------------------- | |
# ● 刷新画面 | |
#-------------------------------------------------------------------------- | |
def update | |
# 刷新窗口 | |
@command_window.update | |
# 选项明暗判断(因为太消耗资源,所以屏蔽掉了) | |
s_disable | |
@lvup_window.update | |
#============================================================= | |
# 按下 B 键的情况下 | |
#============================================================= | |
if Input.trigger?(Input::B) | |
# 演奏取消 SE | |
$game_system.se_play($data_system.cancel_se) | |
# 切换到地图画面 | |
################################################# | |
$scene = Scene_Menu.new(3) | |
################################################# | |
return | |
end | |
#============================================================= | |
# 按下 C 键的情况下 | |
#============================================================= | |
if Input.trigger?(Input::C) | |
if @command_window.index == 6 | |
# 演奏确定 SE | |
$game_system.se_play($data_system.decision_se) | |
# 将角色的剩余点数带回 | |
$game_variables[@actor.id + LEVEL_UP_VARIABLE] = $point | |
# 将角色点数实际加上 | |
@actor.str += $temp_str | |
@actor.dex += $temp_dex | |
@actor.agi += $temp_agi | |
@actor.int += $temp_int | |
@actor.maxhp += $temp_hp | |
@actor.maxsp += $temp_sp | |
# 切换到地图画面 | |
################################################# | |
$scene = Scene_Menu.new(3) | |
################################################# | |
return | |
end | |
if @command_window.index == 7 | |
# 演奏确定 SE | |
$game_system.se_play($data_system.cancel_se) | |
# 将角色的剩余点数带入 | |
$point = $game_variables[@actor.id + LEVEL_UP_VARIABLE] | |
# 初始化临时量 | |
$temp_str = 0 | |
$temp_dex = 0 | |
$temp_agi = 0 | |
$temp_int = 0 | |
$temp_hp = 0 | |
$temp_sp = 0 | |
@lvup_window.refresh | |
return | |
end | |
if $point == 0 | |
# 演奏冻结 SE | |
$game_system.se_play($data_system.buzzer_se) | |
return | |
end | |
case @command_window.index | |
when 0 | |
# 演奏确定 SE | |
$game_system.se_play($data_system.decision_se) | |
$temp_hp += @hp_hp | |
$temp_sp += @hp_sp | |
$temp_str += @hp_str | |
$temp_dex += @hp_dex | |
$temp_agi += @hp_agi | |
$temp_int += @hp_int | |
$point -= 1 | |
@lvup_window.refresh | |
s_disable | |
return | |
when 1 | |
# 演奏确定 SE | |
$game_system.se_play($data_system.decision_se) | |
$temp_sp += @sp_sp | |
$temp_hp += @sp_hp | |
$temp_str += @hp_str | |
$temp_dex += @hp_dex | |
$temp_agi += @hp_agi | |
$temp_int += @hp_int | |
$point -= 1 | |
@lvup_window.refresh | |
s_disable | |
return | |
when 2 | |
# 演奏确定 SE | |
$game_system.se_play($data_system.decision_se) | |
$temp_str += @str_str | |
$temp_hp += @str_hp | |
$temp_sp += @str_sp | |
$temp_dex += @str_dex | |
$temp_agi += @str_agi | |
$temp_int += @str_int | |
$point -= 1 | |
@lvup_window.refresh | |
s_disable | |
return | |
when 3 | |
# 演奏确定 SE | |
$game_system.se_play($data_system.decision_se) | |
$temp_dex += @dex_dex | |
$temp_hp += @dex_hp | |
$temp_sp += @dex_sp | |
$temp_str += @dex_str | |
$temp_agi += @dex_agi | |
$temp_int += @dex_int | |
$point -= 1 | |
@lvup_window.refresh | |
s_disable | |
return | |
when 4 | |
# 演奏确定 SE | |
$game_system.se_play($data_system.decision_se) | |
$temp_agi += @agi_agi | |
$temp_hp += @agi_hp | |
$temp_sp += @agi_sp | |
$temp_str += @agi_str | |
$temp_dex += @agi_dex | |
$temp_int += @agi_int | |
$point -= 1 | |
@lvup_window.refresh | |
s_disable | |
return | |
when 5 | |
# 演奏确定 SE | |
$game_system.se_play($data_system.decision_se) | |
$temp_int += @int_int | |
$temp_hp += @int_hp | |
$temp_sp += @int_sp | |
$temp_str += @int_str | |
$temp_dex += @int_dex | |
$temp_agi += @int_agi | |
$point -= 1 | |
@lvup_window.refresh | |
s_disable | |
return | |
end | |
end | |
#============================================================= | |
# 什么都没有按下的情况 | |
#============================================================= | |
case @command_window.index | |
when 0 # 增加HP | |
temptext1 = @text_hp + @hp_hp.to_s + "点 " + @text_str + @hp_str.to_s + "点 " + @text_dex + @hp_dex.to_s + "点" | |
temptext2 = @text_sp + @hp_sp.to_s + "点 " + @text_agi + @hp_agi.to_s + "点 " + @text_int + @hp_int.to_s + "点" | |
@help_window.lvup_text(@text_hp_sc , @text_2 , temptext1 , temptext2) | |
when 1 # 增加SP | |
temptext1 = @text_hp + @sp_hp.to_s + "点 " + @text_str + @sp_str.to_s + "点 " + @text_dex + @sp_dex.to_s + "点" | |
temptext2 = @text_sp + @sp_sp.to_s + "点 " + @text_agi + @sp_agi.to_s + "点 " + @text_int + @sp_int.to_s + "点" | |
@help_window.lvup_text(@text_sp_sc , @text_2 , temptext1 , temptext2) | |
when 2 # 增加力量 | |
temptext1 = @text_hp + @str_hp.to_s + "点 " + @text_str + @str_str.to_s + "点 " + @text_dex + @str_dex.to_s + "点" | |
temptext2 = @text_sp + @str_sp.to_s + "点 " + @text_agi + @str_agi.to_s + "点 " + @text_int + @str_int.to_s + "点" | |
@help_window.lvup_text(@text_str_sc , @text_2 , temptext1 , temptext2) | |
when 3 # 增加灵巧 | |
temptext1 = @text_hp + @dex_hp.to_s + "点 " + @text_str + @dex_agi.to_s + "点 " + @text_dex + @dex_dex.to_s + "点" | |
temptext2 = @text_sp + @dex_sp.to_s + "点 " + @text_agi + @dex_agi.to_s + "点 " + @text_int + @dex_int.to_s + "点" | |
@help_window.lvup_text(@text_dex_sc , @text_2 , temptext1 , temptext2) | |
when 4 # 增加速度 | |
temptext1 = @text_hp + @agi_hp.to_s + "点 " + @text_str + @agi_str.to_s + "点 " + @text_dex + @agi_dex.to_s + "点" | |
temptext2 = @text_sp + @agi_sp.to_s + "点 " + @text_agi + @agi_agi.to_s + "点 " + @text_int + @agi_int.to_s + "点" | |
@help_window.lvup_text(@text_agi_sc , @text_2 , temptext1 , temptext2) | |
when 5 # 增加魔力 | |
temptext1 = @text_hp + @int_hp.to_s + "点 " + @text_str + @int_str.to_s + "点 " + @text_dex + @int_dex.to_s + "点" | |
temptext2 = @text_sp + @int_sp.to_s + "点 " + @text_agi + @int_agi.to_s + "点 " + @text_int + @int_int.to_s + "点" | |
@help_window.lvup_text(@text_int_sc , @text_2 , temptext1 , temptext2) | |
when 6 # 保存设定 | |
@help_window.lvup_text(@text_save) | |
when 7 # 点数重置 | |
@help_window.lvup_text(@text_reset) | |
end | |
#============================================================= | |
# 按下R与L换人的情况 | |
#============================================================= | |
if Input.trigger?(Input::R) | |
# 演奏光标 SE | |
$game_system.se_play($data_system.cursor_se) | |
# 移至下一位角色 | |
@actor_index += 1 | |
@actor_index %= $game_party.actors.size | |
# 切换到别的状态画面 | |
$scene = Scene_Lvup.new(@actor_index , @command_window.index) | |
return | |
end | |
# 按下 L 键的情况下 | |
if Input.trigger?(Input::L) | |
# 演奏光标 SE | |
$game_system.se_play($data_system.cursor_se) | |
# 移至上一位角色 | |
@actor_index += $game_party.actors.size - 1 | |
@actor_index %= $game_party.actors.size | |
# 切换到别的状态画面 | |
$scene = Scene_Lvup.new(@actor_index , @command_window.index) | |
return | |
end | |
end | |
#-------------------------------------------------------------------------- | |
# ● 选项明暗判断 | |
#-------------------------------------------------------------------------- | |
def s_disable | |
# 判断剩余点数是否为0,如果为0,那么增加选项表示为暗色 | |
if $point == 0 | |
@command_window.disable_item(0) | |
@command_window.disable_item(1) | |
@command_window.disable_item(2) | |
@command_window.disable_item(3) | |
@command_window.disable_item(4) | |
@command_window.disable_item(5) | |
else | |
@command_window.able_item(0) | |
@command_window.able_item(1) | |
@command_window.able_item(2) | |
@command_window.able_item(3) | |
@command_window.able_item(4) | |
@command_window.able_item(5) | |
end | |
end | |
end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment