本文整理汇总了C++中shared_ptr::CanRefuel方法的典型用法代码示例。如果您正苦于以下问题:C++ shared_ptr::CanRefuel方法的具体用法?C++ shared_ptr::CanRefuel怎么用?C++ shared_ptr::CanRefuel使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类shared_ptr
的用法示例。
在下文中一共展示了shared_ptr::CanRefuel方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: if
HailPanel::HailPanel(PlayerInfo &player, const shared_ptr<Ship> &ship)
: player(player), ship(ship),
sprite(ship->GetSprite().GetSprite()), unit(2. * ship->Unit())
{
SetInterruptible(false);
const Government *gov = ship->GetGovernment();
header = gov->GetName() + " ship \"" + ship->Name() + "\":";
if(gov->IsEnemy())
{
SetBribe(gov->GetBribeFraction());
if(bribe)
message = "If you want us to leave you alone, it'll cost you "
+ Format::Number(bribe) + " credits.";
}
else if(ship->IsDisabled())
{
const Ship *flagship = player.Flagship();
if(!flagship->JumpsRemaining() || flagship->IsDisabled())
message = "Sorry, we can't help you, because our ship is disabled.";
else
message = "Our ship has been disabled! Please come board our ship and patch us up!";
}
else
{
// Is the player in any need of assistance?
const Ship *flagship = player.Flagship();
// Check if the player is out of fuel.
if(!flagship->JumpsRemaining())
{
playerNeedsHelp = true;
canGiveFuel = ship->CanRefuel(*flagship);
}
// Check if the player is disabled.
if(flagship->IsDisabled())
{
playerNeedsHelp = true;
canRepair = true;
}
if(canGiveFuel || canRepair)
message = "Looks like you've gotten yourself into a bit of trouble. "
"Would you like us to ";
if(canGiveFuel && canRepair)
message += "patch you up and give you some fuel?";
else if(canGiveFuel)
message += "give you some fuel?";
else if(canRepair)
message += "patch you up?";
}
if(message.empty())
message = ship->GetHail();
}