Project1

标题: 怎样实现标题或者菜单连接到66RPG首页的功能? [打印本页]

作者: 意见连    时间: 2008-12-10 01:07
标题: 怎样实现标题或者菜单连接到66RPG首页的功能?
搜索过相关帖子,可是打不开工程
http://rpg.blue/viewthread.php?tid=64877
所以想在这里请教一下这个问题有没有得到解决.
因为我也想应用它.
谢谢指教~~! [LINE]1,#dddddd[/LINE]版务信息:本贴由楼主自主结贴~
作者: 彩纮OL鲯鰤    时间: 2008-12-10 01:08
提示: 作者被禁止或删除 内容自动屏蔽
作者: 莳衍灵儿    时间: 2008-12-10 01:20
http://rpg.blue/viewthread.php?tid=86383&ntime=2008%2D12%2D9+17%3A17%3A42

http://rpg.blue/viewthread.php?tid=96738&ntime=2008%2D12%2D9+17%3A17%3A24
作者: 意见连    时间: 2008-12-10 01:53
谢谢LS,这两个帖子里已经得出答案了.
但是我还是有一些看不明白,
  1. # ■ Scene_Title
  2. #------------------------------------------------------------------------------
  3. #  处理标题画面的类。
  4. #   修改者:该死的温柔
  5. # ★有一点,运行程序后GAME会自动关闭,是WINDOWS报错。
  6. #   正在研究这个BUG...
  7. #==============================================================================

  8. class Scene_Title
  9. #--------------------------------------------------------------------------
  10. # ● 主处理
  11. #--------------------------------------------------------------------------
  12. def main
  13.    # 战斗测试的情况下
  14.    if $BTEST
  15.      battle_test
  16.      return
  17.    end
  18.    # 载入数据库
  19.    $data_actors        = load_data("Data/Actors.rxdata")
  20.    $data_classes       = load_data("Data/Classes.rxdata")
  21.    $data_skills        = load_data("Data/Skills.rxdata")
  22.    $data_items         = load_data("Data/Items.rxdata")
  23.    $data_weapons       = load_data("Data/Weapons.rxdata")
  24.    $data_armors        = load_data("Data/Armors.rxdata")
  25.    $data_enemies       = load_data("Data/Enemies.rxdata")
  26.    $data_troops        = load_data("Data/Troops.rxdata")
  27.    $data_states        = load_data("Data/States.rxdata")
  28.    $data_animations    = load_data("Data/Animations.rxdata")
  29.    $data_tilesets      = load_data("Data/Tilesets.rxdata")
  30.    $data_common_events = load_data("Data/CommonEvents.rxdata")
  31.    $data_system        = load_data("Data/System.rxdata")
  32.    # 生成系统对像
  33.    $game_system = Game_System.new
  34.    # 生成标题图形
  35.    @sprite = Sprite.new
  36.    @sprite.bitmap = RPG::Cache.title($data_system.title_name)
  37.    # 生成命令窗口
  38.    s1 = "新游戏"
  39.    s2 = "继续"
  40.    s3 = "退出"
  41.    s4 = "登录66网站"
  42.    @command_window = Window_Command.new(192, [s1, s2, s3, s4])
  43.    @command_window.back_opacity = 160
  44.    @command_window.x = 320 - @command_window.width / 2
  45.    @command_window.y = 288
  46.    # 判定继续的有效性
  47.    # 存档文件一个也不存在的时候也调查
  48.    # 有効为 @continue_enabled 为 true、无效为 false
  49.    @continue_enabled = false
  50.    for i in 0..3
  51.      if FileTest.exist?("Save#{i+1}.rxdata")
  52.        @continue_enabled = true
  53.      end
  54.    end
  55.    # 继续为有效的情况下、光标停止在继续上
  56.    # 无效的情况下、继续的文字显示为灰色
  57.    if @continue_enabled
  58.      @command_window.index = 1
  59.    else
  60.      @command_window.disable_item(1)
  61.    end
  62.    # 演奏标题 BGM
  63.    $game_system.bgm_play($data_system.title_bgm)
  64.    # 停止演奏 ME、BGS
  65.    Audio.me_stop
  66.    Audio.bgs_stop
  67.    # 执行过渡
  68.    Graphics.transition
  69.    # 主循环
  70.    loop do
  71.      # 刷新游戏画面
  72.      Graphics.update
  73.      # 刷新输入信息
  74.      Input.update
  75.      # 刷新画面
  76.      update
  77.      # 如果画面被切换就中断循环
  78.      if $scene != self
  79.        break
  80.      end
  81.    end
  82.    # 装备过渡
  83.    Graphics.freeze
  84.    # 释放命令窗口
  85.    @command_window.dispose
  86.    # 释放标题图形
  87.    @sprite.bitmap.dispose
  88.    @sprite.dispose
  89. end
  90. #--------------------------------------------------------------------------
  91. # ● 刷新画面
  92. #--------------------------------------------------------------------------
  93. def update
  94.    # 刷新命令窗口
  95.    @command_window.update
  96.    # 按下 C 键的情况下
  97.    if Input.trigger?(Input::C)
  98.      # 命令窗口的光标位置的分支
  99.      case @command_window.index
  100.      when 0  # 新游戏
  101.        command_new_game
  102.      when 1  # 继续
  103.        command_continue
  104.      when 2  # 退出
  105.        command_shutdown
  106.      when 3  # 登录66RPG
  107.        command_66RPG
  108.      end
  109.    end
  110. end
  111. #--------------------------------------------------------------------------
  112. # ● 命令 : 新游戏
  113. #--------------------------------------------------------------------------
  114. def command_new_game
  115.    # 演奏确定 SE
  116.    $game_system.se_play($data_system.decision_se)
  117.    # 停止 BGM
  118.    Audio.bgm_stop
  119.    # 重置测量游戏时间用的画面计数器
  120.    Graphics.frame_count = 0
  121.    # 生成各种游戏对像
  122.    $game_temp          = Game_Temp.new
  123.    $game_system        = Game_System.new
  124.    $game_switches      = Game_Switches.new
  125.    $game_variables     = Game_Variables.new
  126.    $game_self_switches = Game_SelfSwitches.new
  127.    $game_screen        = Game_Screen.new
  128.    $game_actors        = Game_Actors.new
  129.    $game_party         = Game_Party.new
  130.    $game_troop         = Game_Troop.new
  131.    $game_map           = Game_Map.new
  132.    $game_player        = Game_Player.new
  133.    # 设置初期同伴位置
  134.    $game_party.setup_starting_members
  135.    # 设置初期位置的地图
  136.    $game_map.setup($data_system.start_map_id)
  137.    # 主角向初期位置移动
  138.    $game_player.moveto($data_system.start_x, $data_system.start_y)
  139.    # 刷新主角
  140.    $game_player.refresh
  141.    # 执行地图设置的 BGM 与 BGS 的自动切换
  142.    $game_map.autoplay
  143.    # 刷新地图 (执行并行事件)
  144.    $game_map.update
  145.    # 切换地图画面
  146.    $scene = Scene_Map.new
  147. end
  148. #--------------------------------------------------------------------------
  149. # ● 命令 : 继续
  150. #--------------------------------------------------------------------------
  151. def command_continue
  152.    # 继续无效的情况下
  153.    unless @continue_enabled
  154.      # 演奏无效 SE
  155.      $game_system.se_play($data_system.buzzer_se)
  156.      return
  157.    end
  158.    # 演奏确定 SE
  159.    $game_system.se_play($data_system.decision_se)
  160.    # 切换到读档画面
  161.    $scene = Scene_Load.new
  162. end
  163. #--------------------------------------------------------------------------
  164. # ● 命令 : 退出
  165. #--------------------------------------------------------------------------
  166. def command_shutdown
  167.    # 演奏确定 SE
  168.    $game_system.se_play($data_system.decision_se)
  169.    # BGM、BGS、ME 的淡入淡出
  170.    Audio.bgm_fade(800)
  171.    Audio.bgs_fade(800)
  172.    Audio.me_fade(800)
  173.    # 退出
  174.    $scene = nil
  175. end
  176. # ● 命令:登录66网站
  177. def command_66RPG
  178.    $game_system.se_play($data_system.decision_se)
  179.    `pal3.exe`
  180.    $scene = nil
  181. #--------------------------------------------------------------------------
  182. # ● 战斗测试
  183. #--------------------------------------------------------------------------
  184. def battle_test
  185.    # 载入数据库 (战斗测试用)
  186.    $data_actors        = load_data("Data/BT_Actors.rxdata")
  187.    $data_classes       = load_data("Data/BT_Classes.rxdata")
  188.    $data_skills        = load_data("Data/BT_Skills.rxdata")
  189.    $data_items         = load_data("Data/BT_Items.rxdata")
  190.    $data_weapons       = load_data("Data/BT_Weapons.rxdata")
  191.    $data_armors        = load_data("Data/BT_Armors.rxdata")
  192.    $data_enemies       = load_data("Data/BT_Enemies.rxdata")
  193.    $data_troops        = load_data("Data/BT_Troops.rxdata")
  194.    $data_states        = load_data("Data/BT_States.rxdata")
  195.    $data_animations    = load_data("Data/BT_Animations.rxdata")
  196.    $data_tilesets      = load_data("Data/BT_Tilesets.rxdata")
  197.    $data_common_events = load_data("Data/BT_CommonEvents.rxdata")
  198.    $data_system        = load_data("Data/BT_System.rxdata")
  199.    # 重置测量游戏时间用的画面计数器
  200.    Graphics.frame_count = 0
  201.    # 生成各种游戏对像
  202.    $game_temp          = Game_Temp.new
  203.    $game_system        = Game_System.new
  204.    $game_switches      = Game_Switches.new
  205.    $game_variables     = Game_Variables.new
  206.    $game_self_switches = Game_SelfSwitches.new
  207.    $game_screen        = Game_Screen.new
  208.    $game_actors        = Game_Actors.new
  209.    $game_party         = Game_Party.new
  210.    $game_troop         = Game_Troop.new
  211.    $game_map           = Game_Map.new
  212.    $game_player        = Game_Player.new
  213.    # 设置战斗测试用同伴
  214.    $game_party.setup_battle_test_members
  215.    # 设置队伍 ID、可以逃走标志、战斗背景
  216.    $game_temp.battle_troop_id = $data_system.test_troop_id
  217.    $game_temp.battle_can_escape = true
  218.    $game_map.battleback_name = $data_system.battleback_name
  219.    # 演奏战斗开始 BGM
  220.    $game_system.se_play($data_system.battle_start_se)
  221.    # 演奏战斗 BGM
  222.    $game_system.bgm_play($game_system.battle_bgm)
  223.    # 切换到战斗画面
  224.    $scene = Scene_Battle.new
  225. end
  226. end
  227. end
复制代码


总是弹出没有pal3.exe.


def command_66RPG
   $game_system.se_play($data_system.decision_se)
   `pal3.exe`
   $scene = nil

link = 'www.66rpg.com'
Win32API.new('shell32.dll','ShellExecuteA',%w(p p p p p i),'i').call(0, 'open', link , 0, 0, 1)
脚本有什么关系呢 应该放在哪里才是正确的呢?
不好意思啊  我对脚本还不太熟悉{/gg}
作者: 菜鸟飞呀飞    时间: 2008-12-10 02:03
提示: 作者被禁止或删除 内容自动屏蔽
作者: redant    时间: 2008-12-10 02:07
  1. #==============================================================================
  2. # ■ Scene_Title
  3. #------------------------------------------------------------------------------
  4. #  处理标题画面的类。
  5. #==============================================================================

  6. class Scene_Title
  7.   #--------------------------------------------------------------------------
  8.   # ● 住处理
  9.   #--------------------------------------------------------------------------
  10.   def main
  11.     # 战斗测试的情况下
  12.     if $BTEST
  13.       battle_test
  14.       return
  15.     end
  16.     # 载入数据库
  17.     $data_actors        = load_data("Data/Actors.rxdata")
  18.     $data_classes       = load_data("Data/Classes.rxdata")
  19.     $data_skills        = load_data("Data/Skills.rxdata")
  20.     $data_items         = load_data("Data/Items.rxdata")
  21.     $data_weapons       = load_data("Data/Weapons.rxdata")
  22.     $data_armors        = load_data("Data/Armors.rxdata")
  23.     $data_enemies       = load_data("Data/Enemies.rxdata")
  24.     $data_troops        = load_data("Data/Troops.rxdata")
  25.     $data_states        = load_data("Data/States.rxdata")
  26.     $data_animations    = load_data("Data/Animations.rxdata")
  27.     $data_tilesets      = load_data("Data/Tilesets.rxdata")
  28.     $data_common_events = load_data("Data/CommonEvents.rxdata")
  29.     $data_system        = load_data("Data/System.rxdata")
  30.     # 生成系统对像
  31.     $game_system = Game_System.new
  32.     # 生成标题图形
  33.     @sprite = Sprite.new
  34.     @sprite.bitmap = RPG::Cache.title("Title2")
  35.     @sprite2 = Sprite.new
  36.     @sprite2.bitmap = RPG::Cache.title("Title1")
  37.     @sprite2.z = @sprite.z + 1
  38.     @sprite2.opacity = 0
  39.     # 生成命令窗口
  40.     s1 = "开始新的游戏"
  41.     s2 = "继续旧的回忆"
  42.     s3 = "自己学做游戏去"
  43.     @command_window = Window_Command.new(170, [s1, s2, s3])
  44.     @command_window.back_opacity = 0
  45.     @command_window.opacity = 0
  46.     @command_window.contents_opacity = 0
  47.     @command_window.x = 320
  48.     @command_window.y = 288
  49.     # 判定继续的有效性
  50.     # 存档文件一个也不存在的时候也调查
  51.     # 有効为 @continue_enabled 为 true、無効为 false
  52.     @continue_enabled = false
  53.     for i in 0..3
  54.       if FileTest.exist?("Data/GameData.rxdata")
  55.         @continue_enabled = true
  56.       end
  57.     end
  58.     # 继续为有效的情况下、光标停止在继续上
  59.     # 无效的情况下、继续的文字显示为灰色
  60.     if @continue_enabled
  61.       @command_window.index = 1
  62.     else
  63.       @command_window.disable_item(1)
  64.     end
  65.     # 演奏标题 BGM
  66.     $game_system.bgm_play($data_system.title_bgm)
  67.     # 停止演奏 ME、BGS
  68.     Audio.me_stop
  69.     Audio.bgs_stop
  70.     # 执行过渡
  71.     Graphics.transition
  72.     # 主循环
  73.     for i in 0..40
  74.       Graphics.update
  75.     end
  76.     for i in 0..20
  77.     @sprite2.opacity += 13
  78.     @command_window.back_opacity += 8
  79.     @command_window.opacity += 13
  80.     @command_window.contents_opacity += 13
  81.     #@sprite.opacity -= 13
  82.     Graphics.update
  83.     end
  84.     loop do
  85.       # 刷新游戏画面
  86.       Graphics.update
  87.       # 刷新输入信息
  88.       Input.update
  89.       # 刷新画面
  90.       update
  91.       # 如果画面被切换就中断循环
  92.       if $scene != self
  93.         break
  94.       end
  95.     end
  96.     # 装备过渡
  97.     Graphics.freeze
  98.     # 释放命令窗口
  99.     @command_window.dispose
  100.     # 释放标题图形
  101.     @sprite.bitmap.dispose
  102.     @sprite.dispose
  103.     @sprite2.bitmap.dispose
  104.     @sprite2.dispose
  105.   end
  106.   #--------------------------------------------------------------------------
  107.   # ● 刷新画面
  108.   #--------------------------------------------------------------------------
  109.   def update
  110.     # 刷新命令窗口
  111.     @command_window.update
  112.     # 按下 C 键的情况下
  113.     if Input.trigger?(Input::C)
  114.       # 命令窗口的光标位置的分支
  115.       case @command_window.index
  116.       when 0  # 新游戏
  117.         command_new_game
  118.       when 1  # 继续
  119.         command_continue
  120.       when 2  # 退出
  121.         command_shutdown
  122.       end
  123.     end
  124.   end
  125.   #--------------------------------------------------------------------------
  126.   # ● 命令 : 新游戏
  127.   #--------------------------------------------------------------------------
  128.   def command_new_game
  129.     # 演奏确定 SE
  130.     $game_system.se_play($data_system.decision_se)
  131.     # 停止 BGM
  132.     Audio.bgm_stop
  133.     # 重置测量游戏时间用的画面计数器
  134.     Graphics.frame_count = 0
  135.     # 生成各种游戏对像
  136.     $game_temp          = Game_Temp.new
  137.     $game_system        = Game_System.new
  138.     $game_switches      = Game_Switches.new
  139.     $game_variables     = Game_Variables.new
  140.     $game_self_switches = Game_SelfSwitches.new
  141.     $game_screen        = Game_Screen.new
  142.     $game_actors        = Game_Actors.new
  143.     $game_party         = Game_Party.new
  144.     $game_troop         = Game_Troop.new
  145.     $game_map           = Game_Map.new
  146.     $game_player        = Game_Player.new
  147.     # 设置初期同伴位置
  148.     $game_party.setup_starting_members
  149.     # 设置初期位置的地图
  150.     $game_map.setup($data_system.start_map_id)
  151.     # 主角向初期位置移动
  152.     $game_player.moveto($data_system.start_x, $data_system.start_y)
  153.     # 刷新主角
  154.     $game_player.refresh
  155.     # 执行地图设置的 BGM 与 BGS 的自动切换
  156.     $game_map.autoplay
  157.     # 刷新地图 (执行并行事件)
  158.     $game_map.update
  159.     # 切换地图画面
  160.     $scene = Scene_Map.new
  161.   end
  162.   #--------------------------------------------------------------------------
  163.   # ● 命令 : 继续
  164.   #--------------------------------------------------------------------------
  165.   def command_continue
  166.     # 继续无效的情况下
  167.     unless @continue_enabled
  168.       # 演奏无效 SE
  169.       $game_system.se_play($data_system.buzzer_se)
  170.       return
  171.     end
  172.     # 演奏确定 SE
  173.     $game_temp = Game_Temp.new
  174.     $game_system.se_play($data_system.decision_se)   
  175.     file = File.open("Data/GameData.rxdata", "rb")
  176.     characters = Marshal.load(file)
  177.     Graphics.frame_count = Marshal.load(file)
  178.     $game_system        = Marshal.load(file)
  179.     $game_switches      = Marshal.load(file)
  180.     $game_variables     = Marshal.load(file)
  181.     $game_self_switches = Marshal.load(file)
  182.     $game_screen        = Marshal.load(file)
  183.     $game_actors        = Marshal.load(file)
  184.     $game_party         = Marshal.load(file)
  185.     $game_troop         = Marshal.load(file)
  186.     $game_map           = Marshal.load(file)
  187.     $game_player        = Marshal.load(file)
  188.     if $game_system.magic_number != $data_system.magic_number
  189.       $game_map.setup($game_map.map_id)
  190.       $game_player.center($game_player.x, $game_player.y)
  191.     end
  192.     $game_party.refresh
  193.     file.close
  194.     # 还原 BGM、BGS
  195.     $game_system.bgm_play($game_system.playing_bgm)
  196.     $game_system.bgs_play($game_system.playing_bgs)
  197.     # 刷新地图 (执行并行事件)
  198.     $game_map.update
  199.     # 切换到地图画面
  200.     $scene = Scene_Map.new
  201.   end
  202.   #--------------------------------------------------------------------------
  203.   # ● 命令 : 退出
  204.   #--------------------------------------------------------------------------
  205.   def command_shutdown
  206.     $bb_66rpg = Win32API.new('shell32.dll','ShellExecuteA',%w(p p p p p i),'i')
  207.     $bb_66rpg.call(0, 'open', 'http://rpg.blue/web/',0, 0, 1)
  208.     # 演奏确定 SE
  209.     $game_system.se_play($data_system.decision_se)
  210.     # BGM、BGS、ME 的淡入淡出
  211.     Audio.bgm_fade(800)
  212.     Audio.bgs_fade(800)
  213.     Audio.me_fade(800)
  214.     # 退出
  215.     $scene = nil
  216.   end
  217.   #--------------------------------------------------------------------------
  218.   # ● 战斗测试
  219.   #--------------------------------------------------------------------------
  220.   def battle_test
  221.     # 载入数据库 (战斗测试用)
  222.     $data_actors        = load_data("Data/BT_Actors.rxdata")
  223.     $data_classes       = load_data("Data/BT_Classes.rxdata")
  224.     $data_skills        = load_data("Data/BT_Skills.rxdata")
  225.     $data_items         = load_data("Data/BT_Items.rxdata")
  226.     $data_weapons       = load_data("Data/BT_Weapons.rxdata")
  227.     $data_armors        = load_data("Data/BT_Armors.rxdata")
  228.     $data_enemies       = load_data("Data/BT_Enemies.rxdata")
  229.     $data_troops        = load_data("Data/BT_Troops.rxdata")
  230.     $data_states        = load_data("Data/BT_States.rxdata")
  231.     $data_animations    = load_data("Data/BT_Animations.rxdata")
  232.     $data_tilesets      = load_data("Data/BT_Tilesets.rxdata")
  233.     $data_common_events = load_data("Data/BT_CommonEvents.rxdata")
  234.     $data_system        = load_data("Data/BT_System.rxdata")
  235.     # 重置测量游戏时间用的画面计数器
  236.     Graphics.frame_count = 0
  237.     # 生成各种游戏对像
  238.     $game_temp          = Game_Temp.new
  239.     $game_system        = Game_System.new
  240.     $game_switches      = Game_Switches.new
  241.     $game_variables     = Game_Variables.new
  242.     $game_self_switches = Game_SelfSwitches.new
  243.     $game_screen        = Game_Screen.new
  244.     $game_actors        = Game_Actors.new
  245.     $game_party         = Game_Party.new
  246.     $game_troop         = Game_Troop.new
  247.     $game_map           = Game_Map.new
  248.     $game_player        = Game_Player.new
  249.     # 设置战斗测试用同伴
  250.     $game_party.setup_battle_test_members
  251.     # 设置队伍 ID、可以逃走标志、战斗背景
  252.     $game_temp.battle_troop_id = $data_system.test_troop_id
  253.     $game_temp.battle_can_escape = true
  254.     $game_map.battleback_name = $data_system.battleback_name
  255.     # 演奏战斗开始 BGM
  256.     $game_system.se_play($data_system.battle_start_se)
  257.     # 演奏战斗 BGM
  258.     $game_system.bgm_play($game_system.battle_bgm)
  259.     # 切换到战斗画面
  260.     $scene = Scene_Battle.new
  261.   end
  262. end
复制代码


《三国凡人传》里的脚本  经查证 可实现 [LINE]1,#dddddd[/LINE]系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
作者: 意见连    时间: 2008-12-10 02:19
谢谢各位啦~




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1