示例#1
0
 void Awake()
 {
     if (isMainRole)
     {
         mainRole = this;
     }
 }
示例#2
0
    private void Start()
    {
        if (isMainRole)
        {
            last_pos = transform.position;
            RoleData roleData = RoleData.mainRole;
            nav.speed = roleData.GetAttr(RoleAttribute.stamina) * 0.025f;
            show      = RoleShow.mainRole;
            transform.localEulerAngles = new Vector3(0, roleData.GetAttr(RoleAttribute.orientation), 0);

            int longitude = roleData.GetAttr(RoleAttribute.longitude);
            int latitude  = roleData.GetAttr(RoleAttribute.latitude);
            MinCamera.SetPos(Tools.UnitPosToWorldPoint(new Vector2Int(longitude, latitude)));
        }
    }
示例#3
0
    private void UpdateCamera(object param = null)
    {
        RoleShow mainRole = RoleShow.mainRole;

        if (mainRole)
        {
            Transform target = mainRole.playerAnim.transform;
            if (last_pos != target.position)
            {
                if (mainRole.rideAnim)
                {
                    roleCamera.position = target.position + target.forward * 5 + target.right * 2f;
                    roleCamera.LookAt(target.position);
                }
                else
                {
                    roleCamera.position = target.position + target.forward * 10f + target.right * 1f + new Vector3(0, 4f, 0);
                    roleCamera.LookAt(target.position + new Vector3(0, 4f, 0));
                }
            }
        }
    }