public bool Serialize(DeleteCharacterData data) { bool ret = true; ret &= Serialize(data.Index); return(ret); }
//캐릭터 삭제 -> Server public void DeleteCharacter(int index) { Debug.Log("캐릭터 삭제"); DeleteCharacterData deleteCharacterData = new DeleteCharacterData((byte)index); DeleteCharacterPacket deleteCharacterPacket = new DeleteCharacterPacket(deleteCharacterData); deleteCharacterPacket.SetPacketId((int)ClientPacketId.DeleteCharacter); DataPacket packet = new DataPacket(CreatePacket(deleteCharacterPacket), null); sendMsgs.Enqueue(packet); }
//캐릭터 삭제 public void DeleteCharacter(DataPacket packet) { Console.WriteLine(packet.client.RemoteEndPoint.ToString() + "캐릭터 삭제"); DeleteCharacterPacket deleteCharacterPacket = new DeleteCharacterPacket(packet.msg); DeleteCharacterData deleteCharacterData = deleteCharacterPacket.GetData(); string id = ""; try { id = loginUser[packet.client]; } catch { Console.WriteLine("Datahandler::DeleteCharacter.loginUser 에러"); } UserData userData = database.GetUserData(id); Result result = Result.Fail; try { userData.DeleteHero(deleteCharacterData.Index); result = Result.Success; } catch { Console.WriteLine("DataHandler::DeleteCharacter.DeleteHero에러"); result = Result.Fail; } database.FileSave(id + ".data", userData); ResultData resultData = new ResultData((byte)result); ResultPacket resultDataPacket = new ResultPacket(resultData); resultDataPacket.SetPacketId((int)ServerPacketId.DeleteChracterResult); byte[] msg = CreatePacket(resultDataPacket); packet = new DataPacket(msg, packet.client); lock (sendLock) { sendMsgs.Enqueue(packet); } }
public bool Deserialize(ref DeleteCharacterData element) { if (GetDataSize() == 0) { // 데이터가 설정되지 않았다. return(false); } bool ret = true; byte index = 0; ret &= Deserialize(ref index); element = new DeleteCharacterData(index); return(ret); }