Exemple #1
0
    public override void EnterState(GameStatesController game)
    {
        Debug.Log("Entered to " + this);

        // Turn off instruction
        game.gameInstructionUI.SetActive(false);
    }
Exemple #2
0
 public new void HandleAttackMoveBtn()
 {
     if (!IsMyTurn())
     {
         return;
     }
     if (GameStatesController.IsAttack())
     {
         Cmd_SetDestination(destinationTerritory.GetOwnerController());
         StartAttack();
     }
     else if (GameStatesController.IsMove())
     {
         if (this.selectedTerritoy != null && this.destinationTerritory != null)
         {
             Cmd_SetMoving();
         }
     }
     else if (GameStatesController.IsMoving())
     {
         this.SelectedTerritoy.RemoveArmies((int)moveSlider.value);
         this.DestinationTerritory.AddArmies((int)moveSlider.value);
         GameStatesController.NextState();
         moveSlider.value = 0;
         moveSlider.gameObject.SetActive(false);
         UpdateAttackMoveInfo();
         Cmd_EndTurnPlayer();
     }
 }
Exemple #3
0
    public override void EnterState(GameStatesController game)
    {
        Debug.Log("Entered to " + this);

        // Activate UI with restart button
        game.gameOverUI.SetActive(true);
    }
Exemple #4
0
    // Use this for initialization
    void Awake()
    {
        GameObject gameManager = GameObject.FindGameObjectWithTag(GlobalTags.GameManager);

        gameStates = gameManager.GetComponent <GameStatesController>();
        RegisterToGameStateChangeEvents();
    }
    // Use this for initialization
    void Start()
    {
        GameObject gameManager = GameObject.FindGameObjectWithTag(GlobalTags.GameManager);

        gameVars     = gameManager.GetComponent <GlobalVars>();
        gameStates   = gameManager.GetComponent <GameStatesController>();
        initPosition = transform.position;

        RegisterToGameStateChangeEvents();
    }
Exemple #6
0
    void Awake()
    {
        GameObject gameManager = GameObject.FindGameObjectWithTag(GlobalTags.GameManager);

        gameVars     = gameManager.GetComponent <GlobalVars>();
        gameStates   = gameManager.GetComponent <GameStatesController>();
        speedManager = gameManager.GetComponent <GameSpeedManager>();
        //macrosMngr = GameObject.FindObjectOfType<MacrophageManager>();
        RegisterToGameStateChangeEvents();
    }
Exemple #7
0
 public new void StartGame()
 {
     if (PhotonNetwork.IsMasterClient)
     {
         if (players.Count > 0 && !gameStarted && GameStatesController.IsNotStartedGame())
         {
             gameStarted = true;
             SetupMatch();
         }
     }
 }
Exemple #8
0
    public override void EnterState(GameStatesController game)
    {
        Debug.Log("Entered to " + this);

        // Turn of MenuUI
        game.gameMenuUI.SetActive(false);

        // Activate scores and instruction
        game.gamePlayingUI.SetActive(true);
        game.gameInstructionUI.SetActive(true);
    }
Exemple #9
0
    void Awake()
    {
        GameObject gameManager = GameObject.FindGameObjectWithTag(GlobalTags.GameManager);

        gameStates   = gameManager.GetComponent <GameStatesController> ();
        speedManager = gameManager.GetComponent <GameSpeedManager>();
        //gameVars = gameManager.GetComponent<GlobalVars>();
        startPosition = transform.position;
        RegisterToGameStateChangeEvents();
        //handler("test");
    }
Exemple #10
0
 public new void StartPositioning()
 {
     DistributeArmies();
     if (PhotonNetwork.IsMasterClient)
     {
         GameStatesController.StartGameState();
     }
     if (currentPlayerController)
     {
         CalcReinforcmentArmies();
         UpdateTerritoriesInfo();
     }
 }
Exemple #11
0
    void Awake()
    {
        GameObject gameManager = GameObject.FindGameObjectWithTag(GlobalTags.GameManager);

        gameVars     = gameManager.GetComponent <GlobalVars>();
        gameStates   = gameManager.GetComponent <GameStatesController>();
        speedManager = gameManager.GetComponent <GameSpeedManager>();
        RegisterToGameStateChangeEvents();
        mouthCollision = EatFood;
        SetCurrentCollisionState(playerCollisionStates.Vulnerable);
        lunch.Add(tail);
        particleSys.SetActive(false);
        SetNewControllerMode(currentControllerMode);
    }
    // Use this for initialization
    void Start()
    {
        myHashCode    = gameObject.GetHashCode();
        startPosition = transform.position;
        GameObject gameManager = GameObject.FindGameObjectWithTag(GlobalTags.GameManager);

        gsm        = gameManager.GetComponent <GameSpeedManager>();
        gameVars   = gameManager.GetComponent <GlobalVars>();
        eotl       = gameVars.endOfTheLine;
        myAnim     = gameObject.GetComponent <Animator> ();
        myRB2      = gameObject.GetComponent <Rigidbody2D> ();
        baseScale  = transform.localScale;
        gameStates = gameManager.GetComponent <GameStatesController>();
        RegisterToGameStateChangeEvents();
    }
Exemple #13
0
 private void StartTurn()
 {
     GetNextPlayer();
     if (this.currentPlayerController)
     {
         CalcReinforcmentArmies();
         selectedTerritoy           = null;
         DestinationTerritory       = null;
         SelectedDefenderController = null;
         if (!GameStatesController.IsNotStartedGame() && endTurnSound)
         {
             endTurnSound.Play();
         }
     }
 }
Exemple #14
0
 public new void HandleContinueButton()
 {
     if (!IsMyTurn())
     {
         return;
     }
     if (currentPlayerController.GetArmiesPerTurn() <= 0)
     {
         UpdateAttackMoveInfo();
         UpdateTerritoriesInfo();
         if (GameStatesController.IsSetupGame() || GameStatesController.IsMove() || GameStatesController.IsNotStartedGame())
         {
             Cmd_EndTurnPlayer();
         }
         else
         {
             GameStatesController.NextState();
         }
     }
 }
Exemple #15
0
        // Update is called once per frame
        void Update()
        {
            if (!PhotonNetwork.IsConnected)
            {
                return;
            }
            int playersReady = (int)PhotonNetwork.CurrentRoom.CustomProperties[NetworkCustomProperties.GAME_PLAYERS_LOADED];

            if (playersReady >= PhotonNetwork.CurrentRoom.PlayerCount)
            {
                StartGame();
            }
            if (GameStatesController.IsNotStartedGame())
            {
                loaderCanvas.gameObject.GetComponentInChildren <Text>().text = "Preparazione gioco...";
            }
            if (GameStatesController.IsSetupGame() && loaderCanvas.gameObject.activeSelf)
            {
                loaderCanvas.gameObject.SetActive(false);
            }
            localPlayerTerritoriesCountText.text = localPlayerTerritoriesCountText.text.Replace("$1", localPlayerController.GetTerritoriesOwned().Count.ToString());
        }
Exemple #16
0
 public new void EndPlayerTurn()
 {
     if (currentPlayerController && currentPlayerController.GetArmiesPerTurn() <= 0)
     {
         if (GameStatesController.IsMove())
         {
             GameStatesController.NextState();
         }
         SetNextPlayer();
         selectedTerritoy           = null;
         DestinationTerritory       = null;
         SelectedDefenderController = null;
         if (!GameStatesController.IsNotStartedGame() && endTurnSound)
         {
             endTurnSound.Play();
         }
         if (CheckToStartGame())
         {
             GameStatesController.NextState();
         }
     }
 }
Exemple #17
0
 // Update is called once per frame
 void Update()
 {
     text.text = GameStatesController.GetCurrentState().ToString();
 }
Exemple #18
0
 public abstract void EnterState(GameStatesController game);
Exemple #19
0
    public override void EnterState(GameStatesController game)
    {
        Debug.Log("Entered to " + this);

        game.gameMenuUI.SetActive(true);
    }
Exemple #20
0
 protected new void UpdateAttackMoveInfo()
 {
     if (GameStatesController.IsMoving())
     {
         if (!moveSlider || !attackMoveBtn)
         {
             return;
         }
         moveSlider.gameObject.SetActive(true);
         attackMoveBtn.gameObject.SetActive(true);
         moveSlider.maxValue = selectedTerritoy.Territory.GetArmies() - 1;
         if (attackMoveBtn.GetComponentInChildren <Text>())
         {
             attackMoveBtn.GetComponentInChildren <Text>().text = "CONFIRM";
         }
         return;
     }
     if (GameStatesController.IsAttack() || GameStatesController.IsMove())
     {
         if (!selectedTerritoryText || !targetTerritoryText || !arrowFromTo || !attackMoveBtn)
         {
             return;
         }
         if (selectedTerritoy != null)
         {
             selectedTerritoryText.gameObject.SetActive(true);
             selectedTerritoryText.text = selectedTerritoy.GetTerritory().GetTerritoryName();
         }
         else
         {
             selectedTerritoryText.gameObject.SetActive(false);
             targetTerritoryText.gameObject.SetActive(false);
             arrowFromTo.gameObject.SetActive(false);
             attackMoveBtn.gameObject.SetActive(false);
             return;
         }
         if (destinationTerritory != null)
         {
             targetTerritoryText.gameObject.SetActive(true);
             targetTerritoryText.text = destinationTerritory.GetTerritory().GetTerritoryName();
             arrowFromTo.gameObject.SetActive(true);
             attackMoveBtn.gameObject.SetActive(true);
             if (attackMoveBtn.GetComponentInChildren <Text>())
             {
                 attackMoveBtn.GetComponentInChildren <Text>().text = GameStatesController.IsAttack() ? "ATTACK" : "MOVE";
             }
         }
         else
         {
             targetTerritoryText.gameObject.SetActive(false);
             arrowFromTo.gameObject.SetActive(false);
             attackMoveBtn.gameObject.SetActive(false);
         }
     }
     else
     {
         selectedTerritoryText.gameObject.SetActive(false);
         targetTerritoryText.gameObject.SetActive(false);
         arrowFromTo.gameObject.SetActive(false);
         attackMoveBtn.gameObject.SetActive(false);
     }
 }
Exemple #21
0
        private void NetworkingClient_EventReceived(EventData obj)
        {
            ExitGames.Client.Photon.Hashtable evData = obj.CustomData != null ? obj.CustomData as ExitGames.Client.Photon.Hashtable : null;
            if (obj.Code < 200)
            {
                Debug.Log("Event received with code " + obj.Code + " From : " + obj.Sender);
            }
            switch (obj.Code)
            {
            case EventNetwork.NEXT_STATE:
                GameStatesController.OnChangeStateEvent(evData);
                if ((evData["STATE"] as string).Equals(GameStatesEnum.SETUPGAME))
                {
                    StartPositioning();
                }
                break;

            case EventNetwork.NEXT_PLAYER:
                SetNextPlayer();
                break;

            case EventNetwork.END_PLAYER_TURN:
                StartTurn();
                break;

            case EventNetwork.SET_MOVING_STATE:
                SetMoving();
                break;

            case EventNetwork.SET_DESTINATION:
                this.selectedDefenderController = players.Find(el => el.Player.GetPlayerName().Equals(evData["DATA"] as string));
                break;

            case EventNetwork.SET_SELECTED_TERRITORY:
                TerritoryController selectedTerr = getTerritoryByName(evData["DATA"] as string);
                SetSelectedTerritory(selectedTerr);
                break;

            case EventNetwork.SET_DESTINATION_TERRITORY:
                TerritoryController destinTerr = getTerritoryByName(evData["DATA"] as string);
                SetDesinationTerritory(destinTerr);
                break;

            case EventNetwork.DISTRIBUTE_TERRITORIES:
                foreach (DictionaryEntry values in evData)
                {
                    PlayerController    owner          = players.Find(el => el.Player.GetPlayerName().Equals(values.Value as string));
                    TerritoryController territoryOwned = getTerritoryByName(values.Key as string);
                    if (owner && territoryOwned)
                    {
                        SetTerritoryOwner(territoryOwned, owner, false);
                    }
                }
                break;

            case EventNetwork.PLAYER_ADD_TERRITORY:
                PlayerController    pcont2 = players.Find(el => el.Player.GetPlayerName().Equals(evData["SUBJECT"] as string));
                TerritoryController terr   = getTerritoryByName(evData["DATA"] as string);
                if (pcont2 && terr)
                {
                    pcont2.AddTerritory(terr.Territory);
                }
                break;

            case EventNetwork.PLAYER_LOST_TERRITORY:
                PlayerController    pcont3 = players.Find(el => el.Player.GetPlayerName().Equals(evData["SUBJECT"] as string));
                TerritoryController terr1  = getTerritoryByName(evData["DATA"] as string);
                if (pcont3 && terr1)
                {
                    pcont3.LostTerritory(terr1.Territory);
                }
                break;

            case EventNetwork.PLAYER_ADD_ARMY:
                PlayerController pcont = players.Find(el => el.Player.GetPlayerName().Equals(evData["SUBJECT"] as string));
                if (pcont)
                {
                    pcont.AddArmies((int)evData["DATA"]);
                }
                break;

            case EventNetwork.PLAYER_LOST_ARMY:
                PlayerController pcont1 = players.Find(el => el.Player.GetPlayerName().Equals(evData["SUBJECT"] as string));
                if (pcont1)
                {
                    pcont1.LostArmies((int)evData["DATA"]);
                }
                break;

            case EventNetwork.PLAYER_START_ARMIES_COUNT:
                PlayerController pcont4 = players.Find(el => el.Player.GetPlayerName().Equals(evData["SUBJECT"] as string));
                if (pcont4)
                {
                    pcont4.SetStartArmiesCount((int)evData["DATA"]);
                }
                break;

            case EventNetwork.PLAYERS_CREATED:
                CreatePlayers();
                break;

            case EventNetwork.TERRITORY_SET_OWNER:
                TerritoryController subject = getTerritoryByName(evData["SUBJECT"] as string);
                PlayerController    pcontt  = players.Find(el => el.Player.GetPlayerName().Equals(evData["DATA"] as string));
                if (pcontt)
                {
                    subject.SetOwner(pcontt);
                }
                break;

            case EventNetwork.TERRITORY_ADD_ARMY:
                TerritoryController subject1 = getTerritoryByName(evData["SUBJECT"] as string);
                if (subject1)
                {
                    subject1.AddArmies((int)evData["DATA"]);
                }
                break;

            case EventNetwork.TERRITORY_LOST_ARMY:
                TerritoryController subject2 = getTerritoryByName(evData["SUBJECT"] as string);
                if (subject2)
                {
                    subject2.RemoveArmies((int)evData["DATA"]);
                }
                break;
            }
        }