From 1c68fd614522c811d044ed94d3c756811c7ab159 Mon Sep 17 00:00:00 2001 From: "PC-202302260912\\Administrator" <1769111741@qq.com> Date: Fri, 8 Sep 2023 11:46:33 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A5=9E=E5=85=B5=E8=A2=AB=E5=8A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ljsd/jieling/util/FightDataUtil.java | 43 +++++++++---------- 1 file changed, 20 insertions(+), 23 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/util/FightDataUtil.java b/serverlogic/src/main/java/com/ljsd/jieling/util/FightDataUtil.java index 8615fd8e1..2d1ab5d38 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/util/FightDataUtil.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/util/FightDataUtil.java @@ -7,10 +7,7 @@ import org.luaj.vm2.LuaTable; import org.luaj.vm2.LuaValue; import util.StringUtil; -import java.util.ArrayList; -import java.util.HashSet; -import java.util.List; -import java.util.Set; +import java.util.*; public class FightDataUtil { @@ -106,7 +103,7 @@ public class FightDataUtil { }else { unitData.set("skill", getSkill(unitSkill[0],sMonster.getSkinId())); unitData.set("superSkill", getSkill(unitSkill[1],sMonster.getSkinId())); - unitData.set("passivity", getPassivity(unitSkill)); + unitData.set("passivity", getHeroPassivity(unitSkill)); } unitData.set("ai", getMonsterAi(sMonster.getMonsterAi())); @@ -163,7 +160,7 @@ public class FightDataUtil { }else { unitData.set("skill", getSkill(unitSkill[0],0)); unitData.set("superSkill", getSkill(unitSkill[1],0)); - unitData.set("passivity", getPassivity(unitSkill)); + unitData.set("passivity", getHeroPassivity(unitSkill)); } unitData.set("ai", getMonsterAi(new int[]{})); @@ -191,33 +188,34 @@ public class FightDataUtil { return property; } + private static LuaValue getHeroPassivity(String[] unitSkill) { + String[] ofRange = Arrays.copyOfRange(unitSkill, 2, unitSkill.length); + return getPassivity(ofRange); + } + private static LuaValue getPassivity(String[] unitSkill) { LuaValue passivityData = new LuaTable(); - int length = unitSkill.length; - if(length<3){ - return passivityData; - } int passivityIndex = 1; Set tempSet = new HashSet<>(8); - for(int i=2;i effectList = parseArraayToLuaValues(sPassiveSkillLogicConfig.getValue()); @@ -227,11 +225,11 @@ public class FightDataUtil { detail.rawset(j + 4, effectList.get(j)); } } - passivityData.rawset(passivityIndex,detail); + passivityData.rawset(passivityIndex, detail); passivityIndex++; } - return passivityData; + return passivityData; } private static List parseArraayToLuaValues(float[] source) { @@ -404,8 +402,7 @@ public class FightDataUtil { monster.set("skill", initiative); String[] convert = typeConvert(passive); - LuaValue passivity = getPassivity(convert); - monster.set("passivity", passivity); + monster.set("passivity", getPassivity(convert)); teamSkill.rawset(i+1,monster); } return teamSkill; @@ -476,7 +473,7 @@ public class FightDataUtil { }else { unitData.set("superSkill", getSkill(skillIds[1],data.getSkinId())); } - unitData.set("passivity", getPassivity(skillIds)); + unitData.set("passivity", getHeroPassivity(skillIds)); unitData.set("property", getProperty(property)); unitData.set("skinId",data.getSkinId()); unitData.set("job",hero.getJob());