public override void EditCurrentRoom(GSLiveOption.EditRoomOption option) { if (GameService.IsGuest) { throw new GameServiceException("This Function Not Working In Guest Mode").LogException <GsLiveTurnBased>( DebugLocation.TurnBased, "EditCurrentRoom"); } if (option == null) { throw new GameServiceException("option Cant Be Null").LogException <GsLiveTurnBased>( DebugLocation.TurnBased, "EditCurrentRoom"); } if (option.MaxPlayer < TurnBasedConst.MinPlayer || option.MaxPlayer > TurnBasedConst.MaxPlayer) { throw new GameServiceException("Invalid MaxPlayer Value") .LogException <GsLiveTurnBased>(DebugLocation.TurnBased, "EditCurrentRoom"); } if (GameService.GSLive.GetGsHandler().TurnBasedHandler == null) { throw new GameServiceException("You Must Create or Join Room First").LogException <GsLiveTurnBased>( DebugLocation.TurnBased, "EditCurrentRoom"); } option.RoomId = TurnBasedHandler.CurrentRoom?.Id; GameService.GSLive.GetGsHandler().CommandHandler.Send(EditRoomHandler.Signature, option); }
private static Packet DoAction(GSLiveOption.EditRoomOption options) { return(new Packet( CommandHandler.PlayerHash, CommandConst.ActionEditRoom, JsonConvert.SerializeObject(new RoomDetail { Id = options.RoomId, Name = options.RoomName, Max = options.MaxPlayer, IsPrivate = options.IsPrivate, RoomPassword = options.RoomPassword, Type = CommandConst.ActionEditRoom }, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore, DefaultValueHandling = DefaultValueHandling.Ignore }))); }
/// <summary> /// Edit Current Room With Option Like : Name , Min , IsPrivate , ... /// NOTE : You Must Joined To a Room to Edit it /// </summary> /// <param name="option">(NOTNULL)Edit Room Option</param> public abstract void EditCurrentRoom(GSLiveOption.EditRoomOption option);