public void QuestCompleted() { data.questFinished = true; QuestCompletedEvent?.Invoke(); if (buildStructure) { buildStructure.SetActive(true); } int requestItemNumber = 0; foreach (PickupData requestItem in data.itemRequest) { int playerItemNumber = 0; foreach (PickupData playerItem in player.playerData.storedPickups) { if (requestItem == playerItem) { playerItem.amount -= data.itemAmount[requestItemNumber]; } playerItemNumber++; } requestItemNumber++; } if (data.rewardItems.Count > 0) { int i = 0; foreach (PickupData rewardItem in data.rewardItems) { GameManager.GiveItemToPlayer(player, rewardItem, data.rewardAmount[i]); i++; } } GameManager.InventoryEvent?.Invoke(); }