Beispiel #1
0
    private void DetonateLastBomb()
    {
        Bombe bombeManager = lastDroppedBomb.GetComponent <Bombe>();

        bombeManager.Explode();
        GameObject.FindGameObjectWithTag("Network").GetComponent <ServerManager>().EnvoyerMessageDetonateur(bombeManager.id);
    }
Beispiel #2
0
 void PlacerBombe()
 {
     Bombe = GameObject.Instantiate(Resources.LoadAssetAtPath("Assets/Prefabs/Bombe_Basic.prefab", typeof(GameObject))) as GameObject;
     Bombe.SetActive(false);
     Positionpotentiel = this.gameObject.transform.position;
     Poser             = true;
 }
Beispiel #3
0
    public void EnvoyerMessageBombe(Bombe bomb)
    {
        BombeMessage msg = new BombeMessage();

        msg.id = bomb.id;
        msg.x  = bomb.transform.position.x;
        msg.z  = bomb.transform.position.z;
        switch (bomb.GetType().ToString())
        {
        case "Bombe":
            msg.typeBombe = TYPE_BOMBE_PICKUP.BOMBE;
            break;

        case "SuperBombe":
            msg.typeBombe = TYPE_BOMBE_PICKUP.SUPER_BOMBE;
            break;

        case "BombeMur":
            msg.typeBombe = TYPE_BOMBE_PICKUP.BOMBE_MUR;
            break;

        case "BombeGlace":
            msg.typeBombe = TYPE_BOMBE_PICKUP.BOMBE_GLACE;
            break;
        }

        msg.range          = bomb.range;
        msg.explosionDelay = Bombe.EXPLOSION_DELAY;
        msg.clientId       = this.clientId;

        this.client.Send(MyMsgType.Bomb, msg);
    }
Beispiel #4
0
    void SetObjectif()
    {
        Bombe bombe = Bombe.Instance;

        if (couleur == Color.blue && texte == "ABORT")
        {
            aMaintenir = true;
        }
        else if (bombe.NbPiles > 1 && texte == "DETONATE")
        {
            aMaintenir = false;
        }
        else if (couleur == Color.white && bombe.HasLightIndic("CAR"))
        {
            aMaintenir = true;
        }
        else if (bombe.NbPiles > 2 && bombe.HasLightIndic("FRK"))
        {
            aMaintenir = false;
        }
        else if (couleur == Color.yellow)
        {
            aMaintenir = true;
        }
        else if (couleur == Color.red && texte == "HOLD")
        {
            aMaintenir = false;
        }
        else
        {
            aMaintenir = true;
        }
    }
Beispiel #5
0
    private void DropABomb(TYPE_BOMBE_PICKUP bombType)
    {
        GameObject spawnedBomb           = SpawnBomb(transform.position.x, transform.position.z, rangeExplosion, bombType);
        Bombe      spawnedBombController = spawnedBomb.GetComponent <Bombe>();

        spawnedBombController.id = Random.value;

        lastDroppedBomb = spawnedBomb;
        spawnedBombController.player = this;
        nombreBombe--;

        GameObject.FindGameObjectWithTag("Network").GetComponent <ServerManager>().EnvoyerMessageBombe(spawnedBombController);
    }
    void Update()
    {
        if (!Manager.GameEnd)
        {
            Timer += Time.deltaTime;

            if (GoThis < TimeExecuter.Length)
            {
                if (!ExecuteOnce)
                {
                    if (Timer >= TimeExecuter[GoThis].StartTime && Timer <= TimeExecuter[GoThis].EndTime)
                    {
                        foreach (GameObject Bombe in TimeExecuter[GoThis].BombeShapes)
                        {
                            Bombe.GetComponent <Bombes>().enabled = true;
                        }

                        ExecuteOnce = true;
                    }
                }

                if (Timer > TimeExecuter[GoThis].EndTime)
                {
                    GoThis     += 1;
                    ExecuteOnce = false;
                }
            }

            Stimer += Time.deltaTime;

            if (Stimer > DesactivateAfter)
            {
                gameObject.SetActive(false);
            }
        }
    }
Beispiel #7
0
 void Placergauche()
 {
     Bombe.transform.position = new Vector3(Positionpotentiel.x - 1, 1f, Positionpotentiel.z);
     Bombe.SetActive(true);
 }
Beispiel #8
0
 void Placerbas()
 {
     ;
     Bombe.transform.position = new Vector3(Positionpotentiel.x, 1f, Positionpotentiel.z - 1);
     Bombe.SetActive(true);
 }
Beispiel #9
0
    // Update is called once per frame
    void Update()
    {
        if (Compteuraction > 0)
        {
            if (Active == true)                               //Si le personnage est actif sa couleur devient verte
            {
                menu = true;
                this.renderer.material.color = Color.green;
            }
            else
            {
                this.renderer.material.color = Color.white;
            }

            if (Mouvement == true)                               // si le personnage est passer en mode mouvement les input réagissent en créant le chemin de mouvement
            {
                if (Move != 0)
                {
                    if (Input.GetKeyDown(KeyCode.LeftArrow))
                    {
                        Gauche();
                        Caseprecmouv [Cheminprec] = "left";
                        Cheminprec++;
                        Move -= 1;
                    }

                    if (Input.GetKeyDown(KeyCode.RightArrow))
                    {
                        Droite();
                        Caseprecmouv [Cheminprec] = "right";
                        Cheminprec++;
                        Move--;
                    }

                    if (Input.GetKeyDown(KeyCode.UpArrow))
                    {
                        Haut();
                        Caseprecmouv [Cheminprec] = "up";
                        Cheminprec++;
                        Move -= 1;
                    }

                    if (Input.GetKeyDown(KeyCode.DownArrow))
                    {
                        Bas();
                        Caseprecmouv [Cheminprec] = "down";
                        Cheminprec++;
                        Move -= 1;
                    }
                }

                if (Input.GetKey(KeyCode.Z))
                {
                    Bouger = true;
                }

                if (Bouger == true)
                {
                    Bougerpers();
                }


                if (compteuraction != 0)
                {
                    Menu = true;         // tant que le compteur d'action n'est pas égal a  0 le menu est présent
                }
            }

            if (Poser == true)                               // Si Poser est true alors les input servent a placer une bombe
            {
                if (Input.GetKeyDown(KeyCode.LeftArrow))
                {
                    Bombe.SetActive(false);                                      // La bombe est passer en false pour qu'elle ne soit pas apparente avant son instantiation au point voulu
                    Placergauche();
                }

                if (Input.GetKeyDown(KeyCode.RightArrow))
                {
                    Bombe.SetActive(false);
                    Placerdroite();
                }

                if (Input.GetKeyDown(KeyCode.UpArrow))
                {
                    Bombe.SetActive(false);
                    Placerhaut();
                }

                if (Input.GetKeyDown(KeyCode.DownArrow))
                {
                    Bombe.SetActive(false);
                    Placerbas();
                }

                if (Input.GetKeyDown(KeyCode.Z))
                {
                    Poser = false;
                    verifcompteuraction();
                    Bombe.gameObject.GetComponent <Bombes>().valid = true;        // activation de la bombe
                }
            }

            if (Input.GetKeyDown(KeyCode.Escape))
            {
                Menu = false;
            }
        }
        else
        {
            Menu           = false;
            selectionnable = false;
        }
    }
Beispiel #10
0
 private void UtiliserBombe()
 {
     if (!Exiting)
     {
         Bombe b = new Bombe(Game, 0.4f * level_.laneSize, Rotation, Position + Vector3.Forward * 0.05f, this, LaneIndex);
         Game.Components.Add(b);
         if (bombLevel == 5)
         {
             Bombe b1 = new Bombe(Game, 0.4f * level_.laneSize, Rotation, Position + Vector3.Forward * 0.1f, this, LaneIndex);
             Game.Components.Add(b1);
         }
     }
 }