TableBattle UML
2017-11-21 10:08:21 12 举报
UML图
作者其他创作
大纲/内容
TableBattle
TableBattlePlayer
SpriteSoldier
Protocol
Byte[] Encoder(Message msg)Message DecoderMsg(byte[] recvBytes)
TBCardFactory
TBCard BiuldCard(int type)
JoinRoomCRequst
SetReadyMsgHandler
SpriteFactory
TBCard BiuldSprite(int type)
TableBattle.PlayerLeave()
TableBattle::GameThread
JoinRoomMsgHandler
服务器定时发送游戏数据给客户端
PlayerInputSReply
GameStartCReply
PlayerInputCRequest
LoginCRequest
客户端
TBCardSoldier
PlayerInputHandler
TBCard
LoginMsgHandler
Room.InitGame
服务器 MsgHandler
SetReadyCRequst
List spritelist;TableBattlePlayer p1;TableBattlePlayer p2;MessageSender msgSender;\tTableGameThread gameThread;
Client
string name;Channel ch;bool isReady
send(byte[]);
TableGameThread
TableBattle game;
run()
Sprite
String des;int spriteType;int x;int y;int hp;int status;
logicAI(Game game)
MessageSender
Client client1Client client2
SendSyncDataS(TableBattle battle)SendGameOverS(TableBattle battle)
ConnectionCloseHandler
List cardlist;Energy energy;
boolean PlayACard(TBCard card)
LeaveRoomMsgHandler
结束线程
SetReadySReply
SyncDataS
RoomManager
Room
ClientManager
游戏结果给客户端,结束线程
Room.ClientLeave
TableBattlePlayer.PlayAcard
LogoutMsgHandler
Client playerA;Client playerB;Game game;
服务器发出开始游戏请求,2个客户端确认后正式开启游戏
开始线程
PlayerInput顺序图
Channel
writeAndFlush
Game
Server
RoomManager roomManager;ClientManager clientManager;
NettyServiceHandler
Protocol protocol;
channelActive(ChannelHandlerContext ctx)channelRead(ChannelHandlerContext ctx)channelInactive(ChannelHandlerContext ctx)
TableBattle.Start
客户端将输入给服务器
String des;int cardType;int cost;int lv;
MessageHanler
Server server;
LoginSReply
GameStartSRequest
Close Exception
GameOverS
JoinRoomSReply
TableBattle.PlayerInput
0 条评论
回复 删除
下一页