Beispiel #1
0
	public void SetFriendData( body2_SC_FRIEND_LIST  Data, FriendAcceptBtnFunc friendAcceptBtnChangeDel)
	{
		m_nUserUniqKey  = Data.nUserUniqKey;	
		m_szCharName    = Data.szCharName;
	
		SetDelegateImage(Data.nImageIndex);
		
		m_NickName.Text    = string.Format( "Lv.{0} {1}", Data.nLevel, Data.szCharName);	
		
		m_FriendAcceptBtnFunc = friendAcceptBtnChangeDel;
	}
Beispiel #2
0
	public void SetFriendItem( body2_SC_FRIEND_LIST data)
	{
		m_data = data;
		m_CharNameText.Text = data.szCharName;

		SetButtonState();
	}
Beispiel #3
0
	public void SetFriendData( body2_SC_FRIEND_LIST Data, bool isClone = false)
	{
		m_HelloBtn.Text = AsTableManager.Instance.GetTbl_String( 1187); //#21545
		m_RecallBtn.Text = AsTableManager.Instance.GetTbl_String( 1188);
		m_ConnectRequestBtn.Text = AsTableManager.Instance.GetTbl_String( 1907);
		
		m_FriendData = Data;
		SetVisible( m_ConnectRequestBtn.gameObject, true);
		if( m_FriendData.bConnectRequest)
			m_ConnectRequestBtn.SetControlState( UIButton.CONTROL_STATE.NORMAL);
		else
			m_ConnectRequestBtn.SetControlState( UIButton.CONTROL_STATE.DISABLED);
		
		m_LastConnectTimeText.Text =  string.Format(AsTableManager.Instance.GetTbl_String(2038),GetOffLineDay(m_FriendData.nLastConnectTime));		

		m_CommandState = (eFRIEND_BUTTON_TYPE)Data.eButtonType;

		SetDelegateImage( Data.nImageIndex);
		m_NickName.Text = string.Format( "Lv.{0} {1}", Data.nLevel, Data.szCharName);
		if( Data.nSessionIdx == 0)	// 0. offline, !0. online
			m_NickName.Color = Color.gray;

		m_nRateProgress.Value = ( float)( Data.nFriendlyRate * 0.01f);

		for( int i = 0; i < MAX_GRADE; i++)
		{
			SetVisible( m_Grade_Image[i].gameObject, false);
			SetVisible( m_Dis_Grade_Image[i].gameObject, true);
		}

		int nGrade = 0;
		if( Data.nFriendlyLevel > MAX_GRADE)
			nGrade = MAX_GRADE;
		else
			nGrade = Data.nFriendlyLevel;

		for( int i = 0; i < nGrade; i++)
		{
			SetVisible( m_Grade_Image[i].gameObject, true);
			SetVisible( m_Dis_Grade_Image[i].gameObject, false);
		}

		if( isClone)
		{
			SetVisible( m_LastConnectTimeText.gameObject, false);
			SetVisible( m_HelloBtn.gameObject, true);
			SetVisible( m_RecallBtn.gameObject, false);
			SetVisible( m_ConnectRequestBtn.gameObject, true);
			m_HelloBtn.SetControlState( UIButton.CONTROL_STATE.DISABLED);
			m_RecallBtn.SetControlState( UIButton.CONTROL_STATE.DISABLED);
			m_ConnectRequestBtn.SetControlState( UIButton.CONTROL_STATE.DISABLED);
			return;
		}

		HideButtonEffect();

		
		
		switch( m_CommandState)
		{
		case eFRIEND_BUTTON_TYPE.eFRIEND_BUTTON_NOTHING:
			SetVisible( m_HelloBtn.gameObject, true);
			SetVisible( m_RecallBtn.gameObject, false);
			m_HelloBtn.SetControlState( UIButton.CONTROL_STATE.DISABLED);
			m_RecallBtn.SetControlState( UIButton.CONTROL_STATE.DISABLED);
			break;
		case eFRIEND_BUTTON_TYPE.eFRIEND_BUTTON_HELLO_ENABLE:
			SetVisible( m_HelloBtn.gameObject, true);
			SetVisible( m_RecallBtn.gameObject, false);
			m_HelloBtn.SetControlState( UIButton.CONTROL_STATE.NORMAL);
			break;
		case eFRIEND_BUTTON_TYPE.eFRIEND_BUTTON_HELLO_ENABLE|eFRIEND_BUTTON_TYPE.eFRIEND_BUTTON_HELLO_RECV:
		SetVisible( m_HelloBtn.gameObject, false);
			SetVisible( m_RecallBtn.gameObject, true);
			m_RecallBtn.Text = AsTableManager.Instance.GetTbl_String( 1187);	
			m_RecallBtn.SetControlState( UIButton.CONTROL_STATE.NORMAL);
		//	ShowButtonEffect( m_RecallBtn.gameObject.transform.position);
			break;
		case eFRIEND_BUTTON_TYPE.eFRIEND_BUTTON_HELLO_DISABLE:
			SetVisible( m_HelloBtn.gameObject, true);
			SetVisible( m_RecallBtn.gameObject, false);
			m_HelloBtn.SetControlState( UIButton.CONTROL_STATE.DISABLED);
			break;
		case eFRIEND_BUTTON_TYPE.eFRIEND_BUTTON_HELLO_DISABLE|eFRIEND_BUTTON_TYPE.eFRIEND_BUTTON_HELLO_RECV:
			SetVisible( m_HelloBtn.gameObject, true);
			SetVisible( m_RecallBtn.gameObject, false);
		//	ShowButtonEffect( m_HelloBtn.gameObject.transform.position);
			m_HelloBtn.SetControlState( UIButton.CONTROL_STATE.DISABLED);
			break;
		case eFRIEND_BUTTON_TYPE.eFRIEND_BUTTON_HELLO_RECV:
			SetVisible( m_HelloBtn.gameObject, false);
			SetVisible( m_RecallBtn.gameObject, true);
			m_RecallBtn.Text = AsTableManager.Instance.GetTbl_String( 1187);	
			m_RecallBtn.SetControlState( UIButton.CONTROL_STATE.NORMAL);
		//	ShowButtonEffect( m_RecallBtn.gameObject.transform.position);
			break;
		case eFRIEND_BUTTON_TYPE.eFRIEND_BUTTON_RECALL_ENABLE:
			SetVisible( m_HelloBtn.gameObject, false);
			SetVisible( m_RecallBtn.gameObject, true);
			m_RecallBtn.SetControlState( UIButton.CONTROL_STATE.NORMAL);
			break;
		case eFRIEND_BUTTON_TYPE.eFRIEND_BUTTON_RECALL_ENABLE|eFRIEND_BUTTON_TYPE.eFRIEND_BUTTON_HELLO_RECV:
			SetVisible( m_HelloBtn.gameObject, false);
			SetVisible( m_RecallBtn.gameObject, true);
		//	ShowButtonEffect( m_HelloBtn.gameObject.transform.position);
			m_RecallBtn.SetControlState( UIButton.CONTROL_STATE.NORMAL);
			break;
		case eFRIEND_BUTTON_TYPE.eFRIEND_BUTTON_RECALL_DISABLE:
			SetVisible( m_HelloBtn.gameObject, false);
			SetVisible( m_RecallBtn.gameObject, true);
			m_RecallBtn.SetControlState( UIButton.CONTROL_STATE.DISABLED);
			break;
		case eFRIEND_BUTTON_TYPE.eFRIEND_BUTTON_RECALL_DISABLE|eFRIEND_BUTTON_TYPE.eFRIEND_BUTTON_HELLO_RECV:
			SetVisible( m_HelloBtn.gameObject, true);
			SetVisible( m_RecallBtn.gameObject, false);
			m_HelloBtn.SetControlState( UIButton.CONTROL_STATE.DISABLED);
		//	ShowButtonEffect( m_HelloBtn.gameObject.transform.position);
			break;
		default:
			AsNotify.Instance.MessageBox( "SetFriendData Error!!!", m_CommandState.ToString());
			break;
		}
	}
	public void PacketBytesToClass( byte[] data, int index)
	{
		Type infotype = this.GetType();
		FieldInfo headerinfo;

		// nUserUniqKey
		byte[] uniqKey = new byte[ sizeof( UInt32)];
		Buffer.BlockCopy( data, index, uniqKey, 0, sizeof( UInt32));
		headerinfo = infotype.GetField( "nUserUniqKey", BINDING_FLAGS_PIG);
		headerinfo.SetValue( this, BitConverter.ToUInt32( uniqKey, 0));
		index += sizeof( UInt32);

		headerinfo = infotype.GetField ( "nCnt", BINDING_FLAGS_PIG);
		headerinfo.SetValue( this, data[ index++]);

		headerinfo = infotype.GetField ( "nMaxPage", BINDING_FLAGS_PIG);
		headerinfo.SetValue( this, data[ index++]);

		byte[] helloCount = new byte[ sizeof( Int16)];
		Buffer.BlockCopy( data, index, helloCount, 0, sizeof( Int16));
		headerinfo = infotype.GetField( "nHelloCount", BINDING_FLAGS_PIG);
		headerinfo.SetValue ( this, BitConverter.ToInt16( helloCount, 0));
		index += sizeof( Int16);

		byte[] maxHelloCount = new byte[ sizeof( Int16)];
		Buffer.BlockCopy( data, index, maxHelloCount, 0, sizeof( Int16));
		headerinfo = infotype.GetField( "nMaxHelloCount", BINDING_FLAGS_PIG);
		headerinfo.SetValue ( this, BitConverter.ToInt16( maxHelloCount, 0));
		index += sizeof( Int16);
		
		headerinfo = infotype.GetField ( "nChargeConditionPointRate", BINDING_FLAGS_PIG);
		headerinfo.SetValue( this, data[ index++]);

		headerinfo = infotype.GetField ( "nChargeConditionCount", BINDING_FLAGS_PIG);
		headerinfo.SetValue( this, data[ index++]);

		headerinfo = infotype.GetField ( "nMaxChargeConditionCount", BINDING_FLAGS_PIG);
		headerinfo.SetValue( this, data[ index++]);

		if( 0 < nCnt)
		{
			body = new body2_SC_FRIEND_LIST[nCnt];
			for ( int i = 0; i < nCnt; i++)
			{
				body[i] = new body2_SC_FRIEND_LIST();
				index = body[i].PacketBytesToClass( data, index);
			}
		}
	}