示例#1
0
 public void collision(Plateform platef)
 {
     if (platef != null)
     {
         Vector3 nPosition = position + deplacementCible;
         //Debug.Log(nPosition.y + ", " + dimension.x + " : " + platef.position.x + " , " + platef.dimension.x);
         if ((nPosition.x + dimension.x > platef.position.x && nPosition.x + dimension.x < platef.position.x + platef.dimension.x) || (nPosition.x < platef.position.x + platef.dimension.x && nPosition.x > platef.position.x))
         {
             //Debug.Log(nPosition);
             if (position.y < platef.position.y + platef.dimension.y && position.y + dimension.y > platef.position.y)
             {
                 // Debug.Log("ok");
                 deplacementCible.x = 0;
                 vitesse = new Vector3(-vitesse.x / 2, vitesse.y/2, vitesse.z);
             }
         }
         if ((nPosition.y + dimension.y > platef.position.y && nPosition.y + dimension.y < platef.position.y + platef.dimension.y) || (nPosition.y < platef.position.y + platef.dimension.y && nPosition.y > platef.position.y))
         {
             if (position.x < platef.position.x + platef.dimension.x && position.x + dimension.x > platef.position.x)
             {
                 deplacementCible.y = 0;
                 vitesse = new Vector3(vitesse.x/2, -vitesse.y/2, vitesse.z);
             }
         }
         //return false;
     }
     else
     {
     }
 }
        public void secndFireTest()
        {
            Plateform frm = new Plateform();

            frm.firstFire();
            frm.secndFire();
            Assert.Fail();
        }
示例#3
0
    public void collision(Plateform platef)
    {
        if (!(position.x + dimension.x < platef.position.x - 30 || position.x > platef.position.x + platef.dimension.x + 30))
        {
            if (platef != null)
            {

                Vector3 nPosition = position + deplacementCible;

                float xGauche = nPosition.x - dimension.x * (im.rectTransform.pivot.x);
                float xDroite = nPosition.x + dimension.x * (1-im.rectTransform.pivot.x);
                float yBas = nPosition.y - dimension.y * (im.rectTransform.pivot.y);
                float yHaut = nPosition.y + dimension.y * (1 - im.rectTransform.pivot.y);

                float marge = 5;
                //Debug.Log(nPosition.y + ", " + dimension.x + " : " + platef.position.x + " , " + platef.dimension.x);
                if ((xDroite - marge > platef.position.x && xDroite - marge < platef.position.x + platef.dimension.x) ||
                    (xGauche - marge < platef.position.x + platef.dimension.x && xDroite + marge > platef.position.x))
                {
                    //Debug.Log(nPosition);
                    if (position.y + marge < platef.position.y + platef.dimension.y && position.y+dimension.y - marge > platef.position.y)
                    {

                         Debug.Log("ok");
                        deplacementCible.x = 0;
                        vitesse = new Vector3(0, vitesse.y, vitesse.z);

                        if (!timerActive)
                        {
                            facteurVitesse -= 3;
                            timerActive = true;
                        }
                        if (facteurVitesse <= vitesseMin)
                        {
                            facteurVitesse = vitesseMin;
                        }
                        Debug.Log(facteurVitesse);
                    }
                }
                if ((yHaut - marge > platef.position.y && yHaut - marge < platef.position.y + platef.dimension.y) || (yBas + marge < platef.position.y + platef.dimension.y && yBas + marge > platef.position.y))
                {
                    if (position.x + marge < platef.position.x + platef.dimension.x && position.x + dimension.x - marge > platef.position.x)
                    {

                            Debug.Log("ko "+platef.position + ";" +platef.dimension);
                            deplacementCible.y = 0;
                            vitesse = new Vector3(vitesse.x, 0, vitesse.z);
                    }
                }
                //return false;
            }
            else
            {
            }
        }
    }
示例#4
0
    // Use this for initialization
    void Start()
    {
        float x = image.rectTransform.position.x;
        float y = image.rectTransform.position.y;
        float largeur = image.rectTransform.rect.width;
        float longueur = image.rectTransform.rect.height;

        plateform = new Plateform(new Vector3(x, y, 0), new Vector3(largeur, longueur, 0),image, platAnim, dephasageX, amplitudeX, frecX);

        Debug.Log(plateform.dimension.x + ", " + plateform.dimension.y);
    }
 private void Awake()
 {
     if (instance != null)
     {
         Destroy(this);
     }
     else
     {
         instance = this;
     }
 }
示例#6
0
    public override void OnInspectorGUI()
    {
        DrawDefaultInspector();
        Plateform myScript = (Plateform)target;

        if (GUILayout.Button("Build Object"))
        {
            myScript.Build();
        }
        else if (GUILayout.Button("Delete Object"))
        {
            myScript.Delete();
        }
    }
示例#7
0
 // Start is called before the first frame update
 void Start()
 {
     target = Plateform.instance;
     transform.LookAt(target.transform.position);
     transform.Rotate(new Vector3(0, -180, 0));
 }
示例#8
0
 public World(Personnage p, Plateform[] pla, Virus v)
 {
     player = p;
     platforms = pla;
     virus = v;
 }
示例#9
0
    public void saut(Plateform platef)
    {
        float marge = 6.0f;
        float xGauche = position.x - dimension.x * (im.rectTransform.pivot.x);
        float xDroite = position.x + dimension.x * (1 - im.rectTransform.pivot.x);
        float yBas = position.y - dimension.y * (im.rectTransform.pivot.y);
        float yHaut = position.y + dimension.y * (1 - im.rectTransform.pivot.y);
        if ((position.y - 15 < platef.position.y + platef.dimension.y) && (position.y - 15 > platef.position.y) && !aDejaSaute
            && (position.x + dimension.x -15 > platef.position.x) && (position.x +15 < platef.position.x + platef.dimension.x))//(position.x-marge < platef.position.x + platef.dimension.x) && (position.x + dimension.x + marge > platef.position.x))
        {
            GameObject.Find("Debug2").GetComponent<Text>().text = position + ";"+platef.position +";"+platef.dimension;

            vitesse += new Vector3(0, 18, 0);
            aDejaSaute = true;
        }
    }
示例#10
0
 public void saut(Plateform platef)
 {
     float marge = 6.0f * scale;
     float xGauche = position.x - dimension.x * (im.rectTransform.pivot.x);
     float xDroite = position.x + dimension.x * (1 - im.rectTransform.pivot.x);
     float yBas = position.y - dimension.y * (im.rectTransform.pivot.y);
     float yHaut = position.y + dimension.y * (1 - im.rectTransform.pivot.y);
     //if ((position.y - 15 < platef.position.y + platef.dimension.y) && (position.y - 15 > platef.position.y) && !aDejaSaute
     //    && (position.x + dimension.x - 15 > platef.position.x) && (position.x + 15 < platef.position.x + platef.dimension.x))//(position.x-marge < platef.position.x + platef.dimension.x) && (position.x + dimension.x + marge > platef.position.x))
     //{
     if (!enSaut)
     {
         jumpSound.PlayOneShot(jumpSound.clip, 0.8f);
         vitesse = new Vector3(vitesse.x, vitesse.y + 32 * scale, vitesse.z);
         aDejaSaute = true;
         enSaut = true;
     }
     //}
 }
示例#11
0
    public void deplacementShaky(Plateform platef)
    {
        if (!(position.x + dimension.x < platef.position.x - 30 || position.x > platef.position.x + platef.dimension.x + 30))
        {
            if (platef != null)
            {

                Vector3 nPosition = (position + deplacementCible);

                float xGauche = nPosition.x - dimension.x * (0);
                float xDroite = nPosition.x + dimension.x * (1 - 0);
                float yBas = nPosition.y - dimension.y * (0);
                float yHaut = nPosition.y + dimension.y * (1 - 0);

                float marge = 5 * scale;
                //Debug.Log(nPosition.y + ", " + dimension.x + " : " + platef.position.x + " , " + platef.dimension.x);

                if ((yHaut - marge > platef.position.y && yHaut - marge < platef.position.y + platef.dimension.y) || (yBas + marge < platef.position.y + platef.dimension.y && yBas + marge > platef.position.y))
                {
                    if (position.x + marge < platef.position.x + platef.dimension.x && position.x + dimension.x - marge > platef.position.x)
                    {

                        deplacementPlateforme = platef.deplacement;

                    }
                }
                //return false;
            }
        }
    }
示例#12
0
    public void collision(Plateform platef)
    {
        if (!(position.x + dimension.x < platef.position.x - 30 || position.x > platef.position.x + platef.dimension.x + 30))
        {
            if (platef != null)
            {
                Vector3 nPosition = (position + deplacementCible);

                float xGauche = nPosition.x - dimension.x * (0);
                float xDroite = nPosition.x + dimension.x * (1 - 0);
                float yBas = nPosition.y - dimension.y * (0);
                float yHaut = nPosition.y + dimension.y * (1 - 0);

                float marge = 5*scale;
                //Debug.Log(nPosition.y + ", " + dimension.x + " : " + platef.position.x + " , " + platef.dimension.x);
                if ((xDroite - marge > platef.position.x && xDroite - marge < platef.position.x + platef.dimension.x) ||
                    (xGauche + marge < platef.position.x + platef.dimension.x && xGauche + marge > platef.position.x))
                {
                    //Debug.Log(nPosition);
                    if (position.y + marge < platef.position.y + platef.dimension.y && position.y + dimension.y - marge > platef.position.y)
                    {
                        vitesse = new Vector3(0, vitesse.y, vitesse.z);
                        if (!timerActive && timerAcceleration>0.3f)
                        {
                            //Choc
                            facteurVitesse -= 10;
                            timerActive = true;
                            playHitWall();
                        }
                        deplacementCible.x = 0;
                        if (facteurVitesse <= vitesseMin)
                        {
                            facteurVitesse = vitesseMin;
                        }
                    }
                }
                if ((yHaut - marge > platef.position.y && yHaut - marge < platef.position.y + platef.dimension.y) || (yBas + marge < platef.position.y + platef.dimension.y && yBas + marge > platef.position.y))
                {
                    if (position.x + marge < platef.position.x + platef.dimension.x && position.x + dimension.x - marge > platef.position.x)
                    {
                        deplacementCible.y = 0;
                        vitesse = new Vector3(vitesse.x, 0, vitesse.z);
                        enSaut = false;
                    }
                }
                //return false;
            }
        }
    }