本文整理汇总了PHP中app\City::hasEnoughResources方法的典型用法代码示例。如果您正苦于以下问题:PHP City::hasEnoughResources方法的具体用法?PHP City::hasEnoughResources怎么用?PHP City::hasEnoughResources使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类app\City
的用法示例。
在下文中一共展示了City::hasEnoughResources方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: levelUp
/**
* @param City $city
* @param $thing
* @param array $price
* @param $time
* @return $this|bool
*/
public function levelUp($city, Model $thing, array $price, $time)
{
$lack_resource = $city->hasEnoughResources($price);
if (empty($lack_resource)) {
$thing->level += 1;
$thing->finished_at = Carbon::now()->addSeconds($time);
$city->resources->subtract($price);
$thing->save();
}
$messages = [];
$resources = ['stone' => 'kő', 'lumber' => 'fa', 'food' => 'élelmiszer', 'iron' => 'vas'];
foreach ($lack_resource as $key => $value) {
$messages["not_enough_{$key}"] = "Még {$value} {$resources[$key]} hiányzik";
}
return redirect()->back()->withErrors($messages);
}
示例2: createBuilding
/**
* Creates a new building
*
* @param $type @int The type of the building.
* @param City $city @int The id of the city in which the building is built.
* @param $slot_num @int The number of the slot on which the building going to be built.
* @param BuildingSlot $slot @int The id of the slot on which the building is built.
* @return $this
*/
private function createBuilding($type, City $city, $slot_num)
{
$price = Building::$building_prices[$city->nation][$type];
$lack_resource = $city->hasEnoughResources($price);
if (empty($lack_resource)) {
$finished = Carbon::now()->addSeconds(Building::$building_times[$city->nation][$type]);
$slot = $city->building_slot;
$building = Building::create(['type' => $type, 'city_id' => $city->id, 'slot' => $slot->id, 'nation' => $city->nation, 'finished_at' => $finished]);
$slot->update(["slot{$slot_num}" => $building->id]);
$city->resources->subtract($price);
} else {
$messages = [];
$resources = ['stone' => 'kő', 'lumber' => 'fa', 'food' => 'élelmiszer', 'iron' => 'vas'];
foreach ($lack_resource as $key => $value) {
$messages["not_enough_{$key}"] = "Még {$value} {$resources[$key]} hiányzik";
}
return redirect("city/{$city->id}")->withErrors($messages);
}
}