Interface Room
- All Known Implementing Classes:
SimpleRoom
public interface Room
Room
- Since:
- 21.8
- Author:
- 渔民小镇
- date:
- 2022-03-31
-
Method Summary
Modifier and TypeMethodDescriptiondefault voidAdd player to the roomdefault intCount the number of players in the room, including Robotsdefault intCount the number of real players in the roomdefault intCount the number of Robots in the roomdefault voidexecuteDelayTask(Runnable task, long delayMilliseconds) Delayed execution of tasks, this method is thread-safedefault voidexecuteTask(Runnable task) Executed in domain events, this method is thread-safedefault booleanexistUser(long userId) Check if the user exists in the roomdefault voidforEach(BiConsumer<Long, Player> action) forEach players, the first argument is the userIddefault intGet an empty seat numberdefault OperationHandlergetOperationHandler(OperationCode operationCode) get OperationHandler by OperationCodedefault OperationServicegetOperationServicedefault <T extends Player>
TgetPlayerById(long userId) Find player by userIddefault <T extends Player>
TgetPlayerBySeat(int seat) Find player by seatUsers, including Robot. key : userIdUser positions. key: seat, value: userIdAll real users key : userIdAll Robots key : userIdlongget roomIdintget room space sizedefault booleanhasSeat()Check if there is still an empty seatdefault <T extends Player>
voidifPlayerExist(long userId, Consumer<T> action) Executes the given action if the player is in the room, otherwise does nothing.default voidifPlayerNotExist(long userId, Runnable runnable) Executes the given action if the player is not in the room, otherwise does nothing.default booleanCheck if the room has no players, including Robotsdefault booleandefault booleanCheck if the room has no Robotsdefault booleanCheck if all players are readydefault booleanisRealPlayer(long userId) Check if it is a real userdefault booleanisRobot(long userId) Check if it is a Robotdefault <T extends Player>
Collection<T> Player list: All users, including Robotdefault Collection<Long> userId Collectiondefault <T extends Player>
Collection<T> Real player list: All real users (excluding Robots)default Collection<Long> default <T extends Player>
Collection<T> RobotListdefault Collection<Long> Robot UserId Collectiondefault RangeBroadcastofEmptyRangeBroadcast(CmdInfo cmdInfo) Create a RangeBroadcastdefault OperationContextofOperationContext(OperationHandler operationHandler) create OperationContextdefault RangeBroadcastofRangeBroadcast(CmdInfo cmdInfo) Create a RangeBroadcast, which will add all players in the current room by default.default voidoperation(OperationCode operationCode) execute operationdefault voidoperation(OperationCode operationCode, long userId) execute operationdefault voidoperation(OperationCode operationCode, long userId, Object commandMessage) execute operationdefault voidoperation(OperationCode operationCode, FlowContext flowContext) execute operationdefault voidoperation(OperationCode operationCode, FlowContext flowContext, Object commandMessage) execute operationdefault voidoperation(OperationHandler operationHandler, long userId, Object commandMessage) execute operationdefault voidoperation(OperationHandler operationHandler, FlowContext flowContext) execute operationdefault voidoperation(OperationHandler operationHandler, FlowContext flowContext, Object commandMessage) execute operationdefault voidremovePlayer(Player player) Remove playerdefault voidsetOperationService(OperationService operationService) setOperationServicevoidsetRoomId(long roomId) set roomIdvoidsetSpaceSize(int spaceSize) set room space sizestream playersstream real playersstream robots
-
Method Details
-
getPlayerMap
-
getRealPlayerMap
-
getRobotMap
-
getPlayerSeatMap
-
getRoomId
long getRoomId()get roomId- Returns:
- roomId
-
setRoomId
void setRoomId(long roomId) set roomId- Parameters:
roomId- roomId
-
getSpaceSize
int getSpaceSize()get room space size- Returns:
- Room space size. For example, 4 means the room can hold a maximum of 4 players.
-
setSpaceSize
void setSpaceSize(int spaceSize) set room space size- Parameters:
spaceSize- spaceSize
-
listPlayer
Player list: All users, including Robot- Type Parameters:
T- Player- Returns:
- All players
-
streamPlayer
-
listRealPlayer
Real player list: All real users (excluding Robots)- Type Parameters:
T- Player- Returns:
- All real players
-
streamRealPlayer
-
listRobot
RobotList- Type Parameters:
T- Robot- Returns:
- RobotList
-
streamRobot
-
listPlayerId
-
listRealPlayerId
-
listRobotPlayerId
-
getPlayerById
Find player by userId- Type Parameters:
T- Player- Parameters:
userId- userId- Returns:
- Player
-
existUser
default boolean existUser(long userId) Check if the user exists in the room- Parameters:
userId- userId- Returns:
- true if exists
-
getPlayerBySeat
Find player by seat- Type Parameters:
T- Player- Parameters:
seat- seat- Returns:
- Player
-
addPlayer
-
removePlayer
-
ifPlayerExist
-
ifPlayerNotExist
Executes the given action if the player is not in the room, otherwise does nothing.- Parameters:
userId- userIdrunnable- The given action
-
countPlayer
default int countPlayer()Count the number of players in the room, including Robots- Returns:
- Number of players
-
countRealPlayer
default int countRealPlayer()Count the number of real players in the room- Returns:
- Number of real players
-
countRobot
default int countRobot()Count the number of Robots in the room- Returns:
- Number of Robots
-
isEmptyPlayer
default boolean isEmptyPlayer()Check if the room has no players, including Robots- Returns:
- true if the room has no players
-
isEmptyRealPlayer
default boolean isEmptyRealPlayer() -
isEmptyRobot
default boolean isEmptyRobot()Check if the room has no Robots- Returns:
- true if the room has no Robots
-
isRobot
default boolean isRobot(long userId) Check if it is a Robot- Parameters:
userId- userId- Returns:
- true: Robot
- Since:
- 21.23
-
isRealPlayer
default boolean isRealPlayer(long userId) Check if it is a real user- Parameters:
userId- userId- Returns:
- true: real player
- Since:
- 21.23
-
getEmptySeatNo
default int getEmptySeatNo()Get an empty seat number- Returns:
- >=0 indicates there is an available seat
-
hasSeat
default boolean hasSeat()Check if there is still an empty seat- Returns:
- true if there is still an empty seat
- Since:
- 21.23
-
isReadyPlayers
default boolean isReadyPlayers()Check if all players are ready- Returns:
- true if all players are ready
-
forEach
forEach players, the first argument is the userId- Parameters:
action- action
-
executeTask
Executed in domain events, this method is thread-safe- Parameters:
task- task- Since:
- 21.23
-
executeDelayTask
Delayed execution of tasks, this method is thread-safe- Parameters:
task- taskdelayMilliseconds- delayMilliseconds- Since:
- 21.23
-
setOperationService
setOperationService- Parameters:
operationService- operationService- Since:
- 21.28
-
getOperationService
getOperationService- Returns:
- OperationService
- Since:
- 21.28
-
getOperationHandler
get OperationHandler by OperationCode- Parameters:
operationCode- operationCode- Returns:
- OperationHandler
- Since:
- 21.28
-
ofOperationContext
create OperationContext- Parameters:
operationHandler- operationHandler- Returns:
- OperationContext operationHandler
- Since:
- 21.23
-
operation
execute operation- Parameters:
operationCode- operationCode- Since:
- 21.28
-
operation
execute operation- Parameters:
operationCode- operationCodeuserId- userId- Since:
- 21.28
-
operation
execute operation- Parameters:
operationCode- operationCodeuserId- userIdcommandMessage- commandMessage- Since:
- 21.28
-
operation
execute operation- Parameters:
operationCode- operationCodeflowContext- flowContext- Since:
- 21.28
-
operation
execute operation- Parameters:
operationCode- operationCodeflowContext- flowContextcommandMessage- commandMessage- Since:
- 21.28
-
operation
execute operation- Parameters:
operationHandler- operationHandleruserId- userIdcommandMessage- commandMessage- Since:
- 21.28
-
operation
default void operation(OperationHandler operationHandler, FlowContext flowContext, Object commandMessage) execute operation- Parameters:
operationHandler- operationHandlerflowContext- flowContextcommandMessage- commandMessage- Since:
- 21.28
-
operation
execute operation- Parameters:
operationHandler- operationHandlerflowContext- flowContext- Since:
- 25.1
-
ofRangeBroadcast
Create a RangeBroadcast, which will add all players in the current room by default.- Returns:
- RangeBroadcast The broadcast within the range
-
ofEmptyRangeBroadcast
Create a RangeBroadcast- Returns:
- RangeBroadcast The broadcast within the range
-