Ejemplo n.º 1
0
 // Update is called once per frame
 void Update()
 {
     if (Input.GetKeyDown(KeyCode.N))
     {
         MultiplayerEventManager.TriggerNextPhase();
     }
 }
Ejemplo n.º 2
0
    void SwitchPhase()
    {
        currentPhase = (currentPhase + 1) % 5;
        switch (currentPhase)
        {
        case 0:
            MultiplayerEventManager.TriggerAllowCurrentPlayerToMove(currentPlayer);
            break;

        case 1:
            MultiplayerEventManager.TriggerDisallowCurrentPlayerToMove(currentPlayer);
            break;

        case 2:
            MultiplayerEventManager.TriggerAllowCurrentPlayerToFire(currentPlayer);
            break;

        case 3:
            MultiplayerEventManager.TriggerDisallowCurrentPlayerToFire(currentPlayer);
            break;

        case 4:
            int lastPlayer = currentPlayer;
            NextPlayer();
            MultiplayerEventManager.TriggerNextPlayer(lastPlayer, currentPlayer);
            break;

        default:
            break;
        }
    }
Ejemplo n.º 3
0
    void NextPlayer()
    {
        ChangePhaseHud("Next player");
        playersData[currentPlayer].gameObject.tag = "Enemy";
        int lastPlayer = currentPlayer;

        do
        {
            currentPlayer = (currentPlayer + 1) % playersData.Length;
        } while (playersData[currentPlayer].dead && currentPlayer != lastPlayer);

        if (currentPlayer == lastPlayer)
        {
            MultiplayerEventManager.TriggerPlayerWon(currentPlayer);
        }
        else
        {
            playersData[currentPlayer].gameObject.tag = "Player";
            phase = 0;
            ChangeCurrentPlayerHud("Player " + (currentPlayer + 1));
            changeTimerTime(4.0f);
            timer.Enable();
            PowerBarDamage powerBar = playersData[currentPlayer].gameObject.GetComponentInChildren <PowerBarDamage>();
            powerBar.IncreasePower(10);
        }
    }
    public void DicreaseHealth(int dmg)
    {
        currentHealth -= dmg;
        healthBar.UpdateBar(currentHealth, maxHealth);

        if (currentHealth <= mediumHealth)
        {
            healthBar.UpdateColor(Color.yellow);
        }

        if (currentHealth <= criticalHealth)
        {
            healthBar.UpdateColor(Color.red);
        }

        if (currentHealth <= 0)
        {
            GameObject player = gameObject.transform.parent.transform.parent.gameObject;
            if (blood != null)
            {
                Instantiate(blood, player.transform.position, new Quaternion());
            }
            MultiplayerEventManager.TriggerPlayerDead(player.GetComponent <MultiplayerPlayerId>().GetId());
            Destroy(player);
        }
    }
 private void destroyObject()
 {
     MultiplayerEventManager.TriggerSpellEnd();
     hitCount++;
     if (hitCount >= MaxHit)
     {
         Destroy(gameObject);
     }
 }
Ejemplo n.º 6
0
 private void FallOutOfMap()
 {
     if (gameObject.tag == "Player" || gameObject.tag == "Enemy")
     {
         AudioForCharacter.FallDeathSound();
         MultiplayerEventManager.TriggerPlayerDead(gameObject.GetComponent <MultiplayerPlayerId>().GetId());
     }
     Destroy(gameObject);
 }
Ejemplo n.º 7
0
    private void Fire()
    {
        Bullet.GetComponent <MoveScript>().speed = fleche.transform.localScale.x * Bullet.GetComponent <MoveScript>().speedMutiplier;
        GameObject instanceOfBullet = Instantiate(Bullet, bulletEmitter.transform.position, fleche.transform.rotation);

        instanceOfBullet.GetComponent <SpellColision>().SetFriends(player);
        player.gameObject.GetComponentInChildren <PowerBarDamage>().DecreasePower(Bullet.transform.GetComponent <ShotScript>().power);
        fired = true;
        AudioForCharacter.CastASpell();
        MultiplayerEventManager.TriggerPlayerCast();
    }
Ejemplo n.º 8
0
 private void InstantiatePlayers()
 {
     deadPlayer = new bool[players.Length];
     for (int i = 0; i < players.Length; i++)
     {
         players [i] = Instantiate(players[i], spawnPoints[i], new Quaternion());
         players [i].GetComponent <MultiplayerPlayerId> ().SetId(i);
         deadPlayer [i] = false;
     }
     for (int i = 0; i < players.Length; i++)
     {
         MultiplayerEventManager.TriggerNextPlayer(currentPlayer, ((currentPlayer + 1) % players.Length));
         currentPlayer = (currentPlayer + 1) % players.Length;
     }
 }
Ejemplo n.º 9
0
    public void CheckIfWinner()
    {
        int nbOfAlive = 0;
        int winnerId  = -1;

        for (int i = 0; i < players.Length; i++)
        {
            if (!deadPlayer[i])
            {
                nbOfAlive++;
                winnerId = i;
            }
        }
        if (nbOfAlive == 1)
        {
            MultiplayerEventManager.TriggerPlayerWon(winnerId);
        }
    }
Ejemplo n.º 10
0
 private void Update()
 {
     if (enable)
     {
         currentTime -= Time.deltaTime;
         if (currentTime < 0.0f)
         {
             currentTime = 0.0f;
         }
         if (currentTime == 0.0f)
         {
             Disable();
             lastPhaseTriggerTimerEnd = phase;
             MultiplayerEventManager.TriggerTimerEnd();
         }
     }
     UpdateTimer();
 }
Ejemplo n.º 11
0
 public void MainMenu()
 {
     MultiplayerEventManager.UnsubscribeAllSubscriber();
     Time.timeScale = 1;
     SceneManager.LoadScene(0);
 }
 public void OnClickNextPlayer()
 {
     MultiplayerEventManager.TriggerNextPlayerButtonClick();
     NextButton.SetActive(false);
 }