How to set child gameobject rotation over the center of parent gameoject?
Hi, i'm trying to make a 2D platformer game, with some mini games to pass through from time to time. in one of them there is a circle (in black) rotating with the following script:
void Update ()
{
transform.Rotate (0, 0, 90 * Time.deltaTime);
}
And there is a child Cercle (in red) attached to it , that starts moving when it's not anymore child of the black circle (i used a bool called : joined) here is the script for movement:
public float speed =15f;
void Update()
{
if (joined == false) //not anymore child of black circle
{
Vector3 pos = transform.position;
Vector3 velocity = new Vector3 (0f, speed * Time.deltaTime, 0f);
pos += transform.rotation * velocity;
transform.position = pos;
}
}
What i want to have is that when i click on mouse button and the red circle is released, i want it's rotation to be set in the right way for it to move as illustrated in the picture, whatever the rotation it has when it was joined with the black cercle.
here is how the red circle get joined with black circles:
void OnTriggerEnter2D (Collider2D col)
{
if (col.tag == "BlackCircle")
{
joined= true;
transform.SetParent (col.transform);
}
}
sorry if i couldn't make it so clear for you (i'm noob) don't hestitate to ask me for more clarification. thanks!
Your answer
![](https://koobas.hobune.stream/wayback/20220612115900im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
2D Sprite rotation 180 degrees 0 Answers
2D top down shooter can only aim to the top right (mouse aim) 0 Answers
2d Character not rotating right 0 Answers
Implementing gravity in 2D game 0 Answers
Aim at my cursor 1 Answer