public PBETurnAction(byte pokemonId, PBEMove fightMove, PBETurnTarget fightTargets) { PokemonId = pokemonId; Decision = PBETurnDecision.Fight; FightMove = fightMove; FightTargets = fightTargets; }
public void PushMove(PBEMove move, PBETurnTarget targets) { PBEBattlePokemon pkmn = _pkmn[_index]; var a = new PBETurnAction(pkmn, move, targets); pkmn.TurnAction = a; _actions[_index] = a; _standBy[_index] = null; _index++; ActionsLoop(); }
internal PBEMoveLockPacket(PBEPokemon moveUser, PBEMove lockedMove, PBETurnTarget lockedTargets, PBEMoveLockType moveLockType) { var bytes = new List <byte>(); bytes.AddRange(BitConverter.GetBytes(Code)); bytes.Add((byte)(MoveUser = moveUser.FieldPosition)); bytes.Add((MoveUserTeam = moveUser.Team).Id); bytes.AddRange(BitConverter.GetBytes((ushort)(LockedMove = lockedMove))); bytes.Add((byte)(LockedTargets = lockedTargets)); bytes.Add((byte)(MoveLockType = moveLockType)); bytes.InsertRange(0, BitConverter.GetBytes((short)bytes.Count)); Buffer = new ReadOnlyCollection <byte>(bytes); }
internal PBEMoveLockPacket(PBEPokemon moveUser, PBEMove lockedMove, PBETurnTarget lockedTargets, PBEMoveLockType moveLockType) { using (var ms = new MemoryStream()) using (var w = new EndianBinaryWriter(ms, encoding: EncodingType.UTF16)) { w.Write(Code); w.Write(MoveUser = moveUser.FieldPosition); w.Write((MoveUserTeam = moveUser.Team).Id); w.Write(LockedMove = lockedMove); w.Write(LockedTargets = lockedTargets); w.Write(MoveLockType = moveLockType); Data = new ReadOnlyCollection <byte>(ms.ToArray()); } }
public PBETurnAction(PBEBattlePokemon pokemon, PBEMove fightMove, PBETurnTarget fightTargets) : this(pokemon.Id, fightMove, fightTargets) { }