diff options
| author | syeyoung <42869671+cyoung06@users.noreply.github.com> | 2020-12-15 01:23:36 +0900 |
|---|---|---|
| committer | syeyoung <42869671+cyoung06@users.noreply.github.com> | 2020-12-15 01:23:36 +0900 |
| commit | c4448fea149d2638f126813deba6406a7a15d67d (patch) | |
| tree | 7701c48f47dc95644acfae4756596b6b9a089dff /src/main/java/kr/syeyoung/dungeonsguide/dungeon/actions/tree | |
| parent | 496efb764360cd26fa40982532048aa18ae4c6be (diff) | |
| download | Skyblock-Dungeons-Guide-c4448fea149d2638f126813deba6406a7a15d67d.tar.gz Skyblock-Dungeons-Guide-c4448fea149d2638f126813deba6406a7a15d67d.tar.bz2 Skyblock-Dungeons-Guide-c4448fea149d2638f126813deba6406a7a15d67d.zip | |
predicate equals and more edits
Diffstat (limited to 'src/main/java/kr/syeyoung/dungeonsguide/dungeon/actions/tree')
| -rw-r--r-- | src/main/java/kr/syeyoung/dungeonsguide/dungeon/actions/tree/ActionTree.java | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/actions/tree/ActionTree.java b/src/main/java/kr/syeyoung/dungeonsguide/dungeon/actions/tree/ActionTree.java index 1db6767c..334f7c2b 100644 --- a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/actions/tree/ActionTree.java +++ b/src/main/java/kr/syeyoung/dungeonsguide/dungeon/actions/tree/ActionTree.java @@ -4,6 +4,7 @@ import kr.syeyoung.dungeonsguide.dungeon.actions.Action; import kr.syeyoung.dungeonsguide.dungeon.actions.ActionRoot; import kr.syeyoung.dungeonsguide.dungeon.roomfinder.DungeonRoom; import lombok.Data; +import lombok.EqualsAndHashCode; import java.util.HashMap; import java.util.HashSet; @@ -12,10 +13,14 @@ import java.util.Set; @Data public class ActionTree { + @EqualsAndHashCode.Exclude private ActionTree parent; private Action current; private Set<ActionTree> children; + @Override + public int hashCode() { return current == null ? 0 : current.hashCode(); } + public static ActionTree buildActionTree(Set<Action> actions, DungeonRoom dungeonRoom) { ActionRoot root = new ActionRoot(); @@ -31,6 +36,7 @@ public class ActionTree { return tree; } + private static ActionTree buildActionTree(ActionTree parent, Action action, DungeonRoom dungeonRoom, Map<Action, ActionTree> alreadyBuilt) { if (action == null) return null; if (alreadyBuilt.containsKey(action)) return alreadyBuilt.get(action); |
