/** ** Location callbacks **/ protected function OnEnter(Player $player, $numparams, $params) { if ($this->open) { return LOCATION_ALLOW; } else { if ($player->GetFaction() && $player->GetFaction()->ID() == $this->owner->ID()) { return LOCATION_ALLOW; } } GameTextForPlayer($player->id, '~r~Closed', 2000, 3); return LOCATION_DISALLOW; }
public function GetNameForPlayer(Player $player) { $faction = $player->GetFaction(); if (!$faction || $faction->id != $this->id) { return $player->account->name; } $rank = $player->GetRank(); if ($rank === null || $rank > 1) { return $player->account->name; } $name = $player->account->name; $p = strpos($name, '_'); if ($p === FALSE) { return $name; } return substr($name, 0, $p) . '_Corleone'; }
public function Allowed(Player $player) { if ($this->account != null) { if ($player->account && $player->account->ID() == $this->account) { return true; } return false; } else { if ($this->faction != null) { $faction = $player->GetFaction(); if ($faction != null && $this->faction == $faction->ID()) { return true; } return false; } } return false; }
public function GetNameForPlayer(Player $player) { $faction = $player->GetFaction(); if (!$faction || $faction->id != $this->id) { return $player->account->name; } $name = $player->account->name; $p = strpos($name, '_'); if ($p === FALSE) { return $name; } $initial = $name[0]; $badge = crc32($name) % 99 + 1; if ($badge < 0) { $badge = -$badge; } return $initial . '_' . substr($name, $p + 1) . '_' . sprintf('%02d', $badge); }
public static function cmdClose(Player $player, $numparams, $params) { if ($faction = $player->GetFaction()) { } return COMMAND_OK; }
/** ** Stats must show: ** Name(ID)[], CurrentName[] (for people who changed their name), Money[], Bank[], Level[], Deaths[], AcceptedDeaths[], SavedDeaths[], ** SpawnHealth[default 40], Level[], Experience[XX/YY], Phone[], Job[], ** Faction[], Rank[], Wife/Husband[], Sex[], Age[]. **/ public static function cmdStats(Player $player, $numparams, $params) { $money = Core::FixIntegerDots($player->GetMoney()); $bank = Core::FixIntegerDots($player->GetBank()); $level = $player->GetLevel(); $exp = $player->GetExperience(); $married = $player->GetMarried(); $hspawn = 100 - $player->GetInjures(); $age = $player->GetAge(); $faction = $player->GetFaction(false); $hunger = (int) ($player->GetHunger() / 10); $strength = $player->GetStrength(); /* Find their marriage */ if ($married != null) { if ($married['sex'] == 'M') { $wordmarried = 'Husband'; } else { $wordmarried = 'Wife'; } $marryname = $married['name']; } else { if ($player->GetSex() == 'M') { $wordmarried = 'Wife'; } else { $wordmarried = 'Husband'; } $marryname = ''; } /* Complete the sex word */ if ($player->GetSex() == 'M') { $sex = 'Male'; } else { $sex = 'Female'; } /* Find their faction name */ if ($faction == null) { $facname = 'Civilian'; $rank = ''; } else { $facname = $faction->GetName(); $rank = $faction->GetRankName($player->GetRank()); } /* TODO: Complete the stats when they are being coded */ $player->Send(COLOR_STATS_DECORATION, '-=-=-=-=-=-=-=-=-=-=-=-=-= Player stats -=-=-=-=-=-=-=-=-=-=-=-=-=-'); $player->Send(COLOR_STATS, "{$player->name}({$player->id}) - Money[{$money}\$] - Bank[{$bank}\$] - Phone[] - PremiumLevel[TODO]"); $player->Send(COLOR_STATS, "Level[{$level}] - Experience[{$exp}] - Deaths[TODO]: Accepted[TODO], Saved[TODO]"); $player->Send(COLOR_STATS, "Health[{$hspawn} / 100] - Hunger[{$hunger} / " . (int) (MAX_HUNGER_POINTS / 10) . "] - " . "Strength[{$strength} / " . MAX_STRENGTH_POINTS . "] - Age[{$age}] - Sex[{$sex}]"); $player->Send(COLOR_STATS, "{$wordmarried}[{$marryname}] - Faction[{$facname}] - Rank[{$rank}] - Job[TODO]"); $player->Send(COLOR_STATS_DECORATION, '-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-'); return COMMAND_BREAK; }
public static function cmdFtransfer(Player $player, $numparams, $params) { if ($player->location->ID() == LSBank::$id && ($faction = $player->GetFaction()) && $faction->AllowedTo($player, MEMBER_ALLOWBANK) && LSBank::AllowFaction($player, $faction)) { $amount = (int) $params[1]; $target_name = implode(' ', array_slice($params, 2)); $target = Factions::FindByName($target_name); if ($target && Factions::CheckPaybank($player, $faction, $amount, $target)) { $faction->GiveBank(-$amount); $target->GiveBank($amount); $bank1 = $faction->GetBank(); $bank2 = $target->GetBank(); $amount = Core::FixIntegerDots($amount); $faction->Send(COLOR_BANK_TRANSFER, "[FACTION BANK] {$player->name} transfered {$amount}\$ to {$target->GetName()} faction", MEMBER_ALLOWBANK); $target->Send(COLOR_BANK_TRANSFER, "[FACTION BANK] {$faction->GetName()} faction transfered {$amount}\$ to your faction", MEMBER_ALLOWBANK); } } return COMMAND_OK; }