IEnumerator SetModeling() { AsLoadingIndigator.Instance.ShowIndigator( string.Empty); while( false == AsEntityManager.Instance.gameObject.active) yield return null; ReleaseModeling(); eRACE race = (eRACE)AsCharacterCreateFramework.curRace; eCLASS job = (eCLASS)AsCharacterCreateFramework.curJob; eGENDER gender = (eGENDER)AsCharacterCreateFramework.curGender; sCHARVIEWDATA viewData = new sCHARVIEWDATA(); viewData.eRace = race; viewData.eClass = job; viewData.eGender = gender; m_CharCreateGenderData = AsTableManager.Instance.GetTbl_CreateCharacter_GenderData( race, job, gender); if( null == m_CharCreateGenderData) Debug.LogError( "AsCustomizingPanel::SetModeling()[ con't find m_CharCreateGenderData ] race : " + race + " job : "+ job +" gender : " +gender); m_CharCreateClassData = AsTableManager.Instance.GetTbl_CreateCharacter_ClassData( race, job); if( null == m_CharCreateClassData) Debug.LogError( "AsCustomizingPanel::SetModeling()[ con't find m_CharCreateClassData ] race : " + race + " job : "+ job); int iHair = 0; if( null != m_CharCreateGenderData && null != m_CharCreateClassData) { iHair = (int)m_CharCreateGenderData.hairTypes[0] + (int)m_CharCreateGenderData.hairColors[0]; int ibody = (int)m_CharCreateGenderData.bodyColors[0]; int iPoint = (int)m_CharCreateGenderData.pointColors[0]; int iGlove = (int)m_CharCreateGenderData.gloveColors[0]; viewData.sNormalItemVeiw_1 = new sITEMVIEW(); viewData.sNormalItemVeiw_1.nItemTableIdx = m_CharCreateClassData.commonProp.weapon; viewData.sNormalItemVeiw_2 = new sITEMVIEW(); viewData.sNormalItemVeiw_2.nItemTableIdx = 0; viewData.sNormalItemVeiw_3 = new sITEMVIEW(); viewData.sNormalItemVeiw_3.nItemTableIdx = ibody; viewData.sNormalItemVeiw_4 = new sITEMVIEW(); viewData.sNormalItemVeiw_4.nItemTableIdx = iGlove; viewData.sNormalItemVeiw_5 = new sITEMVIEW(); viewData.sNormalItemVeiw_5.nItemTableIdx = iPoint; } CharacterLoadData entityCreationData = new CharacterLoadData( ushort.MaxValue, viewData); entityCreationData.nHairItemIndex = iHair; m_ModelEntity = AsEntityManager.Instance.CreateUserEntity( "PlayerChar", entityCreationData, false); m_ModelEntity.HandleMessage( new Msg_AnimationIndicate( "Idle")); charDummy.transform.position = new Vector3( GetCharacterPositionX(), charDummy.transform.position.y, charDummy.transform.position.z); m_ModelEntity.gameObject.transform.localPosition = Vector3.zero; m_ModelEntity.gameObject.transform.localRotation = Quaternion.identity; m_ModelEntity.gameObject.transform.localScale = charDummy.transform.localScale; while( true) { if( eModelLoadingState.Finished == m_ModelEntity.CheckModelLoadingState()) break; yield return null; } m_ModelEntity.transform.parent = charDummy.transform; SetLayerHierArchy( m_ModelEntity.transform, LayerMask.NameToLayer( "GUI")); Initialize(); while( true == PartsRoot.s_isLoading) yield return null; genderIcons[0].controlIsEnabled = true; genderIcons[1].controlIsEnabled = true; AsLoadingIndigator.Instance.HideIndigator(); }
public AsCharacterCreateClassData( XmlElement _element) { XmlNode node = (XmlElement)_element; // <Type> SetValue( ref eClass, node, "Type"); // SetValue( ref className, node, "Type"); switch( eClass) { case eCLASS.DIVINEKNIGHT: className = AsTableManager.Instance.GetTbl_String(306); break; case eCLASS.MAGICIAN: className = AsTableManager.Instance.GetTbl_String(307); break; case eCLASS.CLERIC: className = AsTableManager.Instance.GetTbl_String(308); break; case eCLASS.HUNTER: className = AsTableManager.Instance.GetTbl_String(309); break; case eCLASS.ASSASSIN: className = AsTableManager.Instance.GetTbl_String(310); break; } // <Position> SetValue( ref position, node, "Position"); // <Weapon> SetValue( ref weapon, node, "Weapon"); // <Damage> SetValue( ref damage, node, "Damage"); // <Defense> SetValue( ref defense, node, "Defense"); // <Support> SetValue( ref support, node, "Support"); // <StartMapID> SetValue( ref startMapID, node, "StartMapID"); // <StartPointX> SetValue( ref startPoint.x, node, "StartPointX"); // <StartPointZ> SetValue( ref startPoint.y, node, "StartPointZ"); // <StartPointRandRatio> SetValue( ref startPointRandRatio, node, "StartPointRandRatio"); // <CommonProperty> XmlNode commonProperty = node[ "CommonProperty"]; commonProp = new AsCharacterCreateCommonProperty( commonProperty as XmlElement); // <Genders> XmlNode genders = node[ "Genders"]; XmlNodeList genderList = genders.ChildNodes; foreach( XmlNode genderNode in genderList) { // <Gender> AsCharacterCreateGenderData genderData = new AsCharacterCreateGenderData( genderNode as XmlElement); dicGenderData.Add( genderData.gender, genderData); } }