E
E
Egorian2018-02-13 11:17:12
C++ / C#
Egorian, 2018-02-13 11:17:12

How did changing the transform of an object not change the location of the children relative to the object?

Unity2D. I'm making a gun. The gun has a FirePoint and is near the muzzle, but when the player picks up the gun, the transform of the gun is equal to the player's transform. But there is one problem. FirePoint's transform is also equal to the player's transform. How to make FirePoint not change its location relative to the gun? 5a829d75a1507517166955.png5a829d81c3ca3500145839.png
Here is the transform change code:

public GameObject target;
public Vector3 Pos;
void Update()
{
    transform.position = target.transform.position + Pos; //Pos делает так, чтобы пистолет не торчал прямо из игрока(может есть какой-то не костыльный способ?)

    gunsprite.flipX = charactersprite.flipX;
    if (gunsprite.flipX == true)
    {
       
        Pos = new Vector3(-0.5F, Pos.y, Pos.z);//Примерно то же самое что и Pos
    }
    else
    {
      
        Pos = new Vector3(0.7F, Pos.y, Pos.z);
    }
}

Answer the question

In order to leave comments, you need to log in

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question