public static bool ParseUnitDataTemplateData( #if USE_XML XmlNode _node , #endif // USE_XML ref string _UnitDataTemplateName , ref UnitDataSetting _DataSetting ) { #if USE_XML bool ret = XMLParseLevelUtility.ParseUnitDataTemplateData( _node , ref _UnitDataTemplateName , ref _DataSetting ) ; return ret ; #endif // USE_XML }
/* * @brief Parse UnitData from xml */ public static bool ParseUnitDataTemplateData( XmlNode _UnitNode , ref string _UnitDataTemplateName , ref UnitDataSetting _DataSetting ) { // Debug.Log( _UnitNode.Name ) ; if( null == _UnitNode ) { // Debug.LogWarning( "ParseUnitDataTemplateData(),null == _UnitNode" ) ; return false ; } if( null == _UnitNode.Attributes[ "UnitDataTemplateName" ] ) return false ; _UnitDataTemplateName = _UnitNode.Attributes[ "UnitDataTemplateName" ].Value ; Dictionary<string,StandardParameter> standardParamMap = new Dictionary<string, StandardParameter>(); Dictionary< string , SkillLabel > skillLabels = new Dictionary<string, SkillLabel>() ; for( int i = 0 ; i < _UnitNode.ChildNodes.Count ; ++i ) { if( 0 == _UnitNode.ChildNodes[ i ].Name.IndexOf( "#comment" ) ) { // comment } else if( true == ParseSkillZone( _UnitNode.ChildNodes[ i ] , ref skillLabels ) ) { // Debug.Log( "skills.Keys.Count=" + skills.Keys.Count ) ; _DataSetting.ImportSkillLabels( skillLabels ) ; } else if( true == ParseStandardParameterMap( _UnitNode.ChildNodes[ i ] , ref standardParamMap ) ) { _DataSetting.ImportStandardParameter( standardParamMap ) ; } } return true ; }
public void Import( UnitDataSetting _Src ) { ImportSkillLabels( _Src.m_SkillLabels ) ; m_ProfileTexture = _Src.m_ProfileTexture ; m_ProfileTextureName = _Src.m_ProfileTextureName ; m_UnitType = _Src.m_UnitType ; ImportStandardParameter( _Src.standardParameters ) ; }
public void LoadUnitDataTemplate( string _UnitDataTemplateFilepath ) { Dictionary<string,UnitDataSetting> unitDataSettingTable = GlobalSingleton.GetUnitDataSettingTable() ; Debug.Log( "_UnitDataTemplateFilepath=" + _UnitDataTemplateFilepath ) ; if( 0 == _UnitDataTemplateFilepath.Length ) { // warning Debug.LogWarning( "_UnitDataTemplateFilepath=" + _UnitDataTemplateFilepath ) ; return ; } TextAsset ta = Resources.Load<TextAsset>( _UnitDataTemplateFilepath ); if( null == ta ) { Debug.LogError( "LoadUnitDataTemplate() null == ta" ) ; return ; } #if USE_XML XmlDocument doc = new XmlDocument() ; doc.LoadXml( ta.text ) ; XmlNode root = doc.FirstChild ; if( null == root ) { Debug.LogError( "LoadUnitDataTemplate() : null == root" ) ; return ; } // string levelname = root.Attributes[ "name" ].Value ; if( false == root.HasChildNodes ) { Debug.Log( "LoadUnitDataTemplate() : false == root.HasChildNodes" ) ; return ; } #endif // USE_XML #if USE_XML for( int i = 0 ; i < root.ChildNodes.Count ; ++i ) { XmlNode unitNode = root.ChildNodes[ i ] ; #endif // USE_XML string unitDataTemplateName = ""; UnitDataSetting unitDataSetting = new UnitDataSetting() ; if( 0 == unitNode.Name.IndexOf( "#comment" ) ) { // comment } else if( true == ParseUtility.ParseUnitDataTemplateData( unitNode, ref unitDataTemplateName , ref unitDataSetting ) ) { // Debug.Log( "unitDataSettingTable.Add " ) ; // Debug.Log( "unitData.standardParameters.Count=" + unitData.m_UnitDataStruct.standardParameters.Count ) ; if( false == unitDataSettingTable.ContainsKey( unitDataTemplateName ) ) { unitDataSettingTable.Add( unitDataTemplateName , unitDataSetting ) ; } else { unitDataSettingTable[ unitDataTemplateName ] = unitDataSetting ; } } #if USE_XML } #endif // USE_XML }
public void Import( UnitDataStruct _Src ) { m_UnitDataSetting = _Src.m_UnitDataSetting ;// 共用 ImportStandardParameter( _Src.m_UnitDataSetting.standardParameters ) ;// 自己複製一份 m_UnitState = _Src.m_UnitState ; }
public void Import( UnitDataSetting _SettingSrc ) { m_UnitDataSetting = _SettingSrc ;// 共用 ImportStandardParameter( _SettingSrc.standardParameters ) ;// 自己複製一份 }