查看: 1912|回复: 19

$game_party.actors的问题

  [复制链接]

魔王 ⑨

梦石
0
星屑
90
在线时间
379 小时
注册时间
2006-10-16
回帖
3980

贵宾

发表于 2009-1-25 02:00:53 | 显示全部楼层 |阅读模式

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

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

×
为什么如果$game_party.actors[x].id,x角色不在队伍的时候$game_party.actors[x].id就会等于4?
还是不知道我问什么的话可以在数据库中删掉后两个角色后在地图上新建一个事件然后执行脚本
p $game_party.actors[0].id
p $game_party.actors[1].id
p $game_party.actors[2].id
p $game_party.actors[3].id
p $game_party.actors[4].id
p $game_party.actors[5].id
就会发现问题

SB们再见

梦石
0
星屑
50
在线时间
13 小时
注册时间
2007-12-15
回帖
3520
发表于 2009-1-25 02:27:09 | 显示全部楼层
当我发完之后我才发现
我在错误的地点,错误的认为你错误的在水区问错误的问题
所以我错误的点下提交后错误的意识到自己错了就立刻修改了
。。。。。。。。。。
像咱这种人
会遇到爱嘛!
回复

使用道具 举报

魔王 ⑨

梦石
0
星屑
90
在线时间
379 小时
注册时间
2006-10-16
回帖
3980

贵宾

 楼主| 发表于 2009-1-25 02:32:05 | 显示全部楼层
回帖混分么…………
回复

使用道具 举报

梦石
0
星屑
275
在线时间
1373 小时
注册时间
2005-10-16
回帖
5038

贵宾

发表于 2009-1-25 02:55:08 | 显示全部楼层
我想请问一下你的X等于几呢?

顺便再问一下,你知道$game_party.actors这个里面存储的是什么么?
我只个搬答案的
叔叔我已经当爹了~
婚后闪人了……
回复

使用道具 举报

指引者

梦石
0
星屑
50
在线时间
2 小时
注册时间
2005-10-25
回帖
336
发表于 2009-1-25 03:04:31 | 显示全部楼层
那是什么脚本啊--
已知
$game_party.actors[0].id是同伴中的第一位角色的ID
求
$game_party.actors[x].id是同伴中第几位角色的ID
x是哪里来的
之前有没有被赋值 如果没有就=0
↓这是啥-- [IMG][/IMG]
回复

使用道具 举报

魔王 ⑨

梦石
0
星屑
90
在线时间
379 小时
注册时间
2006-10-16
回帖
3980

贵宾

 楼主| 发表于 2009-1-25 03:22:45 | 显示全部楼层
X是随便大于$game_party.actors.size的数。
回复

使用道具 举报

梦石
0
星屑
275
在线时间
1373 小时
注册时间
2005-10-16
回帖
5038

贵宾

发表于 2009-1-25 03:44:23 | 显示全部楼层
那你知道你取大于队伍人数的X,取到的$game_party.actors[x]是什么吧?

顺便再提醒你一下,id这个方法在Game_Actor中是有过定义,但不代表它这个方法在其他地方没有定义过。

id这个方法本身是可以查看各个对象对应的一个唯一的整数的方法,与Object类里的object_id方法不知道是否一致,我目前是把它们两个看成一样的。

感觉你还是需要多多深究一下问题,你只是通过.id这个方法显示出个4来就觉得出现了问题,却没有考虑$game_party.actors[x]当中,x大于队伍总人数时,$game_party.actors[x]必然是个nil,换言之,你如果考虑到这步,你单纯的执行一下 p nil.id 就会得到一个4来,你也就会明白id这个方法原来除了Game_Actor中是有过明确的定义外,本来人家就是个固有的方法了。
我只个搬答案的
叔叔我已经当爹了~
婚后闪人了……
回复

使用道具 举报

魔王 ⑨

梦石
0
星屑
90
在线时间
379 小时
注册时间
2006-10-16
回帖
3980

贵宾

 楼主| 发表于 2009-1-25 03:55:51 | 显示全部楼层
我知道他为什么会这样。。。
不过我的参战脚本和$game_party.actors[id]是黏在一起的,所以就会出错。。
无端端多出一个人来。。
回复

使用道具 举报

梦石
0
星屑
275
在线时间
1373 小时
注册时间
2005-10-16
回帖
5038

贵宾

发表于 2009-1-25 03:57:30 | 显示全部楼层
出错的话,说明你的代码还是有问题,判断的时候判断$game_party.actors[X]是否为nil即可,干嘛要去判断id
系统信息:本贴获得楼主认可,66RPG感谢您的热情解答~
我只个搬答案的
叔叔我已经当爹了~
婚后闪人了……
回复

使用道具 举报

魔王 ⑨

梦石
0
星屑
90
在线时间
379 小时
注册时间
2006-10-16
回帖
3980

贵宾

 楼主| 发表于 2009-1-25 04:00:42 | 显示全部楼层
因为战斗前要把不参战的T出队伍显示战斗结果的时候要把他们加回来。。。
还是用这笨方法吧,分别定义。。。
  1.   if $game_party.actors.size == 0
  2.     $party = $game_party.actors[0].id
  3.   elsif $game_party.actors.size == 1
  4.     $party = $game_party.actors[0].id
  5.     $party1 = $game_party.actors[1].id
  6.   elsif $game_party.actors.size == 2
  7.     $party = $game_party.actors[0].id
  8.     $party1 = $game_party.actors[1].id
  9.     $party2 = $game_party.actors[2].id
  10.   elsif $game_party.actors.size == 3
  11.     $party = $game_party.actors[0].id
  12.     $party1 = $game_party.actors[1].id
  13.     $party2 = $game_party.actors[2].id
  14.     $party3 = $game_party.actors[3].id
  15.   elsif $game_party.actors.size == 4
  16.     $party = $game_party.actors[0].id
  17.     $party1 = $game_party.actors[1].id
  18.     $party2 = $game_party.actors[2].id
  19.     $party3 = $game_party.actors[3].id
  20.     $party4 = $game_party.actors[4].id
  21.   elsif $game_party.actors.size == 5
  22.     $party = $game_party.actors[0].id
  23.     $party1 = $game_party.actors[1].id
  24.     $party2 = $game_party.actors[2].id
  25.     $party3 = $game_party.actors[3].id
  26.     $party4 = $game_party.actors[4].id
  27.     $party5 = $game_party.actors[5].id
  28.   end
复制代码
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部