Please verify you are human

[HELP] Auto Attack
  Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > Flyff > Flyff Private Server
You last visited: Today at 16:15

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[HELP] Auto Attack

Discussion on [HELP] Auto Attack within the Flyff Private Server forum part of the Flyff category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Jan 2012
Posts: 34
Received Thanks: 0
[HELP] Auto Attack

I am adding an auto attack system and I have a problem, could someone help me?

SYSTEM:


PRINT ERROR:


LINE ERROR:
Code:
							for( MAPBUFF::iterator t = pWndWorld->m_buffs.m_mapBuffs.begin(); t!= pWndWorld->m_buffs.m_mapBuffs.end(); ++t )

WndField.cpp
Code:
#ifdef __NEW_NEIGUA
int partySkill[]={6,8};
CWndRefresher::CWndRefresher() 
{
	m_dwsfxtime = -1;
	bStart = FALSE;
	for( int i = 0; i < 4; i++ )
	{
		m_pItemElem[i] = NULL;
		m_pTexture[i] = NULL;
		m_dwitemid[i] = NULL;

	}    

}
CWndRefresher::~CWndRefresher() 
{

} 


BOOL CWndRefresher::Initialize( CWndBase* pWndParent, DWORD dwType )
{
	return CWndNeuz::InitDialog( g_Neuz.GetSafeHwnd(), APP_REFRESHER, 0, CPoint( 0, 0 ), pWndParent );
}


BOOL CWndRefresher::OnCommand( UINT nID, DWORD dwMessage, CWndBase* pWndBase ) 
{ 
	return CWndNeuz::OnCommand( nID, dwMessage, pWndBase ); 
} 
void CWndRefresher::OnSize( UINT nType, int cx, int cy ) 
{ 
	CWndNeuz::OnSize( nType, cx, cy ); 
} 
void CWndRefresher::OnLButtonUp( UINT nFlags, CPoint point ) 
{ 
} 
void CWndRefresher::OnLButtonDown( UINT nFlags, CPoint point ) 
{ 
} 
void CWndRefresher::OnDraw( C2DRender* p2DRender )
{
	//if (bStart)
	//{
	//	CString str;
	//	str.Format("杀怪:%d",g_pPlayer->n_KillNumber);
	//	p2DRender->TextOut(16,164,1,1,str,0xffff0000);
	//}
	int j = 0;
	for (unsigned int i=0;i<Skill.size();i++)
	{
		LPSKILL lpSkill;
		lpSkill = g_pPlayer->GetSkill(0,Skill[i]);
		ItemProp* pSkillProp = prj.GetSkillProp( lpSkill->dwSkill );
		if (pSkillProp)
		{
			CTexture *pIcon = NULL;
			pIcon =m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, MakePath( DIR_ICON, pSkillProp->szIcon ), 0xffff00ff );
			pIcon->Render(p2DRender,CPoint(m_rect[j].left+11,m_rect[j].top+1),255);
			j++;
		}
	}
	for (unsigned int i=0;i<BuffItem.size();i++)
	{
		ItemProp* pItemProp = prj.GetItemProp(BuffItem[i]);
		if (pItemProp)
		{
			CTexture *pIcon = NULL;
			pIcon =m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, MakePath( DIR_ITEM, pItemProp->szIcon ), 0xffff00ff );
			pIcon->Render(p2DRender,CPoint(m_rect[j].left+11,m_rect[j].top+1),255);
			j++;
		}
	}
	//剧团
	for (int i=0;i< 2;i++)
	{
		ItemProp* pItemProp =  prj.GetPartySkill( partySkill[i] );

		if( pItemProp ) 
		{
			CTexture *pIcon = NULL;
			pIcon =m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, MakePath( DIR_ICON, pItemProp->szIcon), 0xffff00ff, FALSE );
			pIcon->Render(p2DRender,CPoint(m_rect[j].left+11,m_rect[j].top+1),255);
			j++;
		}
		if( g_Party.m_nSizeofMember != 0 && g_Party.IsLeader( g_pPlayer->m_idPlayer ))
		{
			if(g_Party.GetLevel() - pItemProp->dwReqDisLV>=0 )
			{
				CWndButton* pButtn1 = (CWndButton*)GetDlgItem(400+i);
				pButtn1->EnableWindow(TRUE);
			}

		}else
		{
			CWndButton* pButtn1 = (CWndButton*)GetDlgItem(400+i);
			pButtn1->SetCheck(FALSE);
			pButtn1->EnableWindow(FALSE);

		}
	}


}
HRESULT CWndRefresher::RestoreDeviceObjects()
{
	CWndNeuz::RestoreDeviceObjects();
	return S_OK;
}
HRESULT CWndRefresher::InvalidateDeviceObjects()
{
	CWndNeuz::InvalidateDeviceObjects();
	return S_OK;
}
HRESULT CWndRefresher::DeleteDeviceObjects()
{
	CWndNeuz::DeleteDeviceObjects();
	InvalidateDeviceObjects();
	return S_OK;
}
void CWndRefresher::OnInitialUpdate( void )
{
	CWndNeuz::OnInitialUpdate(); 

	CWndButton* pButton = (CWndButton*)GetDlgItem(WIDC_BUTTON_REFRESH_START);
	CWndButton* pButton2 = (CWndButton*)GetDlgItem(WIDC_BUTTON_REFRESH_STOP);
	// pButton->EnableWindow(FALSE);
	pButton2->EnableWindow(FALSE);

	///////////////插入药品////////////////////
	CWndComboBox* pCombo = (CWndComboBox*)GetDlgItem(WIDC_COMBOBOX);
	CWndComboBox* pCombo1 = (CWndComboBox*)GetDlgItem(WIDC_COMBOBOX1);
	CWndComboBox* pCombo2 = (CWndComboBox*)GetDlgItem(WIDC_COMBOBOX2);
	int nIndex = -1;
	CString str;
	pCombo->ResetContent();
	nIndex = pCombo->AddString("select Hp");
	pCombo->SetItemData( nIndex, 0);
	pCombo->SetCurSel(nIndex);
	pCombo1->ResetContent();
	nIndex = pCombo1->AddString("select Mp");
	pCombo1->SetItemData( nIndex, 0);
	pCombo1->SetCurSel(nIndex);
	pCombo2->ResetContent();
	nIndex = pCombo2->AddString("select Fp");
	pCombo2->SetItemData( nIndex, 0);
	pCombo2->SetCurSel(nIndex);
	for(int i=0;i<MAX_INVENTORY;i++)
	{
		CItemElem* pItemElem = (CItemElem*)g_pPlayer->m_Inventory.GetAt(i);
		if (!pItemElem)
			continue;
		ItemProp* pItemProp = pItemElem->GetProp();
		if (!pItemProp)
			continue;
		if (pItemProp->dwItemKind2 != IK2_FOOD && pItemProp->dwItemKind2 !=IK2_REFRESHER && pItemProp->dwItemKind2 !=IK2_POTION	)
			continue;
		BOOL bCunZai = FALSE;
		if (pItemProp->dwDestParam[0] == DST_HP)
		{
			for (int i=0;i<pCombo->GetListBoxSize();i++)
			{
				if (pCombo->GetItemData(i) == pItemProp->dwID)
				{
					bCunZai = TRUE;
					break;
				}
			}
			if (bCunZai == FALSE)
			{
				str.Format("%s",pItemProp->szName);
				nIndex = pCombo->AddString(str);
				pCombo->SetItemData( nIndex, pItemProp->dwID);
				pCombo->SetCurSel(nIndex);
				m_dwitemid[0] = pItemProp->dwID;
			}

		}else if (pItemProp->dwDestParam[0] == DST_MP)
		{
			for (int i=0;i<pCombo1->GetListBoxSize();i++)
			{
				if (pCombo1->GetItemData(i) == pItemProp->dwID)
				{
					bCunZai = TRUE;
					break;
				}
			}
			if (bCunZai == FALSE)
			{
				str.Format("%s",pItemProp->szName);
				nIndex = pCombo1->AddString(str);
				pCombo1->SetItemData( nIndex, pItemProp->dwID);
				pCombo1->SetCurSel(nIndex);
				m_dwitemid[1] = pItemProp->dwID;
			}
		}else if (pItemProp->dwDestParam[0] == DST_FP)
		{
			for (int i=0;i<pCombo2->GetListBoxSize();i++)
			{
				if (pCombo2->GetItemData(i) == pItemProp->dwID)
				{
					bCunZai = TRUE;
					break;
				}
			}
			if (bCunZai == FALSE)
			{
				str.Format("%s",pItemProp->szName);
				nIndex = pCombo2->AddString(str);
				pCombo2->SetItemData( nIndex, pItemProp->dwID);
				pCombo2->SetCurSel(nIndex);
				m_dwitemid[2] = pItemProp->dwID;
			}
		}
	}





	///////////////////////////////////////////////////////////////////////
	CWndButton* pWndButton;
	pWndButton = (CWndButton*)GetDlgItem( WIDC_RADIO );
	pWndButton->SetCheck( FALSE );
	pWndButton = (CWndButton*)GetDlgItem( WIDC_RADIO1 );
	pWndButton->SetCheck( TRUE );//默认选择无限范围

	CWndEdit* LVmin = (CWndEdit*)GetDlgItem( WIDC_EDIT );
	CWndEdit* LVmax = (CWndEdit*)GetDlgItem( WIDC_EDIT1 );
	LVmin->SetString("1");
	LVmax->SetString("999");
	///////////////////////////////////////////////////////////////////////////////////////////
	if (g_pPlayer->IsAuthorization(AUTH_ADMINISTRATOR))
	{
		CWndButton* pWndButtonRang =  new CWndButton;
		pWndButtonRang->Create("bow double hit",WBS_CHECK,CRect(75,145,145,161),this,300);
	}
	////////////////////////////////////////////////////////////////////////////////////////////
	CWndButton* pWndButtonRang =  new CWndButton;
	pWndButtonRang->Create("check ascription",WBS_CHECK,CRect(5,145,75,161),this,301);



	CPoint pt;
	int index = 0;
	//CWndButton* pWndButtonSkill =  new CWndButton;
	for( int x=0; x<10; x++ )//技能框
	{
		for( int y=0; y<6; y++ )
		{
			pt = CPoint( x+155, y+8 );

			pt.x += (x*42);
			pt.y += (y*32);

			SetRect( m_rect[index], pt.x, pt.y, pt.x+32, pt.y+32 );
			index++;
		}
	}
	index = 0;
	Skill.clear();
	for( int i = 0; i < MAX_SKILL_JOB; i++ ) 
	{
		LPSKILL lpSkill;
		lpSkill = &g_pPlayer->m_aJobSkill[i];

		if( lpSkill->dwSkill != NULL_ID && lpSkill->dwLevel>0)
		{
			ItemProp* pSkillProp = prj.m_aPropSkill.GetAt( lpSkill->dwSkill );
			if( pSkillProp && pSkillProp->nEvildoing == 1 && pSkillProp->dwReferValue1>0)
			{
				CWndButton* pWndButtonSkill =  new CWndButton;
				Skill.push_back(i);
				pWndButtonSkill->Create("",WBS_CHECK,m_rect[index],this,100+index);
				index++;
			}else if (pSkillProp && pSkillProp->dwID == SI_RIN_SUP_MERKABAHANZELRUSHA)
			{
				CWndButton* pWndButtonSkill =  new CWndButton;
				Skill.push_back(i);
				pWndButtonSkill->Create("",WBS_CHECK,m_rect[index],this,100+index);
				index++;
			}
		}

	}

	BuffItem.clear();
	int index2 = 0;
	for(int i=0;i<MAX_INVENTORY;i++)
	{
		CItemElem* pItemElem = (CItemElem*)g_pPlayer->m_Inventory.GetAt(i);
		if (pItemElem && IsBuffItem(pItemElem->m_dwItemId))
		{
			BuffItem.push_back(pItemElem->m_dwItemId);
			CWndButton* pWndButtonSkill =  new CWndButton;
			pWndButtonSkill->Create("",WBS_CHECK,m_rect[index+index2],this,200+index2);
			index2++;
		}
	}
	//剧团技能
	for (int i=0;i<2;i++)
	{
		CWndButton* pWndButtonSkill =  new CWndButton;
		pWndButtonSkill->Create("",WBS_CHECK,m_rect[index+index2+i],this,400+i);
		pWndButtonSkill->EnableWindow(FALSE);
	}

	CWndButton* pWndButtonF1 =  new CWndButton;
	pWndButtonF1->Create("F1",WBS_CHECK,m_rect[index+index2+2],this,500);
	//pWndButtonF1->EnableWindow(FALSE);
	int n = (index+index2 +2)%6==0?0:1;
	SetWndRect(CRect(5,5,176+int((index+index2+2)/6+n)*42,240));



	MoveParentCenter(); 
}
BOOL CWndRefresher::IsBuffItem(DWORD itemId)
{
	switch(itemId)
	{
	case II_CHR_SYS_SCR_UPCUTSTONE:
	case II_SYS_SYS_SCR_AMPES:
	case II_SYS_SYS_SCR_ICEATKSPEED:
	case II_SYS_SYS_SCR_VELOCIJUMP:
	case II_CHR_SYS_SCR_ACTIVITION:
	case II_SYS_SYS_SCR_AMPESC:
	//case II_GEN_FOO_INS_STARCANDYA:
	//case II_GEN_FOO_INS_STARCANDYB:
	//case II_GEN_FOO_INS_STARCANDYC:
	case II_SYS_SYS_SCR_AMPESS:
		return TRUE;
		break;
	default:
		return FALSE;
		break;

	}
}
BOOL CWndRefresher::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
{
	//LPWNDCTRL wndCtrl[4];
	//wndCtrl[0] = GetWndCtrl( WIDC_CUSTOM7 );
	//wndCtrl[1] = GetWndCtrl( WIDC_CUSTOM1 );
	//wndCtrl[2] = GetWndCtrl( WIDC_CUSTOM2 ); 
	//wndCtrl[3] = GetWndCtrl( WIDC_CUSTOM8); 
	//for( int i = 0; i < 4; i++ )
	//{
	//	if( !wndCtrl[i] )
	//	{
	//		continue;
	//	}
	//	if( wndCtrl[i]->rect.PtInRect( point ))
	//	{

	//		CItemElem* pTempElem;
	//		CItemBase* pItemBase = g_pPlayer->GetItemId( pShortcut->m_dwId );
	//		pTempElem = (CItemElem*) pItemBase;
	//		ItemProp* pItemProp = pTempElem->GetProp();


	//		if( pItemProp->dwItemKind2 == IK2_FOOD || pItemProp->dwItemKind2 == IK2_POTION || pItemProp->dwItemKind2 == IK2_REFRESHER || pItemProp->dwUseable == 1)
	//		{
	//			if( m_pItemElem[i])
	//			{
	//				m_pItemElem[i]->SetExtra(0);
	//				m_pItemElem[i] = NULL;
	//				m_dwitemid[i]=NULL;
	//			}
	//			m_pItemElem[i] = (CItemElem*)pTempElem;
	//			m_pTexture[i] = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem[i]->GetProp()->szIcon ), 0xffff00ff );
	//			if( m_pTexture[i])
	//			{
	//				m_dwitemid[i]=m_pItemElem[i]->m_dwItemId;
	//			//	m_pItemElem[i]->SetExtra(1);
	//			}
	//		}else{
	//			return FALSE;
	//		}

	//	}
	//}
	return TRUE;
}
DWORD timeEndInter = 0;
DWORD s_CoolTime=0;
DWORD nPowtime =0;
BOOL CWndRefresher::Process()
{
	if (g_pPlayer->GetHitPoint() == 0)
	{
		return FALSE;
	}
	////////////////吃药////////////////////////////
	CWndButton* hp = (CWndButton*)GetDlgItem(WIDC_HP);
	CWndButton* mp = (CWndButton*)GetDlgItem(WIDC_MP);
	CWndButton* fp = (CWndButton*)GetDlgItem(WIDC_FP);
	//for( int i = 0; i < 3; ++i )
	{
		DWORD dwId = g_pPlayer->m_Inventory.Find( m_dwitemid[0] );
		if( bStart && dwId != NULL_ID && hp->GetCheck()  )
		{
			CItemBase* pItemBase = g_pPlayer->GetItemId(dwId);

			if(pItemBase &&(((FLOAT)g_pPlayer->GetMaxHitPoint() / g_pPlayer->GetHitPoint() ) > 2.0F || pItemBase->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint())  )
			{

				if( g_pPlayer->m_cooltimeMgr.CanUse( g_pPlayer->m_cooltimeMgr.GetGroup(pItemBase->GetProp() )))
				{
					g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, pItemBase->m_dwObjId ), NULL_ID, pItemBase->GetProp()->dwParts );
				}
			}
		}
		dwId = g_pPlayer->m_Inventory.Find( m_dwitemid[1] );
		if( bStart && dwId != NULL_ID && mp->GetCheck() )
		{
			CItemBase* pItemBase = g_pPlayer->GetItemId(dwId);
			//if( ((FLOAT)g_pPlayer->GetMaxManaPoint() / g_pPlayer->GetManaPoint() ) > 2.0F || m_pItemElem[1]->GetProp()->nAdjParamVal1 + g_pPlayer->GetManaPoint() <= g_pPlayer->GetMaxManaPoint() )
			if( pItemBase && g_pPlayer->GetManaPoint()  < 500 && g_pPlayer->GetManaPoint() < g_pPlayer->GetMaxManaPoint())
			{

				if( g_tmCurrent-m_CoolTime>2000)
				{
					g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, pItemBase->m_dwObjId ), NULL_ID, pItemBase->GetProp()->dwParts );
					m_CoolTime = g_tmCurrent;

				}
			}
		}
		dwId = g_pPlayer->m_Inventory.Find( m_dwitemid[2] );
		if( bStart && dwId != NULL_ID && fp->GetCheck() )
		{
			CItemBase* pItemBase = g_pPlayer->GetItemId(dwId);
			//if( ((FLOAT)g_pPlayer->GetMaxFatiguePoint() / g_pPlayer->GetFatiguePoint() ) > 2.0F || m_pItemElem[2]->GetProp()->nAdjParamVal1 + g_pPlayer->GetFatiguePoint() <= g_pPlayer->GetMaxFatiguePoint() )
			if(pItemBase &&  g_pPlayer->GetFatiguePoint() < 200 && g_pPlayer->GetFatiguePoint() < g_pPlayer->GetMaxFatiguePoint())
			{
				if( g_tmCurrent-m_CoolTime>2000)
				{
					g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, pItemBase->m_dwObjId ), NULL_ID, pItemBase->GetProp()->dwParts );
					m_CoolTime = g_tmCurrent;

				}
			}
		}
		//dwId = g_pPlayer->m_Inventory.Find( m_dwitemid[3] );
		//if( bStart && dwId != NULL_ID && Ex->GetCheck() )
		//{
		//	CItemBase* pItemBase = g_pPlayer->GetItemId(dwId);
		//	if(pItemBase && !g_pPlayer->HasBuff( BUFF_ITEM, pItemBase->m_dwItemId ))
		//	{
		//		if( g_tmCurrent-m_CoolTime>2000)
		//		{
		//			g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, pItemBase->m_dwObjId ), NULL_ID, pItemBase->GetProp()->dwParts );
		//			m_CoolTime = g_tmCurrent;
		//		}
		//	}

		//}


	}
	////////////////////////////以下是自动打怪//////////////////////////
	if (g_pPlayer->IsFly())
	{
		return FALSE;
	}


	CWndButton*	fanwei = (CWndButton*)GetDlgItem( WIDC_RADIO );
	CWndButton* dafanwei = (CWndButton*)GetDlgItem( WIDC_RADIO1 );
	//取得怪物等级范围
	CWndEdit* LVmin = (CWndEdit*)GetDlgItem( WIDC_EDIT );
	CWndEdit* LVmax = (CWndEdit*)GetDlgItem( WIDC_EDIT1 );
	CWndButton* F1 = (CWndButton*)GetDlgItem(500);
	int MinLv = _ttoi( LVmin->GetString() );
	int MaxLv = _ttoi( LVmax->GetString() );
	if(MinLv>999 || MinLv<1 || MaxLv > 999 || MaxLv< 1)
	{
		return FALSE;
	}
	if (bStart)
	{
		//if(fanwei->GetCheck())
	//		CreateSfx(g_Neuz.m_pd3dDevice,XI_NEIGUA,g_pPlayer->GetPos(),g_pPlayer->GetId());
		CWorld* pWorld = g_WorldMng.Get();
		float fDist;
		CObj* pSelectOld = pWorld->GetObjFocus();
		CObj* pSelectNEW = NULL;
		CMover* pMover = (CMover*)pSelectOld;
		if(pSelectOld&&pSelectOld->GetType()!=OT_MOVER)
		{
			return FALSE;
			//bStart=false;
			//CWndButton* pButton1 = (CWndButton*)GetDlgItem(WIDC_BUTTON_REFRESH_START);
			//pButton1->EnableWindow(TRUE);
		}
		if (pMover && pMover->GetHitPoint() > 0)
		{

			CWndButton* guishu = (CWndButton*)GetDlgItem(301);//判断归属
			if (guishu->GetCheck() && pMover->m_idAttacker != NULL_ID && pMover->m_idAttacker != g_pPlayer->GetId() )
			{
				CMover *pTmp = prj.GetMover(pMover->m_idAttacker);
				if (g_pPlayer->m_idparty>0 && pTmp && pTmp->GetPartyId() == g_pPlayer->m_idparty)
				{

				}else
				{
					pWorld->SetObjFocus( NULL );
					return FALSE;
				}
			}
			D3DXVECTOR3 vStart = g_pPlayer->GetPos();			vStart.y += 0.5f;
			D3DXVECTOR3 vEnd   = pMover->GetPos();	vEnd.y += 0.5f;
			if (g_pPlayer->GetWorld()->IntersectObjLine( NULL, vStart, vEnd, FALSE, FALSE ))
			{
				if(g_tmCurrent - timeEndInter > SEC(5))
				{
					pWorld->SetObjFocus( NULL );
					return FALSE;

				}

			}else
			{
				timeEndInter =g_tmCurrent;
				//判断连续技是否存在
				CWndTaskBar* pTaskBar = g_WndMng.m_pWndTaskBar;
				if(pTaskBar->m_aSlotQueue[ 0 ].IsEmpty())
				{
					if (g_pPlayer->IsAuthorization(AUTH_ADMINISTRATOR))
					{
						CWndButton* range = (CWndButton*)GetDlgItem( 300 );	
						if(range->GetCheck() && g_pPlayer->GetWeaponItem()->GetProp()->dwItemKind3 == IK3_BOW)
						{							
							if (F1->GetCheck())
							{
								LPSHORTCUT lpShortcut = &pTaskBar->m_paSlotItem[ 0 ] ;
								if (lpShortcut->IsEmpty() || lpShortcut->m_dwShortcut != SHORTCUT_SKILL)
								{
									g_pPlayer->CMD_SetRangeAttack(pMover->GetId(),4);
								}else
								{
									//LPSKILL pSkill = g_pPlayer->GetSkill(0,lpShortcut->m_dwIndex);
									//ItemProp* pSkillProp = prj.GetSkillProp( pSkill->dwSkill );
									if (g_pPlayer->GetReuseDelay( lpShortcut->m_dwId )<=0)
									{
										g_pPlayer->CMD_SetUseSkill( pMover->m_objid, lpShortcut->m_dwId );
									}else
									{
										g_pPlayer->CMD_SetRangeAttack(pMover->GetId(),4);
									}
									//g_WndMng.UseSkillShortCut(lpShortcut->m_dwType ,lpShortcut->m_dwIndex);

								}

								//g_WndMng.ObjectExecutor( lpShortcut );
							}else
								g_pPlayer->CMD_SetRangeAttack(pMover->GetId(),4);
						}
						else
						{
							if (F1->GetCheck())
							{
								LPSHORTCUT lpShortcut = &pTaskBar->m_paSlotItem[ 0 ] ;
								if (lpShortcut->IsEmpty() || lpShortcut->m_dwShortcut != SHORTCUT_SKILL)
								{
									((CWndWorld *)g_WndMng.m_pWndWorld)->m_bAutoAttack = TRUE;
								}else
								{
									//LPSKILL pSkill = g_pPlayer->GetSkill(0,lpShortcut->m_dwIndex);
									//ItemProp* pSkillProp = prj.GetSkillProp( pSkill->dwSkill );
									if (g_pPlayer->GetReuseDelay( lpShortcut->m_dwId )<=0)
									{
										g_pPlayer->CMD_SetUseSkill( pMover->m_objid, lpShortcut->m_dwId );
									}else
									{
										((CWndWorld *)g_WndMng.m_pWndWorld)->m_bAutoAttack = TRUE;
									}
									//g_WndMng.UseSkillShortCut(lpShortcut->m_dwType ,lpShortcut->m_dwIndex);

								}

								//g_WndMng.ObjectExecutor( lpShortcut );
							}else
								((CWndWorld *)g_WndMng.m_pWndWorld)->m_bAutoAttack = TRUE;
						}
					}else
					{
						if (F1->GetCheck())
						{
							LPSHORTCUT lpShortcut = &pTaskBar->m_paSlotItem[ 0 ] ;
							if (lpShortcut->IsEmpty() || lpShortcut->m_dwShortcut != SHORTCUT_SKILL)
							{
								((CWndWorld *)g_WndMng.m_pWndWorld)->m_bAutoAttack = TRUE;
							}else
							{
								if (g_pPlayer->GetReuseDelay( lpShortcut->m_dwId )<=0)
								{
									//g_pPlayer->CMD_SetUseSkill( pMover->m_objid, lpShortcut->m_dwId );
									g_WndMng.ObjectExecutor( lpShortcut );
								}
							}

						}else
							((CWndWorld *)g_WndMng.m_pWndWorld)->m_bAutoAttack = TRUE;
					}
				}else
					g_WndMng.m_pWndWorld->UseSkill();
			}

		}else
		{
			//寻怪之前判断辅助状态
			int j = 0;
			for (unsigned int i=0;i<Skill.size();i++)
			{
				LPSKILL pSkill = g_pPlayer->GetSkill(0,Skill[i]);
				ItemProp* pSkillProp = prj.GetSkillProp( pSkill->dwSkill );
				if (pSkillProp)
				{
					CWndButton* pButton = (CWndButton*)GetDlgItem(100+j);
					if (pButton->GetCheck() && !g_pPlayer->HasBuff(BUFF_SKILL,pSkillProp->dwID) &&
						g_pPlayer->GetReuseDelay( Skill[i] )<=0 && !g_pPlayer->HasBuff(BUFF_SKILL,SI_BLD_SUP_BERSERK)
						)
					{
						if( g_tmCurrent-m_CoolTime>2000)
						{
							g_pPlayer->CMD_SetUseSkill( g_pPlayer->m_objid, Skill[i] );
							m_CoolTime = g_tmCurrent;
							//使用技能后暂停2秒寻怪
							if (pSkillProp->dwID == SI_RIN_SUP_MERKABAHANZELRUSHA)
							{
								s_CoolTime = -1;
							}else if (s_CoolTime !=-1)
							{
								s_CoolTime = g_tmCurrent;
							}


							//CString str;
							//str.Format("发送技能:%s ID:%d time:%d",pSkillProp->szName,pSkillProp->dwID,s_CoolTime);
							//g_WndMng.PutString(str);
						}


						//g_DPlay.SendUseSkill(0,Skill[i],g_pPlayer->m_objid);
					}
					j++;
				}
			}
			if (s_CoolTime!=-1 && g_tmCurrent - s_CoolTime > 2000)
			{
				CObj* pObj;
				CCtrl *pSrc = g_pPlayer;
				D3DXVECTOR3 vPos = g_pPlayer->GetPos();
				BOOL	bApply;
				BOOL	lApply;
				FLOAT fRange =  20.0f; 
				FLOAT nRange = 20.0f;
				FLOAT nline = 20.0f;
				fDist = 0.0f;
				D3DXVECTOR3	vDist;
				pSelectNEW = NULL;
				//	if( nApplyType & (OBJTYPE_MONSTER | OBJTYPE_CTRL) )
				{
					FOR_LINKMAP( g_pPlayer->GetWorld(), vPos, pObj, (int)nRange, CObj::linkDynamic, GetLayer() )	// linkDynamic
					{
						D3DXVECTOR3 vStart = g_pPlayer->GetPos();			vStart.y += 0.5f;
						D3DXVECTOR3 vEnd   = pObj->GetPos();	vEnd.y += 0.5f;
						float ftemp;

						bApply = TRUE;
						lApply = TRUE;

						if( pObj->GetType() == OT_MOVER && g_pPlayer->GetWorld()->IntersectObjLine( NULL, vStart, vEnd, FALSE, FALSE ) == FALSE)				
						{

							CMover *pTarget = (CMover *)pObj;
							if(fanwei->GetCheck())//挂机范围选择
							{
								bApply = pTarget->IsRangeObj(vPos,fRange);
							}
							CWndButton* guishu = (CWndButton*)GetDlgItem(301);
							if (guishu->GetCheck() && pTarget->m_idAttacker != NULL_ID && pTarget->m_idAttacker != g_pPlayer->GetId())
							{			
								CMover *pTmp = prj.GetMover(pTarget->m_idAttacker);
								if (g_pPlayer->m_idparty && pTmp && pTmp->GetPartyId() == g_pPlayer->m_idparty)
								{

								}else
								{
									bApply = FALSE;
								}

							}

							//寻怪等级选择
							if(pTarget->GetLevel()>=MinLv && pTarget->GetLevel()<=MaxLv)
							{
								lApply = TRUE;
							}else
								lApply = FALSE;
							if( pTarget->GetHitPoint() > 0 && pTarget->IsPeaceful() == FALSE  && pTarget->GetProp()->dwClass != RANK_GUARD && bApply && lApply)		// 不是和平模式的NPC
							{

								vDist = vStart - vEnd;
								ftemp =  D3DXVec3LengthSq( &vDist );
								if(fDist > 0 )//找到更近的怪物
								{
									if( fDist > ftemp)
									{
										fDist = ftemp;
										pSelectNEW = (CMover *)pObj;
									}
								}else
								{
									fDist = ftemp;
									pSelectNEW = (CMover *)pObj;
								}
							}

						} 


					}
					END_LINKMAP

						if(pSelectNEW)
						{
							pWorld->SetObjFocus( pSelectNEW );
						}
				}

			}
		}

		////////////////////////以下使用物品和团技能///////////////////


		for (unsigned int i=0;i<BuffItem.size();i++)
		{
			CWndButton* pButton = (CWndButton*)GetDlgItem(200+i);
			DWORD dwId = g_pPlayer->m_Inventory.Find( BuffItem[i] );
			if (dwId!=NULL_ID && pButton->GetCheck())
			{
				switch (BuffItem[i])
				{
				case II_CHR_SYS_SCR_UPCUTSTONE:
					{
						if (!(g_pPlayer->IsSMMode( SM_ATTACK_UP1 ) || g_pPlayer->IsSMMode( SM_ATTACK_UP )))
						{
							CItemBase* pItemBase = g_pPlayer->GetItemId(dwId);
							g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, pItemBase->m_dwObjId ), NULL_ID );
						}

					}break;
				case II_SYS_SYS_SCR_VELOCIJUMP:
					{
						if (!(g_pPlayer->IsSMMode( SM_VELOCIJUMP )))
						{
							CItemBase* pItemBase = g_pPlayer->GetItemId(dwId);
							g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, pItemBase->m_dwObjId ), NULL_ID );
						}
					}break;
				case II_CHR_SYS_SCR_ACTIVITION:
					{
						if (!(g_pPlayer->IsSMMode( SM_ACTPOINT )))
						{
							CItemBase* pItemBase = g_pPlayer->GetItemId(dwId);
							g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, pItemBase->m_dwObjId ), NULL_ID );
						}
					}break;
				//case II_GEN_FOO_INS_STARCANDYA:
				//case II_GEN_FOO_INS_STARCANDYB:
				//case II_GEN_FOO_INS_STARCANDYC:
				//	{
				//		if (!(g_pPlayer->HasBuff(BUFF_ITEM3, BuffItem[i])))
				//		{
				//			CItemBase* pItemBase = g_pPlayer->GetItemId(dwId);
				//			g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, pItemBase->m_dwObjId ), NULL_ID );
				//		}
				//	}break;

				default:if (!g_pPlayer->HasBuff(BUFF_ITEM,BuffItem[i]))
						{
							CItemBase* pItemBase = g_pPlayer->GetItemId(dwId);
							g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, pItemBase->m_dwObjId ), NULL_ID );
						}break;
				}

			}
		}
		if (g_Party.GetSizeofMember()>0 && g_Party.IsLeader(g_pPlayer->m_idPlayer) && g_Party.m_nKindTroup == 1)
		{
			for (int i=0;i<2;i++)
			{
				CWndButton* pButton = (CWndButton*)GetDlgItem(400+i);
				if (pButton->GetCheck())
				{
					ItemProp* pItemProp =  prj.GetPartySkill( partySkill[i]);
					if (pItemProp)
					{
						if ((g_Party.GetLevel() - pItemProp->dwReqDisLV)>=0 && int(g_Party.GetPoint() - pItemProp->dwExp) >= 0)
						{
							DWORD	dwSkillTimeTmp = 0;
							CWndWorld *pWndWorld = (CWndWorld *)g_WndMng.m_pWndWorld;

							for( MAPBUFF::iterator t = pWndWorld->m_buffs.m_mapBuffs.begin(); t!= pWndWorld->m_buffs.m_mapBuffs.end(); ++t )
							{
								IBuff* ptr	= t->second;
								if( ptr->GetId() == partySkill[i] )	
									dwSkillTimeTmp = ptr->GetTotal();
							}

							if( dwSkillTimeTmp == 0)
							{
								g_DPlay.SendPartySkillUse( partySkill[i] );
							}
						}
					}

				}

			}
		}
	}
	return TRUE;
}


BOOL CWndRefresher::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
{
	switch (nID)
	{
	case WIDC_BUTTON_REFRESH_START:// Start Refreshing
		{ 
			bStart = TRUE;
			CWndButton* pButton2 = (CWndButton*)GetDlgItem(WIDC_BUTTON_REFRESH_STOP);
			pButton2->EnableWindow(TRUE);
			CWndButton* pButton1 = (CWndButton*)GetDlgItem(WIDC_BUTTON_REFRESH_START);
			pButton1->EnableWindow(FALSE);
			Move(-500.-500);
			break;
		}
	case WIDC_BUTTON_REFRESH_STOP:// Stop Refreshing
		{
			bStart = FALSE;
			CWndButton* pButton2 = (CWndButton*)GetDlgItem(WIDC_BUTTON_REFRESH_STOP);
			pButton2->EnableWindow(FALSE);
			CWndButton* pButton1 = (CWndButton*)GetDlgItem(WIDC_BUTTON_REFRESH_START);
			pButton1->EnableWindow(TRUE);

			break;
		}
	case WIDC_COMBOBOX1:
		{
			CWndComboBox* pCombo = (CWndComboBox*)GetDlgItem(WIDC_COMBOBOX1);
			if (pCombo->GetCurSel() !=-1)
			{
				m_dwitemid[1] = pCombo->GetItemData(pCombo->GetCurSel());
			}

			break;
		}
	case WIDC_COMBOBOX2:
		{
			CWndComboBox* pCombo = (CWndComboBox*)GetDlgItem(WIDC_COMBOBOX2);
			if (pCombo->GetCurSel() !=-1)
			{
				m_dwitemid[2] = pCombo->GetItemData(pCombo->GetCurSel());
			}

			break;
		}
	case WIDC_COMBOBOX:
		{
			CWndComboBox* pCombo = (CWndComboBox*)GetDlgItem(WIDC_COMBOBOX);
			if (pCombo->GetCurSel() !=-1)
			{
				m_dwitemid[0] = pCombo->GetItemData(pCombo->GetCurSel());
			}

			break;
		}

	//case WIDC_BUTTON:
	//	{


	//		break;
	//	}
	case WIDC_RADIO:
		{
			CWndButton* pButton = (CWndButton*)GetDlgItem(WIDC_RADIO);
			pButton->SetCheck(TRUE);
			pButton = (CWndButton*)GetDlgItem(WIDC_RADIO1);
			pButton->SetCheck(FALSE);
			break;
		}
	case WIDC_RADIO1:
		{
			CWndButton* pButton = (CWndButton*)GetDlgItem(WIDC_RADIO1);
			pButton->SetCheck(TRUE);
			pButton = (CWndButton*)GetDlgItem(WIDC_RADIO);
			pButton->SetCheck(FALSE);
			break;
		}
	}
	return CWndNeuz::OnChildNotify( message, nID, pLResult );
}


#endif
brunoi123 is offline  
Old 04/20/2020, 23:38   #2
 
cookie69's Avatar
 
elite*gold: 0
Join Date: Nov 2009
Posts: 627
Received Thanks: 688
Quote:
Originally Posted by brunoi123 View Post
I am adding an auto attack system and I have a problem, could someone help me?

SYSTEM:


PRINT ERROR:


LINE ERROR:
Code:
							for( MAPBUFF::iterator t = pWndWorld->m_buffs.m_mapBuffs.begin(); t!= pWndWorld->m_buffs.m_mapBuffs.end(); ++t )

WndField.cpp
Code:
#ifdef __NEW_NEIGUA
int partySkill[]={6,8};
CWndRefresher::CWndRefresher() 
{
	m_dwsfxtime = -1;
	bStart = FALSE;
	for( int i = 0; i < 4; i++ )
	{
		m_pItemElem[i] = NULL;
		m_pTexture[i] = NULL;
		m_dwitemid[i] = NULL;

	}    

}
CWndRefresher::~CWndRefresher() 
{

} 


BOOL CWndRefresher::Initialize( CWndBase* pWndParent, DWORD dwType )
{
	return CWndNeuz::InitDialog( g_Neuz.GetSafeHwnd(), APP_REFRESHER, 0, CPoint( 0, 0 ), pWndParent );
}


BOOL CWndRefresher::OnCommand( UINT nID, DWORD dwMessage, CWndBase* pWndBase ) 
{ 
	return CWndNeuz::OnCommand( nID, dwMessage, pWndBase ); 
} 
void CWndRefresher::OnSize( UINT nType, int cx, int cy ) 
{ 
	CWndNeuz::OnSize( nType, cx, cy ); 
} 
void CWndRefresher::OnLButtonUp( UINT nFlags, CPoint point ) 
{ 
} 
void CWndRefresher::OnLButtonDown( UINT nFlags, CPoint point ) 
{ 
} 
void CWndRefresher::OnDraw( C2DRender* p2DRender )
{
	//if (bStart)
	//{
	//	CString str;
	//	str.Format("杀怪:%d",g_pPlayer->n_KillNumber);
	//	p2DRender->TextOut(16,164,1,1,str,0xffff0000);
	//}
	int j = 0;
	for (unsigned int i=0;i<Skill.size();i++)
	{
		LPSKILL lpSkill;
		lpSkill = g_pPlayer->GetSkill(0,Skill[i]);
		ItemProp* pSkillProp = prj.GetSkillProp( lpSkill->dwSkill );
		if (pSkillProp)
		{
			CTexture *pIcon = NULL;
			pIcon =m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, MakePath( DIR_ICON, pSkillProp->szIcon ), 0xffff00ff );
			pIcon->Render(p2DRender,CPoint(m_rect[j].left+11,m_rect[j].top+1),255);
			j++;
		}
	}
	for (unsigned int i=0;i<BuffItem.size();i++)
	{
		ItemProp* pItemProp = prj.GetItemProp(BuffItem[i]);
		if (pItemProp)
		{
			CTexture *pIcon = NULL;
			pIcon =m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, MakePath( DIR_ITEM, pItemProp->szIcon ), 0xffff00ff );
			pIcon->Render(p2DRender,CPoint(m_rect[j].left+11,m_rect[j].top+1),255);
			j++;
		}
	}
	//剧团
	for (int i=0;i< 2;i++)
	{
		ItemProp* pItemProp =  prj.GetPartySkill( partySkill[i] );

		if( pItemProp ) 
		{
			CTexture *pIcon = NULL;
			pIcon =m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, MakePath( DIR_ICON, pItemProp->szIcon), 0xffff00ff, FALSE );
			pIcon->Render(p2DRender,CPoint(m_rect[j].left+11,m_rect[j].top+1),255);
			j++;
		}
		if( g_Party.m_nSizeofMember != 0 && g_Party.IsLeader( g_pPlayer->m_idPlayer ))
		{
			if(g_Party.GetLevel() - pItemProp->dwReqDisLV>=0 )
			{
				CWndButton* pButtn1 = (CWndButton*)GetDlgItem(400+i);
				pButtn1->EnableWindow(TRUE);
			}

		}else
		{
			CWndButton* pButtn1 = (CWndButton*)GetDlgItem(400+i);
			pButtn1->SetCheck(FALSE);
			pButtn1->EnableWindow(FALSE);

		}
	}


}
HRESULT CWndRefresher::RestoreDeviceObjects()
{
	CWndNeuz::RestoreDeviceObjects();
	return S_OK;
}
HRESULT CWndRefresher::InvalidateDeviceObjects()
{
	CWndNeuz::InvalidateDeviceObjects();
	return S_OK;
}
HRESULT CWndRefresher::DeleteDeviceObjects()
{
	CWndNeuz::DeleteDeviceObjects();
	InvalidateDeviceObjects();
	return S_OK;
}
void CWndRefresher::OnInitialUpdate( void )
{
	CWndNeuz::OnInitialUpdate(); 

	CWndButton* pButton = (CWndButton*)GetDlgItem(WIDC_BUTTON_REFRESH_START);
	CWndButton* pButton2 = (CWndButton*)GetDlgItem(WIDC_BUTTON_REFRESH_STOP);
	// pButton->EnableWindow(FALSE);
	pButton2->EnableWindow(FALSE);

	///////////////插入药品////////////////////
	CWndComboBox* pCombo = (CWndComboBox*)GetDlgItem(WIDC_COMBOBOX);
	CWndComboBox* pCombo1 = (CWndComboBox*)GetDlgItem(WIDC_COMBOBOX1);
	CWndComboBox* pCombo2 = (CWndComboBox*)GetDlgItem(WIDC_COMBOBOX2);
	int nIndex = -1;
	CString str;
	pCombo->ResetContent();
	nIndex = pCombo->AddString("select Hp");
	pCombo->SetItemData( nIndex, 0);
	pCombo->SetCurSel(nIndex);
	pCombo1->ResetContent();
	nIndex = pCombo1->AddString("select Mp");
	pCombo1->SetItemData( nIndex, 0);
	pCombo1->SetCurSel(nIndex);
	pCombo2->ResetContent();
	nIndex = pCombo2->AddString("select Fp");
	pCombo2->SetItemData( nIndex, 0);
	pCombo2->SetCurSel(nIndex);
	for(int i=0;i<MAX_INVENTORY;i++)
	{
		CItemElem* pItemElem = (CItemElem*)g_pPlayer->m_Inventory.GetAt(i);
		if (!pItemElem)
			continue;
		ItemProp* pItemProp = pItemElem->GetProp();
		if (!pItemProp)
			continue;
		if (pItemProp->dwItemKind2 != IK2_FOOD && pItemProp->dwItemKind2 !=IK2_REFRESHER && pItemProp->dwItemKind2 !=IK2_POTION	)
			continue;
		BOOL bCunZai = FALSE;
		if (pItemProp->dwDestParam[0] == DST_HP)
		{
			for (int i=0;i<pCombo->GetListBoxSize();i++)
			{
				if (pCombo->GetItemData(i) == pItemProp->dwID)
				{
					bCunZai = TRUE;
					break;
				}
			}
			if (bCunZai == FALSE)
			{
				str.Format("%s",pItemProp->szName);
				nIndex = pCombo->AddString(str);
				pCombo->SetItemData( nIndex, pItemProp->dwID);
				pCombo->SetCurSel(nIndex);
				m_dwitemid[0] = pItemProp->dwID;
			}

		}else if (pItemProp->dwDestParam[0] == DST_MP)
		{
			for (int i=0;i<pCombo1->GetListBoxSize();i++)
			{
				if (pCombo1->GetItemData(i) == pItemProp->dwID)
				{
					bCunZai = TRUE;
					break;
				}
			}
			if (bCunZai == FALSE)
			{
				str.Format("%s",pItemProp->szName);
				nIndex = pCombo1->AddString(str);
				pCombo1->SetItemData( nIndex, pItemProp->dwID);
				pCombo1->SetCurSel(nIndex);
				m_dwitemid[1] = pItemProp->dwID;
			}
		}else if (pItemProp->dwDestParam[0] == DST_FP)
		{
			for (int i=0;i<pCombo2->GetListBoxSize();i++)
			{
				if (pCombo2->GetItemData(i) == pItemProp->dwID)
				{
					bCunZai = TRUE;
					break;
				}
			}
			if (bCunZai == FALSE)
			{
				str.Format("%s",pItemProp->szName);
				nIndex = pCombo2->AddString(str);
				pCombo2->SetItemData( nIndex, pItemProp->dwID);
				pCombo2->SetCurSel(nIndex);
				m_dwitemid[2] = pItemProp->dwID;
			}
		}
	}





	///////////////////////////////////////////////////////////////////////
	CWndButton* pWndButton;
	pWndButton = (CWndButton*)GetDlgItem( WIDC_RADIO );
	pWndButton->SetCheck( FALSE );
	pWndButton = (CWndButton*)GetDlgItem( WIDC_RADIO1 );
	pWndButton->SetCheck( TRUE );//默认选择无限范围

	CWndEdit* LVmin = (CWndEdit*)GetDlgItem( WIDC_EDIT );
	CWndEdit* LVmax = (CWndEdit*)GetDlgItem( WIDC_EDIT1 );
	LVmin->SetString("1");
	LVmax->SetString("999");
	///////////////////////////////////////////////////////////////////////////////////////////
	if (g_pPlayer->IsAuthorization(AUTH_ADMINISTRATOR))
	{
		CWndButton* pWndButtonRang =  new CWndButton;
		pWndButtonRang->Create("bow double hit",WBS_CHECK,CRect(75,145,145,161),this,300);
	}
	////////////////////////////////////////////////////////////////////////////////////////////
	CWndButton* pWndButtonRang =  new CWndButton;
	pWndButtonRang->Create("check ascription",WBS_CHECK,CRect(5,145,75,161),this,301);



	CPoint pt;
	int index = 0;
	//CWndButton* pWndButtonSkill =  new CWndButton;
	for( int x=0; x<10; x++ )//技能框
	{
		for( int y=0; y<6; y++ )
		{
			pt = CPoint( x+155, y+8 );

			pt.x += (x*42);
			pt.y += (y*32);

			SetRect( m_rect[index], pt.x, pt.y, pt.x+32, pt.y+32 );
			index++;
		}
	}
	index = 0;
	Skill.clear();
	for( int i = 0; i < MAX_SKILL_JOB; i++ ) 
	{
		LPSKILL lpSkill;
		lpSkill = &g_pPlayer->m_aJobSkill[i];

		if( lpSkill->dwSkill != NULL_ID && lpSkill->dwLevel>0)
		{
			ItemProp* pSkillProp = prj.m_aPropSkill.GetAt( lpSkill->dwSkill );
			if( pSkillProp && pSkillProp->nEvildoing == 1 && pSkillProp->dwReferValue1>0)
			{
				CWndButton* pWndButtonSkill =  new CWndButton;
				Skill.push_back(i);
				pWndButtonSkill->Create("",WBS_CHECK,m_rect[index],this,100+index);
				index++;
			}else if (pSkillProp && pSkillProp->dwID == SI_RIN_SUP_MERKABAHANZELRUSHA)
			{
				CWndButton* pWndButtonSkill =  new CWndButton;
				Skill.push_back(i);
				pWndButtonSkill->Create("",WBS_CHECK,m_rect[index],this,100+index);
				index++;
			}
		}

	}

	BuffItem.clear();
	int index2 = 0;
	for(int i=0;i<MAX_INVENTORY;i++)
	{
		CItemElem* pItemElem = (CItemElem*)g_pPlayer->m_Inventory.GetAt(i);
		if (pItemElem && IsBuffItem(pItemElem->m_dwItemId))
		{
			BuffItem.push_back(pItemElem->m_dwItemId);
			CWndButton* pWndButtonSkill =  new CWndButton;
			pWndButtonSkill->Create("",WBS_CHECK,m_rect[index+index2],this,200+index2);
			index2++;
		}
	}
	//剧团技能
	for (int i=0;i<2;i++)
	{
		CWndButton* pWndButtonSkill =  new CWndButton;
		pWndButtonSkill->Create("",WBS_CHECK,m_rect[index+index2+i],this,400+i);
		pWndButtonSkill->EnableWindow(FALSE);
	}

	CWndButton* pWndButtonF1 =  new CWndButton;
	pWndButtonF1->Create("F1",WBS_CHECK,m_rect[index+index2+2],this,500);
	//pWndButtonF1->EnableWindow(FALSE);
	int n = (index+index2 +2)%6==0?0:1;
	SetWndRect(CRect(5,5,176+int((index+index2+2)/6+n)*42,240));



	MoveParentCenter(); 
}
BOOL CWndRefresher::IsBuffItem(DWORD itemId)
{
	switch(itemId)
	{
	case II_CHR_SYS_SCR_UPCUTSTONE:
	case II_SYS_SYS_SCR_AMPES:
	case II_SYS_SYS_SCR_ICEATKSPEED:
	case II_SYS_SYS_SCR_VELOCIJUMP:
	case II_CHR_SYS_SCR_ACTIVITION:
	case II_SYS_SYS_SCR_AMPESC:
	//case II_GEN_FOO_INS_STARCANDYA:
	//case II_GEN_FOO_INS_STARCANDYB:
	//case II_GEN_FOO_INS_STARCANDYC:
	case II_SYS_SYS_SCR_AMPESS:
		return TRUE;
		break;
	default:
		return FALSE;
		break;

	}
}
BOOL CWndRefresher::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
{
	//LPWNDCTRL wndCtrl[4];
	//wndCtrl[0] = GetWndCtrl( WIDC_CUSTOM7 );
	//wndCtrl[1] = GetWndCtrl( WIDC_CUSTOM1 );
	//wndCtrl[2] = GetWndCtrl( WIDC_CUSTOM2 ); 
	//wndCtrl[3] = GetWndCtrl( WIDC_CUSTOM8); 
	//for( int i = 0; i < 4; i++ )
	//{
	//	if( !wndCtrl[i] )
	//	{
	//		continue;
	//	}
	//	if( wndCtrl[i]->rect.PtInRect( point ))
	//	{

	//		CItemElem* pTempElem;
	//		CItemBase* pItemBase = g_pPlayer->GetItemId( pShortcut->m_dwId );
	//		pTempElem = (CItemElem*) pItemBase;
	//		ItemProp* pItemProp = pTempElem->GetProp();


	//		if( pItemProp->dwItemKind2 == IK2_FOOD || pItemProp->dwItemKind2 == IK2_POTION || pItemProp->dwItemKind2 == IK2_REFRESHER || pItemProp->dwUseable == 1)
	//		{
	//			if( m_pItemElem[i])
	//			{
	//				m_pItemElem[i]->SetExtra(0);
	//				m_pItemElem[i] = NULL;
	//				m_dwitemid[i]=NULL;
	//			}
	//			m_pItemElem[i] = (CItemElem*)pTempElem;
	//			m_pTexture[i] = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem[i]->GetProp()->szIcon ), 0xffff00ff );
	//			if( m_pTexture[i])
	//			{
	//				m_dwitemid[i]=m_pItemElem[i]->m_dwItemId;
	//			//	m_pItemElem[i]->SetExtra(1);
	//			}
	//		}else{
	//			return FALSE;
	//		}

	//	}
	//}
	return TRUE;
}
DWORD timeEndInter = 0;
DWORD s_CoolTime=0;
DWORD nPowtime =0;
BOOL CWndRefresher::Process()
{
	if (g_pPlayer->GetHitPoint() == 0)
	{
		return FALSE;
	}
	////////////////吃药////////////////////////////
	CWndButton* hp = (CWndButton*)GetDlgItem(WIDC_HP);
	CWndButton* mp = (CWndButton*)GetDlgItem(WIDC_MP);
	CWndButton* fp = (CWndButton*)GetDlgItem(WIDC_FP);
	//for( int i = 0; i < 3; ++i )
	{
		DWORD dwId = g_pPlayer->m_Inventory.Find( m_dwitemid[0] );
		if( bStart && dwId != NULL_ID && hp->GetCheck()  )
		{
			CItemBase* pItemBase = g_pPlayer->GetItemId(dwId);

			if(pItemBase &&(((FLOAT)g_pPlayer->GetMaxHitPoint() / g_pPlayer->GetHitPoint() ) > 2.0F || pItemBase->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint())  )
			{

				if( g_pPlayer->m_cooltimeMgr.CanUse( g_pPlayer->m_cooltimeMgr.GetGroup(pItemBase->GetProp() )))
				{
					g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, pItemBase->m_dwObjId ), NULL_ID, pItemBase->GetProp()->dwParts );
				}
			}
		}
		dwId = g_pPlayer->m_Inventory.Find( m_dwitemid[1] );
		if( bStart && dwId != NULL_ID && mp->GetCheck() )
		{
			CItemBase* pItemBase = g_pPlayer->GetItemId(dwId);
			//if( ((FLOAT)g_pPlayer->GetMaxManaPoint() / g_pPlayer->GetManaPoint() ) > 2.0F || m_pItemElem[1]->GetProp()->nAdjParamVal1 + g_pPlayer->GetManaPoint() <= g_pPlayer->GetMaxManaPoint() )
			if( pItemBase && g_pPlayer->GetManaPoint()  < 500 && g_pPlayer->GetManaPoint() < g_pPlayer->GetMaxManaPoint())
			{

				if( g_tmCurrent-m_CoolTime>2000)
				{
					g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, pItemBase->m_dwObjId ), NULL_ID, pItemBase->GetProp()->dwParts );
					m_CoolTime = g_tmCurrent;

				}
			}
		}
		dwId = g_pPlayer->m_Inventory.Find( m_dwitemid[2] );
		if( bStart && dwId != NULL_ID && fp->GetCheck() )
		{
			CItemBase* pItemBase = g_pPlayer->GetItemId(dwId);
			//if( ((FLOAT)g_pPlayer->GetMaxFatiguePoint() / g_pPlayer->GetFatiguePoint() ) > 2.0F || m_pItemElem[2]->GetProp()->nAdjParamVal1 + g_pPlayer->GetFatiguePoint() <= g_pPlayer->GetMaxFatiguePoint() )
			if(pItemBase &&  g_pPlayer->GetFatiguePoint() < 200 && g_pPlayer->GetFatiguePoint() < g_pPlayer->GetMaxFatiguePoint())
			{
				if( g_tmCurrent-m_CoolTime>2000)
				{
					g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, pItemBase->m_dwObjId ), NULL_ID, pItemBase->GetProp()->dwParts );
					m_CoolTime = g_tmCurrent;

				}
			}
		}
		//dwId = g_pPlayer->m_Inventory.Find( m_dwitemid[3] );
		//if( bStart && dwId != NULL_ID && Ex->GetCheck() )
		//{
		//	CItemBase* pItemBase = g_pPlayer->GetItemId(dwId);
		//	if(pItemBase && !g_pPlayer->HasBuff( BUFF_ITEM, pItemBase->m_dwItemId ))
		//	{
		//		if( g_tmCurrent-m_CoolTime>2000)
		//		{
		//			g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, pItemBase->m_dwObjId ), NULL_ID, pItemBase->GetProp()->dwParts );
		//			m_CoolTime = g_tmCurrent;
		//		}
		//	}

		//}


	}
	////////////////////////////以下是自动打怪//////////////////////////
	if (g_pPlayer->IsFly())
	{
		return FALSE;
	}


	CWndButton*	fanwei = (CWndButton*)GetDlgItem( WIDC_RADIO );
	CWndButton* dafanwei = (CWndButton*)GetDlgItem( WIDC_RADIO1 );
	//取得怪物等级范围
	CWndEdit* LVmin = (CWndEdit*)GetDlgItem( WIDC_EDIT );
	CWndEdit* LVmax = (CWndEdit*)GetDlgItem( WIDC_EDIT1 );
	CWndButton* F1 = (CWndButton*)GetDlgItem(500);
	int MinLv = _ttoi( LVmin->GetString() );
	int MaxLv = _ttoi( LVmax->GetString() );
	if(MinLv>999 || MinLv<1 || MaxLv > 999 || MaxLv< 1)
	{
		return FALSE;
	}
	if (bStart)
	{
		//if(fanwei->GetCheck())
	//		CreateSfx(g_Neuz.m_pd3dDevice,XI_NEIGUA,g_pPlayer->GetPos(),g_pPlayer->GetId());
		CWorld* pWorld = g_WorldMng.Get();
		float fDist;
		CObj* pSelectOld = pWorld->GetObjFocus();
		CObj* pSelectNEW = NULL;
		CMover* pMover = (CMover*)pSelectOld;
		if(pSelectOld&&pSelectOld->GetType()!=OT_MOVER)
		{
			return FALSE;
			//bStart=false;
			//CWndButton* pButton1 = (CWndButton*)GetDlgItem(WIDC_BUTTON_REFRESH_START);
			//pButton1->EnableWindow(TRUE);
		}
		if (pMover && pMover->GetHitPoint() > 0)
		{

			CWndButton* guishu = (CWndButton*)GetDlgItem(301);//判断归属
			if (guishu->GetCheck() && pMover->m_idAttacker != NULL_ID && pMover->m_idAttacker != g_pPlayer->GetId() )
			{
				CMover *pTmp = prj.GetMover(pMover->m_idAttacker);
				if (g_pPlayer->m_idparty>0 && pTmp && pTmp->GetPartyId() == g_pPlayer->m_idparty)
				{

				}else
				{
					pWorld->SetObjFocus( NULL );
					return FALSE;
				}
			}
			D3DXVECTOR3 vStart = g_pPlayer->GetPos();			vStart.y += 0.5f;
			D3DXVECTOR3 vEnd   = pMover->GetPos();	vEnd.y += 0.5f;
			if (g_pPlayer->GetWorld()->IntersectObjLine( NULL, vStart, vEnd, FALSE, FALSE ))
			{
				if(g_tmCurrent - timeEndInter > SEC(5))
				{
					pWorld->SetObjFocus( NULL );
					return FALSE;

				}

			}else
			{
				timeEndInter =g_tmCurrent;
				//判断连续技是否存在
				CWndTaskBar* pTaskBar = g_WndMng.m_pWndTaskBar;
				if(pTaskBar->m_aSlotQueue[ 0 ].IsEmpty())
				{
					if (g_pPlayer->IsAuthorization(AUTH_ADMINISTRATOR))
					{
						CWndButton* range = (CWndButton*)GetDlgItem( 300 );	
						if(range->GetCheck() && g_pPlayer->GetWeaponItem()->GetProp()->dwItemKind3 == IK3_BOW)
						{							
							if (F1->GetCheck())
							{
								LPSHORTCUT lpShortcut = &pTaskBar->m_paSlotItem[ 0 ] ;
								if (lpShortcut->IsEmpty() || lpShortcut->m_dwShortcut != SHORTCUT_SKILL)
								{
									g_pPlayer->CMD_SetRangeAttack(pMover->GetId(),4);
								}else
								{
									//LPSKILL pSkill = g_pPlayer->GetSkill(0,lpShortcut->m_dwIndex);
									//ItemProp* pSkillProp = prj.GetSkillProp( pSkill->dwSkill );
									if (g_pPlayer->GetReuseDelay( lpShortcut->m_dwId )<=0)
									{
										g_pPlayer->CMD_SetUseSkill( pMover->m_objid, lpShortcut->m_dwId );
									}else
									{
										g_pPlayer->CMD_SetRangeAttack(pMover->GetId(),4);
									}
									//g_WndMng.UseSkillShortCut(lpShortcut->m_dwType ,lpShortcut->m_dwIndex);

								}

								//g_WndMng.ObjectExecutor( lpShortcut );
							}else
								g_pPlayer->CMD_SetRangeAttack(pMover->GetId(),4);
						}
						else
						{
							if (F1->GetCheck())
							{
								LPSHORTCUT lpShortcut = &pTaskBar->m_paSlotItem[ 0 ] ;
								if (lpShortcut->IsEmpty() || lpShortcut->m_dwShortcut != SHORTCUT_SKILL)
								{
									((CWndWorld *)g_WndMng.m_pWndWorld)->m_bAutoAttack = TRUE;
								}else
								{
									//LPSKILL pSkill = g_pPlayer->GetSkill(0,lpShortcut->m_dwIndex);
									//ItemProp* pSkillProp = prj.GetSkillProp( pSkill->dwSkill );
									if (g_pPlayer->GetReuseDelay( lpShortcut->m_dwId )<=0)
									{
										g_pPlayer->CMD_SetUseSkill( pMover->m_objid, lpShortcut->m_dwId );
									}else
									{
										((CWndWorld *)g_WndMng.m_pWndWorld)->m_bAutoAttack = TRUE;
									}
									//g_WndMng.UseSkillShortCut(lpShortcut->m_dwType ,lpShortcut->m_dwIndex);

								}

								//g_WndMng.ObjectExecutor( lpShortcut );
							}else
								((CWndWorld *)g_WndMng.m_pWndWorld)->m_bAutoAttack = TRUE;
						}
					}else
					{
						if (F1->GetCheck())
						{
							LPSHORTCUT lpShortcut = &pTaskBar->m_paSlotItem[ 0 ] ;
							if (lpShortcut->IsEmpty() || lpShortcut->m_dwShortcut != SHORTCUT_SKILL)
							{
								((CWndWorld *)g_WndMng.m_pWndWorld)->m_bAutoAttack = TRUE;
							}else
							{
								if (g_pPlayer->GetReuseDelay( lpShortcut->m_dwId )<=0)
								{
									//g_pPlayer->CMD_SetUseSkill( pMover->m_objid, lpShortcut->m_dwId );
									g_WndMng.ObjectExecutor( lpShortcut );
								}
							}

						}else
							((CWndWorld *)g_WndMng.m_pWndWorld)->m_bAutoAttack = TRUE;
					}
				}else
					g_WndMng.m_pWndWorld->UseSkill();
			}

		}else
		{
			//寻怪之前判断辅助状态
			int j = 0;
			for (unsigned int i=0;i<Skill.size();i++)
			{
				LPSKILL pSkill = g_pPlayer->GetSkill(0,Skill[i]);
				ItemProp* pSkillProp = prj.GetSkillProp( pSkill->dwSkill );
				if (pSkillProp)
				{
					CWndButton* pButton = (CWndButton*)GetDlgItem(100+j);
					if (pButton->GetCheck() && !g_pPlayer->HasBuff(BUFF_SKILL,pSkillProp->dwID) &&
						g_pPlayer->GetReuseDelay( Skill[i] )<=0 && !g_pPlayer->HasBuff(BUFF_SKILL,SI_BLD_SUP_BERSERK)
						)
					{
						if( g_tmCurrent-m_CoolTime>2000)
						{
							g_pPlayer->CMD_SetUseSkill( g_pPlayer->m_objid, Skill[i] );
							m_CoolTime = g_tmCurrent;
							//使用技能后暂停2秒寻怪
							if (pSkillProp->dwID == SI_RIN_SUP_MERKABAHANZELRUSHA)
							{
								s_CoolTime = -1;
							}else if (s_CoolTime !=-1)
							{
								s_CoolTime = g_tmCurrent;
							}


							//CString str;
							//str.Format("发送技能:%s ID:%d time:%d",pSkillProp->szName,pSkillProp->dwID,s_CoolTime);
							//g_WndMng.PutString(str);
						}


						//g_DPlay.SendUseSkill(0,Skill[i],g_pPlayer->m_objid);
					}
					j++;
				}
			}
			if (s_CoolTime!=-1 && g_tmCurrent - s_CoolTime > 2000)
			{
				CObj* pObj;
				CCtrl *pSrc = g_pPlayer;
				D3DXVECTOR3 vPos = g_pPlayer->GetPos();
				BOOL	bApply;
				BOOL	lApply;
				FLOAT fRange =  20.0f; 
				FLOAT nRange = 20.0f;
				FLOAT nline = 20.0f;
				fDist = 0.0f;
				D3DXVECTOR3	vDist;
				pSelectNEW = NULL;
				//	if( nApplyType & (OBJTYPE_MONSTER | OBJTYPE_CTRL) )
				{
					FOR_LINKMAP( g_pPlayer->GetWorld(), vPos, pObj, (int)nRange, CObj::linkDynamic, GetLayer() )	// linkDynamic
					{
						D3DXVECTOR3 vStart = g_pPlayer->GetPos();			vStart.y += 0.5f;
						D3DXVECTOR3 vEnd   = pObj->GetPos();	vEnd.y += 0.5f;
						float ftemp;

						bApply = TRUE;
						lApply = TRUE;

						if( pObj->GetType() == OT_MOVER && g_pPlayer->GetWorld()->IntersectObjLine( NULL, vStart, vEnd, FALSE, FALSE ) == FALSE)				
						{

							CMover *pTarget = (CMover *)pObj;
							if(fanwei->GetCheck())//挂机范围选择
							{
								bApply = pTarget->IsRangeObj(vPos,fRange);
							}
							CWndButton* guishu = (CWndButton*)GetDlgItem(301);
							if (guishu->GetCheck() && pTarget->m_idAttacker != NULL_ID && pTarget->m_idAttacker != g_pPlayer->GetId())
							{			
								CMover *pTmp = prj.GetMover(pTarget->m_idAttacker);
								if (g_pPlayer->m_idparty && pTmp && pTmp->GetPartyId() == g_pPlayer->m_idparty)
								{

								}else
								{
									bApply = FALSE;
								}

							}

							//寻怪等级选择
							if(pTarget->GetLevel()>=MinLv && pTarget->GetLevel()<=MaxLv)
							{
								lApply = TRUE;
							}else
								lApply = FALSE;
							if( pTarget->GetHitPoint() > 0 && pTarget->IsPeaceful() == FALSE  && pTarget->GetProp()->dwClass != RANK_GUARD && bApply && lApply)		// 不是和平模式的NPC
							{

								vDist = vStart - vEnd;
								ftemp =  D3DXVec3LengthSq( &vDist );
								if(fDist > 0 )//找到更近的怪物
								{
									if( fDist > ftemp)
									{
										fDist = ftemp;
										pSelectNEW = (CMover *)pObj;
									}
								}else
								{
									fDist = ftemp;
									pSelectNEW = (CMover *)pObj;
								}
							}

						} 


					}
					END_LINKMAP

						if(pSelectNEW)
						{
							pWorld->SetObjFocus( pSelectNEW );
						}
				}

			}
		}

		////////////////////////以下使用物品和团技能///////////////////


		for (unsigned int i=0;i<BuffItem.size();i++)
		{
			CWndButton* pButton = (CWndButton*)GetDlgItem(200+i);
			DWORD dwId = g_pPlayer->m_Inventory.Find( BuffItem[i] );
			if (dwId!=NULL_ID && pButton->GetCheck())
			{
				switch (BuffItem[i])
				{
				case II_CHR_SYS_SCR_UPCUTSTONE:
					{
						if (!(g_pPlayer->IsSMMode( SM_ATTACK_UP1 ) || g_pPlayer->IsSMMode( SM_ATTACK_UP )))
						{
							CItemBase* pItemBase = g_pPlayer->GetItemId(dwId);
							g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, pItemBase->m_dwObjId ), NULL_ID );
						}

					}break;
				case II_SYS_SYS_SCR_VELOCIJUMP:
					{
						if (!(g_pPlayer->IsSMMode( SM_VELOCIJUMP )))
						{
							CItemBase* pItemBase = g_pPlayer->GetItemId(dwId);
							g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, pItemBase->m_dwObjId ), NULL_ID );
						}
					}break;
				case II_CHR_SYS_SCR_ACTIVITION:
					{
						if (!(g_pPlayer->IsSMMode( SM_ACTPOINT )))
						{
							CItemBase* pItemBase = g_pPlayer->GetItemId(dwId);
							g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, pItemBase->m_dwObjId ), NULL_ID );
						}
					}break;
				//case II_GEN_FOO_INS_STARCANDYA:
				//case II_GEN_FOO_INS_STARCANDYB:
				//case II_GEN_FOO_INS_STARCANDYC:
				//	{
				//		if (!(g_pPlayer->HasBuff(BUFF_ITEM3, BuffItem[i])))
				//		{
				//			CItemBase* pItemBase = g_pPlayer->GetItemId(dwId);
				//			g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, pItemBase->m_dwObjId ), NULL_ID );
				//		}
				//	}break;

				default:if (!g_pPlayer->HasBuff(BUFF_ITEM,BuffItem[i]))
						{
							CItemBase* pItemBase = g_pPlayer->GetItemId(dwId);
							g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, pItemBase->m_dwObjId ), NULL_ID );
						}break;
				}

			}
		}
		if (g_Party.GetSizeofMember()>0 && g_Party.IsLeader(g_pPlayer->m_idPlayer) && g_Party.m_nKindTroup == 1)
		{
			for (int i=0;i<2;i++)
			{
				CWndButton* pButton = (CWndButton*)GetDlgItem(400+i);
				if (pButton->GetCheck())
				{
					ItemProp* pItemProp =  prj.GetPartySkill( partySkill[i]);
					if (pItemProp)
					{
						if ((g_Party.GetLevel() - pItemProp->dwReqDisLV)>=0 && int(g_Party.GetPoint() - pItemProp->dwExp) >= 0)
						{
							DWORD	dwSkillTimeTmp = 0;
							CWndWorld *pWndWorld = (CWndWorld *)g_WndMng.m_pWndWorld;

							for( MAPBUFF::iterator t = pWndWorld->m_buffs.m_mapBuffs.begin(); t!= pWndWorld->m_buffs.m_mapBuffs.end(); ++t )
							{
								IBuff* ptr	= t->second;
								if( ptr->GetId() == partySkill[i] )	
									dwSkillTimeTmp = ptr->GetTotal();
							}

							if( dwSkillTimeTmp == 0)
							{
								g_DPlay.SendPartySkillUse( partySkill[i] );
							}
						}
					}

				}

			}
		}
	}
	return TRUE;
}


BOOL CWndRefresher::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
{
	switch (nID)
	{
	case WIDC_BUTTON_REFRESH_START:// Start Refreshing
		{ 
			bStart = TRUE;
			CWndButton* pButton2 = (CWndButton*)GetDlgItem(WIDC_BUTTON_REFRESH_STOP);
			pButton2->EnableWindow(TRUE);
			CWndButton* pButton1 = (CWndButton*)GetDlgItem(WIDC_BUTTON_REFRESH_START);
			pButton1->EnableWindow(FALSE);
			Move(-500.-500);
			break;
		}
	case WIDC_BUTTON_REFRESH_STOP:// Stop Refreshing
		{
			bStart = FALSE;
			CWndButton* pButton2 = (CWndButton*)GetDlgItem(WIDC_BUTTON_REFRESH_STOP);
			pButton2->EnableWindow(FALSE);
			CWndButton* pButton1 = (CWndButton*)GetDlgItem(WIDC_BUTTON_REFRESH_START);
			pButton1->EnableWindow(TRUE);

			break;
		}
	case WIDC_COMBOBOX1:
		{
			CWndComboBox* pCombo = (CWndComboBox*)GetDlgItem(WIDC_COMBOBOX1);
			if (pCombo->GetCurSel() !=-1)
			{
				m_dwitemid[1] = pCombo->GetItemData(pCombo->GetCurSel());
			}

			break;
		}
	case WIDC_COMBOBOX2:
		{
			CWndComboBox* pCombo = (CWndComboBox*)GetDlgItem(WIDC_COMBOBOX2);
			if (pCombo->GetCurSel() !=-1)
			{
				m_dwitemid[2] = pCombo->GetItemData(pCombo->GetCurSel());
			}

			break;
		}
	case WIDC_COMBOBOX:
		{
			CWndComboBox* pCombo = (CWndComboBox*)GetDlgItem(WIDC_COMBOBOX);
			if (pCombo->GetCurSel() !=-1)
			{
				m_dwitemid[0] = pCombo->GetItemData(pCombo->GetCurSel());
			}

			break;
		}

	//case WIDC_BUTTON:
	//	{


	//		break;
	//	}
	case WIDC_RADIO:
		{
			CWndButton* pButton = (CWndButton*)GetDlgItem(WIDC_RADIO);
			pButton->SetCheck(TRUE);
			pButton = (CWndButton*)GetDlgItem(WIDC_RADIO1);
			pButton->SetCheck(FALSE);
			break;
		}
	case WIDC_RADIO1:
		{
			CWndButton* pButton = (CWndButton*)GetDlgItem(WIDC_RADIO1);
			pButton->SetCheck(TRUE);
			pButton = (CWndButton*)GetDlgItem(WIDC_RADIO);
			pButton->SetCheck(FALSE);
			break;
		}
	}
	return CWndNeuz::OnChildNotify( message, nID, pLResult );
}


#endif
Is your life public or private? If you want people to know everything about your life then make it public. Or just do it the right way, make it protected for your relatives and only share it with those you choose.
cookie69 is offline  
Thanks
2 Users
Old 04/20/2020, 23:56   #3
 
elite*gold: 0
Join Date: Jan 2012
Posts: 34
Received Thanks: 0
@ ?
brunoi123 is offline  
Old 04/21/2020, 04:13   #4
 
xToffer's Avatar
 
elite*gold: 0
Join Date: Apr 2018
Posts: 139
Received Thanks: 18
He gave you the solution to your problem lol.
xToffer is offline  
Thanks
1 User
Old 04/22/2020, 15:52   #5

 
elite*gold: 28
Join Date: Feb 2010
Posts: 463
Received Thanks: 277
Quote:
Originally Posted by brunoi123 View Post
@ ?
Class "CBuffMgr" is "private", the error ask you to change it as "public" so your ****** code can work...
ZeroTwo02 is offline  
Old 04/29/2020, 22:42   #6
ベトナム警察




 
Lumi's Avatar
 
elite*gold: 0
The Black Market: 517/0/0
Join Date: Jan 2012
Posts: 16,498
Received Thanks: 3,526
Arrow Flyff -> Flyff Private Ser…

#moved
Lumi is offline  
Old 04/30/2020, 06:12   #7
 
Hyellow's Avatar
 
elite*gold: 0
Join Date: Feb 2020
Posts: 64
Received Thanks: 23
Quote:
Originally Posted by cookie69 View Post
Is your life public or private? If you want people to know everything about your life then make it public. Or just do it the right way, make it protected for your relatives and only share it with those you choose.
You nailed it
Hyellow is offline  
Thanks
1 User
Reply


Similar Threads Similar Threads
plesa all Help For Attack Fire is Attack fire for 300 help for atack
08/07/2011 - CO2 Private Server - 0 Replies
plase help attck its for soruce Kimo 5375 no Tails
ExBot English v1.4 Auto Attack/Auto Pot/Attack Hack/Speed Hack/Last Npc Open..[MAYN]
04/03/2010 - 12Sky2 Hacks, Bots, Cheats & Exploits - 24 Replies
Hi This Version v1.4 New Special Feature add :mofo: Now Download and Read Me Please Read later open bot. Property: Auto attack (cave fast) Auto pot Auto loot Last npc open (gate)
eXBot 1.1 English Version (Auto Attack,Last Npc Open,Attack s. Hack,Auto Pot...)MAYN
08/05/2009 - 12Sky2 Hacks, Bots, Cheats & Exploits - 29 Replies
Hi I make for twelvesky2 turkish version and now english version :mofo: : Botun özellikleri: Auto attack Auto pot Auto loot Last npc open Speed hack Attack Hack



All times are GMT +1. The time now is 16:15.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.