Exemplo n.º 1
0
 public void Init(float maxPossiblePosition, float minPossiblePosition, GameOverHandler handler)
 {
     _maxScreenPosition   = maxPossiblePosition;
     _minScreenPosition   = minPossiblePosition;
     _handler             = handler;
     _handler.OnGameOver += OnGameOver;
 }
Exemplo n.º 2
0
    public override void OnServerSceneChanged(string sceneName)
    {
        if (SceneManager.GetActiveScene().name.StartsWith("Scene_Map"))
        {
            GameOverHandler gameOverHandlerInstance = Instantiate(gameOverHandlerPrefab);

            NetworkServer.Spawn(gameOverHandlerInstance.gameObject);

            foreach (RTSPlayer player in Players)
            {
                Vector2 pos = GetStartPosition().position;
                //Debug.Log($"OnServerSceneChanged pos {GetStartPosition().position} ");
                GameObject baseInstance = Instantiate(
                    unitBasePrefab,
                    pos,
                    Quaternion.identity);

                NetworkServer.Spawn(baseInstance, player.connectionToClient);


                GameObject mainCharInstance = Instantiate(
                    mainPrefab.gameObject,
                    pos,
                    Quaternion.identity);
                NetworkServer.Spawn(mainCharInstance, player.connectionToClient);
            }
        }
    }
Exemplo n.º 3
0
 public static void CheckGameOver(this Grid board, GameOverHandler onGameOver)
 {
     if (board.IsOver())
     {
         onGameOver(board.GetCountFilled());
     }
 }
    //TODO: refactor CheckForEnemiesAlive to be less dumb
    IEnumerator CheckForWaveEnd()
    {
        Debug.Log("WaveManager: Check for wave end");
        while (CheckForEnemiesAlive()) //Can impl this better
        {
            yield return(new WaitForSeconds(.5f));
        }

        if (cur_wave_index < wave_list.Count)
        {
            Debug.Log("Wave manager: wave complete!");
            cur_wave_index++;


            if (cur_wave_index >= wave_list.Count)
            {
                Debug.Log("Wave manager: all waves completed successfully!");
                AllWavesCompletedEvent?.Invoke(this, System.EventArgs.Empty);
                GameOverHandler.DoGameWin();
            }
        }

        WaveEndEvent?.Invoke(this, System.EventArgs.Empty);
        flag_wave_in_progress = false;
    }
Exemplo n.º 5
0
    void Awake()
    {
        GameObject master = GameObject.FindGameObjectWithTag("Master");

        starter  = master.GetComponent <RoundStarter>();
        scores   = master.GetComponent <ScoreManager>();
        gameOver = GameObject.Find("GameOver").GetComponent <GameOverHandler>();
    }
Exemplo n.º 6
0
 public override void OnServerSceneChanged(string sceneName)                           //when server changes scene
 {
     if (SceneManager.GetActiveScene().name.StartsWith("Scene_Map"))                   //if scene name sart with
     {
         GameOverHandler gameOverHandlerInstance = Instantiate(gameOverHandlerPrefab); //spawn GameOverHandler
         NetworkServer.Spawn(gameOverHandlerInstance.gameObject);
     }
 }
Exemplo n.º 7
0
 public override void OnServerSceneChanged(string sceneName)
 {
     if (SceneManager.GetActiveScene().name.StartsWith("Scene_Map"))
     {
         GameOverHandler gameOverHandlerInstance = Instantiate(gameOverHandlerPrefab);
         NetworkServer.Spawn(gameOverHandlerInstance.gameObject);
     }
 }
Exemplo n.º 8
0
    public override void OnServerSceneChanged(string sceneName)
    {
        if (SceneManager.GetActiveScene().name.StartsWith("Main"))
        {
            GameOverHandler gameOverHandler = Instantiate(gameoverScript);

            NetworkServer.Spawn(gameOverHandler.gameObject);
        }
    }
Exemplo n.º 9
0
        public void OnGameOverEvent(GameOverArgs e)
        {
            GameOverHandler gameOverEvent = GameOverEvent;

            if (gameOverEvent != null)
            {
                gameOverEvent(e);
            }
        }
Exemplo n.º 10
0
    // Use this for initialization
    void Start()
    {
        gameOverHandler = GameObject.FindGameObjectWithTag("MapManager").GetComponent <GameOverHandler>();
        var workers = GameObject.FindGameObjectsWithTag("Worker");

        foreach (GameObject worker in workers)
        {
            AddPop(worker);
        }
    }
Exemplo n.º 11
0
 void Awake()
 {
     if (snapsToCamera) {
         transform.parent = Camera.main.transform;
         transform.localPosition = Vector3.zero;
     }
     StartCoroutine (Options ());
     global = GameObject.FindGameObjectWithTag ("Global");
     go = GameObject.FindGameObjectWithTag("GameController").GetComponent<GameOverHandler>();
 }
        public override void OnServerSceneChanged(string sceneName)
        {
            Debug.Log($"SCENE NAME: {sceneName}");
            if (!SceneManager.GetActiveScene().name.StartsWith("Scene_Map"))
            {
                return;
            }
            GameOverHandler gameOverHandlerInstance = Instantiate(gameOverHandler);

            NetworkServer.Spawn(gameOverHandlerInstance.gameObject);
        }
Exemplo n.º 13
0
 void Start()
 {
     instance = this;
     if (Random.Range(0, 100) == 0)
     {
         leftSecret.SetActive(true);
     }
     if (Random.Range(0, 100) == 0)
     {
         rightSecret.SetActive(true);
     }
 }
Exemplo n.º 14
0
    public void Start()
    {
        gameOverHandler = GameObject.FindGameObjectWithTag("MapManager").GetComponent <GameOverHandler>();
        foreach (ResourceTypes e in Enum.GetValues(typeof(ResourceTypes)))
        {
            resources.Add(e, 0);
        }

        AddResource(ResourceTypes.FOOD, 200);
        AddResource(ResourceTypes.WOOD, 125);
        AddResource(ResourceTypes.STONE, 25);
    }
Exemplo n.º 15
0
        }//Play

        /// <summary>
        /// Rise event according to a game state
        /// </summary>
        /// <param name="state">Game current state</param>
        private void OnBoardCheck(State state)
        {
            _state = state;
            if (_state == State.CONTINUE)
            {
                GameContinueHalder?.Invoke(_board.GameBoard, EventArgs.Empty);
            }
            if (_state == State.WIN || _state == State.LOSE || _state == State.DRAW)
            {
                string str = (_state == State.DRAW) ? "DRAW" : _currentPlayer.Name;
                GameOverHandler?.Invoke(str, EventArgs.Empty);
            }
        } //OnBoardCheck
Exemplo n.º 16
0
    // Update is called once per frame
    void Update()
    {
        if (!is_alive)
        {
            if (!GetComponent <ParticleSystem>().isPlaying)
            {
                Destroy(gameObject);
                GameOverHandler.OnGameOver();
            }
            return;
        }

        //position
        rb.velocity = Vector3.right * Input.GetAxis("Horizontal") * speed + Vector3.up * Input.GetAxis("Vertical") * speed;

        //rotation

        /*Vector2 mv = new Vector2(Input.GetAxis("Mouse X"), Input.GetAxis("Mouse Y"));
         * if (mv.magnitude > 0.1)
         * {
         *  float angle = Vector2.SignedAngle(Vector2.up, mv);
         *  Vector3 desiredAngle = new Vector3(0f, 0f, angle);
         *
         *  transform.localEulerAngles = desiredAngle;
         * }*/

        Camera cam = Camera.current;

        if (cam != null)
        {
            Vector2 mousepos     = Input.mousePosition;
            Vector2 playerpos    = cam.WorldToScreenPoint(transform.position);
            float   angle        = Vector2.SignedAngle(Vector2.up, mousepos - playerpos);
            Vector3 desiredAngle = new Vector3(0f, 0f, angle);
            transform.localEulerAngles = desiredAngle;
        }


        //shoot
        if (Input.GetButton("Fire1") && shootingTimeout <= 0f)
        {
            shootingTimeout = 1f / shootingRate;
            GameObject  go = Instantiate(projectile);
            Rigidbody2D rb = go.GetComponent <Rigidbody2D>();
            go.transform.position = transform.position + transform.up * 0.6f;
            rb.velocity           = transform.up * projectileSpeed;
        }
        shootingTimeout -= Time.deltaTime;
    }
Exemplo n.º 17
0
    //Spawn Game Over Handler Only If We Are In Level Not Menu Scene
    public override void OnServerSceneChanged(string sceneName)
    {
        if (SceneManager.GetActiveScene().name.StartsWith("Level"))
        {
            GameOverHandler gameOverHandlerInstance = Instantiate(gameOverHandlerPrefab);

            NetworkServer.Spawn(gameOverHandlerInstance.gameObject);

            foreach (RTSPlayer player in Players)
            {
                GameObject baseInstance = Instantiate(unitBasePrefab, GetStartPosition().position, Quaternion.identity);

                NetworkServer.Spawn(baseInstance, player.connectionToClient);
            }
        }
    }
Exemplo n.º 18
0
    //Called when the scene is changed
    public override void OnServerSceneChanged(string sceneName)
    {
        //Checks the name to see if its a map, menu etc
        if (SceneManager.GetActiveScene().name.StartsWith("Scene_Menu"))
        {
            GameOverHandler gameOverHandlerInstance = Instantiate(gameOverHandlerPrefab);
            NetworkServer.Spawn(gameOverHandlerInstance.gameObject);
        }

        ////Spawns the deck on the network
        //if (SceneManager.GetActiveScene().name.StartsWith("Scene_Map"))
        //{
        //    Deck deck = Instantiate(deckPrefab, new Vector3(0f, 0.55f, 0f), Quaternion.identity);
        //    NetworkServer.Spawn(deck.gameObject);
        //}
    }
Exemplo n.º 19
0
    public override void OnServerSceneChanged(string sceneName)
    {
        if (!SceneManager.GetActiveScene().name.Contains("Map"))
        {
            return;
        }

        GameOverHandler gameOverHandlerInstance = Instantiate(gameOverHandlerPrefab);

        NetworkServer.Spawn(gameOverHandlerInstance.gameObject);

        foreach (MyPlayer player in Players)
        {
            GameObject baseInstance = Instantiate(basePrefab, GetStartPosition().position, Quaternion.identity);
            NetworkServer.Spawn(baseInstance, player.connectionToClient);
        }
    }
    public static void RemoveLives(int lives)
    {
        if (lives <= 0)
        {
            return;             //someone is trying to goof my system!!! I ain't gonna have it...
        }
        Resource_Attributes cur_lives_attribute = FindResourceAttribute(Resource_V2.ResourceType.lives);

        if (cur_lives_attribute.resource_amount > lives)
        {
            cur_lives_attribute.resource_amount -= lives;
        }
        else
        {
            cur_lives_attribute.resource_amount = 0;
            GameOverHandler.DoGameOver();
        }
    }
Exemplo n.º 21
0
    public override void OnServerSceneChanged(string sceneName)
    {
        //Whenever the server changes the scene. We check if its an online game map. If so we spawn in our GameOverHandler
        //Then for each player in our Players lobby List<RTSPlayer> we spawn in their base instance @ network start positions.
        //We make sure to give authority to the players connection.
        if (SceneManager.GetActiveScene().name.StartsWith("Scene_Map"))
        {
            //Spawns this in on server
            GameOverHandler gameOverHandlerInstance = Instantiate(gameOverHandlerPrefab);
            NetworkServer.Spawn(gameOverHandlerInstance.gameObject);

            foreach (RTSPlayer player in Players)
            {
                //For each player in lobby spawn in base instance.
                GameObject baseInstance = Instantiate(unitBasePrefab, GetStartPosition().position, Quaternion.identity);
                NetworkServer.Spawn(baseInstance, player.connectionToClient);
            }
        }
    }
    public override void OnServerSceneChanged(string sceneName) //whenever server changes the scene
    {
        if (SceneManager.GetActiveScene().name.StartsWith("Scene_Map"))
        {
            GameOverHandler gameOverHandlerInstance = Instantiate(gameOverHandlerPrefab);

            NetworkServer.Spawn(gameOverHandlerInstance.gameObject);

            foreach (RTSPlayer player in Players)
            {
                GameObject baseInstance = Instantiate( // spawn a unitSpawner on the server.
                    unitBasePrefab,
                    GetStartPosition().position,
                    Quaternion.identity);

                NetworkServer.Spawn(baseInstance, player.connectionToClient); // spawn a unitSpawnerInstance on all the clients, and then give ownership to the player who was added.
            }
        }
    }
    public override void OnServerSceneChanged(string newSceneName)
    {
        base.OnServerChangeScene(newSceneName);

        if (SceneManager.GetActiveScene().name.StartsWith("NewWorldScene"))
        {
            GameOverHandler gameOverInstance = Instantiate(gameOverPrefab);
            NetworkServer.Spawn(gameOverInstance.gameObject);

            foreach (WaterFieldPlayer player in Players)
            {
                GameObject playerInstance = Instantiate(
                    theActualPlayer,
                    GetStartPosition().position,
                    Quaternion.identity);

                NetworkServer.Spawn(playerInstance, player.connectionToClient);
            }
        }
    }
    //Called when the scene is changed
    public override void OnServerSceneChanged(string sceneName)
    {
        //Checks the name to see if its a map, menu etc
        if (SceneManager.GetActiveScene().name.StartsWith("Scene_Map"))
        {
            //Spawns the game over handler
            GameOverHandler gameOverHandlerInstance = Instantiate(gameOverHandlerPrefab);
            //Spawns handler on network for everyone
            NetworkServer.Spawn(gameOverHandlerInstance.gameObject);

            foreach (RTSPlayer player in Players)
            {
                GameObject baseInstance = Instantiate(
                    unitBasePrefab,
                    GetStartPosition().position,
                    Quaternion.identity);

                NetworkServer.Spawn(baseInstance, player.connectionToClient);
            }
        }
    }
Exemplo n.º 25
0
 /// <summary>
 /// Controller's constructor sets the objects passed as parameters
 /// </summary>
 /// <param name="blackjackgame">The game object</param>
 /// <param name="gamevisualizer">The visualizer object</param>
 /// <param name="handler">The GameOver event handler (caller's function - in our case it's in the MainForm)</param>
 public CardTableController( BlackjackGame blackjackgame, CardTableVisualizer gamevisualizer, GameOverHandler handler )
 {
     game = blackjackgame;
     cardtable = gamevisualizer;
     GameOver += handler;
 }
Exemplo n.º 26
0
 void initialize()
 {
     //player = GameObject.FindGameObjectWithTag("PlayerSwapper").transform;
     numberAlive = enemies.Length;
     music = GameObject.FindGameObjectWithTag("Music").GetComponent<MusicManager>();
     //gates = GameObject.FindGameObjectsWithTag ("Gate");
     setUpGates();
     looker = GameObject.FindGameObjectWithTag("CamFollow").GetComponent<CamLooker>();
     GameObject c = GameObject.FindGameObjectWithTag ("GameController");
     data = c.GetComponent<GameData>();
     gameOverHandler = c.GetComponent<GameOverHandler>();
     flags = c.GetComponent<Flags>();
     transition = GameObject.FindGameObjectWithTag("Fader").GetComponent<SceneTransition>();
     flags.AddTrapFlag();
     trapCleared = flags.CheckTrapFlag();
     canvas = GameObject.Find ("HUD").gameObject;
     if(type == trapType.STEALTH) stealthPrep();
     initialized = true;
 }
Exemplo n.º 27
0
 /// <summary>
 /// Controller's constructor sets the objects passed as parameters
 /// </summary>
 /// <param name="blackjackgame">The game object</param>
 /// <param name="gamevisualizer">The visualizer object</param>
 /// <param name="handler">The GameOver event handler (caller's function - in our case it's in the MainForm)</param>
 public CardTableController(BlackjackGame blackjackgame, CardTableVisualizer gamevisualizer, GameOverHandler handler)
 {
     game      = blackjackgame;
     cardtable = gamevisualizer;
     GameOver += handler;
 }
Exemplo n.º 28
0
 void Awake()
 {
     self = this;
 }