protected override void OnSelectedIngredient(object selectedIngredient) { base.OnSelectedIngredient(selectedIngredient); IngredientMinion ingredient = (IngredientMinion)selectedIngredient; var ingredientView = ingredient.GetComponent <PhotonView>(); // Preparing payload Byterizer byterizer = new Byterizer(); byterizer.Push(_PhotonView.ViewID); byterizer.Push(ingredientView.ViewID); byte[] data = byterizer.GetBuffer(); // Raising Net Event PhotonNetwork.RaiseEvent((byte)NetworkedGameEvents.ON_SELECTED_INGREDIENT, data, _RaiseEventOptions, _SendOptions); }
private void OnTriggerEnter(Collider other) { // Checking for hero collisions only in the master client if (PhotonNetwork.IsMasterClient && !IsInCombat) { // Checking if the heroes collided HeroController hero = other.GetComponent <HeroController>(); if (hero != null) { IsInCombat = true; _CombatData.HeroesCollidedEvent.Invoke(null); return; } // Ignoring picking up of ingredients if they have entered a combat scenario IngredientMinion ingredient = other.GetComponent <IngredientMinion>(); if (ingredient != null) { PickUpIngredient(ingredient); PhotonView ingredientView = ingredient.GetComponent <PhotonView>(); Byterizer byterizer = new Byterizer(); byterizer.Push(ingredientView.ViewID); byterizer.Push(GetComponent <PhotonView>().ViewID); byte[] data = byterizer.GetBuffer(); // Initializing Network variables RaiseEventOptions raiseEventOptions = new RaiseEventOptions { Receivers = ReceiverGroup.Others }; SendOptions sendOptions = new SendOptions { Reliability = true }; PhotonNetwork.RaiseEvent((byte)NetworkedGameEvents.PICKED_UP_INGREDIENT, data, raiseEventOptions, sendOptions); } } }