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

Project1

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

[已经过期] 【再问次】百变宝典2还是3里面的那个精灵系统的问题

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
29 小时
注册时间
2010-7-5
帖子
483
跳转到指定楼层
1
发表于 2010-7-7 21:27:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
好像叫做仿黄金太阳精灵系统捏,@sprite.each的each...Unfined method `each'(我用的是半角) for nil:Nilclass,据说是nil没有each方法。我用Ctrl+F搜索了@sprite。。。找到了@sprite = @sprite_turn = @new_skills = [],然后还想问问丫和我其他放进去的脚本有没有冲突,然后就没人鸟我捏。。。

还有RTAB战斗,里面的>(半角)也是一样的情况。。。不过也是没人鸟我。。。

是因为太弱智吗。。。{:2_44:}

Lv1.梦旅人

梦石
0
星屑
50
在线时间
29 小时
注册时间
2010-7-5
帖子
483
2
 楼主| 发表于 2010-7-7 21:28:44 | 只看该作者
整个脚本是这样

  1. class Game_Actor < Game_Battler
  2.   
  3.   attr_accessor   :sprite                   # 精灵
  4.   attr_accessor   :states_turn              # 精灵持续回合
  5.   attr_accessor   :sprite_max               # 精灵数量上限
  6.   attr_accessor   :sprskills                # 精灵特技
  7.   attr_accessor   :new_skills               # 全特技
  8.   attr_accessor   :spravtive                # 活动精灵特技
  9.   attr_accessor   :sprwait                  # 等待精灵特技
  10.   
  11.   alias _setup setup
  12.   def setup(actor_id)   
  13.       @sprite = @sprite_turn = @new_skills = []
  14.       @sprite_max = Sprite_Magic.sprite_max(actor_id)      
  15.       _setup(actor_id)   
  16.       clean_skills
  17.   end
  18.    
  19.   def battler_wait_count
  20.       @sprite.each{|s| s.turn += 1 if s.turn?}
  21.   end
  22.   
  23.   def equip_sprite?(name)
  24.       return @sprite.any?{|spr| spr.name == name}
  25.   end
  26.   
  27.   def clean_skills
  28.       @sprskills = Sprite_Magic.find_skill_id(@sprite, @skills)
  29.       tempspr = @sprite.find_all{|s| !s.turn? }
  30.       @spravtive = Sprite_Magic.find_skill_id(tempspr, @skills)
  31.       @sprwait = @sprskills -  @spravtive
  32.       @new_skills = @skills + @sprskills
  33.   end
  34.   
  35.   def skill_learn?(skill_id)
  36.       clean_skills  
  37.       return (@skills + @spravtive).include?(skill_id)
  38.   end
  39.   
  40.   def house_moveto_equip(pos, index)
  41.       sprite.insert(pos, $game_party.sprite_house.delete_at(index))
  42.   end
  43.   
  44.   def equip_moveto_house(index)
  45.       $game_party.sprite_house << @sprite.delete_at(index)
  46.   end  
  47.   
  48.   def actor_sprite_hp      
  49.       temp_hp = 0
  50.       @sprite.each{|n| temp_hp += n.hp unless n.turn?}
  51.       return temp_hp
  52.   end

  53.   def actor_sprite_sp      
  54.       temp_sp = 0
  55.       @sprite.each{|n| temp_sp += n.sp unless n.turn?}
  56.       return temp_sp
  57.   end
  58.    
  59.   def actor_sprite_str      
  60.       temp_str = 0
  61.       @sprite.each{|n| temp_str += n.str unless n.turn?}
  62.       return temp_str
  63.   end

  64.   def actor_sprite_dex      
  65.       temp_dex = 0
  66.       @sprite.each{|n| temp_dex += n.dex unless n.turn?}
  67.       return temp_dex
  68.   end

  69.   def actor_sprite_agi      
  70.       temp_agi = 0
  71.       @sprite.each{|n| temp_agi += n.agi unless n.turn?}
  72.       return temp_agi
  73.   end

  74.   def actor_sprite_int      
  75.       temp_int = 0
  76.       @sprite.each{|n| temp_int += n.int unless n.turn?}
  77.       return temp_int
  78.   end
  79.    
  80.   alias _base_maxhp base_maxhp
  81.   def base_maxhp
  82.       n = _base_maxhp
  83.       return (n + actor_sprite_hp)   
  84.   end

  85.   alias _base_maxsp base_maxsp
  86.   def base_maxsp
  87.       n = _base_maxsp
  88.       return (n + actor_sprite_sp)   
  89.   end
  90.   
  91.   alias _base_str base_str
  92.   def base_str
  93.       n = _base_str
  94.       n += actor_sprite_str
  95.       return [[n, 1].max, 999].min      
  96.   end

  97.   alias _base_dex base_dex
  98.   def base_dex
  99.       n = _base_dex
  100.       n += actor_sprite_dex
  101.       return [[n, 1].max, 999].min      
  102.   end

  103.   alias _base_agi base_agi
  104.   def base_agi
  105.       n = _base_agi
  106.       n += actor_sprite_agi
  107.       return [[n, 1].max, 999].min      
  108.   end

  109.   alias _base_int base_int
  110.   def base_int
  111.       n = _base_int
  112.       n += actor_sprite_int
  113.       return [[n, 1].max, 999].min      
  114.   end
  115.   
  116.   def actor_sprite_value
  117.       value = []
  118.       value << actor_sprite_hp
  119.       value << actor_sprite_sp
  120.       value << actor_sprite_str
  121.       value << actor_sprite_dex
  122.       value << actor_sprite_agi
  123.       value << actor_sprite_int
  124.       return value
  125.   end

  126.   def actor_value
  127.       value = []
  128.       value << actor.hp << actor.sp << actor.str << actor.dex << actor.agi << actor.int
  129.       return value
  130.   end
  131.    
  132. end
复制代码

点评

50行那里  发表于 2010-7-7 21:30
还有还有,这个是那个精灵系统里面的一个脚本,总共有十几个。。。  发表于 2010-7-7 21:29
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
29 小时
注册时间
2010-7-5
帖子
483
3
 楼主| 发表于 2010-7-9 22:41:47 | 只看该作者
{:2_33:}啊.................................怨念.......................................
回复 支持 反对

使用道具 举报

Lv2.观梦者

旅之愚者

梦石
0
星屑
275
在线时间
812 小时
注册时间
2007-7-28
帖子
2148

贵宾

4
发表于 2010-7-22 00:30:25 | 只看该作者
回复 BBBBB6 的帖子

lz你提供的信息不够,或许你要发上工程或者至少脚本文件


   
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-27 20:41

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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