public static function cmdRankdown(Player $player, $numparams, $params) { $faction = $player->GetFaction(); if ($faction == null) { return COMMAND_OK; } if ($faction->AllowedTo($player, MEMBER_ALLOWRANK) == false) { return COMMAND_OK; } if ($target = Factions::EqualFactions($player, $params[1])) { if ($player->id == $target->id) { return COMMAND_OK; } $requested_rank = $target->GetRank() + 1; if ($requested_rank > $faction->LowestRank()) { $player->Send(COLOR_RANKDOWN_MIN, '[ERROR] Given player already has the lowest faction rank'); return COMMAND_OK; } if ($target->GetRank() <= $player->GetRank()) { $player->Send(COLOR_RANKDOWN_DISALLOW, '[ERROR] You are not allowed to rank down this player'); return COMMAND_OK; } $target->SetRank($requested_rank); $faction->Send(COLOR_RANKDOWN_SUCCESS, "[FACTION] {$target->name} has been demoted to " . $faction->GetRankName($requested_rank)); } return COMMAND_OK; }