Gerad Manu gefragt, wann's nen Tutorial zum programmieren eigener Befehle gibt, da ich pb_sv_getSS per Befehl !getss ausführen möchte. Dank der Vorlage und Hilfe von Manu kam folgendes heraus:
PHP
<?php
/*
PLUGIN: Pbgetss
=============
Adds a command to get a PB screenshot of a player
COMMANDS
--------
!getss
NAMESPACE: pbgetss
Functions:
pbgetss_main
*/
//Command Registrieren
// Name des Commands Syntax Funktion, die aufgerufen wird
$mod->registerCommand("getss", "~getss \S.*~i", "pbgetss_main");
//Nun die eigentliche Funktion
//$guid = GUID des Ausführers
//$parameters = die übergeben Parameter in einem Array (Beispiel: "!kick a d", dann wäre $parameters = array("a", "d"))
function pbgetss_main($guid, $parameters) {
global $mod;
global $players;
global $rcon;
//Parameter wirder zusammenfügen
$parameters = implode(" ", $parameters);
//Spieler suchen nach PID oder Spielername
$toss = $mod->findPlayerGuid($parameters);
//Spieler nicht gefunden?
if (!$toss) {
//Sprachspezifische Fehlermeldung ausgeben
$players[$guid]->say($mod->getLngString("playerNotFound", array("<SEARCH>"), array($parameters)));
return;
}
//$toss enthält nun die GUID des gewünschten Spielers
//PID auslesen
$pid = $players[$toss]->getPID();
//Screenshot machen
$result = $rcon->rcon("pb_sv_getss ". ($pid + 1));
$realname = $players[$toss]->getName();
//Rückmeldung schicken
$players[$guid]->say("PB Screenshot from $realname^7 requested: " . $result);
}
Alles anzeigen
hab's auf meinem Server erfolgreich getestet, bekomme aber 2 Bestätigungen vom Mod, keine Ahnung warum
Installation
1. Die Datei "pbgetss.php" in den Ordner ".../adminmod/plugins" kopieren und
2. den Befehl "getss" in die groups.cfg schreiben.
(Der Mod muss neu gestartet werden)