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

Project1

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

[已经过期] 领队更换代码错误

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
54 小时
注册时间
2011-3-13
帖子
24
跳转到指定楼层
1
发表于 2011-5-26 22:36:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 fux2 于 2011-5-27 12:55 编辑

使用这个脚本后,在加入新队员时会被告知
下面是源代码:
  1. #==============================================================================
  2. # 领队更换系统 by SailCat
  3. #------------------------------------------------------------------------------
  4. # 添加此脚本后,在地图画面按下Z键更换当前的领队。
  5. # 领队更改不会造成战斗队伍、菜单队伍次序的更改。
  6. # 若要在条件分歧中调用领队,请用脚本:$game_party.leader == 序号
  7. # 序号为0-3的值,最大不会超过队伍的角色数目减1。
  8. #==============================================================================
  9. class Game_Party
  10.   #--------------------------------------------------------------------------
  11.   # ● 追加实例变量
  12.   #--------------------------------------------------------------------------
  13.   attr_reader   :leader
  14.   alias sailcat_initialize initialize
  15.   alias sailcat_setup_starting_members setup_starting_members
  16.   #--------------------------------------------------------------------------
  17.   # ● 初始化对像
  18.   #--------------------------------------------------------------------------
  19.   def initialize
  20.     # 生成领队
  21.     @leader = 0
  22.     sailcat_initialize
  23.   end
  24.   #--------------------------------------------------------------------------
  25.   # ● 设置初期同伴
  26.   #--------------------------------------------------------------------------
  27.   def setup_starting_members
  28.     sailcat_setup_starting_members
  29.     # 生成领队
  30.     @leader = 0
  31.   end
  32.   #--------------------------------------------------------------------------
  33.   # ● 设置领队
  34.   #--------------------------------------------------------------------------
  35.   def switch_leader
  36.     @leader += 1
  37.     @leader %= @actors.size
  38.   end
  39. end
  40. class Game_Player
  41.   alias sailcat_update update
  42.   #--------------------------------------------------------------------------
  43.   # ● 刷新
  44.   #--------------------------------------------------------------------------
  45.   def refresh
  46.     # 同伴人数为 0 的情况下
  47.     if $game_party.actors.size == 0
  48.       # 清除角色的文件名及对像
  49.       @character_name = ""
  50.       @character_hue = 0
  51.       # 分支结束
  52.       return
  53.     end
  54.     # 获取带头的角色
  55.     actor = $game_party.actors[$game_party.leader]
  56.     # 设置角色的文件名及对像
  57.     @character_name = actor.character_name
  58.     @character_hue = actor.character_hue
  59.     # 初始化不透明度和合成方式
  60.     @opacity = 255
  61.     @blend_type = 0
  62.   end
  63.   #--------------------------------------------------------------------------
  64.   # ● 画面更新
  65.   #--------------------------------------------------------------------------
  66.   def update
  67.     # 按下 TAB 键的情况下   
  68.     unless $game_temp.menu_calling or
  69.       $game_system.menu_disabled or
  70.       $game_system.map_interpreter.running? or
  71.       if Input.repeat?(Input::A)
  72.         # 更换领队
  73.         $game_party.switch_leader
  74.         refresh
  75.       end
  76.       sailcat_update
  77.     end
  78.   end
  79. end
复制代码

Lv1.梦旅人

梦石
0
星屑
205
在线时间
127 小时
注册时间
2005-10-23
帖子
78
2
发表于 2011-5-27 11:55:02 | 只看该作者
楼主 这个代码本身没有什么错误 我在新工程中运行 并且加入新队员都没有任何问题
是不是楼主使用的别的脚本中有相同的定义导致冲突了呢 试试在脚本中搜索看看有几个脚本包含这些定义的

点评

第二次,请不要浑水摸鱼。  发表于 2011-5-27 12:47
世界不会在意你的自尊,人们看的只是你的成就。在你没有成就以前,切勿过分强调自尊。
[b]本人姓名:异界的月[/b]
[b]空之轨迹菜单系列[/b]
2.01版增加任务菜单 地址[url=http://rpg.blue/viewthread.php?tid=135748&extra=page%3D1]http://rpg.blue/viewthread.php?tid=135748&extra=page%3D1[/url]
1.00版地址[url=http://rpg.blue/viewthread.php?tid=129463&extra=page%3D1]http://rpg.blue/viewthread.php?tid=129463&extra=page%3D1[/url]
[b]转投希艾拉工作室当脚本师,龟速制作中[/b]
[b]转职为三次元苦逼渣渣程序员[/b]
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (管理员)

老黄鸡

梦石
0
星屑
41983
在线时间
7655 小时
注册时间
2009-7-6
帖子
13527

开拓者贵宾

3
发表于 2011-5-27 12:55:49 | 只看该作者
获取了一个空的角色,估计的索引问题。

点评

改用禾西前辈的吧(PIA)。  发表于 2011-5-27 20:07
no complicit conversion from nil to int 是由索引為 nil 導致的,因為索引只能是整數。典型的參數錯文問題,看起來是 $game_party.leader 為 nil 了  发表于 2011-5-27 13:20
他错误的是actor = $game_party.actors[$game_party.leader] 这行 所以应该是脚本冲突吧? 否则应该是之下的@character_name的赋值什么的出错啊~ 难道我理解错误……  发表于 2011-5-27 13:05
RGDirect - DirectX驱动的RGSS,点我了解.
(排满,暂停)RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
54 小时
注册时间
2011-3-13
帖子
24
4
 楼主| 发表于 2011-5-27 22:07:53 | 只看该作者
怎么解决呢?
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-7-21 04:29

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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