Пример #1
0
    public static void SetFacePos(GameObject target, Vector3 targetPos, MathRange YRotateRange)
    {
        ShooterSkillManager mgr = target.GetComponent <ShooterSkillManager>();

        if (mgr == null)
        {
            LogicSystem.GfxLog("SetFacePos skill manager miss!");
            return;
        }
        mgr.SetFacePos(targetPos, YRotateRange);
    }
Пример #2
0
    public void SetFacePos(Vector3 targetPos, MathRange YRotateRange)
    {
        //Debug.Log("---face: cur pos " + gameObject.transform.position + " target-pos:" + targetPos);
        Vector3 dir = targetPos - transform.position;

        //dir.y = 0;

        transform.forward = dir;
        Vector3 rotate = gameObject.transform.rotation.eulerAngles;

        rotate.x = YRotateRange.Clip(rotate.x);
        gameObject.transform.rotation = Quaternion.Euler(rotate);
        LogicSystem.NotifyGfxUpdatePosition(gameObject, transform.position.x, transform.position.y, transform.position.z,
                                            0, rotate.y * Mathf.PI / 180, 0);
    }