瀏覽代碼

银月:重新随机基础属性

tangbin 1 年之前
父節點
當前提交
7186af07a1

+ 14 - 0
logic/equip-logic/src/main/java/com/iohao/mmo/equip/action/EquipAction.java

@@ -55,6 +55,20 @@ public class EquipAction {
         return EquipMapper.ME.convert(equip);
     }
 
+    /**
+     * 重新随机装备基础属性
+     *
+     * @param stringValue 重新随机装备基础属性参数对象
+     */
+    @ActionMethod(EquipCmd.resetEquipBasic)
+    public EquipShowMessage resetEquipBasic(StringValue stringValue) {
+        GameCode.objNotFound.assertTrue(
+                StringUtils.isNotBlank(stringValue.value)
+        );
+        Equip equip = equipService.resetEquipBasic(stringValue.value);
+        return EquipMapper.ME.convertShowMessage(equip);
+    }
+
     /**
      * 重新随机词条
      *

+ 16 - 0
logic/equip-logic/src/main/java/com/iohao/mmo/equip/service/EquipService.java

@@ -21,6 +21,7 @@ package com.iohao.mmo.equip.service;
 import com.iohao.mmo.common.config.GameCode;
 import com.iohao.mmo.equip.entity.EquipEntry;
 import com.iohao.mmo.equip.entity.Equip;
+import com.iohao.mmo.equip.entity.EquipPropertyBasic;
 import lombok.AllArgsConstructor;
 import org.springframework.data.mongodb.core.MongoTemplate;
 import org.springframework.data.mongodb.core.query.Criteria;
@@ -80,6 +81,21 @@ public class EquipService {
 
 
 
+    /**
+     * 重新随机装备基础属性
+     * @param id 装备id
+     */
+    public Equip resetEquipBasic(String id){
+        Equip equip = findById(id);
+        GameCode.objNotFound.assertTrue(equip!=null);
+        //重新随机装备基础属性
+        equip.setEquipPropertyBasic(EquipPropertyBasic.randomBasic(
+                equip.getEquipPropertyBasicMin(),
+                equip.getEquipPropertyBasicMax()));
+        save(equip);
+        return equip;
+    }
+
     /**
      * 重新随机词条
      * @param id 装备id

+ 15 - 0
one-client/src/main/java/com/iohao/mmo/client/input/EquipInputCommandRegion.java

@@ -79,6 +79,21 @@ public class EquipInputCommandRegion extends AbstractInputCommandRegion {
             log.info("装备属性信息 : {}", JsonKit.toJsonString(value));
         }).setDescription("查询装备信息").setInputRequestData(inputRequestData);
 
+        // 10-3 重新随机基础属性
+        inputRequestData = () -> {
+            ScannerKit.log(() -> log.info("请输入装备id"));
+            String id = ScannerKit.nextLine();
+
+            // 请求参数
+            StringValue stringValue = StringValue.of(id);
+            return stringValue;
+        };
+
+        ofCommand(EquipCmd.resetEquipBasic).callback(EquipShowMessage.class, result -> {
+            EquipShowMessage value = result.getValue();
+            log.info("装备信息 : {}", JsonKit.toJsonString(value));
+        }).setDescription("重新随机装备基础属性").setInputRequestData(inputRequestData);
+
         // 10-4 重新随机词条
         inputRequestData = () -> {
             ScannerKit.log(() -> log.info("请输入装备id和极品概率增益百分比,格式 [装备id-增益百分比]"));

+ 2 - 0
provide/equip-provide/src/main/java/com/iohao/mmo/equip/cmd/EquipCmd.java

@@ -32,6 +32,8 @@ public interface EquipCmd {
     int getEquipList = 1;
     /** 得到装备信息 */
     int getEquip = 2;
+    /** 重新随机基础属性 */
+    int resetEquipBasic = 3;
     /** 重新随机词条 */
     int resetEquip = 4;
     /** 批量删除装备 */