コード例 #1
0
ファイル: Slot.cs プロジェクト: messatsuGoShoryuu/Habicat
        private void OnMouseDown()
        {
            if (UIManager.IsActive)
            {
                return;
            }
            SetColor(m_clicked);
            MENU_FLAGS flags = building == null ? MENU_FLAGS.BUILD : building.Flags;

            EventSystem.RemoveListener <Event_UIBuild>(OnBuild);
            EventSystem.RemoveListener <Event_UIUpgrade>(OnUpgrade);
            EventSystem.RemoveListener <Event_UIWorker>(OnWorker);

            List <GameObject> prefabs = new List <GameObject>();

            if (IsFlagSet(flags, MENU_FLAGS.BUILD))
            {
                prefabs.Add(GameObject.Instantiate(Resources.Load("Prefabs/Build")) as GameObject);
                EventSystem.AddListener <Event_UIBuild>(OnBuild);
            }
            if (IsFlagSet(flags, MENU_FLAGS.UPGRADE))
            {
                prefabs.Add(GameObject.Instantiate(Resources.Load("Prefabs/Upgrade")) as GameObject);
                EventSystem.Dispatch(new Event_UIUpgrade());
            }
            if (IsFlagSet(flags, MENU_FLAGS.WORKER))
            {
                prefabs.Add(GameObject.Instantiate(Resources.Load("Prefabs/Worker")) as GameObject);
            }

            EventSystem.Dispatch(new Event_BuildMenu(prefabs.ToArray()));
            Debug.Log("Mouse down");
        }
コード例 #2
0
 private void Awake()
 {
     EventSystem.AddListener <Event_BuildMenu>(OnBuildMenu);
     EventSystem.AddListener <Event_UIBuild>(OnUIBuild);
     EventSystem.AddListener <Event_UIUpgrade>(OnUIUpgrade);
     EventSystem.AddListener <Event_UIWorker>(OnUIWorker);
 }
コード例 #3
0
        // Start is called before the first frame update
        void Start()
        {
            TimeManager.Register("Day", OnDayEnd, m_dayTick);
            Slot slot  = Slot.Create(3, 3);
            Slot slot3 = Slot.Create(6, 6);

            slot3.MakeBuilding(new Building(habitatSprite, null, null, RESOURCE_TYPE.TITANIUM, MENU_FLAGS.WORKER, false));
            slot.MakeBuilding(new Building(habitatSprite, null, null, RESOURCE_TYPE.NONE, MENU_FLAGS.NONE, true));
            EventSystem.AddListener <Event_BuildingYield>(OnBuildingYield);
        }
コード例 #4
0
        // Start is called before the first frame update
        void Awake()
        {
            Instance = this;
            EventSystem.AddListener <Event_CatSpawned>(OnCatSpawned);
            EventSystem.AddListener <Event_DayEnded>(OnDayEnd);

            for (int i = 0; i < m_initialCatCount; ++i)
            {
                m_cats.Add(new Cat(0));
            }
        }
コード例 #5
0
ファイル: Slot.cs プロジェクト: messatsuGoShoryuu/Habicat
        public Building(Sprite level1, Sprite level2, Sprite level3, RESOURCE_TYPE type, MENU_FLAGS menuFlags, bool isConnected)
        {
            m_sprites    = new Sprite[3];
            m_sprites[0] = level1;
            m_sprites[1] = level2;
            m_sprites[2] = level3;

            m_workerCats   = new bool[3];
            m_resourceType = type;

            IsConnected = isConnected;
            m_flags     = menuFlags;

            EventSystem.AddListener <Event_DayEnded>(OnDayEnded);
        }
コード例 #6
0
ファイル: DebugUI.cs プロジェクト: messatsuGoShoryuu/Habicat
 private void Awake()
 {
     EventSystem.AddListener <Event_UIText>(OnTextUpdated);
 }