Project1

标题: 本人的第一个脚本----城市选择 [打印本页]

作者: yangff    时间: 2007-8-22 02:21
标题: 本人的第一个脚本----城市选择

出现bug!!!
请把脚本中#del的脚本喀嚓掉


前言:
    象大富翁那样的选择城市的功能虽说用选择项就能实现,但如果城市过多就比较麻烦了



--------------------------------------------------------------------------------

范例更新(发现bug!!)
范例:http://rpg.blue/upload_program/files/selectCITY1.exe
脚本:



  1. #==============================================================================
  2. #脚本来自www.66rpg.com转载请保留本信息
  3. #==============================================================================
  4. # 制作:小美男
  5. # 冲突:基本不可能
  6. # 使用方法:
  7. # 复制本脚本到main上面
  8. # 事件调用 $Scene = Scene_city.new
  9. # 请仔细查看注释谢谢!
  10. # 这是我的第一个脚本如果有那些地方做的不好请提出来我尽量改

  11. class Scene_city
  12.   #--------------------------------------------------------------------------
  13.   # ● 主处理
  14.   #--------------------------------------------------------------------------
  15.   def main
  16.     # 生成系统对像
  17.     $game_system = Game_System.new
  18.     # 生成标题图形
  19.     # 生成命令窗口
  20.     s1 = "东京"   #城市的名称在此设定
  21.     s2 = "墨西哥"
  22.     s3 = "南非"
  23. #如果要更多的城市就加入 s4 = "城市名" s5 = ......
  24.     @command_window = Window_Command.new(192, [s1, s2, s3]) #更多的城市就在后面加 ,s4 ,s5 ......
  25.     @command_window.back_opacity = 130
  26.     @command_window.x = 320 - @command_window.width / 2
  27.     @command_window.y = 230
  28.        # 演奏标题 BGM
  29.     $game_system.bgm_play($data_system.title_bgm)
  30.     # 停止演奏 ME、BGS
  31.     Audio.me_stop
  32.     Audio.bgs_stop
  33.     # 执行过渡
  34.     Graphics.transition
  35.     # 主循环
  36.     loop do
  37.       # 刷新游戏画面
  38.       Graphics.update
  39.       # 刷新输入信息
  40.       Input.update
  41.       # 刷新画面
  42.       update
  43.       # 如果画面被切换就中断循环
  44.       if $scene != self
  45.         break
  46.       end
  47.     end
  48.     # 装备过渡
  49.     Graphics.freeze
  50.     # 释放命令窗口
  51.     @command_window.dispose
  52.     # 释放标题图形
  53.   end
  54.   
  55. # 下面的其实就是title的内容



  56.   #--------------------------------------------------------------------------
  57.   # ● 刷新画面
  58.   #--------------------------------------------------------------------------
  59.   def update
  60.     # 刷新命令窗口
  61.     @command_window.update
  62.     # 按下 C 键的情况下
  63.     if Input.trigger?(Input::C)
  64.       # 命令窗口的光标位置的分支
  65.       case @command_window.index
  66.       when 0
  67.         command_dj
  68.       when 1
  69.         command_mxg
  70.       when 2
  71.         command_nf
  72.       end
  73.     end
  74.   end
  75.   

  76.   #--------------------------------------------------------------------------
  77.   # ● 命令 : 东京
  78.   #--------------------------------------------------------------------------
  79.   def command_dj
  80.     # 演奏确定 SE
  81.     $game_system.se_play($data_system.decision_se)
  82.     # 停止 BGM
  83.     Audio.bgm_stop
  84.     # 重置测量游戏时间用的画面计数器
  85.     Graphics.frame_count = 0
  86.   #del  # 设置初期同伴位置
  87. #del   $game_party.setup_starting_members
  88.     # 设置初期位置的地图
  89.     $game_map.setup(2) #主角初期的地图id
  90.     # 主角向初期位置移动
  91.     $game_player.moveto(53, 99) #主角初期的x,y
  92.     # 刷新主角
  93.     $game_player.refresh
  94.     # 执行地图设置的 BGM 与 BGS 的自动切换
  95.     $game_map.autoplay
  96.     # 刷新地图 (执行并行事件)
  97.     $game_map.update
  98.     # 切换地图画面
  99.     $scene = Scene_Map.new
  100.   end
  101.   #--------------------------------------------------------------------------
  102.   # ● 命令 : 墨西哥
  103.   #--------------------------------------------------------------------------
  104.   def command_mxg
  105.     # 演奏确定 SE
  106.     $game_system.se_play($data_system.decision_se)
  107.     # 停止 BGM
  108.     Audio.bgm_stop
  109.     # 重置测量游戏时间用的画面计数器
  110.     Graphics.frame_count = 0
  111. #del   # 设置初期同伴位置
  112.   #del  $game_party.setup_starting_members
  113.     # 设置初期位置的地图
  114.     $game_map.setup(6)
  115.     # 主角向初期位置移动
  116.     $game_player.moveto(53, 99)
  117.     # 刷新主角
  118.     $game_player.refresh
  119.     # 执行地图设置的 BGM 与 BGS 的自动切换
  120.     $game_map.autoplay
  121.     # 刷新地图 (执行并行事件)
  122.     $game_map.update
  123.     # 切换地图画面
  124.     $scene = Scene_Map.new
  125.   end
  126.   #--------------------------------------------------------------------------
  127.   # ● 命令 : 南非
  128.   #--------------------------------------------------------------------------
  129.   def command_nf
  130.     # 演奏确定 SE
  131.     $game_system.se_play($data_system.decision_se)
  132.     # 停止 BGM
  133.     Audio.bgm_stop
  134.     # 重置测量游戏时间用的画面计数器
  135.     Graphics.frame_count = 0
  136. #del    # 设置初期同伴位置
  137. #del   $game_party.setup_starting_members
  138.     # 设置初期位置的地图
  139.     $game_map.setup(8)
  140.     # 主角向初期位置移动
  141.     $game_player.moveto(53, 99)
  142.     # 刷新主角
  143.     $game_player.refresh
  144.     # 执行地图设置的 BGM 与 BGS 的自动切换
  145.     $game_map.autoplay
  146.     # 刷新地图 (执行并行事件)
  147.     $game_map.update
  148.     # 切换地图画面
  149.     $scene = Scene_Map.new
  150.     end

  151. #==============================================================================
  152. #脚本来自www.66rpg.com转载请保留本信息
  153. #==============================================================================
  154. end
复制代码
[LINE]1,#dddddd[/LINE]此贴于 2007-9-1 18:58:43 被版主gpra8764提醒,请楼主看到后对本贴做出回应。
谢谢提醒
作者: yangff    时间: 2007-8-22 02:21
标题: 本人的第一个脚本----城市选择

出现bug!!!
请把脚本中#del的脚本喀嚓掉


前言:
    象大富翁那样的选择城市的功能虽说用选择项就能实现,但如果城市过多就比较麻烦了



--------------------------------------------------------------------------------

范例更新(发现bug!!)
范例:http://rpg.blue/upload_program/files/selectCITY1.exe
脚本:



  1. #==============================================================================
  2. #脚本来自www.66rpg.com转载请保留本信息
  3. #==============================================================================
  4. # 制作:小美男
  5. # 冲突:基本不可能
  6. # 使用方法:
  7. # 复制本脚本到main上面
  8. # 事件调用 $Scene = Scene_city.new
  9. # 请仔细查看注释谢谢!
  10. # 这是我的第一个脚本如果有那些地方做的不好请提出来我尽量改

  11. class Scene_city
  12.   #--------------------------------------------------------------------------
  13.   # ● 主处理
  14.   #--------------------------------------------------------------------------
  15.   def main
  16.     # 生成系统对像
  17.     $game_system = Game_System.new
  18.     # 生成标题图形
  19.     # 生成命令窗口
  20.     s1 = "东京"   #城市的名称在此设定
  21.     s2 = "墨西哥"
  22.     s3 = "南非"
  23. #如果要更多的城市就加入 s4 = "城市名" s5 = ......
  24.     @command_window = Window_Command.new(192, [s1, s2, s3]) #更多的城市就在后面加 ,s4 ,s5 ......
  25.     @command_window.back_opacity = 130
  26.     @command_window.x = 320 - @command_window.width / 2
  27.     @command_window.y = 230
  28.        # 演奏标题 BGM
  29.     $game_system.bgm_play($data_system.title_bgm)
  30.     # 停止演奏 ME、BGS
  31.     Audio.me_stop
  32.     Audio.bgs_stop
  33.     # 执行过渡
  34.     Graphics.transition
  35.     # 主循环
  36.     loop do
  37.       # 刷新游戏画面
  38.       Graphics.update
  39.       # 刷新输入信息
  40.       Input.update
  41.       # 刷新画面
  42.       update
  43.       # 如果画面被切换就中断循环
  44.       if $scene != self
  45.         break
  46.       end
  47.     end
  48.     # 装备过渡
  49.     Graphics.freeze
  50.     # 释放命令窗口
  51.     @command_window.dispose
  52.     # 释放标题图形
  53.   end
  54.   
  55. # 下面的其实就是title的内容



  56.   #--------------------------------------------------------------------------
  57.   # ● 刷新画面
  58.   #--------------------------------------------------------------------------
  59.   def update
  60.     # 刷新命令窗口
  61.     @command_window.update
  62.     # 按下 C 键的情况下
  63.     if Input.trigger?(Input::C)
  64.       # 命令窗口的光标位置的分支
  65.       case @command_window.index
  66.       when 0
  67.         command_dj
  68.       when 1
  69.         command_mxg
  70.       when 2
  71.         command_nf
  72.       end
  73.     end
  74.   end
  75.   

  76.   #--------------------------------------------------------------------------
  77.   # ● 命令 : 东京
  78.   #--------------------------------------------------------------------------
  79.   def command_dj
  80.     # 演奏确定 SE
  81.     $game_system.se_play($data_system.decision_se)
  82.     # 停止 BGM
  83.     Audio.bgm_stop
  84.     # 重置测量游戏时间用的画面计数器
  85.     Graphics.frame_count = 0
  86.   #del  # 设置初期同伴位置
  87. #del   $game_party.setup_starting_members
  88.     # 设置初期位置的地图
  89.     $game_map.setup(2) #主角初期的地图id
  90.     # 主角向初期位置移动
  91.     $game_player.moveto(53, 99) #主角初期的x,y
  92.     # 刷新主角
  93.     $game_player.refresh
  94.     # 执行地图设置的 BGM 与 BGS 的自动切换
  95.     $game_map.autoplay
  96.     # 刷新地图 (执行并行事件)
  97.     $game_map.update
  98.     # 切换地图画面
  99.     $scene = Scene_Map.new
  100.   end
  101.   #--------------------------------------------------------------------------
  102.   # ● 命令 : 墨西哥
  103.   #--------------------------------------------------------------------------
  104.   def command_mxg
  105.     # 演奏确定 SE
  106.     $game_system.se_play($data_system.decision_se)
  107.     # 停止 BGM
  108.     Audio.bgm_stop
  109.     # 重置测量游戏时间用的画面计数器
  110.     Graphics.frame_count = 0
  111. #del   # 设置初期同伴位置
  112.   #del  $game_party.setup_starting_members
  113.     # 设置初期位置的地图
  114.     $game_map.setup(6)
  115.     # 主角向初期位置移动
  116.     $game_player.moveto(53, 99)
  117.     # 刷新主角
  118.     $game_player.refresh
  119.     # 执行地图设置的 BGM 与 BGS 的自动切换
  120.     $game_map.autoplay
  121.     # 刷新地图 (执行并行事件)
  122.     $game_map.update
  123.     # 切换地图画面
  124.     $scene = Scene_Map.new
  125.   end
  126.   #--------------------------------------------------------------------------
  127.   # ● 命令 : 南非
  128.   #--------------------------------------------------------------------------
  129.   def command_nf
  130.     # 演奏确定 SE
  131.     $game_system.se_play($data_system.decision_se)
  132.     # 停止 BGM
  133.     Audio.bgm_stop
  134.     # 重置测量游戏时间用的画面计数器
  135.     Graphics.frame_count = 0
  136. #del    # 设置初期同伴位置
  137. #del   $game_party.setup_starting_members
  138.     # 设置初期位置的地图
  139.     $game_map.setup(8)
  140.     # 主角向初期位置移动
  141.     $game_player.moveto(53, 99)
  142.     # 刷新主角
  143.     $game_player.refresh
  144.     # 执行地图设置的 BGM 与 BGS 的自动切换
  145.     $game_map.autoplay
  146.     # 刷新地图 (执行并行事件)
  147.     $game_map.update
  148.     # 切换地图画面
  149.     $scene = Scene_Map.new
  150.     end

  151. #==============================================================================
  152. #脚本来自www.66rpg.com转载请保留本信息
  153. #==============================================================================
  154. end
复制代码
[LINE]1,#dddddd[/LINE]此贴于 2007-9-1 18:58:43 被版主gpra8764提醒,请楼主看到后对本贴做出回应。
谢谢提醒
作者: 轮回者    时间: 2007-8-22 02:24
支持一下
作者: 尝古    时间: 2007-8-22 03:03
提示: 作者被禁止或删除 内容自动屏蔽
作者: yangff    时间: 2007-8-22 04:17
以下引用尝古于2007-8-21 19:03:27的发言:

www.66rog.com是啥

写错了
谢谢!{/dy}{/hx}
作者: 玄机子    时间: 2007-8-22 04:43
{/hx}{/hx}{/hx} 如果有个范例工程 就太好鸟{/hx}
作者: gpra8764    时间: 2007-8-22 05:10
提示: 作者被禁止或删除 内容自动屏蔽
作者: yangff    时间: 2007-8-22 06:05
应大家要求
范例:http://rpg.blue/upload_program/files/sdyfk.exe
范例里因为我自己需要可能更发布脚本不一样
用rmxp1.02的使用记事本打开Game.rxproj更改内容为RPGXP 1.02 -_-bbbb
因为我懒所以只有东京绘制了地图{/tp}
作者: 越前リョーマ    时间: 2007-8-23 17:59
支持一下,

看看效果。
作者: 越前リョーマ    时间: 2007-8-23 18:00
汗啊…………

怎么一进游戏就脚本出错……
要改那些东西?
作者: 越前リョーマ    时间: 2007-8-23 18:02
改了也还是出错……
作者: K’    时间: 2007-8-25 05:41
范例缺少文件,无法查看效果,感谢共享.
作者: yangff    时间: 2007-8-26 17:51
以下引用K’于2007-8-24 21:41:41的发言:

范例缺少文件,无法查看效果,感谢共享.

用范例的........
缺少什么
我没有把素材拷贝进去

作者: 清远    时间: 2007-8-26 19:13
楼主图片素材少了太多
请加入
不然无法看到效果
作者: yangff    时间: 2007-8-27 06:37
K'的积分......
有装rmxp1.02因该就可以用{/hx}
不行的话打开工程
作者: gpra8764    时间: 2007-9-2 02:58
提示: 作者被禁止或删除 内容自动屏蔽
作者: yangff    时间: 2007-9-2 04:27
谢谢,苹果梨的提醒,范例已发,发现低级bug已处理,debug结束!
[LINE]1,#dddddd[/LINE]
楼下{/dy}
看习惯,我比较喜欢脚本{/gg}
选择项比较多比如10个12个,用脚本方便,范例当然只要2、3个{/tp}

作者: 越前リョーマ    时间: 2007-9-2 04:34
感觉还是事件简单……{/gg}
作者: gpra8764    时间: 2007-9-2 21:00
提示: 作者被禁止或删除 内容自动屏蔽
作者: yangff    时间: 2009-6-12 08:00
以下引用越前リョーマ于2007-8-23 10:02:38的发言:

改了也还是出错……

会吗?我很正常啊?




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