private void ReceiveData(ushort senderID, byte tag, ushort subject, object data)
 {
     Debug.Log("senderID = " + senderID + ", networkID = " + networkID + ", tag = " + tag + ", subject = " + subject + ", data = " + data);
     if (senderID == networkID)
     {
         if (tag == TagIndex.Controller && subject == TagIndex.ControllerSubjects.DestroyPokemon)
         {
             Destroy(gameObject);
         }
         if (tag == TagIndex.PokemonUpdate)
         {
             if (subject == TagIndex.PokemonUpdateSubjects.Position)
             {
                 transform.position = (Vector3)data;
             }
             if (subject == TagIndex.PokemonUpdateSubjects.Rotation)
             {
                 transform.rotation = (Quaternion)data;
             }
             if (subject == TagIndex.PokemonUpdateSubjects.AnimatorFloat)
             {
                 Networking.DeserialisePokemonAnimFloat(data, components.animator);
             }
             if (subject == TagIndex.PokemonUpdateSubjects.AnimatorBool)
             {
                 Networking.DeserialisePokemonAnimBool(data, components.animator);
             }
         }
     }
 }