public void Initialize()
    {
        territoryHandlerPrefab = (GameObject)Resources.Load("Prefabs/Territory Events Handler");
        curTerritoryhandler    = (GameObject)Instantiate(territoryHandlerPrefab);

        if (curTerritoryhandler == null)
        {
            Debug.Log("Check Reference");
            return;
        }

        currentTerritoryHandlerData = curTerritoryhandler.GetComponent <TerritoryHandler>();
        curHandlerLoaded            = true;
    }
Esempio n. 2
0
    void Update()
    {
        //print(playerTurn);
        //HANDLE PIECE MOVING
        if (isMovingPiece)
        {
            GameObject piece = this.selectedSpace.GetComponent <TerritoryHandler>().getPopulatedPiece();
            //print(selectedSpace);
            //print(newPiecePosition);
            piece.transform.position = Vector3.Lerp(piece.transform.position, new Vector3(newPiecePosition.x, newPiecePosition.y, piece.transform.position.z), Time.deltaTime * 4);
        }

        //END HANDLE PIECE MOVING

        //HANDLE TURN SIGN
        switch (playerTurn)
        {
        case PlayerTurn.Attack:
            if (!didShowPlayerTurnSign)
            {
                presentTurnSign(PlayerTurn.Attack);
            }
            break;

        case PlayerTurn.Defense:
            if (!didShowPlayerTurnSign)
            {
                print("updateSign");
                if (finishedSetup)
                {
                    turnsLeft--;     //finished one whole turn

                    if (turnsLeft == 0)
                    {
                        presentWinner(PlayerTurn.Defense);
                    }

                    updateTurnsSign();
                }
                presentTurnSign(PlayerTurn.Defense);
            }
            break;
        }
        //END HANDLE TURN SIGN

        if (isFinishedShowingSign)
        {
            //SETUP
            if (action == Action.DefenseSetup)
            {
                if (!hasPickedNext)
                {
                    populateUpNext();
                }
                nextUpSignPanel.SetActive(true);
                //print("Defender, choose your five territories");
                if (defensePlacement == DefensePlacement.Troop)
                {
                    //print(defenseTroopPlacement);
                    if (defenseTroopPlacement == 5)
                    {
                        print("toTraps");
                        defensePlacement = DefensePlacement.Trap;
                    }
                }
                else if (defensePlacement == DefensePlacement.Trap)
                {
                    if (defenseTrapPlacement == 3)
                    {
                        nextUpSignPanel.SetActive(false);
                        hasPickedNext = false;
                        print("toAttack");
                        defensePlacement = DefensePlacement.Troop;
                        switchPlayer();
                        action     = Action.AttackSetup;
                        playerTurn = PlayerTurn.Attack;
                        spawnSpace = GameObject.FindGameObjectWithTag("Respawn").GetComponent <TerritoryHandler>();
                        spawnSpace.playParticle();
                    }
                }
            }
            if (action == Action.AttackSetup)
            {
                if (!hasPickedNext)
                {
                    populateUpNext();
                }
                nextUpSignPanel.SetActive(true);
                //print("Attacker, choose your one territory");
                if (attackHasPlacedTroop)
                {
                    nextUpSignPanel.SetActive(false);
                    print("troop placed");
                    spawnSpace.stopParticle();
                    action               = Action.SelectOwn;
                    gameMode             = GameMode.SelectTerritory;
                    hasPickedNext        = false;
                    attackHasPlacedTroop = false;
                    finishedSetup        = true;
                    //switchPlayer();
                }
            }

            //END SETUP

            switch (gameMode)
            {
            case GameMode.SelectTerritory:

                didStartParticles = false;                      //reset bool
                if (selectedSpace != null && !didStopParticles) //if deselecting selected space
                {
                    stopAdjacentParticles();
                }
                break;

            case GameMode.SelectAdjacent:

                didStopParticles = false;                        //reset bool

                if (selectedSpace != null && !didStartParticles) //this is immediately after a space is selected in SelectTerritory state
                {
                    startAdjacentParticles();
                }
                break;
            }
        }
        else //if sign is still showing, we want to pause everything else
        {
            //stopAdjacentParticles();
        }
    }