Example #1
0
void CUIMpTradeWnd::OnBtnRifleSilencerClicked(CUIWindow* w, void* d)
{
	CheckDragItemToDestroy				();
	CUIDragDropListEx*	res			= m_list[e_rifle];
	CUICellItem* ci					= (res->ItemsCount())?res->GetItemIdx(0):NULL;
	if(!ci)	
		return;

	SBuyItemInfo* pitem				= FindItem(ci);
	if(IsAddonAttached(pitem, at_silencer))
	{//detach
		SellItemAddons				(pitem,at_silencer);
	}else
	if(CanAttachAddon(pitem, at_silencer))
	{//attach
		shared_str addon_name		= GetAddonNameSect(pitem,at_silencer);

		if ( NULL==m_store_hierarchy->FindItem(addon_name) )
			return;
						
		SBuyItemInfo* addon_item	= CreateItem(addon_name, SBuyItemInfo::e_undefined, false);
		bool b_res_addon			= TryToBuyItem(addon_item, bf_normal, pitem );
		if(!b_res_addon)
			DestroyItem				(addon_item);
	}
}
Example #2
0
void CUIMpTradeWnd::OnBtnRifleAmmo2Clicked(CUIWindow* w, void* d)
{
	CheckDragItemToDestroy				();
	CUIDragDropListEx*	res		= m_list[e_rifle];
	CUICellItem* ci				= (res->ItemsCount())?res->GetItemIdx(0):NULL;
	if(!ci)	
		return;

	CInventoryItem* ii			= (CInventoryItem*)ci->m_pData;
	CWeaponMagazinedWGrenade* wpn = smart_cast<CWeaponMagazinedWGrenade*>(ii);
	if(!wpn)		
		return;

	u32 ammo_idx				= 0;
	
	const shared_str& ammo_name	= wpn->m_ammoTypes2[ammo_idx];

	if ( NULL==m_store_hierarchy->FindItem(ammo_name) )
		return;

	SBuyItemInfo* pitem			= CreateItem		(ammo_name, SBuyItemInfo::e_undefined, false);
	bool b_res					= TryToBuyItem		(pitem, bf_normal, NULL);
	if(!b_res)
		DestroyItem				(pitem);
}
Example #3
0
void CUIMpTradeWnd::OnBtnPistolAmmoClicked(CUIWindow* w, void* d)
{
	CheckDragItemToDestroy				();
	CUIDragDropListEx*	res		= m_list[e_pistol];
	CUICellItem* ci				= (res->ItemsCount())?res->GetItemIdx(0):NULL;
	if(!ci)	
		return;

	CInventoryItem* ii			= (CInventoryItem*)ci->m_pData;
	CWeapon*		wpn			= smart_cast<CWeapon*>(ii);
	R_ASSERT		(wpn);

	u32 ammo_idx				= (pInput->iGetAsyncKeyState(DIK_LSHIFT))?1:0;
	
	if(wpn->m_ammoTypes.size() < ammo_idx+1)	return;
	const shared_str& ammo_name	= wpn->m_ammoTypes[ammo_idx];

	if ( NULL==m_store_hierarchy->FindItem(ammo_name) )
		return;

	SBuyItemInfo* pitem			= CreateItem		(ammo_name, SBuyItemInfo::e_undefined, false);
	bool b_res					= TryToBuyItem		(pitem, bf_normal, NULL );
	if(!b_res)
		DestroyItem				(pitem);
}
Example #4
0
void CUIMpTradeWnd::OnBtnCancelClicked(CUIWindow* w, void* d)
{
	CheckDragItemToDestroy				();
	HideDialog							();
	game_cl_mp* clgame					= smart_cast<game_cl_mp*>(&(Game()));
	VERIFY(clgame);
	clgame->OnBuyMenu_Cancel			();
}
Example #5
0
void CUIMpTradeWnd::OnBtnOkClicked(CUIWindow* w, void* d)
{
	CheckDragItemToDestroy				();
	StorePreset							(_preset_idx_last, true);
	GetHolder()->StartStopMenu			(this,true);
	game_cl_Deathmatch * dm				= smart_cast<game_cl_Deathmatch *>(&(Game()));
	dm->OnBuyMenu_Ok					();
}
Example #6
0
void CUIMpTradeWnd::OnRootTabChanged(CUIWindow* w, void* d)
{
	CheckDragItemToDestroy				();
	const shared_str& curr				= m_root_tab_control->GetActiveId();
	m_store_hierarchy->Reset			();
	m_store_hierarchy->MoveDown			(curr);
	
	UpdateShop							();
}
Example #7
0
void CUIMpTradeWnd::OnSubLevelBtnClicked(CUIWindow* w, void* d)
{
	CheckDragItemToDestroy				();
	CUITabButtonMP* btn					= smart_cast<CUITabButtonMP*>(w);

	shared_str curr						= btn->m_temp_id;
	m_store_hierarchy->MoveDown			(curr);
	
	UpdateShop							();
}
Example #8
0
void CUIMpTradeWnd::OnBtnLastSetClicked(CUIWindow* w, void* d)
{
	CheckDragItemToDestroy				();
	if(pInput->iGetAsyncKeyState(DIK_LSHIFT))
	{
		DumpPreset					(_preset_idx_last);
		return;
	};
		ApplyPreset					(_preset_idx_last);
}
Example #9
0
void CUIMpTradeWnd::OnBtnOkClicked(CUIWindow* w, void* d)
{
	DeleteHelperItems();
	CheckDragItemToDestroy				();
	StorePreset							(_preset_idx_last, true, false, false);
	HideDialog							();
	game_cl_mp* clgame					= smart_cast<game_cl_mp*>(&(Game()));
	VERIFY(clgame);
	clgame->OnBuyMenu_Ok					();
//.	StorePreset							(_preset_idx_last, true, true);
}
Example #10
0
void CUIMpTradeWnd::Hide()
{
	CheckDragItemToDestroy	();
	inherited::Hide			();

	CActor *pActor			= smart_cast<CActor*>(Level().CurrentEntity());
	if(pActor)
		pActor->SetWeaponHideState(INV_STATE_BUY_MENU, false);

	CleanUserItems			();
}
Example #11
0
void	xr_stdcall	CUIMpTradeWnd::OnBtnPresetDefaultClicked	(CUIWindow* w, void* d)
{
	CheckDragItemToDestroy				();
	{
		if(pInput->iGetAsyncKeyState(DIK_LSHIFT))
		{
			DumpPreset					(_preset_idx_default);
			return;
		};
		ApplyPreset					(_preset_idx_default);
	}
}
void CUIMpTradeWnd::OnBtnSellClicked(CUIWindow* w, void* d)
{
	CheckDragItemToDestroy				();
	CUIDragDropListEx*	pList			= m_list[e_player_bag];

	SBuyItemInfo*	iinfo	= NULL;
	while( pList->ItemsCount() )
	{
		CUICellItem* ci = pList->GetItemIdx(0);
		iinfo			= FindItem(ci);
		bool	b_ok	= true;
		SBuyItemInfo*	tmp_iinfo	= NULL;
		b_ok			= TryToSellItem(iinfo, true, tmp_iinfo);
		R_ASSERT		(b_ok);
	}
}
Example #13
0
void CUIMpTradeWnd::Show(bool status)
{
	inherited::Show				(status);

	CActor *pActor			= smart_cast<CActor*>(Level().CurrentEntity());
	if(pActor) 
		pActor->SetWeaponHideState(INV_STATE_BUY_MENU, status);

	if(status)
	{
		m_pMouseCapturer		= NULL;

		m_static_information->SetText("");
		m_static_money_change->SetText("");
	}else
	{
		CheckDragItemToDestroy	();
		CleanUserItems			();
	}
}
Example #14
0
void CUIMpTradeWnd::OnBtnResetClicked(CUIWindow* w, void* d)
{
	CheckDragItemToDestroy				();
	ApplyPreset				(_preset_idx_origin); //origin
}
Example #15
0
void CUIMpTradeWnd::OnBtnCancelClicked(CUIWindow* w, void* d)
{
	CheckDragItemToDestroy				();
	GetHolder()->StartStopMenu			(this,true);
}
Example #16
0
void CUIMpTradeWnd::OnBtnSave3PresetClicked(CUIWindow* w, void* d)
{
	CheckDragItemToDestroy				();
	StorePreset					(_preset_idx_3, false, true, true);
}
Example #17
0
void CUIMpTradeWnd::OnBtnShopBackClicked(CUIWindow* w, void* d)
{
	CheckDragItemToDestroy				();
	m_store_hierarchy->MoveUp			();
	UpdateShop							();
}