public int AddPlayer(Socket newPlayer, HeroData newData) { int index = FindEmptySlot(); if (index < 0) { Console.WriteLine("최대 인원수를 초과하였습니다."); return -1; } roomUserData[index] = new RoomUserData(newData.Name, newData.Gender, newData.HClass, newData.LevelData.Level); socket[index] = newPlayer; playerNum++; if (playerNum < RoomManager.maxPlayerNum) { state = (int)RoomState.wait; } else if (playerNum == RoomManager.maxPlayerNum) { state = (int)RoomState.Full; } Console.WriteLine(index + "번 슬롯에 유저 입장"); Console.WriteLine("유저 수 : " + playerNum); return index; }
public RoomData(string[] newUserName, byte[] newUserGender, byte[] newUserClass, byte[] newUserLevel) { roomUserData = new RoomUserData[WaitingUIManager.maxPlayerNum]; for (int i = 0; i < WaitingUIManager.maxPlayerNum; i++) { roomUserData[i] = new RoomUserData(newUserName[i], newUserGender[i], newUserClass[i], newUserLevel[i]); } }
public RoomData() { roomUserData = new RoomUserData[WaitingUIManager.maxPlayerNum]; for (int i = 0; i < WaitingUIManager.maxPlayerNum; i++) { roomUserData[i] = new RoomUserData(); } }
public void OnReceived(UserEnteredRoomMessage userEnteredRoomMessage) { UInt8 userIndex = userEnteredRoomMessage.UserIndex; users[userIndex] = new RoomUserData(); users[userIndex].username = userEnteredRoomMessage.Username; users[userIndex].selectedTeam = null; UpdateSlotTexts(); }
public bool Deserialize(ref RoomListData element) { if (GetDataSize() == 0) { // 데이터가 설정되지 않았다. return(false); } bool ret = true; byte roomNameLength = 0; string roomName; byte dungeonId = 0; byte dungeonLevel = 0; byte playerNum = 0; byte state = 0; byte userNameLength = 0; string userName; byte userGender = 0; byte userClass = 0; byte userLevel = 0; Room[] rooms; RoomUserData[] roomUserData; rooms = new Room[WaitingUIManager.maxRoomNum]; roomUserData = new RoomUserData[WaitingUIManager.maxPlayerNum]; for (int roomIndex = 0; roomIndex < WaitingUIManager.maxRoomNum; roomIndex++) { ret &= Deserialize(ref roomNameLength); ret &= Deserialize(out roomName, roomNameLength); ret &= Deserialize(ref dungeonId); ret &= Deserialize(ref dungeonLevel); ret &= Deserialize(ref playerNum); ret &= Deserialize(ref state); for (int userIndex = 0; userIndex < WaitingUIManager.maxPlayerNum; userIndex++) { ret &= Deserialize(ref userNameLength); ret &= Deserialize(out userName, userNameLength); ret &= Deserialize(ref userGender); ret &= Deserialize(ref userClass); ret &= Deserialize(ref userLevel); roomUserData[userIndex] = new RoomUserData(userName, userGender, userClass, userLevel); } rooms[roomIndex] = new Room(roomName, dungeonId, dungeonLevel, roomUserData, playerNum, state); } element = new RoomListData(rooms); return(ret); }
public Room(string newName, int newDungeonId, int newDungeonLevel) { roomName = newName; dungeonId = newDungeonId; dungeonLevel = newDungeonLevel; playerNum = 0; roomUserData = new RoomUserData[WaitingUIManager.maxPlayerNum]; for (int i = 0; i < WaitingUIManager.maxPlayerNum; i++) { roomUserData[i] = new RoomUserData(); } }
public Room() { roomName = ""; playerNum = 0; dungeonId = 0; dungeonLevel = 0; roomUserData = new RoomUserData[WaitingUIManager.maxPlayerNum]; for (int i = 0; i < WaitingUIManager.maxPlayerNum; i++) { roomUserData[i] = new RoomUserData(); } }
public Room(string newRoomName, int newDungeonId, int newDungeonLevel, RoomUserData[] newRoomUserData, int newPlayerNum) { roomName = newRoomName; dungeonName = ""; dungeonId = newDungeonId; dungeonLevel = newDungeonLevel; roomUserData = new RoomUserData[newRoomUserData.Length]; playerNum = newPlayerNum; for (int i = 0; i < newRoomUserData.Length; i++) { roomUserData[i] = new RoomUserData(newRoomUserData[i].UserName, newRoomUserData[i].UserGender, newRoomUserData[i].UserClass, newRoomUserData[i].UserLevel); } }
public RoomData() { roomName = ""; roomNum = 0; dungeonName = ""; dungeonId = 0; dungeonLevel = 0; roomUserData = new RoomUserData[RoomManager.maxPlayerNum]; for (int i = 0; i < RoomManager.maxPlayerNum; i++) { roomUserData[i] = new RoomUserData(); } }
public Room(string newRoomName, string newDungeonName, int newDungeonId, int newDungeonLevel) { roomName = newRoomName; dungeonName = newDungeonName; dungeonId = newDungeonId; dungeonLevel = newDungeonLevel; playerNum = 0; roomUserData = new RoomUserData[RoomManager.maxPlayerNum]; socket = new Socket[RoomManager.maxPlayerNum]; ready = new bool[RoomManager.maxPlayerNum]; for (int i = 0; i < RoomManager.maxPlayerNum; i++) { roomUserData[i] = new RoomUserData(); } }
public void OnReceived(RoomCreatedMessage roomCreatedMessage) { userIndex = 0; roomToken = roomCreatedMessage.RoomToken; users = new RoomUserData[2 * roomCreatedMessage.TeamSize]; users[0] = new RoomUserData(); users[0].username = username; users[0].selectedTeam = null; roomTokenText.text = Convert.ToString(roomToken); copyToClipboardButton.gameObject.SetActive(true); UpdateSlotTexts(); }
public bool Deserialize(ref RoomData element) { if (GetDataSize() == 0) { // 데이터가 설정되지 않았다. return(false); } bool ret = true; byte roomNameLength = 0; string roomName; byte roomNum = 0; byte dungeonNameLength = 0; string dungeonName; byte dungeonId = 0; byte dungeonLevel = 0; byte[] userNameLength = new byte[WaitingUIManager.maxPlayerNum]; string[] userName = new string[WaitingUIManager.maxPlayerNum]; byte[] userGender = new byte[WaitingUIManager.maxPlayerNum]; byte[] userClass = new byte[WaitingUIManager.maxPlayerNum]; byte[] userLevel = new byte[WaitingUIManager.maxPlayerNum]; RoomUserData[] roomUserData = new RoomUserData[WaitingUIManager.maxPlayerNum]; ret &= Deserialize(ref roomNameLength); ret &= Deserialize(out roomName, roomNameLength); ret &= Deserialize(ref roomNum); ret &= Deserialize(ref dungeonNameLength); ret &= Deserialize(out dungeonName, dungeonNameLength); ret &= Deserialize(ref dungeonId); ret &= Deserialize(ref dungeonLevel); for (int i = 0; i < WaitingUIManager.maxPlayerNum; i++) { ret &= Deserialize(ref userNameLength[i]); ret &= Deserialize(out userName[i], userNameLength[i]); ret &= Deserialize(ref userGender[i]); ret &= Deserialize(ref userClass[i]); ret &= Deserialize(ref userLevel[i]); roomUserData[i] = new RoomUserData(userName[i], userGender[i], userClass[i], userLevel[i]); } element = new RoomData(roomName, roomNum, dungeonName, dungeonId, dungeonLevel, roomUserData); return(ret); }
public Room() { roomName = ""; dungeonName = ""; playerNum = 0; dungeonId = 0; dungeonLevel = 0; state = (int)RoomState.empty; roomUserData = new RoomUserData[RoomManager.maxPlayerNum]; socket = new Socket[RoomManager.maxPlayerNum]; ready = new bool[RoomManager.maxPlayerNum]; for (int i = 0; i < RoomManager.maxPlayerNum; i++) { roomUserData[i] = new RoomUserData(); } }
public bool DeletePlayer(Socket player) { int index = FindPlayerWithSocket(player); if(index == -1) { return false; } roomUserData[index] = new RoomUserData(); socket[index] = null; playerNum--; if(playerNum == 0) { state = (int)RoomState.empty; } return true; }
public void SwapPlayer(int origSlot, int DestiSlot) { RoomUserData tempData = roomUserData[origSlot]; roomUserData[origSlot] = roomUserData[DestiSlot]; roomUserData[DestiSlot] = tempData; }