Ejemplo n.º 1
0
    void UpdateSyncRoll()
    {
        CameraThirdPerson  tp  = m_Controller.currentMode as CameraThirdPerson;
        CameraFirstPerson  fp  = m_Controller.currentMode as CameraFirstPerson;
        CameraYawPitchRoll ypr = m_Controller.currentMode as CameraYawPitchRoll;

        if (tp != null)
        {
            tp.m_SyncRoll = _sync_roll;
        }
        if (fp != null)
        {
            fp.m_SyncRoll = _sync_roll;
        }
        if (!_sync_roll)
        {
            if (ypr != null)
            {
                ypr.m_Roll *= 0.85f;
                if (Mathf.Abs(ypr.m_Roll) < 0.005f)
                {
                    ypr.m_Roll = 0;
                }
            }
        }
    }
Ejemplo n.º 2
0
 private CameraYawPitchRoll ChangeNormalMode()
 {
     if (m_NormalMode != null)
     {
         CameraThirdPerson tp  = m_NormalMode as CameraThirdPerson;
         CameraFirstPerson fp  = m_NormalMode as CameraFirstPerson;
         Transform         tar = null;
         if (tp != null)
         {
             tar = tp.m_Character;
         }
         if (fp != null)
         {
             tar = fp.m_Character;
         }
         string name = "Normal Mode F" + m_ControlType.ToString();
         m_NormalMode = m_Controller.ReplaceMode(m_NormalMode, name) as CameraYawPitchRoll;
         if (m_NormalMode is CameraThirdPerson)
         {
             (m_NormalMode as CameraThirdPerson).m_Character = tar;
         }
         if (m_NormalMode is CameraFirstPerson)
         {
             (m_NormalMode as CameraFirstPerson).m_Character = tar;
         }
         if (m_Controller.currentMode == m_NormalMode)
         {
             m_NormalMode.ModeEnter();
         }
     }
     return(m_NormalMode);
 }
Ejemplo n.º 3
0
    public CameraYawPitchRoll SetNormalMode(Transform target)
    {
        string             name = "Normal Mode F" + m_ControlType.ToString();
        CameraYawPitchRoll mode = PushMode <CameraYawPitchRoll>(name);

        if (mode is CameraThirdPerson)
        {
            (mode as CameraThirdPerson).m_Character = target;
        }
        if (mode is CameraFirstPerson)
        {
            (mode as CameraFirstPerson).m_Character = target;
        }
        mode.ModeEnter();
        m_NormalMode = mode;
        return(mode);
    }
Ejemplo n.º 4
0
    public CameraYawPitchRoll EnterClimb(Transform target)
    {
        int ct = m_ControlType;

        if (ct == 3)
        {
            ct = 2;
        }
        string             name = "Normal Mode F" + ct.ToString();
        CameraYawPitchRoll mode = PushMode <CameraYawPitchRoll>(name);

        if (mode is CameraThirdPerson)
        {
            (mode as CameraThirdPerson).m_Character = target;
        }
        if (mode is CameraFirstPerson)
        {
            (mode as CameraFirstPerson).m_Character = target;
        }
        mode.ModeEnter();
        return(mode);
    }