使用道具 举报
module RPG class Weapon attr_accessor :power end end class Scene_Title #-------------------------------------------------------------------------- # ● 主处理 #-------------------------------------------------------------------------- def main # 战斗测试的情况下 if $BTEST battle_test return end # 载入数据库 $data_actors = load_data("Data/Actors.rxdata") $data_classes = load_data("Data/Classes.rxdata") $data_skills = load_data("Data/Skills.rxdata") $data_items = load_data("Data/Items.rxdata") $data_weapons = load_data("Data/Weapons.rxdata") $data_armors = load_data("Data/Armors.rxdata") $data_enemies = load_data("Data/Enemies.rxdata") $data_troops = load_data("Data/Troops.rxdata") $data_states = load_data("Data/States.rxdata") $data_animations = load_data("Data/Animations.rxdata") $data_tilesets = load_data("Data/Tilesets.rxdata") $data_common_events = load_data("Data/CommonEvents.rxdata") $data_system = load_data("Data/System.rxdata") $data_weapons[1].power = 2 #......... # 中间的省略 #......... $data_weapons[32].power = 5 # 生成系统对像 $game_system = Game_System.new # 生成标题图形 @sprite = Sprite.new @sprite.bitmap = RPG::Cache.title($data_system.title_name) # 生成命令窗口 s1 = "新游戏" s2 = "继续" s3 = "退出" @command_window = Window_Command.new(192, [s1, s2, s3]) @command_window.back_opacity = 160 @command_window.x = 320 - @command_window.width / 2 @command_window.y = 288 # 判定继续的有效性 # 存档文件一个也不存在的时候也调查 # 有効为 @continue_enabled 为 true、无效为 false @continue_enabled = false for i in 0..3 if FileTest.exist?("Save#{i+1}.rxdata") @continue_enabled = true end end # 继续为有效的情况下、光标停止在继续上 # 无效的情况下、继续的文字显示为灰色 if @continue_enabled @command_window.index = 1 else @command_window.disable_item(1) end # 演奏标题 BGM $game_system.bgm_play($data_system.title_bgm) # 停止演奏 ME、BGS Audio.me_stop Audio.bgs_stop # 执行过渡 Graphics.transition # 主循环 loop do # 刷新游戏画面 Graphics.update # 刷新输入信息 Input.update # 刷新画面 update # 如果画面被切换就中断循环 if $scene != self break end end # 装备过渡 Graphics.freeze # 释放命令窗口 @command_window.dispose # 释放标题图形 @sprite.bitmap.dispose @sprite.dispose end end
#-------------------------------------------------------------------------- # ● 获取基本 MaxHP #-------------------------------------------------------------------------- def base_maxhp weapon = $data_weapons[@weapon_id] maxhp = $data_actors[@actor_id].parameters[0, @level] if weapon return weapon.power * 5 + maxhp end @hp = [@hp, maxhp].min return maxhp end
for i in 1...$data_weapons.size $data_weapons.power = 0 end
本版积分规则 发表回复 回帖并转播 回帖后跳转到最后一页
Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.