Ejemplo n.º 1
0
    private void PutLimb(Vector3 pointChoose, GameObject membreParent)
    {
        PointAttache pointAttacheParent = membreParent.GetComponent <PointAttache>();
        Transform    transformChoose    = FindNearestPoint(pointChoose, pointAttacheParent.listePointAttache);
        //creation du membre
        GameObject membreEnfant = Instantiate(this.chosedLimb, transformChoose);
        //Assignation du groupe
        Membre scriptMembreEnfant = membreEnfant.GetComponent <Membre>();

        scriptMembreEnfant.groupeMembre = this.chosedGroupIndex;
        scriptMembreEnfant.SetMembreColor(groupeColor[this.chosedGroupIndex]);
        //Assignation des parents
        PointAttache pointAttacheObjet = membreEnfant.GetComponent <PointAttache>();

        pointAttacheObjet.parent = membreParent;
        //Assignation des enfants
        pointAttacheParent.SetEnfant(transformChoose, membreEnfant);
        //Control du membre
        GetComponent <ControlMembre>().AddMembre(scriptMembreEnfant, this.chosedGroupIndex);
        scriptMembreEnfant.rbParent = membreParent.GetComponent <Rigidbody>();
    }
    private void CreationPreview(Vector3 pointTouch, GameObject membreParent)
    {
        PointAttache pointAttacheParent = poseur.GetPointAttach(membreParent);

        Transform transformChoose = poseur.FindNearestPoint(pointTouch, pointAttacheParent.listePointAttache);

        if (previewObject != null)
        {
            if (hasChangeOfMembre)
            {
                Destroy(previewObject);
                CreateObjectPreview(transformChoose);
            }
            else
            {
                previewObject.transform.position = transformChoose.position;
                previewObject.transform.rotation = transformChoose.rotation;
            }
        }
        else
        {
            CreateObjectPreview(transformChoose);
        }
    }