Project1

标题: 如何指定队伍编号大于3的角色的宠物总是不行动? [打印本页]

作者: 幻耶    时间: 2008-6-18 04:54
标题: 如何指定队伍编号大于3的角色的宠物总是不行动?
$game_party.actors[4] 至 $game_party.actors[7]的角色如果装备有宠物,他们的宠物全部不行动

大概是在下面彩色的部分添加什么吧?应该怎么写呢?




class Game_Pet < Game_Battler
  #--------------------------------------------------------------------------
  # ● 初始化对像
  #     troop_id     : 循环 ID
  #     member_index : 循环成员的索引
  #--------------------------------------------------------------------------
  def initialize(enemy_id, fid)
    super()
    @enemy_id = enemy_id
    enemy = $data_enemies[@enemy_id]
    @battler_name = enemy.battler_name
    @battler_hue = enemy.battler_hue
    @hp = maxhp
    @sp = maxsp
   
    @father_id = fid
   
  end
  
  
def movable?
   return (not @hidden and restriction < 4) && !$game_party.actors[@father_id].dead?
end



宠物脚本:
http://rpg.blue/web/htm/news169.htm [LINE]1,#dddddd[/LINE]版务信息:本贴由楼主自主结贴~
作者: link006007    时间: 2008-6-18 05:00
那个4和7就是@father_id

那个return 语句删掉了
回得太快  逻辑混乱{/gg}
作者: 幻耶    时间: 2008-6-18 05:06
我说错了!!@ 是如果主人处于33号状态自己的宠物就不行动{/dk}{/dk}
作者: link006007    时间: 2008-6-18 05:10
以下引用幻耶于2008-6-17 21:06:36的发言:

我说错了!!@ 是如果主人处于33号状态自己的宠物就不行动

{/gg}  看不懂
我承认我的语文不好  很多人看不懂我说什么...
现在发现, 我也看不懂别人在说什么{/dk}
作者: 幻耶    时间: 2008-6-18 05:12
就是当角色处于33号状态,自己装备的宠物就不攻击敌人,直到解除这个状态{/gg}
作者: link006007    时间: 2008-6-18 05:18
以下引用幻耶于2008-6-17 21:12:24的发言:

就是当角色处于33号状态,自己装备的宠物就不攻击敌人,直到解除这个状态

是不是只有4~7的角色才这样  还是都有
作者: 幻耶    时间: 2008-6-18 05:24
因为我设置的是4~7的角色一进入战斗就附加33号这个状态,作为备用角色不参战,所以希望他们如果装备有宠物的话也不行动,直到替换前面死掉的角色上场才去除这个状态
作者: 幻耶    时间: 2008-6-18 05:27
其他替换自动附加状态什么的都做好了,现在只希望处于33号状态的角色如果装备有宠物的话,他们的宠物不要行动
作者: 幻耶    时间: 2008-6-18 05:30
以下引用link006007于2008-6-17 21:18:43的发言:


以下引用幻耶于2008-6-17 21:12:24的发言:

就是当角色处于33号状态,自己装备的宠物就不攻击敌人,直到解除这个状态


是不是只有4~7的角色才这样  还是都有






对的,只有4~7的角色才这样,别的不带那个状态

作者: link006007    时间: 2008-6-18 05:31
return (not @hidden and restriction < 4) &&
        !$game_party.actors[@father_id].dead? &&
       ((4 > @father_id || @father_id > 7) ?  true :
         !$game_party.actors[@father_id].state?(33))
作者: 幻耶    时间: 2008-6-18 05:36
如果队伍里暂时少于4人或者大于4人少于7人不会出错吧?{/fd}
作者: link006007    时间: 2008-6-18 05:38
你试试就知道了  我也不好说...
还有  那个return 改了  前面忘记加 '!' 号
作者: 幻耶    时间: 2008-6-18 05:40
我可以改成下面这样吗?因为除了4~7号,其他的角色不可能附加33号状态了



return (not @hidden and restriction < 4) &&
       !$game_party.actors[@father_id].dead?  true :
        !$game_party.actors[@father_id].state?(33))
作者: link006007    时间: 2008-6-18 05:44
return (not @hidden and restriction < 4) && !$game_party.actors[@father_id].dead? &&
        !$game_party.actors[@father_id].state?(33) [LINE]1,#dddddd[/LINE]系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
作者: 幻耶    时间: 2008-6-18 05:45
先结了吧...明天再试{/gg}
作者: link006007    时间: 2008-6-18 05:48
orz...
没那个必要吧... 错了怎么办
我都是想上去怎么做就怎么做的(露馅.......){/gg}
作者: 幻耶    时间: 2008-6-18 05:55
家里要带孩子,发个帖都是争分夺秒的{/dk}{/dk}{/dk}不行再问{/zk}




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1