private void SendChangeBehavior(ServerPlayer[] playerInRange, Behavior behavior) { if (playerInRange.Length > 0) { NPC_BTState packet = IntrepidSerialize.TakeFromPool(PacketType.NPC_BTState) as NPC_BTState; packet.guid.Copy(behavior.id); if (packet == null) { return; } packet.entityId = EntityId; previousState = (NPC_BTState)IntrepidSerialize.ReplicatePacket(packet); Server.Send(packet, playerInRange.Select(e => e.EntityId)); } }
private void ReceiveBTPacket(NPC_BTState obj) { OnBTStateFromServer?.Invoke(obj); }