// @Brief : Create // @Param : pParent => Object parent // pData => Character data // @Return : KrCharagekiUI2DCharacter instance public static KrCharagekiUILive2DCharacter Create(Transform pParent, KrCharagekiUICharacterData pData) { GameObject pPrefab = KrResources.LoadDataInApp <GameObject>(c_pPREFAB_PATH); GameObject pObject = Instantiate <GameObject>(pPrefab); pObject.transform.SetParent(pParent, false); KrCharagekiUILive2DCharacter pCharacter = pObject.GetComponent <KrCharagekiUILive2DCharacter>(); pCharacter.Initialize(pData); return(pCharacter); }
// @Brief : Initialize // @Param : pData => Character data protected override void Initialize(KrCharagekiUICharacterData pData) { base.Initialize(pData); m_pActionSpriteDic = new Dictionary <uint, Sprite>(); foreach (KeyValuePair <uint, string> pKeyValue in KrCharagekiDef.s_p2D_CHARA_ACTION_IMAGE) { string pDataPath = KrCharagekiDef.s_pASSET_BASE_PATH + string.Format(pKeyValue.Value, m_pCharaData.GetCharacterId()); Sprite pSprite = KrResources.LoadSprite(pDataPath, KrCharagekiDef.IsLoadingFromResources()); m_pActionSpriteDic.Add(pKeyValue.Key, pSprite); } Hide(); }
//:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: // PUBLIC FUNCTION //:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: // @Brief : Load // @Param : uCharaId => character id public void Load(uint uCharaId) { KrDebug.Assert(KrCharagekiDef.s_pCHARA_DIC.ContainsKey(uCharaId), "Invalid KrCharagekiDef.s_CHARA_DIC key = " + uCharaId, typeof(KrCharagekiUICharacterContainer)); KrCharagekiUICharacterData pData = KrCharagekiDef.s_pCHARA_DIC[uCharaId]; KrDebug.Assert(!m_pCharaContainer.ContainsKey(uCharaId), "It is already registered key = " + uCharaId, typeof(KrCharagekiUICharacterContainer)); KrCharagekiUICharacter pChara = null; // 2D SPRITE if (m_eMode == eVIEW_MODE.SPRITE) { pChara = KrCharagekiUI2DCharacter.Create(m_pCharaParent, pData); } // LIVE 2D else if (m_eMode == eVIEW_MODE.LIVE2D) { pChara = KrCharagekiUILive2DCharacter.Create(m_pCharaParent, pData); } m_pCharaContainer.Add(uCharaId, pChara); }
//:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: // PROTECTED FUNCTION //:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: // @Brief : Initialize // @Param : pData => Character data protected override void Initialize(KrCharagekiUICharacterData pData) { base.Initialize(pData); string pMocPath = KrCharagekiDef.s_pASSET_BASE_PATH + string.Format(KrCharagekiDef.s_pLIVE2D_MCO_FILE_FORMAT, pData.GetCharacterId()); string[] pTexturePaths = new string[KrCharagekiDef.s_pLIVE2D_MODEL_TEXTURES_FORMAT.Length]; for (int sIndex = 0; sIndex < KrCharagekiDef.s_pLIVE2D_MODEL_TEXTURES_FORMAT.Length; sIndex++) { string pTexturePath = KrCharagekiDef.s_pASSET_BASE_PATH + string.Format(KrCharagekiDef.s_pLIVE2D_MODEL_TEXTURES_FORMAT[sIndex], pData.GetCharacterId()); pTexturePaths[sIndex] = pTexturePath; } List <string> pMotions = new List <string>(); m_MotionDic = new Dictionary <uint, string>(); foreach (KeyValuePair <uint, string> pKeyValue in KrCharagekiDef.s_pLIVE2D_MOTION_FILE_DIC) { string pDataPath = KrCharagekiDef.s_pASSET_BASE_PATH + string.Format(pKeyValue.Value, m_pCharaData.GetCharacterId()); m_MotionDic.Add(pKeyValue.Key, pDataPath); pMotions.Add(pDataPath); } m_pLive2DModel = KrLive2DModel.Create(pMocPath, pTexturePaths, pMotions.ToArray(), KrCharagekiDef.IsLoadingFromResources(), transform); Hide(); }
// @Brief : Initialize // @Param : pData => Character data protected virtual void Initialize(KrCharagekiUICharacterData pData) { m_pCharaData = pData; }