예제 #1
0
 public static function cmdSetfaction(Player $player, $numparams, $params)
 {
     if (!Admin::CheckLevel($player, ADMIN_ADMIN)) {
         return COMMAND_OK;
     }
     if ($target = Core::FindPlayer($player, $params[1])) {
         $facname = implode(' ', array_slice($params, 2));
         if (($faction = $target->GetFaction(false)) && !strcasecmp($facname, 'Civilian')) {
             $faction->SetMemberCount($faction->GetMemberCount() - 1);
             $target->SetFaction(null);
             $target->SetRank(null);
             Admin::Send(COLOR_SETFACTION, "* Admin {$player->name} has kicked {$target->name} from his faction");
             $target->Send(COLOR_SETFACTION, "* Admin {$player->name} has kicked you from your faction");
             Log::Append(LOG_ADMIN, "[{$player->id}] {$player->name} has kicked {$target->name}[{$target->id}] from his faction");
         } else {
             if ($faction = Factions::FindByName($facname)) {
                 $oldfaction = $player->GetFaction(false);
                 if ($oldfaction != null) {
                     $oldfaction->SetMemberCount($oldfaction->GetMemberCount() - 1);
                 }
                 $faction->SetMemberCount($faction->GetMemberCount() + 1);
                 $target->SetFaction($faction->ID());
                 $target->SetRank($faction->LowestRank());
                 Admin::Send(COLOR_SETFACTION, "* Admin {$player->name} has moved {$target->name} to the {$faction->GetName()} faction");
                 $target->Send(COLOR_SETFACTION, "* Admin {$player->name} has moved you to the {$faction->GetName()} faction");
                 Log::Append(LOG_ADMIN, "[{$player->id}] {$player->name} has moved {$target->name}[{$target->id}] to the faction {$faction->GetName()}");
             }
         }
     }
     return COMMAND_OK;
 }
예제 #2
0
 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;
 }