bool CUIActorMenu::ToPartnerTrade(CUICellItem* itm, bool b_use_cursor_pos) { PIItem iitem = (PIItem)itm->m_pData; if ( !m_pPartnerInvOwner->AllowItemToTrade( iitem, eItemPlaceRuck ) ) { ///R_ASSERT2( 0, make_string( "Partner can`t cell item (%s)", iitem->NameItem() ) ); Msg( "! Partner can`t cell item (%s)", iitem->NameItem() ); return false; } CUIDragDropListEx* old_owner = itm->OwnerList(); CUIDragDropListEx* new_owner = NULL; if(b_use_cursor_pos) { new_owner = CUIDragDropListEx::m_drag_item->BackList(); VERIFY (new_owner==m_pTradePartnerList); }else new_owner = m_pTradePartnerList; CUICellItem* i = old_owner->RemoveItem(itm, (old_owner==new_owner) ); if(b_use_cursor_pos) new_owner->SetItem (i,old_owner->GetDragItemPosition()); else new_owner->SetItem (i); UpdatePrices(); return true; }
void Planet::Tick() { UpdatePopulation(); UpdatePrices(); // Transfer all of the ores from the refinery to out refined stockpile for (uint i = 0; i < m_Refinery.m_RefinedStockpile.GetOreList().size(); ++i) { uint amount = 0; m_Refinery.GiveRefinedOre(m_Refinery.m_RefinedStockpile.GetOreList()[i], &amount); m_RefinedStockpile.AddOreAmount(m_Refinery.m_RefinedStockpile.GetOreList()[i], amount); } //Transfer all the ores from our raw stockpile to the refinery for (uint i = 0; i < m_RawStockpile.GetOreList().size(); ++i) { uint amount = m_RawStockpile.GetOreAmount(m_RawStockpile.GetOreList()[i]); m_Refinery.ReceiveRawOre(m_RawStockpile.GetOreList()[i], amount); m_RawStockpile.SetOreAmount(m_RawStockpile.GetOreList()[i], 0); } // Call Tick() on the refinery m_Refinery.Tick(); // Now we hand all all of the refined ore to m_Factory }
void CUIActorMenu::InitTradeMode() { m_pInventoryBagList->Show (false); m_PartnerCharacterInfo->Show (true); m_PartnerMoney->Show (true); m_pTradeActorBagList->Show (true); m_pTradeActorList->Show (true); m_pTradePartnerBagList->Show (true); m_pTradePartnerList->Show (true); m_RightDelimiter->Show (true); m_LeftDelimiter->Show (true); m_LeftBackground->Show (true); m_PartnerBottomInfo->Show (true); m_PartnerWeight->Show (true); m_trade_button->Show (true); VERIFY ( m_pPartnerInvOwner ); m_pPartnerInvOwner->StartTrading(); InitInventoryContents ( m_pTradeActorBagList ); InitPartnerInventoryContents (); m_actor_trade = m_pActorInvOwner->GetTrade(); m_partner_trade = m_pPartnerInvOwner->GetTrade(); VERIFY ( m_actor_trade ); VERIFY ( m_partner_trade ); m_actor_trade->StartTradeEx ( m_pPartnerInvOwner ); m_partner_trade->StartTradeEx ( m_pActorInvOwner ); UpdatePrices(); }
void CUIActorMenu::UpdateItemsPlace() { switch ( m_currMenuMode ) { case mmUndefined: break; case mmInventory: break; case mmTrade: UpdatePrices(); break; case mmUpgrade: SetupUpgradeItem(); break; case mmDeadBodySearch: UpdateDeadBodyBag(); break; default: R_ASSERT(0); break; } if ( m_pActorInvOwner ) { UpdateOutfit(); UpdateActor(); } }
void CUITradeWnd::UpdateLists(EListType mode) { if(mode==eBoth||mode==e1st){ m_uidata->UIOurBagList.ClearAll(true); m_uidata->UIOurTradeList.ClearAll(true); } if(mode==eBoth||mode==e2nd){ m_uidata->UIOthersBagList.ClearAll(true); m_uidata->UIOthersTradeList.ClearAll(true); } UpdatePrices (); if(mode==eBoth||mode==e1st){ ruck_list.clear (); m_pInv->AddAvailableItems (ruck_list, true); std::sort (ruck_list.begin(),ruck_list.end(),InventoryUtilities::GreaterRoomInRuck); FillList (ruck_list, m_uidata->UIOurBagList, true); } if(mode==eBoth||mode==e2nd){ ruck_list.clear (); m_pOthersInv->AddAvailableItems (ruck_list, true); std::sort (ruck_list.begin(),ruck_list.end(),InventoryUtilities::GreaterRoomInRuck); FillList (ruck_list, m_uidata->UIOthersBagList, false); } }
bool CUITradeWnd::ToOthersBag() { move_item (CurrentItem(), &m_uidata->UIOthersTradeList, &m_uidata->UIOthersBagList); UpdatePrices (); return true; }
bool CUITradeWnd::ToOurTrade() { if (!CanMoveToOther(CurrentIItem())) return false; move_item (CurrentItem(), &m_uidata->UIOurBagList, &m_uidata->UIOurTradeList); UpdatePrices (); return true; }
Planet::Planet(uint _id) : m_Factory() { m_id = _id; m_Money = Rand::GetRandomUINT(500, 10000); m_Population = Rand::GetRandomUINT(10, 5000); m_PopulationModifier = Rand::GetRandomFloat(.5, 2); UpdatePrices(); UpdatePopulation(); // Initialize the m_Prices and m_RawStockpile for (Ore i : m_Factory.GetRecipe().GetOreList()) { m_Prices.AddOre(i, 0); m_RawStockpile.AddOre(i, Rand::GetRandomUINT(20, 100)); } }
// --------------------------------------------------------------------------- void __fastcall TfSbornyZakaz::cbAgentsSelect(TObject * Sender) { agent = (TAgent*)cbAgents->Items->Objects[cbAgents->ItemIndex]; lTypePrice->Caption = "Тип цен: " + agent->typeprice->name; if (cbAgents->Text == "Розница") { eFamilia->Visible = true; Label11->Visible = true; eFamilia->Text = ""; ePhone->Text = ""; } else { eFamilia->Visible = false; Label11->Visible = false; eFamilia->Text = ""; ePhone->Text = ""; } // здесь можно загрузить все товары и услуги UpdatePrices(); Sum(); }