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

Project1

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

[已经过期] 求个装备附加技能 脚本,

[复制链接]

Lv1.梦旅人

梦石
0
星屑
235
在线时间
425 小时
注册时间
2013-6-28
帖子
173
跳转到指定楼层
1
发表于 2013-9-18 23:42:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
在论坛能搜索到,可是一点击就进了主页,不知道怎么办

Lv3.寻梦者

梦石
0
星屑
2744
在线时间
2630 小时
注册时间
2013-1-16
帖子
5657

贵宾

2
发表于 2013-9-18 23:50:31 | 只看该作者
解决方案:右击超链接,单击属性。
                复制属性里的url地址,粘贴在浏览器的地址栏里,把66rpg改为cgyouxi即可
(Created by @喵kano)


施工现场:hotege.github.io
回复 支持 反对

使用道具 举报

Lv4.逐梦者 (版主)

梦石
0
星屑
9532
在线时间
5073 小时
注册时间
2013-6-21
帖子
3580

开拓者贵宾剧作品鉴家

3
发表于 2013-9-19 12:38:07 | 只看该作者
楼主可以试试这个脚本,大概能满足你的要求。
  1. #============================================================================
  2. # 武器技能系统
  3. #----------------------------------------------------------------------------
  4. # 作者:RyanBern
  5. #============================================================================
  6. # 功能:就是让角色装备某武器,就会拥有这个武器上的技能,如果卸下武器,就会失
  7. #       去这个技能
  8. #----------------------------------------------------------------------------
  9. # 使用方法:
  10. #     在下面的定义武器与技能的对应关系函数中,定义武器和技能的对应关系
  11. #     例如,让ID为1号的武器具有ID为1的技能,就写上data[1] = [1]
  12. #           让ID为2号的武器具有ID为1和2的仅能,就用data[2] = [1,2]
  13. # 注意:你不能定义数据库中不存在的武器
  14. #============================================================================
  15. def get_weapon_skill
  16.   # 生成空的Hash
  17.   data = {}
  18.   #==========================================================================
  19.   # 在这条注释后面写上你所希望武器和技能的对应,可以逐条添加
  20.   # 例如 data[1] = [1]
  21.   #==========================================================================
  22.   data[1] = [1]
  23.   #==========================================================================
  24.   # 定义完毕
  25.   #==========================================================================
  26.   return data
  27. end

  28. class Game_Actor
  29.   #--------------------------------------------------------------------------
  30.   # ● 设置
  31.   #     actor_id : 角色 ID
  32.   #--------------------------------------------------------------------------
  33.   def setup(actor_id)
  34.     actor = $data_actors[actor_id]
  35.     @actor_id = actor_id
  36.     @name = actor.name
  37.     @character_name = actor.character_name
  38.     @character_hue = actor.character_hue
  39.     @battler_name = actor.battler_name
  40.     @battler_hue = actor.battler_hue
  41.     @class_id = actor.class_id
  42.     @weapon_id = actor.weapon_id
  43.     @armor1_id = actor.armor1_id
  44.     @armor2_id = actor.armor2_id
  45.     @armor3_id = actor.armor3_id
  46.     @armor4_id = actor.armor4_id
  47.     [url=home.php?mod=space&uid=22147]@level[/url] = actor.initial_level
  48.     @exp_list = Array.new(101)
  49.     make_exp_list
  50.     [url=home.php?mod=space&uid=13302]@exp[/url] = @exp_list[@level]
  51.     @skills = []
  52.     @hp = maxhp
  53.     @sp = maxsp
  54.     @states = []
  55.     @states_turn = {}
  56.     @maxhp_plus = 0
  57.     @maxsp_plus = 0
  58.     @str_plus = 0
  59.     @dex_plus = 0
  60.     @agi_plus = 0
  61.     @int_plus = 0
  62.     # 学会特技
  63.     for i in 1..@level
  64.       for j in $data_classes[@class_id].learnings
  65.         if j.level == i
  66.           learn_skill(j.skill_id)
  67.         end
  68.       end
  69.     end
  70.     # 学会武器特技
  71.     skill_weapon(@weapon_id)
  72.     # 刷新自动状态
  73.     update_auto_state(nil, $data_armors[@armor1_id])
  74.     update_auto_state(nil, $data_armors[@armor2_id])
  75.     update_auto_state(nil, $data_armors[@armor3_id])
  76.     update_auto_state(nil, $data_armors[@armor4_id])
  77.   end
  78.   # 学会武器对应的技能
  79.   def skill_weapon(weapon_id)
  80.     # 取得武器与技能对应Hash
  81.     skill = get_weapon_skill
  82.     # 装备特定武器就学会对应技能
  83.     if skill.keys.include?(weapon_id)
  84.       for i in skill[weapon_id]
  85.         learn_skill(i)
  86.       end
  87.       # 删除其它对应技能
  88.       m = skill.keys
  89.       m.delete(weapon_id)
  90.       n = []
  91.       for i in m
  92.         n += skill[i]
  93.       end
  94.       for j in n
  95.         forget_skill(j)
  96.       end
  97.     else
  98.       # 卸下装备就删除对应技能
  99.       m = skill.keys
  100.       n = []
  101.       for i in m
  102.         n += skill[i]
  103.       end
  104.       for j in n
  105.         forget_skill(j)
  106.       end
  107.     end
  108.   end
  109.   #--------------------------------------------------------------------------
  110.   # ● 变更装备
  111.   #     equip_type : 装备类型
  112.   #     id    : 武器 or 防具 ID  (0 为解除装备)
  113.   #--------------------------------------------------------------------------
  114.   def equip(equip_type, id)
  115.     case equip_type
  116.     when 0  # 武器
  117.       if id == 0 or $game_party.weapon_number(id) > 0
  118.         $game_party.gain_weapon(@weapon_id, 1)
  119.         @weapon_id = id
  120.         $game_party.lose_weapon(id, 1)
  121.         skill_weapon(id)
  122.       end
  123.     when 1  # 盾
  124.       if id == 0 or $game_party.armor_number(id) > 0
  125.         update_auto_state($data_armors[@armor1_id], $data_armors[id])
  126.         $game_party.gain_armor(@armor1_id, 1)
  127.         @armor1_id = id
  128.         $game_party.lose_armor(id, 1)
  129.       end
  130.     when 2  # 头
  131.       if id == 0 or $game_party.armor_number(id) > 0
  132.         update_auto_state($data_armors[@armor2_id], $data_armors[id])
  133.         $game_party.gain_armor(@armor2_id, 1)
  134.         @armor2_id = id
  135.         $game_party.lose_armor(id, 1)
  136.       end
  137.     when 3  # 身体
  138.       if id == 0 or $game_party.armor_number(id) > 0
  139.         update_auto_state($data_armors[@armor3_id], $data_armors[id])
  140.         $game_party.gain_armor(@armor3_id, 1)
  141.         @armor3_id = id
  142.         $game_party.lose_armor(id, 1)
  143.       end
  144.     when 4  # 装饰品
  145.       if id == 0 or $game_party.armor_number(id) > 0
  146.         update_auto_state($data_armors[@armor4_id], $data_armors[id])
  147.         $game_party.gain_armor(@armor4_id, 1)
  148.         @armor4_id = id
  149.         $game_party.lose_armor(id, 1)
  150.       end
  151.     end
  152.   end
  153. end
复制代码

点评

你的不支持防具啊···  发表于 2013-9-19 12:57
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9280
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

4
发表于 2013-9-19 12:59:13 | 只看该作者
  1. #------------------------------------------------------------
  2. # 脚本来自www.66rpg.com,作者柳柳,转载和使用请保留此信息
  3. #------------------------------------------------------------
  4. class Game_Actor < Game_Battler   
  5. C3_W_SKILL = []
  6. C3_A1_SKILL = []
  7. C3_A2_SKILL = []
  8. C3_A3_SKILL = []
  9. C3_A4_SKILL = []
  10.   
  11. C3_W_SKILL.push [1,0,"剑_"] #武器编号,武器附带技能编号,战斗图前缀
  12. C3_W_SKILL.push [2,7,"剑_"]  
  13. C3_W_SKILL.push [3,7,"剑_"]  
  14. C3_W_SKILL.push [3,8,"剑_"]  
  15. C3_W_SKILL.push [3,9,"剑_"]  
  16. C3_W_SKILL.push [6,14,"枪_"]  
  17. C3_W_SKILL.push [7,15,"枪_"]  
  18. C3_W_SKILL.push [5,0,"枪_"]  
  19. C3_W_SKILL.push [9,0,"斧头_"]  
  20. C3_W_SKILL.push [10,0,"大剑_"]  
  21. #战斗图前缀后面会自动跟上角色的数据库编号。
  22. #比如你使用上面的设定,你的1、2、3、4号角色可以用1号武器(铜剑)
  23. #则你的battlers/下面应改有"剑_1.png","剑_2.png","剑_3.png","剑_4.png"
  24. #一个武器可以重复设置多种技能,防具也是。
  25.   
  26. C3_A1_SKILL.push [1,15]                    #盾编号,附带技能编号
  27. C3_A2_SKILL.push [6,15]                    #头盔编号,附带技能编号
  28. C3_A3_SKILL.push [14,15]                   #甲编号,附带技能编号
  29. C3_A4_SKILL.push [25,15]                   #装饰品编号,附带技能编号
  30. #--------------------------------------------------------------------------
  31. # ● 变更装备
  32. #     equip_type : 装备类型
  33. #     id    : 武器 or 防具 ID  (0 为解除装备)
  34. #--------------------------------------------------------------------------
  35. def equip(equip_type, id)
  36.    case equip_type
  37.    when 0  # 武器
  38.      if id == 0 or $game_party.weapon_number(id) > 0
  39.        old_weapon_id = @weapon_id
  40.        weapon_i = 0
  41.        for weapon_i in C3_W_SKILL           
  42.          if weapon_i[0] == old_weapon_id
  43.            if weapon_i[1] != 0
  44.              forget_skill(weapon_i[1])
  45.            end
  46.          end      
  47.        end
  48.        for weapon_i in C3_W_SKILL           
  49.          if weapon_i[0] == id
  50.            if weapon_i[1] != 0
  51.              learn_skill(weapon_i[1])
  52.            end
  53.            if weapon_i[2] != ""
  54.              @battler_name = weapon_i[2]+@actor_id.to_s
  55.            else
  56.              @battler_name = $data_actors[@actor_id].battler_name
  57.            end
  58.          end
  59.        end
  60.        $game_party.gain_weapon(@weapon_id, 1)
  61.        @weapon_id = id
  62.        $game_party.lose_weapon(id, 1)
  63.      end
  64.    when 1  # 盾
  65.      if id == 0 or $game_party.armor_number(id) > 0
  66.        old_am_id = @armor1_id
  67.        am_i = 0
  68.        for am_i in C3_A1_SKILL           
  69.          if am_i[0] == old_am_id
  70.            if am_i[1] != 0
  71.              forget_skill(am_i[1])
  72.            end
  73.          end      
  74.        end
  75.        for am_i in C3_A1_SKILL
  76.          if am_i[0] == id
  77.            if am_i[1] != 0
  78.              learn_skill(am_i[1])
  79.            end
  80.          end
  81.        end
  82.        update_auto_state($data_armors[@armor1_id], $data_armors[id])
  83.        $game_party.gain_armor(@armor1_id, 1)
  84.        @armor1_id = id
  85.        $game_party.lose_armor(id, 1)
  86.      end
  87.    when 2  # 头
  88.      if id == 0 or $game_party.armor_number(id) > 0
  89.        old_am_id = @armor2_id
  90.        am_i = 0
  91.        for am_i in C3_A2_SKILL           
  92.          if am_i[0] == old_am_id
  93.            if am_i[1] != 0
  94.              forget_skill(am_i[1])
  95.            end
  96.          end     
  97.        end
  98.        for am_i in C3_A2_SKILL   
  99.          if am_i[0] == id
  100.            if am_i[1] != 0
  101.              learn_skill(am_i[1])
  102.            end
  103.          end
  104.        end
  105.        update_auto_state($data_armors[@armor2_id], $data_armors[id])
  106.        $game_party.gain_armor(@armor2_id, 1)
  107.        @armor2_id = id
  108.        $game_party.lose_armor(id, 1)
  109.      end
  110.    when 3  # 身体
  111.      if id == 0 or $game_party.armor_number(id) > 0
  112.        old_am_id = @armor3_id
  113.        am_i = 0
  114.        for am_i in C3_A3_SKILL           
  115.          if am_i[0] == old_am_id
  116.            if am_i[1] != 0
  117.              forget_skill(am_i[1])
  118.            end
  119.          end      
  120.        end
  121.        for am_i in C3_A3_SKILL   
  122.          if am_i[0] == id
  123.            if am_i[1] != 0
  124.              learn_skill(am_i[1])
  125.            end
  126.          end
  127.        end
  128.        update_auto_state($data_armors[@armor3_id], $data_armors[id])
  129.        $game_party.gain_armor(@armor3_id, 1)
  130.        @armor3_id = id
  131.        $game_party.lose_armor(id, 1)
  132.      end
  133.    when 4  # 装饰品
  134.      if id == 0 or $game_party.armor_number(id) > 0
  135.        old_am_id = @armor4_id
  136.        am_i = 0
  137.        for am_i in C3_A4_SKILL           
  138.          if am_i[0] == old_am_id
  139.            if am_i[1] != 0
  140.              forget_skill(am_i[1])
  141.            end
  142.          end      
  143.        end
  144.        for am_i in C3_A4_SKILL   
  145.          if am_i[0] == id
  146.            if am_i[1] != 0
  147.              learn_skill(am_i[1])
  148.            end
  149.          end
  150.        end
  151.        update_auto_state($data_armors[@armor4_id], $data_armors[id])
  152.        $game_party.gain_armor(@armor4_id, 1)
  153.        @armor4_id = id
  154.        $game_party.lose_armor(id, 1)
  155.      end
  156.    end
  157. end
  158. end
  159. #------------------------------------------------------------
  160. # 脚本来自www.66rpg.com,作者柳柳,转载和使用请保留此信息
  161. #------------------------------------------------------------
复制代码
推荐新手用这个,可以给防具和武器都设定技能,麻烦的事情就是当你需要给一件装备设置多个技能时要多写几句脚本···
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9280
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

5
发表于 2013-9-19 16:05:29 | 只看该作者
http://bbs.cgyouxi.com/thread-332805-1-1.html你也可以考虑用这个,不过是要收费的哦= =至于这个和上面那个的区别···其实就是你可以在设定技能上更简便···而且多了使用说明等等···
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-9-23 09:28

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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