This commit is contained in:
Michael Wain 2024-07-13 18:40:42 +03:00
parent 46f92cdb22
commit 8206ee2e45
3 changed files with 9 additions and 10 deletions

View File

@ -64,11 +64,10 @@ public class GameRoom extends Thread {
this.socks = new ConcurrentHashMap<>();
this.state = GameState.MOVE;
this.manager = new ConcurrentHashMap<>();
log.info("GameRoomManagerState: yup");
Arrays.stream(GameState.values()).forEach(s -> {
try {
log.info("GameRoomMgr: {}; {}; {}; {}", s, s.getAllowedRequests(), s.getManagerClass(), s.isAllowedDialog());
this.manager.put(s, s.getManagerClass().getDeclaredConstructor().newInstance(this));
this.manager.put(s, s.getManagerClass().getDeclaredConstructor().newInstance());
this.manager.get(s).setParent(this);
} catch (Exception e) {
log.error(e.getMessage());
}

View File

@ -3,16 +3,14 @@ package com.alterdekim.game.component.game.statemanager;
import com.alterdekim.game.component.game.*;
import com.alterdekim.game.websocket.message.BasicMessage;
import com.alterdekim.game.websocket.message.WebSocketMessageType;
import lombok.NoArgsConstructor;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@NoArgsConstructor
public class MoveManager extends StateManager {
public MoveManager(GameRoom parent) {
super(parent);
}
@Override
public void performState() {
List<DialogButton> buttons = new ArrayList<>();

View File

@ -3,13 +3,15 @@ package com.alterdekim.game.component.game.statemanager;
import com.alterdekim.game.component.game.GameRoom;
import com.alterdekim.game.websocket.message.BasicMessage;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
import lombok.NoArgsConstructor;
import lombok.Setter;
@Getter
@RequiredArgsConstructor
@Setter
@NoArgsConstructor
public abstract class StateManager {
private final GameRoom parent;
private GameRoom parent;
public abstract void performState();
public abstract void performDialogAction(BasicMessage message);