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

Project1

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

[已经解决] 求教用此HP脚本后新游戏报错的问题

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
84 小时
注册时间
2011-7-8
帖子
44
跳转到指定楼层
1
发表于 2012-10-18 22:32:39 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
就是下面这个HP脚本,用了之后用存档载入游戏玩没问题,但是如果开始新游戏的话就会报错。 如图


求教此脚本要如何修改才不出错,本人是脚本小白 ……我这里面用的是21号变量代入的队长的ID

RUBY 代码复制
  1. #----------------------------------------------------------------------------
  2. #マップにウインドウ表示
  3. #----------------------------------------------------------------------------
  4.  
  5. module MARU_MAP_WINDOW
  6.  
  7.   #★設定項目
  8.  
  9.   SWITCH = 1 #マップウインドウ表示に使用するスイッチ番号
  10.              #該当スイッチONで表示、OFFで非表示
  11.  
  12.   ACTOR  = 21 #ステータスを表示するアクターIDを参照する変数の番号
  13.              #変数が0の時はアクターID1番のステータスを表示
  14.  
  15.   NAME   =  "満腹度"     #追加ウインドウに表示する名前
  16.   VALUE  =  191            #満腹度(仮)の値を操作する変数の番号
  17.   ASWITCH = 1            #追加ウインドウを表示するスイッチ
  18.                          #(上のスイッチと同じにする事で同時に管理可能)
  19.  
  20.  
  21.   #★設定終わり
  22.  
  23. end
  24.  
  25.  
  26.  
  27. #==============================================================================
  28. # ■ Scene_Map
  29. #------------------------------------------------------------------------------
  30. #  マップ画面の処理を行うクラスです。
  31. #==============================================================================
  32.  
  33. class Scene_Map < Scene_Base
  34.   #--------------------------------------------------------------------------
  35.   # ● 全ウィンドウの作成
  36.   #--------------------------------------------------------------------------
  37.   alias ma__create_all_windows create_all_windows
  38.   def create_all_windows
  39.     ma__create_all_windows
  40.     create_status_windows
  41.   end
  42.   #--------------------------------------------------------------------------
  43.   # ● 表示ウインドウの作成
  44.   #--------------------------------------------------------------------------
  45.   def create_status_windows
  46.     @actorsta = $game_actors[$game_variables[MARU_MAP_WINDOW::ACTOR]]
  47.     create_hpmp_window
  48.     create_extra_window
  49.   end
  50.   #--------------------------------------------------------------------------
  51.   # ● HP・MPウインドウの作成
  52.   #--------------------------------------------------------------------------
  53.   def create_hpmp_window
  54.     @hpmp_window = Window_Status_e.new
  55.   end
  56.   #--------------------------------------------------------------------------
  57.   # ● 経験値ウインドウの作成
  58.   #--------------------------------------------------------------------------
  59.   def create_extra_window
  60.     @ext_window = Window_Extra.new
  61.     @ext_window.width = @ext_window.width
  62.   end
  63.  
  64.   #--------------------------------------------------------------------------
  65.   # ● フレーム更新
  66.   #--------------------------------------------------------------------------
  67.   alias ma_update update
  68.   def update
  69.     ma_update
  70.     @hpmp_window.update
  71.     @ext_window.update
  72.   end
  73. end
  74.  
  75.  
  76. #==============================================================================
  77. # ■ Window_Status_e
  78. #------------------------------------------------------------------------------
  79. #  HPとMPを表示するウィンドウです。
  80. #==============================================================================
  81.  
  82. class Window_Status_e < Window_Selectable
  83.   #--------------------------------------------------------------------------
  84.   # ● オブジェクト初期化
  85.   #--------------------------------------------------------------------------
  86.   def initialize
  87.     super(96,0,148,fitting_height(2))
  88.     refresh
  89.   end
  90.   #--------------------------------------------------------------------------
  91.   # ● ウィンドウ幅の取得
  92.   #--------------------------------------------------------------------------
  93.   def window_width
  94.     return 140
  95.   end
  96.   #--------------------------------------------------------------------------
  97.   # ● ウインドウの更新
  98.   #--------------------------------------------------------------------------
  99.   def update
  100.     super
  101.     if $game_switches[MARU_MAP_WINDOW::SWITCH] == false
  102.       self.visible = false
  103.       return
  104.     else
  105.       self.visible = true
  106.     end
  107.     hpp = @actorsta.hp
  108.     mpp = @actorsta.mp
  109.     mhpp = @actorsta.mhp
  110.     mmpp = @actorsta.mmp
  111.     idd = $game_variables[MARU_MAP_WINDOW::ACTOR]
  112.     if hpp != @last_hp or mpp != @last_mp or idd != @last_id or
  113.        mhpp != @last_mhp or mmpp != @last_mmp
  114.       refresh
  115.     end
  116.   end
  117.   #--------------------------------------------------------------------------
  118.   # ● リフレッシュ
  119.   #--------------------------------------------------------------------------
  120.   def refresh
  121.     contents.clear
  122.     @actorsta = $game_actors[$game_variables[MARU_MAP_WINDOW::ACTOR]]
  123.     draw_actor_hp(@actorsta, 0, 0)
  124.     draw_actor_mp(@actorsta, 0, 24)
  125.     @last_hp = @actorsta.hp
  126.     @last_mhp = @actorsta.mhp
  127.     @last_mp = @actorsta.mp
  128.     @last_mmp = @actorsta.mmp
  129.     @last_id = $game_variables[MARU_MAP_WINDOW::ACTOR]
  130.   end
  131. end
  132.  
  133.  
  134.  
  135.  
  136. #==============================================================================
  137. # ■ Window_Extraa
  138. #------------------------------------------------------------------------------
  139. #  追加項目を表示するウィンドウです。
  140. #==============================================================================
  141.  
  142. class Window_Extra < Window_Base
  143.   #--------------------------------------------------------------------------
  144.   # ● オブジェクト初期化
  145.   #--------------------------------------------------------------------------
  146.   def initialize
  147.     super(0, 72, window_width, fitting_height(1))
  148.     refresh
  149.   end
  150.   #--------------------------------------------------------------------------
  151.   # ● ウィンドウ幅の取得
  152.   #--------------------------------------------------------------------------
  153.   def window_width
  154.     return 140
  155.   end
  156.   #--------------------------------------------------------------------------
  157.   # ● 経験値ウインドウの作成
  158.   #--------------------------------------------------------------------------
  159.   def refresh
  160.     contents.clear
  161.     o_text = MARU_MAP_WINDOW::NAME
  162.     value = $game_variables[MARU_MAP_WINDOW::VALUE]
  163.     change_color(system_color)
  164.     draw_text(0, 0, 140, line_height, o_text)
  165.     change_color(normal_color)
  166.     draw_text(0, 0, window_width - 24, line_height, value.to_s, 2)
  167.     @last_value = $game_variables[MARU_MAP_WINDOW::VALUE]
  168.   end
  169.   #--------------------------------------------------------------------------
  170.   # ● ウインドウの更新
  171.   #--------------------------------------------------------------------------
  172.   def update
  173.     super
  174.     if $game_switches[MARU_MAP_WINDOW::ASWITCH] == false
  175.       self.visible = false
  176.       return
  177.     else
  178.       self.visible = true
  179.     end
  180.     val = $game_variables[MARU_MAP_WINDOW::VALUE]
  181.     if val != @last_value
  182.        refresh
  183.     end
  184.   end
  185. end



‘‘──PIA于2012-10-18 22:34补充以下内容:

一楼图忘发了,补上……
[attachimg]139341[/attachimg]
’’
某军事控翻译的脑残版CLANNAD
点击进入http://tieba.baidu.com/%E4%FE%BB ... 8f8e952ce6c4e1374d0

Lv1.梦旅人

梦石
0
星屑
50
在线时间
84 小时
注册时间
2011-7-8
帖子
44
2
 楼主| 发表于 2012-10-18 22:36:38 | 只看该作者
怎么发了好几次图都显示不出来……
某军事控翻译的脑残版CLANNAD
点击进入http://tieba.baidu.com/%E4%FE%BB ... 8f8e952ce6c4e1374d0
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
879
在线时间
929 小时
注册时间
2011-5-11
帖子
440
3
发表于 2012-10-19 07:45:15 | 只看该作者
你能看一下 $game_variables[MARU_MAP_WINDOW::ACTOR]也就是 $game_variables[21]的值在角色数据库中是否存在?
http://rpg.blue/static/image/smiley/yct/A059.gif中国字认识都不到一半,哪的心情学英语呀!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
84 小时
注册时间
2011-7-8
帖子
44
4
 楼主| 发表于 2012-10-19 12:05:27 | 只看该作者
345912390 发表于 2012-10-19 07:45
你能看一下 $game_variables[MARU_MAP_WINDOW::ACTOR]也就是 $game_variables[21]的值在角色数据库中是否存 ...

我是在公共事件用变量21号带入的第一个队员的角色ID,并行处理的……
某军事控翻译的脑残版CLANNAD
点击进入http://tieba.baidu.com/%E4%FE%BB ... 8f8e952ce6c4e1374d0
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
879
在线时间
929 小时
注册时间
2011-5-11
帖子
440
5
发表于 2012-10-19 21:02:10 | 只看该作者
PIA 发表于 2012-10-19 12:05
我是在公共事件用变量21号带入的第一个队员的角色ID,并行处理的……

改第121行
  1. @actorsta = $game_actors[$game_variables[MARU_MAP_WINDOW::ACTOR]]#原行为角色库成员
  2. #改为下面的
  3. @actorsta = $game_party.members[$game_variables[MARU_MAP_WINDOW::ACTOR]]#修改为队伍成员
复制代码
虽然不知道这是什么作用的脚本,但用上面改法不会出错

评分

参与人数 1梦石 +2 收起 理由
迷糊的安安 + 2 认可答案 附赠66RPG提供的精美好人卡一张^^.

查看全部评分

http://rpg.blue/static/image/smiley/yct/A059.gif中国字认识都不到一半,哪的心情学英语呀!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
84 小时
注册时间
2011-7-8
帖子
44
6
 楼主| 发表于 2012-10-19 23:33:38 | 只看该作者
345912390 发表于 2012-10-19 21:02
改第121行虽然不知道这是什么作用的脚本,但用上面改法不会出错

{:2_275:}非常感谢,已经解决了。其实这个脚本是在地图上显示HP的……
某军事控翻译的脑残版CLANNAD
点击进入http://tieba.baidu.com/%E4%FE%BB ... 8f8e952ce6c4e1374d0
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-13 00:55

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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