private void DiscoverQuest() { Quests.RemoveAll(quest => quest == null); InnController innController = inn.GetComponent <InnController>(); if (Random.value * 20f < innController.questDiscovery && range.radius > 2f && Quests.Count < maxQuests) // factor in discoverd into this { Vector2 pos = (Vector2)transform.position + Random.insideUnitCircle * range.radius; GameObject quest = Instantiate(questPrefab, pos, Quaternion.identity); quest.GetComponent <EnemyGroupQuest>().enemyLocation = gameObject; innController.Quests.Add(quest); Quests.Add(quest); innController.OnListChanged(); } }
// Update is called once per frame void Update() { InnController innController = inn.GetComponent <InnController>(); if (range.radius < maxRadius) { range.radius += 0.1f * Time.deltaTime; } if (dicovered >= 100) { dicovered = 0; var EnemyLocationQuest = GetComponent <EnemyLocationQuest>(); if (!EnemyLocationQuest) { EnemyLocationQuest = gameObject.AddComponent <EnemyLocationQuest>() as EnemyLocationQuest; EnemyLocationQuest.enemyLocation = gameObject; EnemyLocationQuest.enabled = true; innController.Quests.Add(gameObject); range.radius = 0.1f; } } }