Example #1
0
    private void SaveSceneInfo(GameStateType state, int actionId, bool isResumeScene)
    {
        //test code
        if (UIWindowSelectScene.m_iIndex != -1)
        {
            return;
        }

        if (state != GameStateType.none)
        {
            m_ProcessData.m_Type = state;
        }
        m_ProcessData.m_ActionId = actionId;

        if (null != PlayerManager.Instance.GetPlayerInstance())
        {
            m_ProcessData.m_TerrainDataType     = StageManager.Instance.GetCurrentGameStage();
            m_ProcessData.m_PlayerTransform.pos = PlayerManager.Instance.GetPlayerInstance().GetTransformData().GetPosition();
            m_ProcessData.m_PlayerTransform.rot = PlayerManager.Instance.GetPlayerInstance().GetTransformData().GetRotation();


            //set npc player
            m_ProcessData.m_NpcTransformList.Clear();
            if (null != TerrainManager.Instance.GetNpcList())
            {
                foreach (var elem in TerrainManager.Instance.GetNpcList())
                {
                    int id = elem.Key;
                    PlayerProcessData.TransformData npc = new PlayerProcessData.TransformData();

                    npc.pos = elem.Value.GetTransformData().GetPosition();
                    npc.rot = elem.Value.GetTransformData().GetRotation();

                    m_ProcessData.m_NpcTransformList.Add(elem.Key, npc);
                }
            }
        }
        m_ProcessData.m_bIsResumeScene = isResumeScene;
        if (m_ProcessData.m_bIsResumeScene)
        {
            //check type
            m_ProcessData.m_bIsResumeScene = state == m_ProcessData.m_TerrainDataType;
        }
        if (m_bIsDebugMode)
        {
            m_ProcessData.m_bIsResumeScene = false;
        }
        SaveParam();
    }
Example #2
0
 private void ChangeInfoToData(PlayerProcessInfo info, PlayerProcessData data)
 {
     data.m_Type = (GameStateType)(info.StageType);
     if (data.m_Type == GameStateType.none)
     {
         m_ProcessData.m_PlayerTransform  = new PlayerProcessData.TransformData();
         m_ProcessData.m_NpcTransformList = new Dictionary <int, PlayerProcessData.TransformData>();
     }
     else
     {
         data.m_TerrainDataType  = (GameStateType)(info.TerrainDataType);
         data.m_ActionId         = info.ActionId;
         data.m_bIsResumeScene   = info.IsResumeScene;
         data.m_iExitSceneFuncId = info.ExitSceneFuncId;
         data.m_PlayerTransform  = new PlayerProcessData.TransformData();
         if (info.PlayerTransformInfo != null)
         {
             if (info.PlayerTransformInfo.Pos != null)
             {
                 data.m_PlayerTransform.pos = info.PlayerTransformInfo.Pos.GetVector3();
             }
             if (info.PlayerTransformInfo.Rot != null)
             {
                 data.m_PlayerTransform.rot = info.PlayerTransformInfo.Rot.GetVector3();
             }
         }
         m_ProcessData.m_NpcTransformList = new Dictionary <int, PlayerProcessData.TransformData>();
         foreach (var elem in m_ProcessInfo.NpcTransformInfoList)
         {
             PlayerProcessData.TransformData transformData = new PlayerProcessData.TransformData();
             transformData.pos = elem.Value.Pos.GetVector3();
             transformData.rot = elem.Value.Rot.GetVector3();
             m_ProcessData.m_NpcTransformList.Add(elem.Key, transformData);
         }
     }
 }