Ladder continuation
This commit is contained in:
parent
08bc4b85f1
commit
798beb9b15
@ -8,7 +8,6 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
|
|||||||
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Bean;
|
||||||
import org.springframework.scheduling.annotation.EnableAsync;
|
import org.springframework.scheduling.annotation.EnableAsync;
|
||||||
import org.springframework.scheduling.annotation.EnableScheduling;
|
import org.springframework.scheduling.annotation.EnableScheduling;
|
||||||
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
|
|
||||||
|
|
||||||
@SpringBootApplication
|
@SpringBootApplication
|
||||||
@EnableScheduling
|
@EnableScheduling
|
||||||
|
File diff suppressed because one or more lines are too long
@ -4,6 +4,7 @@ import com.alterdekim.hearthhack.entity.RoomPlayer;
|
|||||||
import com.alterdekim.hearthhack.service.RoomPlayerService;
|
import com.alterdekim.hearthhack.service.RoomPlayerService;
|
||||||
import com.alterdekim.hearthhack.service.RoomService;
|
import com.alterdekim.hearthhack.service.RoomService;
|
||||||
import com.alterdekim.hearthhack.service.UserService;
|
import com.alterdekim.hearthhack.service.UserService;
|
||||||
|
import jakarta.annotation.PostConstruct;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.scheduling.annotation.Scheduled;
|
import org.springframework.scheduling.annotation.Scheduled;
|
||||||
@ -26,22 +27,30 @@ public class GamePool {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private RoomPlayerService roomPlayerService;
|
private RoomPlayerService roomPlayerService;
|
||||||
|
|
||||||
private ConcurrentHashMap<Long, GameRoom> games = new ConcurrentHashMap<>();
|
private final ConcurrentHashMap<Long, GameRoom> games = new ConcurrentHashMap<>();
|
||||||
|
|
||||||
private static final int PLAYERS_COUNT = 2;
|
private static final int PLAYERS_COUNT = 1; // TODO: MAKE 2 PLAYERS FOR PRODUCTION
|
||||||
|
|
||||||
@Scheduled(fixedRate = 1000)
|
@Scheduled(fixedRate = 200)
|
||||||
private void refreshRooms() {
|
private void refreshRooms() {
|
||||||
roomService.getAll()
|
roomService.getAll()
|
||||||
.forEach(r -> {
|
.forEach(r -> {
|
||||||
if( roomPlayerService.findByRoomId(r.getId()).size() != PLAYERS_COUNT ) return;
|
if( roomPlayerService.findByRoomId(r.getId()).size() != PLAYERS_COUNT ) return;
|
||||||
|
log.info("Got room!");
|
||||||
List<RoomPlayer> players = roomPlayerService.findByRoomId(r.getId());
|
List<RoomPlayer> players = roomPlayerService.findByRoomId(r.getId());
|
||||||
|
log.info("Put room by id: {}", r.getId());
|
||||||
|
games.put(r.getId(), new GameRoom(players, userService, r.getRoomPassword()));
|
||||||
roomPlayerService.removeByRoomId(r.getId());
|
roomPlayerService.removeByRoomId(r.getId());
|
||||||
roomService.removeRoom(r.getId());
|
roomService.removeRoom(r.getId());
|
||||||
games.put(r.getId(), new GameRoom(players, userService));
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PostConstruct
|
||||||
|
private void clearRooms() {
|
||||||
|
roomService.clear();
|
||||||
|
roomPlayerService.clear();
|
||||||
|
}
|
||||||
|
|
||||||
public Boolean containsPlayer(Long userId) {
|
public Boolean containsPlayer(Long userId) {
|
||||||
return games.keySet()
|
return games.keySet()
|
||||||
.stream()
|
.stream()
|
||||||
@ -64,4 +73,8 @@ public class GamePool {
|
|||||||
)
|
)
|
||||||
.findFirst();
|
.findFirst();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public GameRoom getGameRoomById(Long id) {
|
||||||
|
return games.get(id);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,19 +1,29 @@
|
|||||||
package com.alterdekim.hearthhack.component;
|
package com.alterdekim.hearthhack.component;
|
||||||
|
|
||||||
import com.alterdekim.hearthhack.entity.RoomPlayer;
|
import com.alterdekim.hearthhack.entity.RoomPlayer;
|
||||||
import com.alterdekim.hearthhack.entity.User;
|
|
||||||
import com.alterdekim.hearthhack.service.UserService;
|
import com.alterdekim.hearthhack.service.UserService;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
|
import lombok.ToString;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
@ToString
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@AllArgsConstructor
|
|
||||||
public class GameRoom {
|
public class GameRoom {
|
||||||
@Getter
|
@Getter
|
||||||
private List<RoomPlayer> players;
|
private final List<RoomPlayer> players;
|
||||||
|
|
||||||
private UserService userService;
|
private final UserService userService;
|
||||||
|
|
||||||
|
@Getter
|
||||||
|
private final String password;
|
||||||
|
|
||||||
|
public GameRoom(List<RoomPlayer> players, UserService userService, String password) {
|
||||||
|
this.players = players;
|
||||||
|
this.userService = userService;
|
||||||
|
this.password = password;
|
||||||
|
log.info("New GameRoom!");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
package com.alterdekim.hearthhack.component;
|
package com.alterdekim.hearthhack.component;
|
||||||
|
|
||||||
import com.alterdekim.hearthhack.config.ServerConfig;
|
import com.alterdekim.hearthhack.config.ServerConfig;
|
||||||
|
import lombok.Getter;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.scheduling.annotation.Scheduled;
|
import org.springframework.scheduling.annotation.Scheduled;
|
||||||
@ -25,6 +26,10 @@ public class GameServer {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private ServerConfig serverConfig;
|
private ServerConfig serverConfig;
|
||||||
|
|
||||||
|
@Getter
|
||||||
|
@Autowired
|
||||||
|
private GamePool gamePool;
|
||||||
|
|
||||||
@Scheduled(fixedDelay = 5000)
|
@Scheduled(fixedDelay = 5000)
|
||||||
private void start() {
|
private void start() {
|
||||||
try {
|
try {
|
||||||
@ -34,7 +39,7 @@ public class GameServer {
|
|||||||
while(true) {
|
while(true) {
|
||||||
Socket client = this.serverSocket.accept();
|
Socket client = this.serverSocket.accept();
|
||||||
log.info("New WOW Connection Established From {}", client.getInetAddress().toString());
|
log.info("New WOW Connection Established From {}", client.getInetAddress().toString());
|
||||||
GameConnection c = new GameConnection(client);
|
GameConnection c = new GameConnection(client, this);
|
||||||
this.connections.add(c);
|
this.connections.add(c);
|
||||||
c.start();
|
c.start();
|
||||||
}
|
}
|
||||||
|
@ -4,14 +4,11 @@ import com.alterdekim.hearthhack.config.ObjectConfig;
|
|||||||
import com.alterdekim.hearthhack.config.FS;
|
import com.alterdekim.hearthhack.config.FS;
|
||||||
import com.alterdekim.hearthhack.config.ServerConfig;
|
import com.alterdekim.hearthhack.config.ServerConfig;
|
||||||
import com.alterdekim.hearthhack.dbf.CardsDBF;
|
import com.alterdekim.hearthhack.dbf.CardsDBF;
|
||||||
import com.alterdekim.hearthhack.game.GameTag;
|
|
||||||
import com.alterdekim.hearthhack.parser.CardsXmlParser;
|
import com.alterdekim.hearthhack.parser.CardsXmlParser;
|
||||||
import com.alterdekim.hearthhack.parser.DBFParser;
|
import com.alterdekim.hearthhack.parser.DBFParser;
|
||||||
import com.alterdekim.hearthhack.util.CardsObject;
|
import com.alterdekim.hearthhack.util.CardsObject;
|
||||||
import com.alterdekim.hearthhack.util.FormattedCards;
|
import com.alterdekim.hearthhack.util.FormattedCards;
|
||||||
import com.alterdekim.hearthhack.xml.CardsXML;
|
import com.alterdekim.hearthhack.xml.CardsXML;
|
||||||
import com.alterdekim.hearthhack.xml.XMLEntity;
|
|
||||||
import com.alterdekim.hearthhack.xml.XMLTag;
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.boot.jdbc.DataSourceBuilder;
|
import org.springframework.boot.jdbc.DataSourceBuilder;
|
||||||
@ -24,7 +21,6 @@ import javax.sql.DataSource;
|
|||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.nio.file.*;
|
import java.nio.file.*;
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
@ -2,6 +2,8 @@ package com.alterdekim.hearthhack.component;
|
|||||||
|
|
||||||
import com.alterdekim.hearthhack.component.processor.*;
|
import com.alterdekim.hearthhack.component.processor.*;
|
||||||
import com.alterdekim.hearthhack.config.ObjectConfig;
|
import com.alterdekim.hearthhack.config.ObjectConfig;
|
||||||
|
import com.alterdekim.hearthhack.service.RoomPlayerService;
|
||||||
|
import com.alterdekim.hearthhack.service.RoomService;
|
||||||
import com.alterdekim.hearthhack.service.UserService;
|
import com.alterdekim.hearthhack.service.UserService;
|
||||||
import com.alterdekim.hearthhack.util.BattleNetPacket;
|
import com.alterdekim.hearthhack.util.BattleNetPacket;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
@ -35,6 +37,12 @@ public class TcpConnection extends Thread {
|
|||||||
@Getter
|
@Getter
|
||||||
private final UserService userService;
|
private final UserService userService;
|
||||||
|
|
||||||
|
@Getter
|
||||||
|
private final RoomService roomService;
|
||||||
|
|
||||||
|
@Getter
|
||||||
|
private final RoomPlayerService roomPlayerService;
|
||||||
|
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
private Long userId;
|
private Long userId;
|
||||||
|
@ -5,6 +5,8 @@ import com.alterdekim.hearthhack.component.processor.Processor;
|
|||||||
import com.alterdekim.hearthhack.config.ObjectConfig;
|
import com.alterdekim.hearthhack.config.ObjectConfig;
|
||||||
import com.alterdekim.hearthhack.config.ServerConfig;
|
import com.alterdekim.hearthhack.config.ServerConfig;
|
||||||
import com.alterdekim.hearthhack.reflect.ReflectionLoader;
|
import com.alterdekim.hearthhack.reflect.ReflectionLoader;
|
||||||
|
import com.alterdekim.hearthhack.service.RoomPlayerService;
|
||||||
|
import com.alterdekim.hearthhack.service.RoomService;
|
||||||
import com.alterdekim.hearthhack.service.UserService;
|
import com.alterdekim.hearthhack.service.UserService;
|
||||||
import com.alterdekim.hearthhack.util.Util;
|
import com.alterdekim.hearthhack.util.Util;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
@ -36,6 +38,12 @@ public class TcpServer extends ReflectionLoader<Processor> {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private UserService userService;
|
private UserService userService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private RoomPlayerService roomPlayerService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private RoomService roomService;
|
||||||
|
|
||||||
@Scheduled(fixedDelay = 5000)
|
@Scheduled(fixedDelay = 5000)
|
||||||
private void start() {
|
private void start() {
|
||||||
try {
|
try {
|
||||||
@ -55,7 +63,7 @@ public class TcpServer extends ReflectionLoader<Processor> {
|
|||||||
|
|
||||||
while(true) {
|
while(true) {
|
||||||
SSLSocket s = (SSLSocket) serverSocket.accept();
|
SSLSocket s = (SSLSocket) serverSocket.accept();
|
||||||
TcpConnection c = new TcpConnection(s, this.getParsers(), dbfConfig, userService);
|
TcpConnection c = new TcpConnection(s, this.getParsers(), dbfConfig, userService, roomService, roomPlayerService);
|
||||||
connections.add(c);
|
connections.add(c);
|
||||||
c.start();
|
c.start();
|
||||||
log.info("New Connection Established From {}", s.getInetAddress().toString());
|
log.info("New Connection Established From {}", s.getInetAddress().toString());
|
||||||
|
@ -5,10 +5,7 @@ import com.alterdekim.Protocol;
|
|||||||
import com.alterdekim.hearthhack.component.TcpConnection;
|
import com.alterdekim.hearthhack.component.TcpConnection;
|
||||||
import com.alterdekim.hearthhack.util.BattleNetPacket;
|
import com.alterdekim.hearthhack.util.BattleNetPacket;
|
||||||
import com.alterdekim.hearthhack.util.Util;
|
import com.alterdekim.hearthhack.util.Util;
|
||||||
import lombok.NoArgsConstructor;
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.slf4j.Logger;
|
|
||||||
import org.slf4j.LoggerFactory;
|
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
public class AccountProcessor extends Processor {
|
public class AccountProcessor extends Processor {
|
||||||
|
@ -4,10 +4,7 @@ package com.alterdekim.hearthhack.component.processor;
|
|||||||
import com.alterdekim.Protocol;
|
import com.alterdekim.Protocol;
|
||||||
import com.alterdekim.hearthhack.component.TcpConnection;
|
import com.alterdekim.hearthhack.component.TcpConnection;
|
||||||
import com.alterdekim.hearthhack.util.BattleNetPacket;
|
import com.alterdekim.hearthhack.util.BattleNetPacket;
|
||||||
import lombok.NoArgsConstructor;
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.slf4j.Logger;
|
|
||||||
import org.slf4j.LoggerFactory;
|
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
public class ChannelProcessor extends Processor {
|
public class ChannelProcessor extends Processor {
|
||||||
|
@ -5,7 +5,6 @@ import com.alterdekim.Protocol;
|
|||||||
import com.alterdekim.hearthhack.component.TcpConnection;
|
import com.alterdekim.hearthhack.component.TcpConnection;
|
||||||
import com.alterdekim.hearthhack.util.BattleNetPacket;
|
import com.alterdekim.hearthhack.util.BattleNetPacket;
|
||||||
import com.alterdekim.hearthhack.util.Util;
|
import com.alterdekim.hearthhack.util.Util;
|
||||||
import lombok.NoArgsConstructor;
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
@ -2,15 +2,13 @@ package com.alterdekim.hearthhack.component.processor;
|
|||||||
|
|
||||||
import com.alterdekim.Protocol;
|
import com.alterdekim.Protocol;
|
||||||
import com.alterdekim.hearthhack.component.TcpConnection;
|
import com.alterdekim.hearthhack.component.TcpConnection;
|
||||||
|
import com.alterdekim.hearthhack.entity.Room;
|
||||||
import com.alterdekim.hearthhack.util.BattleNetPacket;
|
import com.alterdekim.hearthhack.util.BattleNetPacket;
|
||||||
import com.alterdekim.hearthhack.util.GameType;
|
import com.alterdekim.hearthhack.util.GameType;
|
||||||
import com.alterdekim.hearthhack.util.Util;
|
|
||||||
import com.google.protobuf.ByteString;
|
import com.google.protobuf.ByteString;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
|
||||||
import java.nio.charset.StandardCharsets;
|
import java.util.UUID;
|
||||||
|
|
||||||
import static com.alterdekim.hearthhack.util.GameUtilities.generateSmallNotification;
|
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
public class GameMasterProcessor extends Processor {
|
public class GameMasterProcessor extends Processor {
|
||||||
@ -84,6 +82,9 @@ public class GameMasterProcessor extends Processor {
|
|||||||
n.getAttributeList().stream().filter(p -> p.hasName() && p.getName().equals("connection_info")).findFirst().get().getValue().getMessageValue()
|
n.getAttributeList().stream().filter(p -> p.hasName() && p.getName().equals("connection_info")).findFirst().get().getValue().getMessageValue()
|
||||||
);
|
);
|
||||||
log.info("GGGG: {}", ci);*/
|
log.info("GGGG: {}", ci);*/
|
||||||
|
String pwd = UUID.randomUUID().toString();
|
||||||
|
Long roomId = conn.getRoomService().createRoom(new Room(pwd)); // TODO: make 1 player rooms check.
|
||||||
|
conn.getRoomPlayerService().joinRoom(roomId, conn.getUserId()); // TODO: make 1 player rooms check.
|
||||||
|
|
||||||
Protocol.Notification n1 = Protocol.Notification.newBuilder()
|
Protocol.Notification n1 = Protocol.Notification.newBuilder()
|
||||||
.setType("G_RESULT")
|
.setType("G_RESULT")
|
||||||
@ -127,7 +128,7 @@ public class GameMasterProcessor extends Processor {
|
|||||||
)
|
)
|
||||||
.setHost("192.168.0.9")
|
.setHost("192.168.0.9")
|
||||||
.setPort(3724)
|
.setPort(3724)
|
||||||
.setToken(ByteString.copyFromUtf8("EjcDeI"))
|
.setToken(ByteString.copyFromUtf8(pwd)) // password
|
||||||
.addAttribute(Protocol.Attribute
|
.addAttribute(Protocol.Attribute
|
||||||
.newBuilder()
|
.newBuilder()
|
||||||
.setName("version")
|
.setName("version")
|
||||||
@ -135,7 +136,7 @@ public class GameMasterProcessor extends Processor {
|
|||||||
.addAttribute(Protocol.Attribute
|
.addAttribute(Protocol.Attribute
|
||||||
.newBuilder()
|
.newBuilder()
|
||||||
.setName("game")
|
.setName("game")
|
||||||
.setValue(Protocol.Variant.newBuilder().setIntValue(13697066L)))
|
.setValue(Protocol.Variant.newBuilder().setIntValue(roomId))) // game_id
|
||||||
.addAttribute(Protocol.Attribute
|
.addAttribute(Protocol.Attribute
|
||||||
.newBuilder()
|
.newBuilder()
|
||||||
.setName("player")
|
.setName("player")
|
||||||
@ -143,7 +144,7 @@ public class GameMasterProcessor extends Processor {
|
|||||||
.addAttribute(Protocol.Attribute
|
.addAttribute(Protocol.Attribute
|
||||||
.newBuilder()
|
.newBuilder()
|
||||||
.setName("id")
|
.setName("id")
|
||||||
.setValue(Protocol.Variant.newBuilder().setIntValue(59414578L)))
|
.setValue(Protocol.Variant.newBuilder().setIntValue(conn.getUserId())))
|
||||||
.addAttribute(Protocol.Attribute
|
.addAttribute(Protocol.Attribute
|
||||||
.newBuilder()
|
.newBuilder()
|
||||||
.setName("resumable")
|
.setName("resumable")
|
||||||
|
@ -8,7 +8,7 @@ import com.alterdekim.hearthhack.reflect.ReflectionLoader;
|
|||||||
import com.alterdekim.hearthhack.util.*;
|
import com.alterdekim.hearthhack.util.*;
|
||||||
import com.google.protobuf.InvalidProtocolBufferException;
|
import com.google.protobuf.InvalidProtocolBufferException;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import java.util.Map;
|
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
|
||||||
|
|
||||||
|
@ -5,7 +5,6 @@ import com.alterdekim.hearthhack.component.TcpConnection;
|
|||||||
import com.alterdekim.hearthhack.reflect.AbstractParser;
|
import com.alterdekim.hearthhack.reflect.AbstractParser;
|
||||||
import com.alterdekim.hearthhack.util.BattleNetPacket;
|
import com.alterdekim.hearthhack.util.BattleNetPacket;
|
||||||
import com.alterdekim.hearthhack.util.Compute32;
|
import com.alterdekim.hearthhack.util.Compute32;
|
||||||
import lombok.Getter;
|
|
||||||
import lombok.NoArgsConstructor;
|
import lombok.NoArgsConstructor;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
|
|
||||||
|
@ -4,11 +4,9 @@ import com.alterdekim.Protocol;
|
|||||||
import com.alterdekim.hearthhack.component.TcpConnection;
|
import com.alterdekim.hearthhack.component.TcpConnection;
|
||||||
import com.alterdekim.hearthhack.util.BattleNetPacket;
|
import com.alterdekim.hearthhack.util.BattleNetPacket;
|
||||||
import com.alterdekim.hearthhack.util.ClientRequestBody;
|
import com.alterdekim.hearthhack.util.ClientRequestBody;
|
||||||
import com.alterdekim.hearthhack.util.Util;
|
|
||||||
|
|
||||||
import java.util.stream.IntStream;
|
import java.util.stream.IntStream;
|
||||||
|
|
||||||
import static com.alterdekim.hearthhack.util.GameUtilities.generateEmptyNotification;
|
|
||||||
import static com.alterdekim.hearthhack.util.GameUtilities.generateNotification;
|
import static com.alterdekim.hearthhack.util.GameUtilities.generateNotification;
|
||||||
|
|
||||||
public class GetAchieves extends ClientRequestParser {
|
public class GetAchieves extends ClientRequestParser {
|
||||||
@ -37,7 +35,7 @@ public class GetAchieves extends ClientRequestParser {
|
|||||||
|
|
||||||
achieves.addList(Protocol.Achieve.newBuilder()
|
achieves.addList(Protocol.Achieve.newBuilder()
|
||||||
.setId(79)
|
.setId(79)
|
||||||
.setProgress(10)
|
.setProgress(11)
|
||||||
.setActive(false)
|
.setActive(false)
|
||||||
.setAckProgress(10)
|
.setAckProgress(10)
|
||||||
.setDoNotAck(true)
|
.setDoNotAck(true)
|
||||||
|
@ -5,16 +5,11 @@ import com.alterdekim.hearthhack.component.TcpConnection;
|
|||||||
import com.alterdekim.hearthhack.component.processor.Processor;
|
import com.alterdekim.hearthhack.component.processor.Processor;
|
||||||
import com.alterdekim.hearthhack.util.BattleNetPacket;
|
import com.alterdekim.hearthhack.util.BattleNetPacket;
|
||||||
import com.alterdekim.hearthhack.util.ClientRequestBody;
|
import com.alterdekim.hearthhack.util.ClientRequestBody;
|
||||||
import com.alterdekim.hearthhack.util.Util;
|
|
||||||
import com.google.protobuf.ByteString;
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import static com.alterdekim.hearthhack.util.GameUtilities.generateNotification;
|
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
public class GetDeck extends ClientRequestParser {
|
public class GetDeck extends ClientRequestParser {
|
||||||
@Override
|
@Override
|
||||||
|
@ -5,8 +5,6 @@ import com.alterdekim.hearthhack.component.TcpConnection;
|
|||||||
import com.alterdekim.hearthhack.util.BattleNetPacket;
|
import com.alterdekim.hearthhack.util.BattleNetPacket;
|
||||||
import com.alterdekim.hearthhack.util.ClientRequestBody;
|
import com.alterdekim.hearthhack.util.ClientRequestBody;
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
public class SetCardSeen extends ClientRequestParser {
|
public class SetCardSeen extends ClientRequestParser {
|
||||||
@Override
|
@Override
|
||||||
public void parse(BattleNetPacket packet, ClientRequestBody body, TcpConnection conn) throws Exception {
|
public void parse(BattleNetPacket packet, ClientRequestBody body, TcpConnection conn) throws Exception {
|
||||||
|
@ -8,7 +8,6 @@ import lombok.extern.slf4j.Slf4j;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import static com.alterdekim.hearthhack.util.GameUtilities.generateEmptyNotification;
|
|
||||||
import static com.alterdekim.hearthhack.util.GameUtilities.generateNotification;
|
import static com.alterdekim.hearthhack.util.GameUtilities.generateNotification;
|
||||||
import static com.alterdekim.hearthhack.util.GetAccountInfoRequest.COLLECTION;
|
import static com.alterdekim.hearthhack.util.GetAccountInfoRequest.COLLECTION;
|
||||||
|
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
package com.alterdekim.hearthhack.config;
|
package com.alterdekim.hearthhack.config;
|
||||||
|
|
||||||
import com.alterdekim.hearthhack.dbf.CardsDBF;
|
import com.alterdekim.hearthhack.dbf.CardsDBF;
|
||||||
import com.alterdekim.hearthhack.util.CardsObject;
|
|
||||||
import com.alterdekim.hearthhack.util.FormattedCards;
|
import com.alterdekim.hearthhack.util.FormattedCards;
|
||||||
import com.alterdekim.hearthhack.xml.CardsXML;
|
import com.alterdekim.hearthhack.xml.CardsXML;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
@ -19,5 +19,9 @@ public class Room {
|
|||||||
|
|
||||||
@Column(nullable = false)
|
@Column(nullable = false)
|
||||||
private String roomPassword;
|
private String roomPassword;
|
||||||
|
|
||||||
|
public Room(String roomPassword) {
|
||||||
|
this.roomPassword = roomPassword;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
package com.alterdekim.hearthhack.entity;
|
package com.alterdekim.hearthhack.entity;
|
||||||
|
|
||||||
import com.alterdekim.hearthhack.dto.BoosterDTO;
|
|
||||||
import com.alterdekim.hearthhack.dto.UserCardDTO;
|
import com.alterdekim.hearthhack.dto.UserCardDTO;
|
||||||
import jakarta.persistence.*;
|
import jakarta.persistence.*;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
package com.alterdekim.hearthhack.reflect;
|
package com.alterdekim.hearthhack.reflect;
|
||||||
|
|
||||||
import com.alterdekim.hearthhack.component.processor.Processor;
|
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.reflections.Reflections;
|
import org.reflections.Reflections;
|
||||||
|
@ -2,7 +2,6 @@ package com.alterdekim.hearthhack.repository;
|
|||||||
|
|
||||||
import com.alterdekim.hearthhack.dto.BoosterDTO;
|
import com.alterdekim.hearthhack.dto.BoosterDTO;
|
||||||
import com.alterdekim.hearthhack.entity.Booster;
|
import com.alterdekim.hearthhack.entity.Booster;
|
||||||
import com.alterdekim.hearthhack.entity.HeroXP;
|
|
||||||
import org.springframework.data.jpa.repository.JpaRepository;
|
import org.springframework.data.jpa.repository.JpaRepository;
|
||||||
import org.springframework.data.jpa.repository.Modifying;
|
import org.springframework.data.jpa.repository.Modifying;
|
||||||
import org.springframework.data.jpa.repository.Query;
|
import org.springframework.data.jpa.repository.Query;
|
||||||
|
@ -1,10 +1,7 @@
|
|||||||
package com.alterdekim.hearthhack.repository;
|
package com.alterdekim.hearthhack.repository;
|
||||||
|
|
||||||
import com.alterdekim.hearthhack.entity.CardBack;
|
import com.alterdekim.hearthhack.entity.CardBack;
|
||||||
import com.alterdekim.hearthhack.entity.HeroXP;
|
|
||||||
import jakarta.transaction.Transactional;
|
|
||||||
import org.springframework.data.jpa.repository.JpaRepository;
|
import org.springframework.data.jpa.repository.JpaRepository;
|
||||||
import org.springframework.data.jpa.repository.Modifying;
|
|
||||||
import org.springframework.data.jpa.repository.Query;
|
import org.springframework.data.jpa.repository.Query;
|
||||||
import org.springframework.data.repository.query.Param;
|
import org.springframework.data.repository.query.Param;
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
package com.alterdekim.hearthhack.repository;
|
package com.alterdekim.hearthhack.repository;
|
||||||
|
|
||||||
import com.alterdekim.hearthhack.entity.Deck;
|
|
||||||
import com.alterdekim.hearthhack.entity.DeckContent;
|
import com.alterdekim.hearthhack.entity.DeckContent;
|
||||||
import org.springframework.data.jpa.repository.JpaRepository;
|
import org.springframework.data.jpa.repository.JpaRepository;
|
||||||
import org.springframework.data.jpa.repository.Modifying;
|
import org.springframework.data.jpa.repository.Modifying;
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
package com.alterdekim.hearthhack.repository;
|
package com.alterdekim.hearthhack.repository;
|
||||||
|
|
||||||
import com.alterdekim.hearthhack.entity.Deck;
|
import com.alterdekim.hearthhack.entity.Deck;
|
||||||
import com.alterdekim.hearthhack.entity.HeroXP;
|
|
||||||
import org.springframework.data.jpa.repository.JpaRepository;
|
import org.springframework.data.jpa.repository.JpaRepository;
|
||||||
import org.springframework.data.jpa.repository.Modifying;
|
import org.springframework.data.jpa.repository.Modifying;
|
||||||
import org.springframework.data.jpa.repository.Query;
|
import org.springframework.data.jpa.repository.Query;
|
||||||
|
@ -8,8 +8,6 @@ import org.springframework.stereotype.Repository;
|
|||||||
import org.springframework.transaction.annotation.Propagation;
|
import org.springframework.transaction.annotation.Propagation;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
@Repository
|
@Repository
|
||||||
public interface RoomRepository extends JpaRepository<Room, Long> {
|
public interface RoomRepository extends JpaRepository<Room, Long> {
|
||||||
|
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
package com.alterdekim.hearthhack.repository;
|
package com.alterdekim.hearthhack.repository;
|
||||||
|
|
||||||
import com.alterdekim.hearthhack.dto.UserCardDTO;
|
import com.alterdekim.hearthhack.dto.UserCardDTO;
|
||||||
import com.alterdekim.hearthhack.entity.User;
|
|
||||||
import com.alterdekim.hearthhack.entity.UserCard;
|
import com.alterdekim.hearthhack.entity.UserCard;
|
||||||
import org.springframework.data.jpa.repository.JpaRepository;
|
import org.springframework.data.jpa.repository.JpaRepository;
|
||||||
import org.springframework.data.jpa.repository.Modifying;
|
import org.springframework.data.jpa.repository.Modifying;
|
||||||
|
@ -36,5 +36,9 @@ public class RoomPlayerService implements IService {
|
|||||||
public void removeByRoomId(Long roomId) {
|
public void removeByRoomId(Long roomId) {
|
||||||
repository.removeByRoomId(roomId);
|
repository.removeByRoomId(roomId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void clear() {
|
||||||
|
repository.deleteAll();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -32,4 +32,8 @@ public class RoomService implements IService {
|
|||||||
public void removeRoom(Long roomId) {
|
public void removeRoom(Long roomId) {
|
||||||
roomRepository.deleteById(roomId);
|
roomRepository.deleteById(roomId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void clear() {
|
||||||
|
roomRepository.deleteAll();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -7,7 +7,6 @@ import com.alterdekim.hearthhack.dto.UserDTO;
|
|||||||
import com.alterdekim.hearthhack.entity.*;
|
import com.alterdekim.hearthhack.entity.*;
|
||||||
import com.alterdekim.hearthhack.repository.*;
|
import com.alterdekim.hearthhack.repository.*;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import org.checkerframework.checker.units.qual.C;
|
|
||||||
import org.springframework.security.crypto.password.PasswordEncoder;
|
import org.springframework.security.crypto.password.PasswordEncoder;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
@ -1,13 +1,10 @@
|
|||||||
package com.alterdekim.hearthhack.xml;
|
package com.alterdekim.hearthhack.xml;
|
||||||
|
|
||||||
import com.alterdekim.hearthhack.game.GameTag;
|
|
||||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||||
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper;
|
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper;
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Optional;
|
|
||||||
import java.util.stream.Collectors;
|
|
||||||
|
|
||||||
@ToString
|
@ToString
|
||||||
@Getter
|
@Getter
|
||||||
|
@ -3,7 +3,6 @@ package com.alterdekim.hearthhack.xml;
|
|||||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||||
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper;
|
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper;
|
||||||
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
|
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
|
||||||
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlText;
|
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user