private IEnumerator addItem(PartyGameSessionMessages.AddItem addItemData) { AssetRequest <GameObject> request = Content.LoadAsync(HIDDEN_ITEM_PREFAB_KEY); yield return(request); if (role == ScavengerHuntRoles.Hider && scavengerHuntData.LocalPlayerAnimator != null) { scavengerHuntData.LocalPlayerAnimator.ResetTrigger("TorsoAction1"); scavengerHuntData.LocalPlayerAnimator.SetTrigger("TorsoAction1"); } else if (scavengerHuntData.OtherPlayerAnimator != null) { scavengerHuntData.OtherPlayerAnimator.ResetTrigger("TorsoAction1"); scavengerHuntData.OtherPlayerAnimator.SetTrigger("TorsoAction1"); } GameObject hiddenObjectGO = Object.Instantiate(position: addItemData.Pos, rotation: Quaternion.Euler(new Vector3(0f, Random.Range(0f, 360f), 0f)), original: request.Asset, parent: parentTransform); hiddenObjectGO.GetComponentInChildren <PartyGameInteractibleProperties>().ItemId = addItemData.ItemId; itemIdToItemGameObject.Add(addItemData.ItemId, hiddenObjectGO); if (role == ScavengerHuntRoles.Hider) { logItemHiddenBi(); } }
private void handleAddItem(PartyGameSessionMessages.AddItem addItemData) { if (!itemIdToItemGameObject.ContainsKey(addItemData.ItemId)) { hudUI.HideItem(); totalItemsHidden++; EventManager.Instance.PostEvent("SFX/AO/MarbleHunt/MarbleDropped", EventAction.PlaySound); CoroutineRunner.Start(addItem(addItemData), this, "addItem_marble"); } }