Example #1
0
	public void SetProductTechnique( body_SC_ITEM_PRODUCT_TECHNIQUE_INFO _data)
	{
		if( null == m_itemProductionInfo)
			return;

		if( m_itemProductionInfo.sProductInfo.Length <=_data.eProductType)
		{
			AsUtil.ShutDown( "m_itemProductionInfo.sProductInfo.Length >= iIndex [ index : " + _data.eProductType);
			return;
		}

		bool isLevelUp = false;
		if( m_itemProductionInfo.sProductInfo[_data.eProductType].nLevel < _data.sProductInfo.nLevel)
			isLevelUp = true;

		m_itemProductionInfo.sProductInfo[ _data.eProductType ] = _data.sProductInfo;

		if( isLevelUp)
		{
			QuestMessageBroadCaster.BrocastQuest( QuestMessages.QM_PRODUCE_MASTERY, new AchProductionMastery( (eITEM_PRODUCT_TECHNIQUE_TYPE)_data.eProductType, _data.sProductInfo.nLevel));
			ArkQuestmanager.instance.CheckQuestMarkAllNpcAndCollecion();

			if( null != AsUserInfo.Instance.GetCurrentUserEntity() && null != AsUserInfo.Instance.GetCurrentUserEntity().ModelObject)
			{
				AsEffectManager.Instance.PlayEffect( "Fx/Effect/COMMON/Fx_Common_Technic_LevelUp", AsUserInfo.Instance.GetCurrentUserEntity().ModelObject.transform, false, 0);
				AsSoundManager.Instance.PlaySound( "Sound/PC/Common/Se_Common_Technic_LevelUp", Vector3.zero, false);
			}


			AsChatManager.Instance.InsertChat( string.Format( AsTableManager.Instance.GetTbl_String(406),
				ProductionTechnologyItem.GetName( (eITEM_PRODUCT_TECHNIQUE_TYPE) _data.eProductType), _data.sProductInfo.nLevel),
				eCHATTYPE.eCHATTYPE_SYSTEM);
		}
	}
Example #2
0
	private void ReceiveItemProductTechniqueInfo( byte[] _packet)
	{
		Debug.Log( "ReceiveItemProductTechniqueInfo");

		body_SC_ITEM_PRODUCT_TECHNIQUE_INFO data = new body_SC_ITEM_PRODUCT_TECHNIQUE_INFO();
		data.PacketBytesToClass( _packet);

		int nExp = AsUserInfo.Instance.GetTechInfoDiffValue( data);
		AsUserInfo.Instance.SetProductTechnique( data);

		if( AsHudDlgMgr.Instance.IsOpenProductionDlg)
			AsHudDlgMgr.Instance.productionDlg.ReceiveTechniqueRegister( data);



		StartCoroutine( ExpShow( nExp, AsPanelManager.eCustomFontType.eCustomFontType_EXP2));
	}
Example #3
0
	public int GetTechInfoDiffValue( body_SC_ITEM_PRODUCT_TECHNIQUE_INFO _data)
	{
		if( null == m_itemProductionInfo)
			return 0;


		if( m_itemProductionInfo.sProductInfo.Length <=_data.eProductType)
		{
			AsUtil.ShutDown( "m_itemProductionInfo.sProductInfo.Length >= iIndex [ index : " + _data.eProductType);
			return 0;
		}

		return _data.sProductInfo.nTotExp - m_itemProductionInfo.sProductInfo[ _data.eProductType ].nTotExp;
	}
Example #4
0
	public void ReceiveTechniqueRegister( body_SC_ITEM_PRODUCT_TECHNIQUE_INFO _data )
	{
		if( m_ItemProductInfo.sProductInfo.Length <= _data.eProductType )
		{
			Debug.LogError("ProductionDlg::SetTechniqueRegister()[ m_ItemProductInfo.sProductInfo.Length <= _data.eProductType ] eProductType : "+
				_data.eProductType );
			return;
		}
		
		m_ItemProductInfo.sProductInfo[_data.eProductType] = _data.sProductInfo;
		m_iTechOpenNum = GetTechniqueInfoCount(m_ItemProductInfo);
		
		if( ePRODUCTION_STATE.TECHNOLOGY == m_eCurState && true == productionTechnologyTab.gameObject.active )
		{
			productionTechnologyTab.Open( m_iTechOpenNum, getItemProductInfo.sProductInfo );			
		}
		
	}