示例#1
0
    public void Initialize(FactionEnum faction, Material factionMaterial)
    {
        _unitData = unitTiers[0];

        Faction = faction;

        if (colorSwitcher != null)
        {
            colorSwitcher.SwitchColors(factionMaterial.color);
        }

        var goldControllers = FindObjectsOfType <GoldController>();

        for (int i = 0; i < goldControllers.Length; i++)
        {
            if (goldControllers[i].Faction == Faction)
            {
                goldController = goldControllers[i];
            }
        }

        var goldVeins = FindObjectsOfType <GoldVein>();

        for (int i = 0; i < goldVeins.Length; i++)
        {
            if (goldVeins[i].Faction == Faction)
            {
                goldVeinPosition = goldVeins[i].transform.position;

                transform.position = goldVeins[i].MinerSpawnPoint.transform.position;
                _destination       = goldVeins[i].GetFreeMiningPoint();
                transform.LookAt(_destination);
            }
        }
    }
示例#2
0
    void Start()
    {
        objectManager = GameObject.FindGameObjectWithTag("GameManager");
        gameManager   = objectManager.GetComponent <GameManager>();
        gameManager.InitialisationPlayer();
        endLevel        = false;
        isDead          = false;
        shopDisabled    = false;
        lifeController  = gameObject.GetComponent <LifeController>();
        healthText      = GameObject.Find("HealthText").GetComponent <Text>();
        healthText.text = ": " + lifeController.GetLife() + " / " + lifeController.GetLifeMax();

        goldController = gameObject.GetComponent <GoldController>();
        CoinText       = GameObject.Find("CoinText").GetComponent <Text>();
        CoinText.text  = ": " + goldController.GetEnergy() + " / " + goldController.GetEnergyMax();

        // player's color is define in the inspector
        colorController = gameObject.GetComponent <ColorController>();
        if (colorController.GetColor() == 1)
        {
            this.GetComponent <SpriteRenderer>().color = new Color(0.4f, 0.4f, 1f, 1f);
        }
        else
        {
            this.GetComponent <SpriteRenderer>().color = new Color(1f, 0.4f, 0.4f, 1f);
        }
    }
示例#3
0
 private void Start()
 {
     green           = new Color(0f, 200f, 0f, buildPreviewMaterial.color.a);
     red             = new Color(200f, 0f, 0f, buildPreviewMaterial.color.a);
     groundLayerMask = 1 << ground.layer;
     bank            = FindObjectOfType <GoldController>();
 }
示例#4
0
    /* TODO LIST:
     * - sometimes is better to not do anything
     */


    public void Initialize(List <Line> lines, GoldController goldController, Outpost outpost)
    {
        _lines = lines;
        aiUnitScanner.Initialize(lines);
        _goldController = goldController;
        _outpost        = outpost;
        _unitSpawner    = GetComponent <UnitSpawner>();
    }
示例#5
0
 void OnTriggerEnter(Collider other)
 {
     if (other.tag == "Player")
     {
         GoldController.AddGold(goldValue);
         Destroy(this.gameObject);
     }
 }
示例#6
0
    int price; //ugly cost caching


    // Use this for initialization
    void Start()
    {
        AttachToPlayer();

        canvas = GetComponentInChildren <CanvasRenderer>();
        SetRender(false);
        goldc = GetComponentInParent <GoldController>();
        //priceText = GetComponentInChildren<PriceText>();
    }
示例#7
0
    protected override void Effect()
    {
        int currentGoldMax;

        player         = GameObject.FindGameObjectWithTag("Player");
        goldController = player.GetComponent <GoldController>();
        currentGoldMax = goldController.GetEnergyMax();
        goldController.SetGoldMax(currentGoldMax + goldMax);
    }
示例#8
0
 protected void Page_PreRender(object sender, EventArgs e)
 {
     this.Strength.Text      = user.Strength.ToString();
     this.Defence.Text       = user.Defence.ToString();
     this.Agility.Text       = user.Agility.ToString();
     this.Stamina.Text       = user.Stamina.ToString();
     this.Charisma.Text      = user.Charisma.ToString();
     this.NextStatPrice.Text = GoldController.CalculateNextStatLevelPrice(this.user).ToString();
     this.Gold.Text          = user.Gold.ToString();
 }
示例#9
0
 GoldController()
 {
     //save time instead of searching for the game controller
     //check if the instance is not null, we are creating more than one instance, warn us
     if (instance != null)
     {
         Debug.LogError("There's an instance already created, click on the next error to check it", gameObject);
         Debug.LogError("Original GoldController instance is", instance.gameObject);
         return;
     }
     instance = this;
 }
示例#10
0
    // allices dragon rider spawn method
    void SpawnAllicesDragon()
    {
        if (spawnPoints.GetLength(0) == 0)
        {
            return;
        }

        if (GoldController.goldCounter < allicesDragonCostGold)
        {
            return;
        }

        Instantiate(allicesDragon,
                    spawnPoints[spawnCounter % spawnPoints.GetLength(0)].position + dragonPositionOffset,
                    new Quaternion(0f, 180f, 0f, 0f));
        spawnCounter++;
        GoldController.MinGold(allicesDragonCostGold);
    }
示例#11
0
 public void InitController()
 {
     player = GameObject.FindGameObjectWithTag("Player");
     if (player != null)
     {
         goldController    = player.GetComponent <GoldController>();
         lifeController    = player.GetComponent <LifeController>();
         fireController    = player.GetComponent <FireController>();
         meleeController   = player.GetComponent <MeleeController>();
         playerController  = player.GetComponent <PlayerController>();
         playerMove        = player.GetComponent <PlayerMove>();
         upgradeController = player.GetComponent <UpgradeController>();
     }
     else
     {
         Debug.LogError("Player not Initialized");
     }
 }
示例#12
0
    //TODO: Get scaleData from remote
    void Start()
    {
        goldController = GoldController.Instance;
        goldController.SetGoldView(goldView);
        goldgeneratorControllers = new List <GoldGeneratorController>();
        circleControllers        = new List <CircleController>(CircleViews.Length);

        for (int i = 0; i < CircleViews.Length; i++)
        {
            CircleController controller = new CircleController(CircleViews[i], scaleData, goldController.ChangeGoldValue);
            controller.OnPurchased += OnCirclePurchased;
            circleControllers.Add(controller);
        }

        goldgeneratorControllers.AddRange(circleControllers);

        tapController = new TapController(tapView, blockView, scaleData, goldController.ChangeGoldValue);

        goldgeneratorControllers.Add(tapController);
    }
示例#13
0
    private void Awake()
    {
        _unitIDCounter     = 0;
        _currentUnitTiers  = new int[unitPrefabs.Count];
        _spawnedUnits      = new List <Unit>();
        _unitsInQueue      = new List <Unit>();
        _unitsInQueueIndex = new List <int>();
        _goldController    = GetComponent <GoldController>();
        _gameController    = GetComponent <BaseGameController>();

        _spawnedMiners = 0;

        for (int i = 0; i < unitPrefabs.Count; i++)
        {
            EventManager.Instance.ExecuteEvent <IUnitUpgraded>((x, y) => x.OnUnitUpgraded(i, unitPrefabs[i].GetUnitData(_currentUnitTiers[i]), _gameController.Faction));
        }

        UpdateQueueCapacityText();

        StartCoroutine(UnitQueue());
    }
示例#14
0
    void Start()
    {
        //Get All Controller

        player            = GameObject.FindGameObjectWithTag("Player");
        upgradeController = player.GetComponent <UpgradeController>();
        goldController    = player.GetComponent <GoldController>();
        lifeController    = player.GetComponent <LifeController>();
        fireController    = player.GetComponent <FireController>();
        playerController  = player.GetComponent <PlayerController>();
        meleeController   = player.GetComponent <MeleeController>();

        playerController.SetShopDisabled(false);

        Hud();

        //Create Listener EXIT
        Button btn = yourButton.GetComponent <Button>();

        btn.onClick.AddListener(Exit);
    }
示例#15
0
    private void SetDependencies()
    {
        var viewController         = Instantiate(_viewControllerPrefab).GetComponent <ViewController>();
        var levelViewController    = Instantiate(_levelViewControllerPrefab).GetComponent <LevelViewController>();
        var healthViewController   = Instantiate(_healthViewControllerPrefab).GetComponent <HealthViewController>();
        var goldViewController     = Instantiate(_goldViewControllerPrefab).GetComponent <GoldViewController>();
        var gameOverViewController = Instantiate(_gameOverViewControllerPrefab).GetComponent <GameOverViewController>();
        var enemyViewController    = new GameObject("EnemyVewController", typeof(EnemyViewController)).GetComponent <EnemyViewController>();
        var towerViewController    = new GameObject("TowerVewController", typeof(TowerViewController)).GetComponent <TowerViewController>();

        levelViewController.Init(viewController.CanvasBackground);
        healthViewController.Init(viewController.CanvasUI);
        goldViewController.Init(viewController.CanvasUI);
        gameOverViewController.Init(viewController.CanvasUI);

        var assetLoader      = new AddressableAssetLoader <LevelData>();
        var levelSetter      = new LevelSetter(assetLoader);
        var objectPooler     = Instantiate(_objectPoolerPrefab).GetComponent <ObjectPooler>();
        var healthController = new HealthController(objectPooler);
        var goldController   = new GoldController(objectPooler);
        var enemyController  = new EnemyController(objectPooler, enemyViewController);
        var towerController  = new TowerController(objectPooler, goldController);

        objectPooler.Init();

        _gameplayController = new GameplayController(levelSetter, enemyController, healthController, goldController, towerController, objectPooler);

        levelViewController.SetCallbacks(levelSetter);
        enemyViewController.SetCallbacks(levelSetter, enemyController, _gameplayController);
        healthViewController.SetCallbacks(healthController);
        goldViewController.SetCallbacks(goldController);
        gameOverViewController.SetCallbacks(_gameplayController);
        towerViewController.SetCallbacks(towerController);

        #if UNITY_ANDROID
        _inputController = new TouchInputController();
        #else
        _inputController = new MouseInputController();
        #endif
    }
示例#16
0
        public void UpdateStat(object sender, CommandEventArgs e)
        {
            var statPrice = GoldController.CalculateNextStatLevelPrice(this.user);

            if (statPrice <= this.user.Gold)
            {
                switch (e.CommandArgument.ToString())
                {
                case "Strength":
                    ++this.user.Strength;
                    break;

                case "Defence":
                    ++this.user.Defence;
                    break;

                case "Agility":
                    ++this.user.Agility;
                    break;

                case "Charisma":
                    ++this.user.Charisma;
                    break;

                case "Stamina":
                    ++this.user.Stamina;
                    break;
                }

                this.user.Gold -= statPrice;

                this.dbcontext.SaveChanges();
            }
            else
            {
                this.error.Visible = true;
            }
        }
示例#17
0
 private void Start()
 {
     bank = FindObjectOfType <GoldController>();
 }
示例#18
0
 void Start()
 {
     target         = GameObject.FindGameObjectWithTag("Player");
     goldController = target.GetComponent <GoldController>();
 }
示例#19
0
 private void Awake()
 {
     GoldController.instance = this;
 }
示例#20
0
 private void Start()
 {
     goldController = GameObject.Find(GoldControllerObjectName).GetComponent <GoldController>();
 }