コード例 #1
0
ファイル: UpgradeTower.cs プロジェクト: cs352-iap-mrn/skyfort
    public void Act(TowerInstance t)
    {
        System.Object data = t.GetData();
        if (data != null && data is Tower)
        {
            if (TechTree.GetAvailableTowers().Contains(data as Tower))
            {
                t.SetData(null);

                StopParticles(t);
            }
            else
            {
                TechTree.ResearchTower(data as Tower);

                StartParticles(t);
            }
        }

        if (data != null && data is Upgrade)
        {
            if (TechTree.GetAvailableUpgrades().Contains(data as Upgrade))
            {
                t.SetData(null);

                StopParticles(t);
            }
            else
            {
                TechTree.ResearchUpgrade(data as Upgrade);

                StartParticles(t);
            }
        }

        if (data == null)
        {
            StopParticles(t);
        }
    }
コード例 #2
0
    public void Clicked()
    {
        TowerInstance instance = Game.GetSelectedTower();

        if (instance != null && instance.GetTower() is UpgradeTower)
        {
            System.Object data;
            if (upgrade != null)
            {
                data = upgrade;
            }
            else
            {
                data = tower;
            }
            instance.SetData(data);
        }

        Game.SelectTower(null);
    }