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

Project1

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

[已经解决] Window_NameEdit脚本的冲突问题

[复制链接]

Lv4.逐梦者

梦石
0
星屑
12860
在线时间
1459 小时
注册时间
2012-7-24
帖子
1302
跳转到指定楼层
1
 楼主| 发表于 2013-2-3 12:05:59 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
用了一个外挂脚本,但是发现居然和Window_NameEdit这个脚本发生冲突。脚本盲一个,上来论坛请教一下大家。
  1. #==============================================================================
  2. # ■ Window_NameEdit
  3. #------------------------------------------------------------------------------
  4. #  名称输入画面、编辑名称的窗口。
  5. #==============================================================================

  6. class Window_NameEdit < Window_Base
  7.   #--------------------------------------------------------------------------
  8.   # ● 定义实例变量
  9.   #--------------------------------------------------------------------------
  10.   attr_reader   :name                     # 名称
  11.   attr_reader   :index                    # 光标位置
  12.   #--------------------------------------------------------------------------
  13.   # ● 初始化对像
  14.   #     actor    : 角色
  15.   #     max_char : 最大字数
  16.   #--------------------------------------------------------------------------
  17.   def initialize(actor, max_char)
  18.     super(0, 0, 640, 128)
  19.     self.contents = Bitmap.new(width - 32, height - 32)
  20.     [url=home.php?mod=space&uid=95897]@actor[/url] = actor
  21.     @name = actor.name
  22.     @max_char = max_char
  23.     # 控制名字在最大字数以内
  24.     name_array = @name.split(/,/)[0...@max_char]
  25.     @name = ""
  26.     for i in 0...name_array.size
  27.       @name += name_array[i]
  28.     end
  29.     @default_name = @name
  30.     @index = name_array.size
  31.     refresh
  32.     update_cursor_rect
  33.   end
  34.   #--------------------------------------------------------------------------
  35.   # ● 还原为默认的名称
  36.   #--------------------------------------------------------------------------
  37.   def restore_default
  38.     @name = @default_name
  39.     @index = @name.split(//).size
  40.     refresh
  41.     update_cursor_rect
  42.   end
  43.   #--------------------------------------------------------------------------
  44.   # ● 添加文字
  45.   #     character : 要添加的文字
  46.   #--------------------------------------------------------------------------
  47.   def add(character)
  48.     if @index < @max_char and character != ""
  49.       @name += character
  50.       @index += 1
  51.       refresh
  52.       update_cursor_rect
  53.     end
  54.   end
  55.   #--------------------------------------------------------------------------
  56.   # ● 删除文字
  57.   #--------------------------------------------------------------------------
  58.   def back
  59.     if @index > 0
  60.       # 删除一个字
  61.       name_array = @name.split(//)
  62.       @name = ""
  63.       for i in 0...name_array.size-1
  64.         @name += name_array[i]
  65.       end
  66.       @index -= 1
  67.       refresh
  68.       update_cursor_rect
  69.     end
  70.   end
  71.   #--------------------------------------------------------------------------
  72.   # ● 刷新
  73.   #--------------------------------------------------------------------------
  74.   def refresh
  75.     self.contents.clear
  76.     # 描绘名称
  77.     name_array = @name.split(//)
  78.     for i in 0...@max_char
  79.       c = name_array[i]
  80.       if c == nil
  81.         c = "_"
  82.       end
  83.       x = 320 - @max_char * 14 + i * 28
  84.       self.contents.draw_text(x, 32, 28, 32, c, 1)
  85.     end
  86.     # 描绘图形
  87.     draw_actor_graphic(@actor, 320 - @max_char * 14 - 40, 80)
  88.   end
  89.   #--------------------------------------------------------------------------
  90.   # ● 刷新光标矩形
  91.   #--------------------------------------------------------------------------
  92.   def update_cursor_rect
  93.     x = 320 - @max_char * 14 + @index * 28
  94.     self.cursor_rect.set(x, 32, 28, 32)
  95.   end
  96.   #--------------------------------------------------------------------------
  97.   # ● 刷新画面
  98.   #--------------------------------------------------------------------------
  99.   def update
  100.     super
  101.     update_cursor_rect
  102.   end
  103. end
复制代码
  1. class Scene_Title
  2.   def mima
  3.     Audio.bgm_stop
  4.     $game_system.se_play($data_system.decision_se)
  5.     $mima = true
  6.     $game_temp = Game_Temp.new
  7.     $game_actors = Game_Actors.new
  8.     $game_temp.name_actor_id = 9 #代入密码的角色ID,把这个角色的名字清空
  9.     $game_temp.name_max_char = 6 #密码的字数
  10.     $scene = Scene_Name.new
  11.   end
  12. end
  13. class Scene_Name
  14.   def update
  15.     # 刷新窗口
  16.     @edit_window.update
  17.     @input_window.update
  18.     # 按下 B 键的情况下
  19.     if Input.repeat?(Input::B)
  20.       # 光标位置为 0 的情况下
  21.       if @edit_window.index == 0
  22.         return
  23.       end
  24.       # 演奏取消 SE
  25.       $game_system.se_play($data_system.cancel_se)
  26.       # 删除文字
  27.       @edit_window.back
  28.       return
  29.     end
  30.     # 按下 C 键的情况下
  31.     if Input.trigger?(Input::C)
  32.       # 光标位置为 [确定] 的情况下
  33.       if @input_window.character == nil
  34.         # 名称为空的情况下
  35.         if @edit_window.name == ""
  36.           # 还原为默认名称
  37.           @edit_window.restore_default
  38.           # 名称为空的情况下
  39.           if @edit_window.name == ""
  40.             # 演奏冻结 SE
  41.             $game_system.se_play($data_system.buzzer_se)
  42.             return
  43.           end
  44.           # 演奏确定 SE
  45.           $game_system.se_play($data_system.decision_se)
  46.           return
  47.         end
  48.         # 更改角色名称
  49.         @actor.name = @edit_window.name
  50.         # 演奏确定 SE
  51.         $game_system.se_play($data_system.decision_se)
  52. ##############################################################
  53.         if $mima == true
  54.           if @edit_window.name == "123456" #正确的密码
  55.             $mima = false
  56.             $game_temp          = Game_Temp.new
  57.             $game_system        = Game_System.new
  58.             $game_switches      = Game_Switches.new
  59.             $game_variables     = Game_Variables.new
  60.             $game_self_switches = Game_SelfSwitches.new
  61.             $game_screen        = Game_Screen.new
  62.             $game_actors        = Game_Actors.new
  63.             $game_party         = Game_Party.new
  64.             $game_troop         = Game_Troop.new
  65.             $game_map           = Game_Map.new
  66.             $game_player        = Game_Player.new
  67.             $game_party.setup_starting_members
  68.             $game_map.setup(2) # 设置初期位置的地图
  69.             $game_player.moveto(1, 1) # 主角向初期位置移动
  70.             $game_player.refresh
  71.             $game_map.autoplay
  72.             $game_map.update
  73.             $scene = Scene_Map.new
  74.           else
  75.             $game_system.se_play($data_system.buzzer_se)
  76.             return
  77.           end
  78.         else
  79.           $scene = Scene_Map.new
  80.         end
  81. ###############################################################
  82.       end
  83.       # 光标位置为最大的情况下
  84.       if @edit_window.index == $game_temp.name_max_char
  85.         # 演奏冻结 SE
  86.         $game_system.se_play($data_system.buzzer_se)
  87.         return
  88.       end
  89.       # 文字为空的情况下
  90.       if @input_window.character == ""
  91.         # 演奏冻结 SE
  92.         $game_system.se_play($data_system.buzzer_se)
  93.         return
  94.       end
  95.       # 演奏确定 SE
  96.       $game_system.se_play($data_system.decision_se)
  97.       # 添加文字
  98.       @edit_window.add(@input_window.character)
  99.       return
  100.     end
  101.   end
  102. end
复制代码
就这两个脚本,总是提示Window_NameEdit的22行发生错误。

欢迎大家加我

Lv4.逐梦者

梦石
0
星屑
12860
在线时间
1459 小时
注册时间
2012-7-24
帖子
1302
2
 楼主| 发表于 2013-2-4 16:35:06 | 只看该作者
自己定下一下哈~~

欢迎大家加我
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
12860
在线时间
1459 小时
注册时间
2012-7-24
帖子
1302
3
 楼主| 发表于 2013-2-5 18:25:16 | 只看该作者
来个大神帮帮忙吧

欢迎大家加我
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
12860
在线时间
1459 小时
注册时间
2012-7-24
帖子
1302
4
 楼主| 发表于 2013-2-8 15:18:06 | 只看该作者
自己顶一下哈~~

欢迎大家加我
回复 支持 反对

使用道具 举报

Lv2.观梦者


  • 更新完成啦

梦石
0
星屑
799
在线时间
6267 小时
注册时间
2006-6-7
帖子
8462
5
发表于 2013-2-8 16:30:54 | 只看该作者
请问。。提示什么呢
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (版主)

梦石
20
星屑
1840
在线时间
6925 小时
注册时间
2012-12-14
帖子
11485

短篇十战斗者组别冠军开拓者贵宾短篇九勇士组亚军

6
发表于 2013-2-8 17:49:13 | 只看该作者
没有错误信息的话
不知道在哪纠错
大家好,这里是晨露的说。请多多指教。
刚入门RM软件制作,请大家多多帮助我哦。
落雪君的欢乐像素教程,欢迎查阅。

回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
12860
在线时间
1459 小时
注册时间
2012-7-24
帖子
1302
7
 楼主| 发表于 2013-2-8 18:21:36 | 只看该作者
美丽晨露 发表于 2013-2-8 17:49
没有错误信息的话
不知道在哪纠错

哦哦,原来还要这个啊…………嗯嗯,是这个:

欢迎大家加我
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
270 小时
注册时间
2010-2-4
帖子
1305
8
发表于 2013-2-8 20:18:38 | 只看该作者
因为你没有第9个角色- -b
把第二个脚本那第8行的9改成1就行了...

评分

参与人数 1星屑 +66 收起 理由
hcm + 66 认可答案

查看全部评分

好歹当年也当过大魔王过,orz
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
12860
在线时间
1459 小时
注册时间
2012-7-24
帖子
1302
9
 楼主| 发表于 2013-2-9 21:27:48 | 只看该作者
zhangbanxian 发表于 2013-2-8 20:18
因为你没有第9个角色- -b
把第二个脚本那第8行的9改成1就行了...

…………晕,原来这么简单就行了啊。我纠结了那么久(正在找地方挖洞钻…………
不过还是谢了啊

欢迎大家加我
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-29 00:40

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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