示例#1
0
 void OnTriggerEnter(Collider c)
 {
     if (c.gameObject.CompareTag("Discoverable") ||
         c.gameObject.CompareTag("Node"))
     {
         Discoverable n = c.gameObject.GetComponent <Discoverable>();
         if (!n.saved)
         {
             discovered.Add(n);
         }
     }
     else if (c.gameObject.CompareTag("Village"))
     {
         foreach (Discoverable n in discovered)
         {
             n.saved = true;
         }
         discovered = new List <Discoverable>();
         if (OnVillageVisit != null)
         {
             OnVillageVisit();
         }
     }
     else if (c.gameObject.CompareTag("Danger"))
     {
         Die();
     }
 }
        public void Initialize(Discoverable original, Minimap theMinimap)
        {
            _original = original;
            _minimap  = theMinimap;

            transform.parent        = theMinimap.miniParent;
            transform.localRotation = Quaternion.Euler(0, 0, 0);

            UpdatePosition();

            if (original.discovered)
            {
                Discover();
            }
            else
            {
                Undiscover();
            }

            original.OnDiscover   += Discover;
            original.OnUndiscover += Undiscover;

            Initialize();
        }
示例#3
0
 public void Register(Discoverable d)
 {
     discoverables[d] = Instantiate(d.miniPrototype.gameObject)
                        .GetComponent <MiniDiscoverable>();
     discoverables[d].Initialize(d, this);
 }