public void registerMissionCompletion(ActiveMission mission) { totalMissionSuccesses++; missions.Remove(mission); var payload = mission.getMissionData().payloadData; int currentCount; deliveredPayloads.TryGetValue(payload, out currentCount); deliveredPayloads[payload] = currentCount + 1; }
internal void onMissionComplete(ActiveMission activeMission) { var missionEndPosition = activeMission.getRocket().transform.position; activeMission.getRocket().onMissionComplete(); var data = activeMission.getMissionData(); Debug.Log("onMissionComplete: " + data); var completionBonus = data.payloadData.successBonus; gameState.registerMissionCompletion(activeMission); gameState.funds += completionBonus; if (data.payloadData.deployOnSuccess) { var satellite = Instantiate(satellitePrefab); satellite.sprite = data.payloadData.icon; satellite.transform.position = missionEndPosition + new Vector3(Convert.ToSingle(2 * random.NextDouble() - 1), Convert.ToSingle(2 * random.NextDouble() - 1), 0); } }