public static void WriteStatsTransmission(this NetworkWriter writer, StatsTransmission stats) { writer.WriteArray(stats.names); int[] characterTypes = new int[stats.characterTypes.Length]; for (int i = 0; i < characterTypes.Length; i++) { characterTypes[i] = (int)stats.characterTypes[i]; } writer.WriteArray(characterTypes); for (int i = 0; i < stats.stats.Length; i++) { writer.WriteArray(stats.stats[i]); } }
public static void WritePlayerCommand(this NetworkWriter writer, PBS.Player.Command obj) { writer.WriteInt32((int)obj.commandType); writer.WriteString(obj.commandUser); writer.WriteInt32(obj.commandTrainer); writer.WriteBoolean(obj.inProgress); writer.WriteBoolean(obj.completed); writer.WriteInt32(obj.commandPriority); writer.WriteBoolean(obj.isExplicitlySelected); writer.WriteString(obj.moveID); writer.WriteBoolean(obj.consumePP); writer.WriteArray(obj.targetPositions); writer.WriteBoolean(obj.displayMove); writer.WriteBoolean(obj.forceOneHit); writer.WriteBoolean(obj.bypassRedirection); writer.WriteBoolean(obj.bypassStatusInterrupt); writer.WriteBoolean(obj.isDanceMove); writer.WriteBoolean(obj.isMoveCalled); writer.WriteBoolean(obj.isMoveReflected); writer.WriteBoolean(obj.isMoveHijacked); writer.WriteBoolean(obj.isFutureSightMove); writer.WriteBoolean(obj.isPursuitMove); writer.WriteBoolean(obj.isMoveSnatched); writer.WriteBoolean(obj.isMagicCoatMove); writer.WriteBoolean(obj.isMegaEvolving); writer.WriteBoolean(obj.isZMove); writer.WriteBoolean(obj.isDynamaxing); writer.WriteInt32(obj.switchPosition); writer.WriteInt32(obj.switchingTrainer); writer.WriteString(obj.switchInPokemon); writer.WriteString(obj.itemID); writer.WriteInt32(obj.itemTrainer); }
public void WriteNetwork(NetworkWriter writer) { writer.WriteByte((byte)UserProvider); writer.WriteULong(UserId); writer.WriteArray(AuthTicket.Data); }
public static void WriteBattleViewEvent(this NetworkWriter writer, PBS.Battle.View.Events.Base obj) { if (obj is PBS.Battle.View.Events.Message message) { writer.WriteInt32(MESSAGE); writer.WriteString(message.message); } else if (obj is PBS.Battle.View.Events.MessageParameterized messageParameterized) { writer.WriteInt32(MESSAGEPARAMETERIZED); writer.WriteString(messageParameterized.messageCode); writer.WriteBoolean(messageParameterized.isQueryResponse); writer.WriteBoolean(messageParameterized.isQuerySuccessful); writer.WriteInt32(messageParameterized.playerPerspectiveID); writer.WriteInt32(messageParameterized.teamPerspectiveID); writer.WriteString(messageParameterized.pokemonID); writer.WriteString(messageParameterized.pokemonUserID); writer.WriteString(messageParameterized.pokemonTargetID); writer.WriteList(messageParameterized.pokemonListIDs); writer.WriteInt32(messageParameterized.trainerID); writer.WriteInt32(messageParameterized.teamID); writer.WriteString(messageParameterized.typeID); writer.WriteList(messageParameterized.typeIDs); writer.WriteString(messageParameterized.moveID); writer.WriteList(messageParameterized.moveIDs); writer.WriteString(messageParameterized.abilityID); writer.WriteList(messageParameterized.abilityIDs); writer.WriteString(messageParameterized.itemID); writer.WriteList(messageParameterized.itemIDs); writer.WriteString(messageParameterized.statusID); writer.WriteString(messageParameterized.statusTeamID); writer.WriteString(messageParameterized.statusEnvironmentID); writer.WriteList(messageParameterized.intArgs); List <int> statInts = new List <int>(); for (int i = 0; i < messageParameterized.statList.Count; i++) { statInts.Add((int)messageParameterized.statList[i]); } writer.WriteList(statInts); } else if (obj is PBS.Battle.View.Events.ModelUpdate modelUpdate) { writer.WriteInt32(MODELUPDATE); writer.WriteBoolean(modelUpdate.loadAssets); } else if (obj is PBS.Battle.View.Events.ModelUpdatePokemon modelUpdatePokemon) { writer.WriteInt32(MODELUPDATEPOKEMON); writer.WriteBoolean(modelUpdatePokemon.loadAsset); writer.WriteBattleViewCompactPokemon(modelUpdatePokemon.pokemon); } else if (obj is PBS.Battle.View.Events.ModelUpdateTrainer modelUpdateTrainer) { writer.WriteInt32(MODELUPDATETRAINER); writer.WriteBoolean(modelUpdateTrainer.loadAsset); writer.WriteString(modelUpdateTrainer.name); writer.WriteInt32(modelUpdateTrainer.playerID); writer.WriteInt32(modelUpdateTrainer.teamID); writer.WriteList(modelUpdateTrainer.party); writer.WriteList(modelUpdateTrainer.items); writer.WriteList(modelUpdateTrainer.controlPos); } else if (obj is PBS.Battle.View.Events.ModelUpdateTeam modelUpdateTeam) { writer.WriteInt32(MODELUPDATETEAM); writer.WriteBoolean(modelUpdateTeam.loadAsset); writer.WriteInt32(modelUpdateTeam.teamID); writer.WriteInt32((int)modelUpdateTeam.teamMode); writer.WriteList(modelUpdateTeam.trainers); } else if (obj is PBS.Battle.View.Events.CommandGeneralPrompt commandGeneralPrompt) { writer.WriteInt32(COMMANDGENERALPROMPT); writer.WriteInt32(commandGeneralPrompt.playerID); writer.WriteBoolean(commandGeneralPrompt.multiTargetSelection); writer.WriteBoolean(commandGeneralPrompt.canMegaEvolve); writer.WriteBoolean(commandGeneralPrompt.canZMove); writer.WriteBoolean(commandGeneralPrompt.canDynamax); writer.WriteList(commandGeneralPrompt.items); writer.WriteList(commandGeneralPrompt.pokemonToCommand); } else if (obj is PBS.Battle.View.Events.CommandReplacementPrompt commandReplacementPrompt) { writer.WriteInt32(COMMANDREPLACEMENTPROMPT); writer.WriteInt32(commandReplacementPrompt.playerID); writer.WriteArray(commandReplacementPrompt.fillPositions); } else if (obj is PBS.Battle.View.Events.StartBattle startBattle) { writer.WriteInt32(STARTBATTLE); } else if (obj is PBS.Battle.View.Events.EndBattle endBattle) { writer.WriteInt32(ENDBATTLE); writer.WriteInt32(endBattle.winningTeam); } else if (obj is PBS.Battle.View.Events.TrainerSendOut trainerSendOut) { writer.WriteInt32(TRAINERSENDOUT); writer.WriteInt32(trainerSendOut.playerID); writer.WriteList(trainerSendOut.pokemonUniqueIDs); } else if (obj is PBS.Battle.View.Events.TrainerMultiSendOut trainerMultiSendOut) { writer.WriteInt32(TRAINERMULTISENDOUT); writer.WriteList(trainerMultiSendOut.sendEvents); } else if (obj is PBS.Battle.View.Events.TrainerWithdraw trainerWithdraw) { writer.WriteInt32(TRAINERWITHDRAW); writer.WriteInt32(trainerWithdraw.playerID); writer.WriteList(trainerWithdraw.pokemonUniqueIDs); } else if (obj is PBS.Battle.View.Events.TrainerItemUse trainerItemUse) { writer.WriteInt32(TRAINERITEMUSE); writer.WriteInt32(trainerItemUse.playerID); writer.WriteString(trainerItemUse.itemID); } else if (obj is PBS.Battle.View.Events.PokemonChangeForm pokemonChangeForm) { writer.WriteInt32(POKEMONCHANGEFORM); writer.WriteString(pokemonChangeForm.pokemonUniqueID); writer.WriteString(pokemonChangeForm.preForm); writer.WriteString(pokemonChangeForm.postForm); } else if (obj is PBS.Battle.View.Events.PokemonSwitchPosition pokemonSwitchPosition) { writer.WriteInt32(POKEMONSWITCHPOSITION); writer.WriteString(pokemonSwitchPosition.pokemonUniqueID1); writer.WriteString(pokemonSwitchPosition.pokemonUniqueID2); } else if (obj is PBS.Battle.View.Events.PokemonHealthDamage pokemonHealthDamage) { writer.WriteInt32(POKEMONHEALTHDAMAGE); writer.WriteString(pokemonHealthDamage.pokemonUniqueID); writer.WriteInt32(pokemonHealthDamage.preHP); writer.WriteInt32(pokemonHealthDamage.postHP); writer.WriteInt32(pokemonHealthDamage.maxHP); } else if (obj is PBS.Battle.View.Events.PokemonHealthHeal pokemonHealthHeal) { writer.WriteInt32(POKEMONHEALTHHEAL); writer.WriteString(pokemonHealthHeal.pokemonUniqueID); writer.WriteInt32(pokemonHealthHeal.preHP); writer.WriteInt32(pokemonHealthHeal.postHP); writer.WriteInt32(pokemonHealthHeal.maxHP); } else if (obj is PBS.Battle.View.Events.PokemonHealthFaint pokemonHealthFaint) { writer.WriteInt32(POKEMONHEALTHFAINT); writer.WriteString(pokemonHealthFaint.pokemonUniqueID); } else if (obj is PBS.Battle.View.Events.PokemonHealthRevive pokemonHealthRevive) { writer.WriteInt32(POKEMONHEALTHREVIVE); writer.WriteString(pokemonHealthRevive.pokemonUniqueID); } else if (obj is PBS.Battle.View.Events.PokemonMoveUse pokemonMoveUse) { writer.WriteInt32(POKEMONMOVEUSE); writer.WriteString(pokemonMoveUse.pokemonUniqueID); writer.WriteString(pokemonMoveUse.moveID); } else if (obj is PBS.Battle.View.Events.PokemonMoveHit pokemonMoveHit) { writer.WriteInt32(POKEMONMOVEHIT); writer.WriteString(pokemonMoveHit.pokemonUniqueID); writer.WriteString(pokemonMoveHit.moveID); writer.WriteInt32(pokemonMoveHit.currentHit); writer.WriteList(pokemonMoveHit.hitTargets); } else if (obj is PBS.Battle.View.Events.PokemonStatChange pokemonStatChange) { writer.WriteInt32(POKEMONSTATCHANGE); writer.WriteString(pokemonStatChange.pokemonUniqueID); writer.WriteInt32(pokemonStatChange.modValue); writer.WriteBoolean(pokemonStatChange.maximize); writer.WriteBoolean(pokemonStatChange.minimize); List <int> statInts = new List <int>(); for (int i = 0; i < pokemonStatChange.statsToMod.Count; i++) { statInts.Add((int)pokemonStatChange.statsToMod[i]); } writer.WriteList(statInts); } else if (obj is PBS.Battle.View.Events.PokemonStatUnchangeable pokemonStatUnchangeable) { writer.WriteInt32(POKEMONSTATUNCHANGEABLE); writer.WriteString(pokemonStatUnchangeable.pokemonUniqueID); writer.WriteBoolean(pokemonStatUnchangeable.tooHigh); List <int> statInts = new List <int>(); for (int i = 0; i < pokemonStatUnchangeable.statsToMod.Count; i++) { statInts.Add((int)pokemonStatUnchangeable.statsToMod[i]); } writer.WriteList(statInts); } else if (obj is PBS.Battle.View.Events.PokemonAbilityActivate pokemonAbilityActivate) { writer.WriteInt32(POKEMONABILITYACTIVATE); writer.WriteString(pokemonAbilityActivate.pokemonUniqueID); writer.WriteString(pokemonAbilityActivate.abilityID); } else { writer.WriteInt32(BASE); } }
public void Serialize(NetworkWriter writer) { writer.WriteArray(Targets); writer.WriteArray(TargetsNormals); }