public void Kill()
    {
        if (CreatureDead != null)
        {
            CreatureDead(this);
        }

        UIDepthHandler.GetInstance().Text.Remove(NameText.GetComponent <Text>());
        Destroy(NameText);

        // create food on death

        /*
         * for (int i = 0; i < 3; i++)
         * {
         *  Vector3 pos = CommonUtilities.RandomVector3(1, 1, 1);
         *  var fb = Instantiate((GameObject) Resources.Load("Prefabs/Foodbit"), pos, Quaternion.identity);
         *  var fbS = fb.AddComponent<Food>();
         *  fbS.Energy = Random.Range(5, 20);
         *  var scale = CommonUtilities.ConvertRange(fbS.Energy, 0.5f, 0.8f, 0.8f, 2);
         *  fb.transform.localScale = new Vector3(scale, scale, scale);
         * }
         */
        Destroy(gameObject);
    }
Beispiel #2
0
    public static UIDepthHandler GetInstance()
    {
        if (!Instance)
        {
            _container = new GameObject {
                name = "UIDepthHandler"
            };
            Instance = _container.AddComponent(typeof(UIDepthHandler)) as UIDepthHandler;
        }

        return(Instance);
    }
    private void Start()
    {
        _food = (GameObject)Resources.Load("Prefabs/Foodbit");
        string name = this.name.ToLower();

        _settingsReader = SettingsReader.GetInstance();
        TempDataTracker.GetInstance();
        UiDepthHandler          = UIDepthHandler.GetInstance();
        SpawnerOrganiser        = SpawnerOrganiser.GetInstance();
        CreatureCounterObservor = CreatureCounterObservor.GetInstance();

        SetupVariables();

        Energy = TotalEnergy;

        Creatures = new ArrayList();
        Foods     = new ArrayList();
    }
    // Setup floating name
    private void NameSetup()
    {
        GameObject uiCanvas = GameObject.Find("Canvas");

        NameText      = new GameObject();
        NameText.name = name;
        NameText.AddComponent <CanvasRenderer>();
        NameText.AddComponent <RectTransform>();
        Text text = NameText.AddComponent <Text>();

        text.horizontalOverflow = HorizontalWrapMode.Overflow;
        text.gameObject.layer   = 5;
        text.font     = (Font)Resources.Load("Fonts/Flow");
        text.fontSize = 24;
        text.transform.SetParent(uiCanvas.transform);
        text.text = name;
        UIDepthHandler uiDepth = UIDepthHandler.GetInstance();

        uiDepth.AddToCanvas(text);
        NameText.AddComponent <CreatureReference>();
        NameText.GetComponent <CreatureReference>().creatureReference = this.gameObject;
    }