Project2.zip
(349.96 KB, 下载次数: 3)
lin2117245 发表于 2026-4-11 19:57
怎么弄溅射人数不要全屏呢
lin2117245 发表于 2026-4-11 20:22
你帮我写一个看看我用了你的脚本溅射都是全屏的怎么修改啊
无忧谷主幻 发表于 2026-4-11 20:48
那你说说需求吧,是要定义范围还是对每个敌人概率溅射
如果是后者,我现在就能写
前者的话,你打算游戏中 ...
lin2117245 发表于 2026-4-11 21:01
能不能跟梦幻西游一样横扫只溅射3个人就行
无忧谷主幻 发表于 2026-4-11 21:11
包含主目标吗?
QQ浏览器截图20260411211000.png (738.64 KB, 下载次数: 29)
lin2117245 发表于 2026-4-11 21:22
现在是全屏就是加主随机在两个就是三个了
lin2117245 发表于 2026-4-11 21:12
嗯就是敌人随机溅射3个当位
Project2.zip
(350.32 KB, 下载次数: 1)
无忧谷主幻 发表于 2026-4-11 21:55
只要给随机3个敌人附加上状态17就好了
事件页写不下,我就放在脚本编辑器中了
无忧谷主幻 发表于 2026-4-11 21:55
只要给随机3个敌人附加上状态17就好了
事件页写不下,我就放在脚本编辑器中了
lin2117245 发表于 2026-4-11 22:24
溅射伤害能不能跟改随主角的伤害
#============================================================================== # ■ 状态17溅射伤害处理 #============================================================================== class Game_Troop # 对随机最多3个敌人附加状态17,并对所有带该状态的敌人造成技能57的威力伤害 def splash_state17_damage # 1. 筛选出所有存活的敌人 alive_targets = @enemies.select { |e| e.hp > 0 } # 2. 从存活敌人中随机选取最多3个 targets_to_add_state = alive_targets.sort_by{ rand }[0, [3, alive_targets.size].min] # 3. 为选中的目标附加状态17 targets_to_add_state.each do |enemy| enemy.add_state(17) unless enemy.state?(17) end # 4. 对所有拥有状态17的存活敌人造成技能57的威力伤害 alive_targets.each do |enemy| if enemy.state?(17) # 直接读取数据库中 技能57 的威力 skill = $data_skills[57] dmg = skill.power enemy.hp -= dmg enemy.damage = dmg enemy.critical = false enemy.animation_id = 101 enemy.damage_pop = true end end end end
无忧谷主幻 发表于 2026-4-11 22:48
首先,我做的这个其实就是直接扣血,跳过了整个技能伤害计算公式
如果你要改成关联技能或主角攻击力其实 ...
lin2117245 发表于 2026-4-12 19:24
能改成角色攻击伤害不比如.角色攻击5100那么溅射一样或者低可以不
#============================================================================== # ■ 状态17溅射伤害处理 #============================================================================== class Game_Troop # 对随机最多3个敌人附加状态17,并对所有带该状态的敌人造成主角1攻击力的伤害 def splash_state17_damage # 1. 筛选出所有存活的敌人 alive_targets = @enemies.select { |e| e.hp > 0 } # 2. 从存活敌人中随机选取最多3个 targets_to_add_state = alive_targets.sort_by{ rand }[0, [3, alive_targets.size].min] # 3. 为选中的目标附加状态17(已存在则不重复添加) targets_to_add_state.each do |enemy| enemy.add_state(17) unless enemy.state?(17) end # 4. 对所有拥有状态17的存活敌人造成伤害 alive_targets.each do |enemy| if enemy.state?(17) # 获取队伍第一个成员(主角1)的最终攻击力 # 包含装备、状态、buff/debuff的最终数值 dmg = $game_party.actors[0].atk enemy.hp -= dmg enemy.damage = dmg enemy.critical = false enemy.animation_id = 101 enemy.damage_pop = true end end end end
#============================================================================== # ■ 状态17溅射伤害处理 #============================================================================== class Game_Troop # 对随机最多3个敌人附加状态17,并对所有带该状态的敌人造成主角1攻击力的伤害 def splash_state17_damage # 1. 筛选出所有存活的敌人 alive_targets = @enemies.select { |e| e.hp > 0 } # 2. 从存活敌人中随机选取最多3个 targets_to_add_state = alive_targets.sort_by{ rand }[0, [3, alive_targets.size].min] # 3. 为选中的目标附加状态17(已存在则不重复添加) targets_to_add_state.each do |enemy| enemy.add_state(17) unless enemy.state?(17) end # 4. 对所有拥有状态17的存活敌人造成伤害 alive_targets.each do |enemy| if enemy.state?(17) # 获取主角1的基础攻击力 base_atk = $game_party.actors[0].atk # 生成±10%的随机浮动系数 fluct = 0.9 + rand * 0.2 # 计算最终伤害(向下取整,确保为整数) dmg = (base_atk * fluct).to_i # 保底1点伤害,避免出现0伤 dmg = [dmg, 1].max enemy.hp -= dmg enemy.damage = dmg enemy.critical = false enemy.animation_id = 101 enemy.damage_pop = true end end end end
无忧谷主幻 发表于 2026-4-12 21:49
关联的数值改成角色1的攻击力
#===================================================================== ...
lin2117245 发表于 2026-4-12 22:01
最后这个脚本还是会全屏啊
lin2117245 发表于 2026-4-24 20:03
怎么弄一个技能里面释放四个不同的技能啊
| 欢迎光临 Project1 (https://rpg.blue/) | Powered by Discuz! X3.1 |