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

Project1

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

[已经解决] 【求助】怎么能让武器普通攻击附带吸血效果

[复制链接]

Lv1.梦旅人

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

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

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

x
之前试过几个脚本,但都是装备武器添加技能的,我需要的是普通攻击就附带这种(比如吸血)效果,希望大神们不吝赐教

点评

二刀流的问题是,只要主角两个武器之一是吸血的,那么就会吸收全部伤害的十分之一,不知道还会不会有其他问题。哪天没事的话我想想办法。  发表于 2013-7-6 10:54
我那脚本va用的 vx當然不行... 我只是提供思路  发表于 2013-7-2 01:25
先马克上……明天有时间的话我尝试下。  发表于 2013-7-1 21:08

Lv2.观梦者

梦石
0
星屑
812
在线时间
166 小时
注册时间
2013-6-29
帖子
94
2
发表于 2013-7-1 13:58:10 | 只看该作者
先設1個開關:吸血武器
當持有吸血武器時開關會打開
在戰鬥設定條件當開關吸血武器打開時攻擊會回復生命之類的
應該就可以了
如果不行
那就try別人的答案吧

点评

没办法判定玩家有没有攻击的 这方法行不通的........  发表于 2013-7-2 00:38
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
130
在线时间
0 小时
注册时间
2013-7-1
帖子
2
3
发表于 2013-7-2 00:06:42 | 只看该作者
同求啊,我也是遇到同样的问题~
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
367
在线时间
1292 小时
注册时间
2013-1-12
帖子
3590

贵宾

4
发表于 2013-7-2 00:46:18 | 只看该作者
在此提供个思路
是說VX Ace 有相对的脚本可以达成此功能
就是如果装备A武器   那角色的普攻就会变为在武器备注拦填写的技能ID
VA的脚本如下
  1. class RPG::Weapon < RPG::EquipItem
  2.   def attack_skill
  3.     @note.each_line do |line|
  4.       if line =~ /\<(?:AttackSkill)[ ]*(\d+)\>/i
  5.         return $1.to_i == 0 ? 1 : $1.to_i
  6.       end
  7.     end
  8.     return 1
  9.   end
  10. end
  11. class Game_Actor < Game_Battler
  12.   alias attack_skill_attack_skill_id attack_skill_id
  13.   def attack_skill_id
  14.     return weapons[0].attack_skill if weapons[0]
  15.     if dual_wield?
  16.       return weapons[1].attack_skill if weapons[1]
  17.     end
  18.     return attack_skill_attack_skill_id
  19.   end
  20. end
  21. class Scene_Battle < Scene_Base
  22.   alias attack_skill_command_attack command_attack
  23.   def command_attack
  24.     attack_skill_command_attack
  25.     if !BattleManager.actor.current_action.item.need_selection?
  26.       @enemy_window.deactivate
  27.       on_enemy_ok
  28.     end
  29.   end
  30. end
复制代码
我是觉得如果VA能办到VX也一定能行的说
等下个大大帮你翻译此脚本吧.....

点评

不行的,脚本错误无法使用……  发表于 2013-7-2 01:08
容我试试……  发表于 2013-7-2 01:06

评分

参与人数 1星屑 +5 收起 理由
绿坝 + 5 美国君,谢谢脚本,很有用。

查看全部评分


回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
11 小时
注册时间
2013-6-21
帖子
8
5
 楼主| 发表于 2013-7-2 01:05:31 | 只看该作者
joe15975 发表于 2013-7-1 13:58
先設1個開關:吸血武器
當持有吸血武器時開關會打開
在戰鬥設定條件當開關吸血武器打開時攻擊會回復生命之類 ...

但是武器的吸血是基于角色输出的啊,这个怎么做出来?

点评

那我就不行了sorry :(  发表于 2013-7-2 08:36
计算公式又是啥玩意……  发表于 2013-7-2 01:39
是說如果連到技能的話就可以用記算公式了.......  发表于 2013-7-2 01:26
回复 支持 反对

使用道具 举报

Lv4.逐梦者

送快递的水表员

梦石
10
星屑
4867
在线时间
3303 小时
注册时间
2012-6-27
帖子
7160

开拓者贵宾

6
发表于 2013-7-2 22:20:36 | 只看该作者
本帖最后由 Password 于 2013-7-2 22:21 编辑

做好了,最近在练习数组,顺便就把这个当作练习了……

方法:将此段脚本复制并替换原有在Game_Battler下的约第801行开始至约833行结束。(即替换原有的“def attack_effect(attacker)部分”)
         剩下的注释就写得很明白了。
  1.   #--------------------------------------------------------------------------
  2.   # ● 发动普通攻击
  3.   #     attacker : 攻击者
  4.   #--------------------------------------------------------------------------
  5.   def attack_effect(attacker)
  6.     $array = [31, 32] # 方括号内的数字为吸血武器的武器ID,如果有多个武器的话
  7.                       # 中间请用半角逗号隔开。
  8.     clear_action_results
  9.     unless attack_effective?(attacker)
  10.       @skipped = true
  11.       return
  12.     end
  13.     if rand(100) >= calc_hit(attacker)            # 计算命中率
  14.       @missed = true
  15.       return
  16.     end
  17.     if rand(100) < calc_eva(attacker)             # 计算闪躲率
  18.       @evaded = true
  19.       return
  20.     end
  21.     make_attack_damage_value(attacker)            # 计算伤害
  22.     execute_damage(attacker)                      # 伤害效果
  23.     if @hp_damage == 0                            # 判断是否有物理伤害
  24.       return                                    
  25.     end
  26.     apply_state_changes(attacker)                 # 增减状态
  27.     if attacker.is_a?(Game_Actor)                 # 如果攻击者是“主角”
  28.       b = attacker.weapon_id
  29.       if $array.include?(b)                       # 判断主角是否装备了吸血武器
  30.         attacker.hp += @hp_damage / 10            # 给攻击者加血,这里加血的比例是对敌人造成的伤害的十分之一
  31.       end
  32.     end
  33.   end
复制代码
范例: 吸血武器.rar (238.65 KB, 下载次数: 67)

注意:它不能完全应用于二刀流。但是我相信LZ不会有二刀流的对吧……

另外……感谢P叔的支援!

点评

↓没从哪里爬的,除了 if attacker.is_a?(Game_Actor) 这句是问P叔的以外都是自己写的……  发表于 2013-7-21 10:50
主角就是二刀流怎么破……  发表于 2013-7-6 02:22
P叔的整合系统里有脚本将attacker.weapon_id 重新定义了, 所以。。冲突了。哎~~如果你能帮忙解决,感激不尽。 就是不知道b = attacker.weapon_id应该怎么改~  发表于 2013-7-3 10:44

评分

参与人数 1梦石 +1 收起 理由
怪蜀黍 + 1 这脚本好熟悉,苏联君从哪里爬来的?.

查看全部评分

回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
38 小时
注册时间
2013-6-22
帖子
64
7
发表于 2013-7-9 11:32:27 | 只看该作者
LZ,素材库——武器——所从的属性——吸收——打个勾

点评

可是武器那有“伤害吸收”啊,LZ..  发表于 2013-7-9 20:27
这是不可以的...属性只是个名字...没有属性能带有吸血的效果  发表于 2013-7-9 19:51
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-23 02:31

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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