设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2394|回复: 16
打印 上一主题 下一主题

急!!!!!!!!!!!!

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
16 小时
注册时间
2008-9-20
帖子
9
跳转到指定楼层
1
发表于 2008-9-20 23:10:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
在测试游戏的时候  再买东西的时候说: RGSS `Scene_Map`的214行 NameError 发生错误。
                                     uninitialized constant Scene_Map::Scene_Shop
怎么回事?
此贴于 2008-10-13 22:57:35 被版主八云紫提醒,请楼主看到后对本贴做出回应。
版务信息:版主帮忙结贴~

Lv2.观梦者

神隐的主犯

梦石
0
星屑
299
在线时间
271 小时
注册时间
2008-2-22
帖子
7691

贵宾

2
发表于 2008-9-20 23:11:08 | 只看该作者
Scene_Map 214 行 发上来。

NameError

存取未定义区域变量或常量时抛出此异常


《天空之城 —— 破碎的命运》
回复 支持 反对

使用道具 举报

Lv1.梦旅人

忆颐

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-4-26
帖子
2048
3
发表于 2008-9-20 23:11:17 | 只看该作者
尿急请去上WC
这素脚本问题,我素打酱油路过
我已经没有当时刚来6R时的那种激情了啊。
看来6R中的人又变了一轮,让我很陌生。
当时我只是路过,什么都没留下。
因为记得我的人已经不多了吧。
http://hi.baidu.com/fantasylen
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
16 小时
注册时间
2008-9-20
帖子
9
4
 楼主| 发表于 2008-9-20 23:14:33 | 只看该作者
$scene = Scene_Shop.new
回复 支持 反对

使用道具 举报

Lv2.观梦者

神隐的主犯

梦石
0
星屑
299
在线时间
271 小时
注册时间
2008-2-22
帖子
7691

贵宾

5
发表于 2008-9-20 23:16:22 | 只看该作者
用 英文,半角 重新输入一次,试试。

呃,还是把 Scene_Map 的脚本都发上来吧。

《天空之城 —— 破碎的命运》
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
16 小时
注册时间
2008-9-20
帖子
9
6
 楼主| 发表于 2008-9-20 23:40:53 | 只看该作者
  1. #==============================================================================
  2. # ■ Scene_Map
  3. #------------------------------------------------------------------------------
  4. #  处理菜单画面的类。
  5. #==============================================================================

  6. class Scene_Map < Scene_Base
  7.   #--------------------------------------------------------------------------
  8.   # ● 开始处理
  9.   #--------------------------------------------------------------------------
  10.   def start
  11.     super
  12.     $game_map.refresh
  13.     @spriteset = Spriteset_Map.new
  14.     @message_window = Window_Message.new
  15.   end
  16.   #--------------------------------------------------------------------------
  17.   # ● 执行过渡
  18.   #--------------------------------------------------------------------------
  19.   def perform_transition
  20.     if Graphics.brightness == 0       # 战斗后,直接显示
  21.       fadein(30)
  22.     else                              # 恢复菜单
  23.       Graphics.transition(15)
  24.     end
  25.   end
  26.   #--------------------------------------------------------------------------
  27.   # ● 終了処理
  28.   #--------------------------------------------------------------------------
  29.   def terminate
  30.     super
  31.     if $scene.is_a?(Scene_Battle)     # 切换战斗画面的情况
  32.       @spriteset.dispose_characters   # 为了生成背景遮蔽角色
  33.     end
  34.     snapshot_for_background
  35.     @spriteset.dispose
  36.     @message_window.dispose
  37.     if $scene.is_a?(Scene_Battle)     # 切换到战斗画面的情况
  38.       perform_battle_transition       # 执行战斗前过渡
  39.     end
  40.   end
  41.   #--------------------------------------------------------------------------
  42.   # ● 基本更新处理
  43.   #--------------------------------------------------------------------------
  44.   def update_basic
  45.     Graphics.update                   # 刷新游戏画面
  46.     Input.update                      # 刷新输入信息
  47.     $game_map.update                  # 刷新地图
  48.     @spriteset.update                 # 刷新Spriteset
  49.   end
  50.   #--------------------------------------------------------------------------
  51.   # ● 刷新画面
  52.   #--------------------------------------------------------------------------
  53.   def update
  54.     super
  55.     $game_map.interpreter.update      # 刷新解释器
  56.     $game_map.update                  # 刷新地图
  57.     $game_player.update               # 刷新玩家
  58.     $game_system.update               # 刷新计时器
  59.     @spriteset.update                 # 刷新Spriteset
  60.     @message_window.update            # 刷新文章窗口
  61.     unless $game_message.visible      # 不是显示文章的情况
  62.       update_transfer_player
  63.       update_encounter
  64.       update_call_menu
  65.       update_call_debug
  66.       update_scene_change
  67.     end
  68.   end
  69.   #--------------------------------------------------------------------------
  70.   # ● 画面的淡入
  71.   #     duration : 时间
  72.   #    在地图画面中,Graphics.fadeout不适合天气效果
  73.   #    和远景的滚动等移动画面渐现。
  74.   #--------------------------------------------------------------------------
  75.   def fadein(duration)
  76.     Graphics.transition(0)
  77.     for i in 0..duration-1
  78.       Graphics.brightness = 255 * i / duration
  79.       update_basic
  80.     end
  81.     Graphics.brightness = 255
  82.   end
  83.   #--------------------------------------------------------------------------
  84.   # ● 画面的淡出
  85.   #     duration : 时间
  86.   #    与淡入相同,Graphics.fadein 不直接使用。
  87.   #--------------------------------------------------------------------------
  88.   def fadeout(duration)
  89.     Graphics.transition(0)
  90.     for i in 0..duration-1
  91.       Graphics.brightness = 255 - 255 * i / duration
  92.       update_basic
  93.     end
  94.     Graphics.brightness = 0
  95.   end
  96.   #--------------------------------------------------------------------------
  97.   # ● 场所移动的处理
  98.   #--------------------------------------------------------------------------
  99.   def update_transfer_player
  100.     return unless $game_player.transfer?
  101.     fade = (Graphics.brightness > 0)
  102.     fadeout(30) if fade
  103.     @spriteset.dispose              # 释放spriteset
  104.     $game_player.perform_transfer   # 执行场所移动
  105.     $game_map.autoplay              # BGM 和 BGS 自动切换
  106.     $game_map.update
  107.     Graphics.wait(15)
  108.     @spriteset = Spriteset_Map.new  # Spriteset再生成
  109.     fadein(30) if fade
  110.     Input.update
  111.   end
  112.   #--------------------------------------------------------------------------
  113.   # ● 遇敌处理
  114.   #--------------------------------------------------------------------------
  115.   def update_encounter
  116.     return if $game_player.encounter_count > 0        # 遭遇步数未满?
  117.     return if $game_map.interpreter.running?          # 时间执行中?
  118.     return if $game_system.encounter_disabled         # 遇敌禁止中?
  119.     troop_id = $game_player.make_encounter_troop_id   # 确定敌人队伍
  120.     return if $data_troops[troop_id] == nil           # 敌人队伍无效?
  121.     $game_troop.setup(troop_id)
  122.     $game_troop.can_escape = true
  123.     $game_temp.battle_proc = nil
  124.     $game_temp.next_scene = "battle"
  125.     preemptive_or_surprise
  126.   end
  127.   #--------------------------------------------------------------------------
  128.   # ● 先制攻击和不意打的概率判定
  129.   #--------------------------------------------------------------------------
  130.   def preemptive_or_surprise
  131.     actors_agi = $game_party.average_agi
  132.     enemies_agi = $game_troop.average_agi
  133.     if actors_agi >= enemies_agi
  134.       percent_preemptive = 5
  135.       percent_surprise = 3
  136.     else
  137.       percent_preemptive = 3
  138.       percent_surprise = 5
  139.     end
  140.     if rand(100) < percent_preemptive
  141.       $game_troop.preemptive = true
  142.     elsif rand(100) < percent_surprise
  143.       $game_troop.surprise = true
  144.     end
  145.   end
  146.   #--------------------------------------------------------------------------
  147.   # ● 按取消按钮的菜单呼叫判定
  148.   #--------------------------------------------------------------------------
  149.   def update_call_menu
  150.     if Input.trigger?(Input::B)
  151.       return if $game_map.interpreter.running?        # 事件执行中?
  152.       return if $game_system.menu_disabled            # 菜单禁止中?
  153.       $game_temp.menu_beep = true                     # SE 演奏标志设定
  154.       $game_temp.next_scene = "menu"
  155.     end
  156.   end
  157.   #--------------------------------------------------------------------------
  158.   # ● F9键的Debug窗口呼叫判定
  159.   #--------------------------------------------------------------------------
  160.   def update_call_debug
  161.     if $TEST and Input.press?(Input::F9)    # 在测试游戏中按F9
  162.       $game_temp.next_scene = "debug"
  163.     end
  164.   end
  165.   #--------------------------------------------------------------------------
  166.   # ● 执行画面切换
  167.   #--------------------------------------------------------------------------
  168.   def update_scene_change
  169.     return if $game_player.moving?    # 玩家移动中?
  170.     case $game_temp.next_scene
  171.     when "battle"
  172.       call_battle
  173.     when "shop"
  174.       call_shop
  175.     when "name"
  176.       call_name
  177.     when "menu"
  178.       call_menu
  179.     when "save"
  180.       call_save
  181.     when "debug"
  182.       call_debug
  183.     when "gameover"
  184.       call_gameover
  185.     when "title"
  186.       call_title
  187.     else
  188.       $game_temp.next_scene = nil
  189.     end
  190.   end
  191.   #--------------------------------------------------------------------------
  192.   # ● 切换战斗画面
  193.   #--------------------------------------------------------------------------
  194.   def call_battle
  195.     @spriteset.update
  196.     Graphics.update
  197.     $game_player.make_encounter_count
  198.     $game_player.straighten
  199.     $game_temp.map_bgm = RPG::BGM.last
  200.     $game_temp.map_bgs = RPG::BGS.last
  201.     RPG::BGM.stop
  202.     RPG::BGS.stop
  203.     Sound.play_battle_start
  204.     $game_system.battle_bgm.play
  205.     $game_temp.next_scene = nil
  206.     $scene = Scene_Battle.new
  207.   end
  208.   #--------------------------------------------------------------------------
  209.   # ● 切换商店画面
  210.   #--------------------------------------------------------------------------
  211.   def call_shop
  212.     $game_temp.next_scene = nil
  213.     $scene = Scene_Shop.new
  214.   end
  215.   #--------------------------------------------------------------------------
  216.   # ● 切换姓名输入界面
  217.   #--------------------------------------------------------------------------
  218.   def call_name
  219.     $game_temp.next_scene = nil
  220.     $scene = Scene_Name.new
  221.   end
  222.   #--------------------------------------------------------------------------
  223.   # ● 切换菜单画面
  224.   #--------------------------------------------------------------------------
  225.   def call_menu
  226.     if $game_temp.menu_beep
  227.       Sound.play_decision
  228.       $game_temp.menu_beep = false
  229.     end
  230.     $game_temp.next_scene = nil
  231.     $scene = Scene_Menu.new
  232.   end
  233.   #--------------------------------------------------------------------------
  234.   # ● 切换保存画面
  235.   #--------------------------------------------------------------------------
  236.   def call_save
  237.     $game_temp.next_scene = nil
  238.     $scene = Scene_File.new(true, false, true)
  239.   end
  240.   #--------------------------------------------------------------------------
  241.   # ● 切换Debug界面
  242.   #--------------------------------------------------------------------------
  243.   def call_debug
  244.     Sound.play_decision
  245.     $game_temp.next_scene = nil
  246.     $scene = Scene_Debug.new
  247.   end
  248.   #--------------------------------------------------------------------------
  249.   # ● 切换游戏结束画面
  250.   #--------------------------------------------------------------------------
  251.   def call_gameover
  252.     $game_temp.next_scene = nil
  253.     $scene = Scene_Gameover.new
  254.   end
  255.   #--------------------------------------------------------------------------
  256.   # ● 切换标题画面
  257.   #--------------------------------------------------------------------------
  258.   def call_title
  259.     $game_temp.next_scene = nil
  260.     $scene = Scene_Title.new
  261.     fadeout(60)
  262.   end
  263.   #--------------------------------------------------------------------------
  264.   # ● 执行战斗前过渡
  265.   #--------------------------------------------------------------------------
  266.   def perform_battle_transition
  267.     Graphics.transition(80, "Graphics/System/BattleStart", 80)
  268.     Graphics.freeze
  269.   end
  270. end
复制代码
回复 支持 反对

使用道具 举报

Lv2.观梦者

神隐的主犯

梦石
0
星屑
299
在线时间
271 小时
注册时间
2008-2-22
帖子
7691

贵宾

7
发表于 2008-9-20 23:43:42 | 只看该作者
嘛, 测试了一下,没发现什么问题。

多半是脚本冲突吧。

《天空之城 —— 破碎的命运》
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
16 小时
注册时间
2008-9-20
帖子
9
8
 楼主| 发表于 2008-9-20 23:47:29 | 只看该作者
那该怎么办呀?
回复 支持 反对

使用道具 举报

Lv2.观梦者

神隐的主犯

梦石
0
星屑
299
在线时间
271 小时
注册时间
2008-2-22
帖子
7691

贵宾

9
发表于 2008-9-20 23:48:50 | 只看该作者
全局搜索 class Scene_Map , 看看搜索的结果是不是有两个。

《天空之城 —— 破碎的命运》
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
16 小时
注册时间
2008-9-20
帖子
9
10
 楼主| 发表于 2008-9-20 23:50:28 | 只看该作者
就一个!{/fd}
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-12-30 00:54

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表