using Newtonsoft.Json.Linq; using System.Collections; using System.Collections.Generic; using UnityEngine; namespace Assets.Scripts { public class FindQuest : Quest { public FindQuest(GameObject display) : base(display) { current = 0; goal = getRandomNumber(10) + 1; questname = "Find " + goal + " "; int index = getRandomNumber(5); switch (index) { case 0: questname = questname + "plane"; keyword = "Plane"; break; case 1: questname = questname + "mountain"; keyword = "Mountain"; break; case 2: questname = questname + "forest"; keyword = "Forest"; break; case 3: questname = questname + "river"; keyword = "River"; break; case 4: questname = questname + "lake"; keyword = "Lake"; break; } } public FindQuest(JToken token, GameObject display) : base(token, display) { } public void generateCityQuest() { questname = "Find all cities"; keyword = "City"; current = 0; goal = GameObject.Find("WorldGenerator").GetComponent().getCityAmount(); } override public void update(object obj, int amount) { GameObject tile = (GameObject)obj; string tilename = tile.GetComponent().getTileType().ToString(); if (keyword == "Forest" && tilename.ToLower().Contains("forest")) { current++; } if (keyword == "Plane" && tilename.ToLower().Contains("plane")) { current++; } if (keyword == "Mountain" && tilename.ToLower().Contains("mountain")) { current++; } if (keyword == "River" && tilename.ToLower().Contains("river")) { current++; } if (keyword == "Lake" && tilename.ToLower().Contains("lake")) { current++; } if (keyword == "City" && tilename.ToLower().Contains("city")) { current++; } if (current >= goal) { isFinished = true; } } } }