diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/activity/NewGeneralAttackHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/activity/NewGeneralAttackHandler.java index 1f41398af..163a6408b 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/activity/NewGeneralAttackHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/activity/NewGeneralAttackHandler.java @@ -24,6 +24,7 @@ import manager.STableManager; import org.springframework.stereotype.Component; import java.text.NumberFormat; +import java.util.ArrayList; /*** * @author hj @@ -57,7 +58,7 @@ public class NewGeneralAttackHandler extends BaseHandler= h){ - dropList[i] = hurt[i][1]; - } - } + int[] dropList = new int[1]; + // 道具逻辑,封装好的 - CommonProto.Drop.Builder drop = ItemUtil.drop(user, dropList,1,0, BIReason.NEW_GENERAL_ATTACK); + CommonProto.Drop.Builder drop = CommonProto.Drop.newBuilder(); + + for (int i = 0; i < hurtList.length; i++) { + // 当前类型奖励次数 + float v = b / hurtList[i][0]; + dropList[0] = hurtList[i][1]; + ItemUtil.drop(user, dropList,drop,v,0, BIReason.NEW_GENERAL_ATTACK); + System.out.println(); + } // 消耗道具 PlayerLogic.getInstance().checkAndUpdate(user, proto.getPrivilageTypeId(),1); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/util/ItemUtil.java b/serverlogic/src/main/java/com/ljsd/jieling/util/ItemUtil.java index 86c4631bc..f3efd0a3f 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/util/ItemUtil.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/util/ItemUtil.java @@ -227,7 +227,7 @@ public class ItemUtil { * @return * @throws Exception */ - public static CommonProto.Drop.Builder drop(User user, int[] dropGroupIds,float dropRatio, int isMapping,int reason) throws Exception { + public static CommonProto.Drop.Builder drop(User user, int[] dropGroupIds,float dropRatio, int isMapping,int reason) throws Exception { CommonProto.Drop.Builder dropBuilder = CommonProto.Drop.newBuilder(); Map itemMap = new HashMap<>(); Map cardMap = new HashMap<>(); @@ -249,6 +249,27 @@ public class ItemUtil { return dropBuilder; } + public static CommonProto.Drop.Builder drop(User user, int[] dropGroupIds,CommonProto.Drop.Builder dropBuilder,float dropRatio, int isMapping,int reason) throws Exception { + Map itemMap = new HashMap<>(); + Map cardMap = new HashMap<>(); + Map equipMap = new HashMap<>(); + Map randomMap = new HashMap<>(); + ItemMap itemObj = new ItemMap(); + + combineRewardDropGroup(user, dropGroupIds, dropRatio, itemMap, cardMap, equipMap, randomMap,itemObj); + useRandomItem(user,randomMap,reason); + if (isMapping == 1) { + addItemToTemporaryBag(user, itemMap, equipMap, dropBuilder); + } else { + addItem(user,itemMap,dropBuilder,reason); + addEquip(user,equipMap,dropBuilder,reason); + addSpecialMonster(user,itemObj,dropBuilder,reason); + + } + addCard(user,cardMap,dropBuilder,reason); + return dropBuilder; + } + /** * @param user * @param dropGroupIds