diff --git a/src/main/java/emu/lunarcore/GameConstants.java b/src/main/java/emu/lunarcore/GameConstants.java index f165004..cd77d90 100644 --- a/src/main/java/emu/lunarcore/GameConstants.java +++ b/src/main/java/emu/lunarcore/GameConstants.java @@ -15,8 +15,6 @@ public class GameConstants { public static final String DEFAULT_NAME = "Trailblazer"; public static final int TRAILBLAZER_AVATAR_ID = 8001; public static final int MAX_TRAILBLAZER_LEVEL = 70; - public static final int MATERIAL_HCOIN_ID = 1; // Material id for jades. DO NOT CHANGE - public static final int MATERIAL_COIN_ID = 2; // Material id for credits. DO NOT CHANGE public static final int MAX_STAMINA = 240; public static final int MAX_STAMINA_RESERVE = 2400; public static final int MAX_AVATARS_IN_TEAM = 4; @@ -30,6 +28,10 @@ public class GameConstants { public static final int START_ENTRY_ID = 2000101; public static final Position START_POS = new Position(99, 62, -4800); + public static final int MATERIAL_HCOIN_ID = 1; // Material id for jades. DO NOT CHANGE + public static final int MATERIAL_COIN_ID = 2; // Material id for credits. DO NOT CHANGE + public static final int TRAILBLAZER_EXP_ID = 22; + // Challenge public static final int CHALLENGE_ENTRANCE = 100000103; diff --git a/src/main/java/emu/lunarcore/game/drops/DropService.java b/src/main/java/emu/lunarcore/game/drops/DropService.java index 04dab06..35d4d45 100644 --- a/src/main/java/emu/lunarcore/game/drops/DropService.java +++ b/src/main/java/emu/lunarcore/game/drops/DropService.java @@ -1,5 +1,9 @@ package emu.lunarcore.game.drops; +import java.util.ArrayList; +import java.util.List; + +import emu.lunarcore.GameConstants; import emu.lunarcore.data.GameData; import emu.lunarcore.data.common.ItemParam; import emu.lunarcore.game.battle.Battle; @@ -56,4 +60,15 @@ public class DropService extends BaseGameService { } } } + + // TODO filler + public List calculateDropsFromProp(int propId) { + List drops = new ArrayList<>(); + + drops.add(new GameItem(GameConstants.MATERIAL_HCOIN_ID, 5)); + drops.add(new GameItem(GameConstants.TRAILBLAZER_EXP_ID, 5)); + drops.add(new GameItem(GameConstants.MATERIAL_COIN_ID, Utils.randomRange(20, 100))); + + return drops; + } } diff --git a/src/main/java/emu/lunarcore/game/player/Player.java b/src/main/java/emu/lunarcore/game/player/Player.java index 348943d..ceb163d 100644 --- a/src/main/java/emu/lunarcore/game/player/Player.java +++ b/src/main/java/emu/lunarcore/game/player/Player.java @@ -413,7 +413,10 @@ public class Player { if (prop.getState() == PropState.ChestClosed) { // Open chest prop.setState(PropState.ChestUsed); - // TODO handle drops + // Handle drops + var drops = this.getServer().getDropService().calculateDropsFromProp(prop.getPropId()); + this.getInventory().addItems(drops, true); + // Done return prop; } else { return null;