Add EnterDungeonCmd, fix error when enter dungeon by changescene, import spawn cmd

This commit is contained in:
dogdie233
2022-05-02 20:16:34 +08:00
committed by Melledy
parent fe2d2e8e81
commit 16f77ee520
4 changed files with 103 additions and 17 deletions

View File

@@ -37,11 +37,11 @@ public class DungeonManager {
player.sendPacket(new PacketDungeonEntryInfoRsp(player, entry.getPointData()));
}
public void enterDungeon(Player player, int pointId, int dungeonId) {
public boolean enterDungeon(Player player, int pointId, int dungeonId) {
DungeonData data = GameData.getDungeonDataMap().get(dungeonId);
if (data == null) {
return;
return false;
}
Grasscutter.getLogger().info(player.getNickname() + " is trying to enter dungeon " + dungeonId);
@@ -53,6 +53,7 @@ public class DungeonManager {
player.getScene().setPrevScenePoint(pointId);
player.sendPacket(new PacketPlayerEnterDungeonRsp(pointId, dungeonId));
return true;
}
public void exitDungeon(Player player) {

View File

@@ -175,7 +175,7 @@ public class Scene {
}
public void setDungeonData(DungeonData dungeonData) {
if (this.dungeonData != null || this.getSceneType() != SceneType.SCENE_DUNGEON || dungeonData.getSceneId() != this.getId()) {
if (dungeonData == null || this.dungeonData != null || this.getSceneType() != SceneType.SCENE_DUNGEON || dungeonData.getSceneId() != this.getId()) {
return;
}
this.dungeonData = dungeonData;