Ez a filterscript lehetõvé teszi, hogy RCON adminok egy Dialog menübõl tudják kezelni a játékosokat.
Ezt a menüt persze lehet kiegészíteni saját dolgokkal, és át is lehet írni könnyen saját adminrendszerre.
Ssanf-et és ZCMD-t használ.
AMX letöltés:
http://www.solidfiles.com/d/5f6d873221/
PWN letöltés:
http://www.solidfiles.com/d/042349ac1f/
// ========================================================================== //
#include
#include
#include
// ========================================================================== //
#if defined FILTERSCRIPT
#endif
#define Hiba 0xFF0000FF // Piros
#define ParancsHelp 0x00FF66FF // Aqua zöld
#define SzerverText 0xFF8000FF // Narancs
// ========================================================================== //
public OnFilterScriptInit()
{
print(\"\\n--------------------------------------\");
print(\" Játékos menü by AdamHawer \");
print(\"--------------------------------------\\n\");
return 1;
}
CMD:jmenu(playerid, params[])
{
new jatekosid;
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, Hiba, \"* [Hiba]: Ezt a parancsot csak adminisztrátor használhatja.\");
if(sscanf(params, \"i\", jatekosid))
{
SendClientMessage(playerid, ParancsHelp,\"* Használat: /jmenu [Játékos ID]\");
return 1;
}
if(!IsPlayerConnected(jatekosid)) return SendClientMessage(playerid, Hiba, \"* [Hiba]: A játékos nincs csatlakozva, vagy nem megfelelõ játékos ID.\");
else
{
ShowPlayerDialog(playerid, (1000 + jatekosid), 2, \"Játékos kezelése:\", \"Élet feltöltés\\nPáncél feltöltés\\nMegölés\\nRespawn\\n10000$ adás\\n100000$ adás\\n1000000$ adás\\nHozzám teleportálás\\nElteleportálás hozzá\", \"Rendben\", \"Kilépés\");
}
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(1000 <= dialogid < 1100) // Maximum 100 Játékosig megengedett! Utána bõvíteni kell a 1100-at magasabbra.
{
if(response)
switch(listitem)
{
case 0:
{
new SzerverUzenet [128];
new jatekosid = dialogid - 1000;
new JatekosNev [MAX_PLAYER_NAME];
new AdminNev [MAX_PLAYER_NAME];
GetPlayerName(jatekosid, JatekosNev, MAX_PLAYER_NAME);
GetPlayerName(playerid, AdminNev, MAX_PLAYER_NAME);;
format(SzerverUzenet, sizeof(SzerverUzenet), \"* Admin: %s feltöltötte %s játékos életét.\", AdminNev, JatekosNev);
SendClientMessageToAll(SzerverText, SzerverUzenet);
SetPlayerHealth(jatekosid, 100);
}
case 1:
{
new SzerverUzenet [128];
new jatekosid = dialogid - 1000;
new JatekosNev [MAX_PLAYER_NAME];
new AdminNev [MAX_PLAYER_NAME];
GetPlayerName(jatekosid, JatekosNev, MAX_PLAYER_NAME);
GetPlayerName(playerid, AdminNev, MAX_PLAYER_NAME);
format(SzerverUzenet, sizeof(SzerverUzenet), \"* Admin: %s feltöltötte %s játékos páncélzatát.\", AdminNev, JatekosNev);
SendClientMessageToAll(SzerverText, SzerverUzenet);
SetPlayerArmour(jatekosid, 100);
}
case 2:
{
new SzerverUzenet [128];
new jatekosid = dialogid - 1000;
new JatekosNev [MAX_PLAYER_NAME];
new AdminNev [MAX_PLAYER_NAME];
GetPlayerName(jatekosid, JatekosNev, MAX_PLAYER_NAME);
GetPlayerName(playerid, AdminNev, MAX_PLAYER_NAME);
format(SzerverUzenet, sizeof(SzerverUzenet), \"* Admin: %s megölte %s játékost.\", AdminNev, JatekosNev);
SendClientMessageToAll(SzerverText, SzerverUzenet);
SetPlayerHealth(jatekosid, 0);
SetPlayerArmour(jatekosid, 0);
}
case 3:
{
new SzerverUzenet [128];
new jatekosid = dialogid - 1000;
new JatekosNev [MAX_PLAYER_NAME];
new AdminNev [MAX_PLAYER_NAME];
GetPlayerName(jatekosid, JatekosNev, MAX_PLAYER_NAME);
GetPlayerName(playerid, AdminNev, MAX_PLAYER_NAME);
format(SzerverUzenet, sizeof(SzerverUzenet), \"* Admin: %s respawnolta %s játékost.\", AdminNev, JatekosNev);
SendClientMessageToAll(SzerverText, SzerverUzenet);
SpawnPlayer(jatekosid);
}
case 4:
{
new SzerverUzenet [128];
new jatekosid = dialogid - 1000;
new JatekosNev [MAX_PLAYER_NAME];
new AdminNev [MAX_PLAYER_NAME];
GetPlayerName(jatekosid, JatekosNev, MAX_PLAYER_NAME);
GetPlayerName(playerid, AdminNev, MAX_PLAYER_NAME);
format(SzerverUzenet, sizeof(SzerverUzenet), \"* Admin: %s adott %s játékosnak 10.000$-t.\", AdminNev, JatekosNev);
SendClientMessageToAll(SzerverText, SzerverUzenet);
GivePlayerMoney(jatekosid, 10000);
}
case 5:
{
new SzerverUzenet [128];
new jatekosid = dialogid - 1000;
new JatekosNev [MAX_PLAYER_NAME];
new AdminNev [MAX_PLAYER_NAME];
GetPlayerName(jatekosid, JatekosNev, MAX_PLAYER_NAME);
GetPlayerName(playerid, AdminNev, MAX_PLAYER_NAME);
format(SzerverUzenet, sizeof(SzerverUzenet), \"* Admin: %s adott %s játékosnak 100.000$-t.\", AdminNev, JatekosNev);
SendClientMessageToAll(SzerverText, SzerverUzenet);
GivePlayerMoney(jatekosid, 100000);
}
case 6:
{
new SzerverUzenet [128];
new jatekosid = dialogid - 1000;
new JatekosNev [MAX_PLAYER_NAME];
new AdminNev [MAX_PLAYER_NAME];
GetPlayerName(jatekosid, JatekosNev, MAX_PLAYER_NAME);
GetPlayerName(playerid, AdminNev, MAX_PLAYER_NAME);
format(SzerverUzenet, sizeof(SzerverUzenet), \"* Admin: %s adott %s játékosnak 1.000.000$-t.\", AdminNev, JatekosNev);
SendClientMessageToAll(SzerverText, SzerverUzenet);
GivePlayerMoney(jatekosid, 1000000);
}
case 7:
{
new SzerverUzenet [128];
new jatekosid = dialogid - 1000;
new JatekosNev [MAX_PLAYER_NAME];
new AdminNev [MAX_PLAYER_NAME];
new Float:xpozicio;
new Float:ypozicio;
new Float:zpozicio;
GetPlayerName(jatekosid, JatekosNev, MAX_PLAYER_NAME);
GetPlayerName(playerid, AdminNev, MAX_PLAYER_NAME);
format(SzerverUzenet, sizeof(SzerverUzenet), \"* Admin: %s magához teleportálta %s játékost.\", AdminNev, JatekosNev);
SendClientMessageToAll(SzerverText, SzerverUzenet);
GetPlayerPos(playerid, xpozicio, ypozicio, zpozicio);
SetPlayerPos(jatekosid, xpozicio, ypozicio, zpozicio);
}
case 8:
{
new SzerverUzenet [128];
new jatekosid = dialogid - 1000;
new JatekosNev [MAX_PLAYER_NAME];
new AdminNev [MAX_PLAYER_NAME];
new Float:xpozicio;
new Float:ypozicio;
new Float:zpozicio;
GetPlayerName(jatekosid, JatekosNev, MAX_PLAYER_NAME);
GetPlayerName(playerid, AdminNev, MAX_PLAYER_NAME);
format(SzerverUzenet, sizeof(SzerverUzenet), \"* Admin: %s elteleportált %s játékoshoz.\", AdminNev, JatekosNev);
SendClientMessageToAll(SzerverText, SzerverUzenet);
GetPlayerPos(jatekosid, xpozicio, ypozicio, zpozicio);
SetPlayerPos(playerid, xpozicio, ypozicio, zpozicio);
}
}
}
return 1;
}