public void Init() { int randomInt = UnityEngine.Random.Range(0, 360); Vector2 dir = Vector2.up; dir = Vector2DFunctions.RotateVec(dir, randomInt); Debug.Log("random DIR:" + dir); _info = GetComponent <PhysicsInfo>(); _info.Speed = _speed; _info.Direction = dir.normalized; _info.OldPosition = Vector2DFunctions.GetTransform2D(this); }
public override void Step() { if (!Static) { Info.OldPosition = Vector2DFunctions.GetTransform2D(this); Vector2DFunctions.Update2DTransform(Info.NewPosition, this); WriteAxises(); // Debug.Log("not static"); if (Info.mover) { Info.mover.Step(); // Debug.Log("has mover"); } } }
public override void InitPhysicsComponent() { Info = GetComponent <PhysicsInfo>(); radiusX = transform.localScale.x * 0.5f; radiusY = transform.localScale.y * 0.5f; Info.OldPosition = Vector2DFunctions.GetTransform2D(this); Info.NewPosition = Info.OldPosition; Axises = new Axis[4]; Info.verticies = new Vector2[4]; Info.IsStatic = Static; Info.radius = transform.localScale.x / 2; WriteAxises(); if (GetComponent <MoverComponent>()) { Info.mover = GetComponent <MoverComponent>(); Info.mover.Init(); Info.Speed = Info.mover.GetSpeed(); } }