public void LoadNewAvatar(string path) { tmpAvatar = AvatarScript.SpawnAvatar(path, false); tmpPath = path; if (tmpAvatar != null) { tmpAvatar.OnAvatarLoaded += AvatarLoaded; if (_currentAvatar != null) { _currentAvatar.UnloadAvatar(); UnityEngine.Object.Destroy(_currentAvatar.gameObject); } } }
private void AvatarLoaded() { Plugin.Log("avatar loaded"); if (tmpAvatar != null) { tmpAvatar.HideFromView(true); GameObject gameObject = GameObject.Find("Origin"); tmpAvatar.gameObject.transform.parent = gameObject.transform; tmpAvatar.gameObject.transform.localPosition = Vector3.zero; tmpAvatar.gameObject.transform.localRotation = Quaternion.identity; PlayerPrefs.SetString("lastAvatar", _currentAvatarPath); _currentAvatar = this.tmpAvatar; _currentAvatarPath = this.tmpPath; } else { Plugin.Log("avatar == null"); } }