Sziasztok! Kijavítottam egy Admin System-et unalmamban
Hiábi voltak: /admins-ba csak az 1. admint írta ki aki elõször fellépett a szerverre!
Minden adminnak annyi szintet írt amennyi a legmagasabb volt.
Javítások: /admins javítva! Szintek javítva!
Készítette: Sheet
Javította: SkypeDead
Javítási idõ: 4-5 perc
/*
AdminRendszer
2014.
Készító: Sheet
Javító: SkypeDead
Verzió: v0.3
Nyelv: Magyar
__________________
v0.2 Fejlesztések
- AntiPing warn szintre fejlesztve!
- Adminszolgálat berakva!
- /setweather, idõjárás állítására.
- Használaton kívüli jármá helyreálítása. /rac
__________________
v0.3 Fejlesztések
- zcmd
- sscanf
- Fölösleges dolgok kiszedve
- AFK javítva
*/
//------------Függvénykönyvtárak---------------
#include <a_samp>
#include <dini>
#include <sscanf>
#include <zcmd>
#include <dudb>
#pragma unused ret_memcpy
//----Beállítások----
#define MAX_STRING 255
#define MAX_PING 800
#undef MAX_PLAYERS
#define MAX_PLAYERS 30
#undef MAX_VEHICLES
#define MAX_VEHICLES 50
//-------------------
new Text3D: ASZ;
new bool: Adminszolgalat[MAX_PLAYERS];
new AFK[MAX_PLAYERS];
new giveplayerid, giveplayer[MAX_PLAYER_NAME];
new gActivePlayers[MAX_PLAYERS];
new serverCount;
new restartTimer;
public RestartServer( );
new Warns[MAX_PLAYERS];
new reginev[MAX_PLAYER_NAME];
new stringnev[MAX_PLAYER_NAME];
new bool: inProgress = false;
new CreatedCars[100];
new CreatedCar = 0;
//-------------Dialog----------------
#define ReGiStEr 8
#define LoGiN 9
#define DIALOG_1 (1002)
#define DIALOG_2 (1004)
#define DIALOG_3 (1008)
#define DIALOG_4 (1016)
#define DIALOGID 1000
//-----------Forward-----------------
forward SendAdminMessage(color, string[]);
forward PlayedTime(playerid);
forward AntiPing(playerid);
forward CarRespawn( );
//-----------------------------------
//-------Enumeráció-------
enum pInfo
{
pDeaths,
pKills,
pAdmin,
pScore,
pMoney,
pJailed,
pInt,
pTomloc,
pJailTime
}
enum pTime
{
Seconds,
Minutes,
Hours,
Days
};
new PlayerTime[MAX_PLAYERS][pTime];
new PlayerTimer[MAX_PLAYERS];
new PlayerInfo[MAX_PLAYERS][pInfo];
new IsLogged[MAX_PLAYERS];
//----------------------------------------------------------------------
//------------Színek-------------
#define COLOR_GRAD1 0xB4B5B7FF
#define COLOR_GRAD2 0xBFC0C2FF
#define COLOR_RED 0xFF0000FF
#define COLOR_ORANGE 0xFFA500FF
#define COLOR_WHITE 0xFFFFFFFF
#define COLOR_GREEN 0x008000FF
#define COLOR_YELLOW 0xFFFF00FF
#define COLOR_LIGHTBLUE 0x0BBF6AA
#define COLOR_LIGHTGREEN 0x90EE90FF
#define COLOR_LIGHTBLUE1 0x0BBF6AA
//-------------------------------
public OnFilterScriptInit()
{
DisableInteriorEnterExits();
UsePlayerPedAnims();
SetTimer(\"AntiPing\", 10000, true);
print(\" Sheet Admin System betöltve hibátlanul! \");
return 1;
}
public OnFilterScriptExit()
{
print(\" Sheet Admin System leállítva! \");
return 1;
}
public OnPlayerConnect(playerid)
{
SendClientMessage(playerid, COLOR_RED, \"Játékmód betöltése folyamatban van!\");
SendClientMessage(playerid, COLOR_RED, \" \"),SendClientMessage(playerid, COLOR_RED, \" \"),SendClientMessage(playerid, COLOR_RED, \" \"),SendClientMessage(playerid, COLOR_RED, \" \"),SendClientMessage(playerid, COLOR_RED, \" \"),SendClientMessage(playerid, COLOR_RED, \" \"),SendClientMessage(playerid, COLOR_RED, \" \"),SendClientMessage(playerid, COLOR_RED, \" \"),SendClientMessage(playerid, COLOR_RED, \" \"),SendClientMessage(playerid, COLOR_RED, \" \");
new string[128];
new sendername[MAX_PLAYER_NAME];
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof string, \"***%s csatlakozott***\", sendername);
IsLogged[playerid] = 0;
Warns[playerid] = 0;
new file[128];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof(name));
format(file,sizeof(file),\"%s.ini\",name);
if(!fexist(file))
{
format(string, sizeof string, \"Üdv %s! \\nTe még nem vagy regisztrálva! \\n\\nKérjük regisztrálj.\", name);
ShowPlayerDialog(playerid, ReGiStEr, DIALOG_STYLE_INPUT, \"Regisztráció\", string, \"Register\", \"Cancel.\");
}
if(fexist(file))
{
format(string, sizeof string, \"Üdv %s! \\nKérjük jelentkezz be! \\n\\nIrd be a jelszavadat.\", name);
ShowPlayerDialog(playerid, LoGiN, DIALOG_STYLE_INPUT, \"Bejelentkezés\", string, \"Login\", \"Cancel.\");
}
new level;
level = PlayerInfo[playerid][pAdmin];
if(PlayerInfo[playerid][pAdmin] >0)
{
format(string, sizeof(string), \"%s adminszolgálatba lépett,kérdéseitekkel bátran forduljatok hozzá ! (%d)\", sendername, level);
SendAdminMessage(COLOR_RED, string);
}
PlayerTimer[playerid] = SetTimerEx(\"PlayedTime\", 1000, 1, \"%d\", playerid);
PlayerInfo[playerid][pDeaths] = 0;
PlayerInfo[playerid][pKills] = 0;
PlayerInfo[playerid][pAdmin] = 0;
PlayerInfo[playerid][pScore] = 0;
PlayerInfo[playerid][pMoney] = 0;
PlayerInfo[playerid][pInt] = 0;
PlayerInfo[playerid][pTomloc] = 0;
PlayerInfo[playerid][pJailed] = 0;
PlayerInfo[playerid][pJailTime] = 0;
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
new file[128];
new name[MAX_PLAYER_NAME];
new sendername[MAX_PLAYER_NAME];
new str[256];
GetPlayerName(playerid, name, sizeof(name));
GetPlayerName(playerid, sendername, sizeof(sendername));
new PlayerName[MAX_PLAYER_NAME];
if(reason == 0) {
GetPlayerName(playerid, PlayerName, sizeof(PlayerName));
format(str, sizeof(str), \"***%s elhagyta a szerverünket!{FF6600}(Idõtúllépés)***\", PlayerName);
SendClientMessageToAll(COLOR_ORANGE, str);
}
if(reason == 1) {
GetPlayerName(playerid, PlayerName, sizeof(PlayerName));
format(str, sizeof(str), \"***%s elhagyta a szerverünket!{FF6600}(Kilépés)***\", PlayerName);
SendClientMessageToAll(COLOR_ORANGE, str);
}
if(reason == 2) {
GetPlayerName(playerid, PlayerName, sizeof(PlayerName));
format(str, sizeof(str), \"***%s elhagyta a szerverünket!{FF6600}(Kick/Ban)***\", PlayerName);
SendClientMessageToAll(COLOR_ORANGE, str);
gActivePlayers[playerid]--;
}
gActivePlayers[playerid]--;
format(file,sizeof(file),\"%s.ini\",name);
if(fexist(file))
{
dini_IntSet(file,\"pScore\", GetPlayerScore(playerid));
dini_IntSet(file,\"pMoney\", GetPlayerMoney(playerid));
dini_IntSet(file,\"pDeaths\", PlayerInfo[playerid][pDeaths]);
dini_IntSet(file,\"pKills\", PlayerInfo[playerid][pKills]);
dini_IntSet(file,\"pAdmin\", PlayerInfo[playerid][pAdmin]);
dini_IntSet(file, \"Seconds\", PlayerTime[playerid][seconds]);
dini_IntSet(file, \"Minutes\", PlayerTime[playerid][Minutes]);
dini_IntSet(file, \"Hours\", PlayerTime[playerid][Hours]);
dini_IntSet(file, \"Days\", PlayerTime[playerid][Days]);
KillTimer(PlayerTimer[playerid]);
}
IsLogged[playerid] = 0;
return 1;
}
public AntiPing(playerid)
{
new string[128], string2[256];
new PlayerName[16];
GetPlayerName(playerid, PlayerName, sizeof(PlayerName));
if(GetPlayerPing(playerid) >= MAX_PING)
{
Warns[playerid] ++;
SendClientMessage(playerid, COLOR_RED, \"Figyelmeztetés!, Túl magas a pinged, csökkentsd, külömben kickelve leszel!. Max Ping: 500\");
if(Warns[playerid] >= 3)
{
format(string, sizeof(string), \"*Anti-PING-Bot: %s kickelve lett a szerver által. Indok: - Nagyon Magas Ping [%d]\", PlayerName, MAX_PING);
SendClientMessageToAll(COLOR_RED, string);
format(string2, sizeof(string2), \"Kickelve lettél a szerver által. Indok - Nagyon Magas Ping [%d]\", MAX_PING);
SendClientMessage(playerid, COLOR_GREEN, string2);
Kick(playerid);
}
}
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
PlayerInfo[playerid][pDeaths] ++;
PlayerInfo[playerid][pKills] ++;
return 1;
}
new Float: x, Float:y, Float:z, stringa[128];
CMD:afk(playerid,params[])
{
if(!AFK[playerid])
{
GetPlayerName(playerid, reginev,sizeof(reginev));
GetPlayerName(playerid, stringnev,sizeof(stringnev));
format(stringnev, sizeof(stringnev), \"[AFK]%s\", reginev);
SetPlayerName(playerid, stringnev);
TogglePlayerControllable(playerid, 0);
SetPlayerVirtualWorld(playerid, 12588);
SetPlayerPos(playerid, x,y,z+1000);
AFK[playerid] = 1;
SendClientMessage(playerid, COLOR_GREEN, \"AFK módba léptél.. Ha visszaszeretnél jönni, gépeld be a következõ parancsot. [/afk-off]\");
format(stringa, sizeof(stringa), \"* %s afk módba lépett.\", reginev);
SendClientMessageToAll(COLOR_YELLOW, stringa);
} else {
SendClientMessage(playerid, COLOR_RED, \"Te már AFK módban vagy!\");
}
return 1;
}
CMD:afkoff(playerid, params[])
{
if(AFK[playerid])
{
SetPlayerName(playerid, reginev);
GetPlayerName(playerid, reginev, sizeof(reginev));
format(stringa, sizeof(stringa), \"* %s visszatért az afk-ból.\", reginev);
SendClientMessageToAll(COLOR_YELLOW, stringa);
TogglePlayerControllable(playerid, 1);
SetPlayerPos(playerid, x,y,z-1000);
SetPlayerVirtualWorld(playerid, 0);
AFK[playerid] = 0;
} else {
SendClientMessage(playerid, COLOR_RED, \"Te nem is vagy AFK-ba!\");
}
return 1;
}
CMD:stats(playerid, params[])
{
new sendername[MAX_PLAYER_NAME];
GetPlayerName(playerid, sendername, sizeof(sendername));
new score = GetPlayerScore(playerid);
SendClientMessage(playerid, COLOR_GREEN, \"_______________________PROFIL___________________________\");
format(stringa, sizeof(stringa), \"Név: %s, Pontok: %d, Pénz: %d, Halálok száma: %d, Ölések száma: %d\\nSzerveren töltött idõ: %d Nap, %d Óra, %d Perc, %d Másodperc\",sendername, score, GetPlayerMoney(playerid),PlayerInfo[playerid][pDeaths],PlayerInfo[playerid][pKills], PlayerTime[playerid][Days], PlayerTime[playerid][Hours], PlayerTime[playerid][Minutes], PlayerTime[playerid][seconds]);
SendClientMessage(playerid, COLOR_WHITE, stringa);
SendClientMessage(playerid, COLOR_GREEN, \"_________________________________________________________\");
return 1;
}
CMD:ah(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] > 0)
{
SendClientMessage(playerid, COLOR_YELLOW, \"__________________________________________________________\");
SendClientMessage(playerid, COLOR_YELLOW, \"***1 Admin:*** /ahelp /asay /a /kick /setvw /setint /fly /dn /up /warn /akill /aduty /slap\");
if(PlayerInfo[playerid][pAdmin] >= 2)
{
SendClientMessage(playerid, COLOR_YELLOW, \"***2 Admin:*** /ban /rtc /check /goto /setweather\");
}
if(PlayerInfo[playerid][pAdmin] >=3)
{
SendClientMessage(playerid, COLOR_YELLOW, \"***3 Admin:*** /gethere /sethp /setarmor\");
}
if(PlayerInfo[playerid][pAdmin] >=4)
{
SendClientMessage(playerid, COLOR_YELLOW, \"***4 Admin:*** /veh /destroycars /god /god-off, /rac\");
}
if(PlayerInfo[playerid][pAdmin] >=5)
{
SendClientMessage(playerid, COLOR_YELLOW, \"***5 Admin:*** /makeadmin /givemoney /givescore\");
}
SendClientMessage(playerid, COLOR_YELLOW, \"___________________________________________________________\");
}
return 1;
}
CMD:ahelp(playerid,params[])
{
return cmd_ah(playerid,params);
}
CMD:tulaj(playerid,params[])
{
new sendername[MAX_PLAYER_NAME];
if(PlayerInfo[playerid][pAdmin] >= 5)
{
if(Adminszolgalat[playerid] == false)
{
ASZ = Create3DTextLabel(\"Tulajdonos\", COLOR_RED, 0.0, 0.0, 2.0, 40, 0, 0);
Attach3DTextLabelToPlayer(ASZ, playerid, 0.0, 0.0, 0.4);
ShowNameTags( 0 );
GetPlayerName(playerid, sendername, sizeof(sendername));
SendClientMessageToAll(COLOR_GREEN, \"-------------------------------\");
format(stringa, sizeof(stringa), \"%s adminszolgálatba lépett,kérdéseitekkel bátran forduljatok hozzá !\", sendername);
SendClientMessageToAll(COLOR_YELLOW,stringa);
SendClientMessageToAll(COLOR_GREEN, \"-------------------------------\");
Adminszolgalat[playerid] = true;
} else {
Delete3DTextLabel(ASZ);
ShowNameTags( 1 );
GetPlayerName(playerid, sendername, sizeof(sendername));
SendClientMessageToAll(COLOR_GREEN, \"-------------------------------\");
format(stringa, sizeof(stringa), \"%s elhagyta az adminszolgálatot !\", sendername);
SendClientMessageToAll(COLOR_YELLOW,stringa);
SendClientMessageToAll(COLOR_GREEN, \"-------------------------------\");
Adminszolgalat[playerid] = false;
}
} else {
SendClientMessage(playerid, COLOR_RED, \"Nem vagy admin!\");
}
return 1;
}
CMD:aduty(playerid,params[])
{
new sendername[MAX_PLAYER_NAME];
if(PlayerInfo[playerid][pAdmin] >= 1)
{
if(Adminszolgalat[playerid] == false)
{
ASZ = Create3DTextLabel(\"Admin Szolgálatban\", COLOR_RED, 0.0, 0.0, 2.0, 40, 0, 0);
Attach3DTextLabelToPlayer(ASZ, playerid, 0.0, 0.0, 0.4);
ShowNameTags( 0 );
GetPlayerName(playerid, sendername, sizeof(sendername));
SendClientMessageToAll(COLOR_GREEN, \"-------------------------------\");
format(stringa, sizeof(stringa), \"%s adminszolgálatba lépett,kérdéseitekkel bátran forduljatok hozzá !\", sendername);
SendClientMessageToAll(COLOR_YELLOW,stringa);
SendClientMessageToAll(COLOR_GREEN, \"-------------------------------\");
Adminszolgalat[playerid] = true;
} else {
Delete3DTextLabel(ASZ);
ShowNameTags( 1 );
GetPlayerName(playerid, sendername, sizeof(sendername));
SendClientMessageToAll(COLOR_GREEN, \"-------------------------------\");
format(stringa, sizeof(stringa), \"%s elhagyta az adminszolgálatot !\", sendername);
SendClientMessageToAll(COLOR_YELLOW,stringa);
SendClientMessageToAll(COLOR_GREEN, \"-------------------------------\");
Adminszolgalat[playerid] = false;
}
} else {
SendClientMessage(playerid, COLOR_RED, \"Nem vagy admin!\");
}
return 1;
}
CMD:setweather(playerid,params[])
{
new sendername[MAX_PLAYER_NAME];
if(PlayerInfo[playerid][pAdmin] >= 2)
{
new weatherid;
if(sscanf(params,\"i\", weatherid))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /setweather [weatherid]\");
SendClientMessage(playerid, COLOR_GRAD2, \"Idõjárások 1: Forró napsütéses 2. Napsütéses 3. Hûvös 4. Esõs 5. Viharos\\n6. Ködös 9. Homokvihar 10.Napkitörés 11.Különleges rózsaszín\");
return 1;
}
GetPlayerName(playerid, sendername, sizeof(sendername));
SetWeather(weatherid);
format(stringa, sizeof stringa, \"Admin: %s, megváltoztatta az idõjárást! Idõjárás ID: %d\",sendername, weatherid);
SendClientMessageToAll(COLOR_RED, stringa);
}
return 1;
}
CMD:restart(playerid, params[])
{
new sendername[MAX_PLAYER_NAME];
if(PlayerInfo[playerid][pAdmin] >= 5)
{
GetPlayerName(playerid, sendername, sizeof(sendername));
inProgress = true;
serverCount = 30;
restartTimer = SetTimer( \"RestartServer\", 1000, true );
SendClientMessage( playerid, COLOR_GREEN, \"Visszaszámlálás elindítva!\" );
format(stringa, sizeof stringa, \"****** A szerver újraindul %s által 30 másodpercen belül!******\", sendername);
SendClientMessageToAll(COLOR_ORANGE, stringa);
return 1;
} else if( inProgress ) {
SendClientMessage( playerid, COLOR_RED, \"Már folyamatban van egy visszaszámlálás!\" );
} else {
SendClientMessage( playerid, COLOR_RED, \"Nem vagy 5ös admin!\");
}
return 1;
}
CMD:admins(playerid, params[])
{
new sendername[MAX_PLAYER_NAME];
SendClientMessage(playerid, COLOR_YELLOW,\"------------------------------\");
SendClientMessage(playerid, COLOR_RED, \"Online Adminok:\");
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo[pAdmin] >= 1)
{
new level = PlayerInfo[pAdmin];
GetPlayerName(i, sendername, sizeof(sendername));
format(stringa, 40, \"{0000FFF}Admin: %s (%d)\", sendername, level);
SendClientMessage(playerid, COLOR_ORANGE, stringa);
}
}
}
SendClientMessage(playerid, COLOR_YELLOW,\"------------------------------\");
return 1;
}
CMD:report(playerid, params[])
{
new sendername[MAX_PLAYER_NAME];
GetPlayerName(playerid, sendername, sizeof(sendername));
new result[128-MAX_PLAYER_NAME];
if(sscanf(params,\"s[104]\", result))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /report [szöveg]\");
return 1;
}
format(stringa, sizeof(stringa), \"Bejelentés %s: %s\", sendername, result);
SendAdminMessage(COLOR_RED,stringa);
SendClientMessage(playerid, COLOR_YELLOW, \"Üzeneted elküldve az adminoknak!\");
return 1;
}
CMD:check(playerid, params[])
{
new sendername[MAX_PLAYER_NAME];
new check;
if(sscanf(params, \"u\", check))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /check [név/azonosító]\");
return 1;
}
if(PlayerInfo[playerid][pAdmin] >=2)
{
if(IsPlayerConnected(check))
{
if(check != INVALID_PLAYER_ID)
{
new Float: health;
GetPlayerHealth(check,health);
new Float: armour;
GetPlayerArmour(check, armour);
new cash = GetPlayerMoney(check);
new score = GetPlayerScore(check);
GetPlayerName(check, sendername, sizeof(sendername));
new playerip[18];
GetPlayerIp(check,playerip,sizeof(playerip));
SendClientMessage(playerid, COLOR_RED, \"___________________________________________\");
format(stringa, sizeof(stringa), \"Név: %s, Pontok: %d, Pénz: %d, Élet: %f, Páncél: %f\", sendername, score, cash, health, armour);
SendClientMessage(playerid, COLOR_LIGHTBLUE, stringa);
format(stringa, sizeof(stringa), \"Interior id: %d, Virtual World: %d, Ölések %d, Halálok: %d\",GetPlayerInterior(check), GetPlayerVirtualWorld(check),PlayerInfo[check][pDeaths],PlayerInfo[check][pKills]);
SendClientMessage(playerid, COLOR_LIGHTBLUE, stringa);
format(stringa, sizeof(stringa), \"IP Cím: %s\",playerip);
SendClientMessage(playerid, COLOR_LIGHTBLUE, stringa);
SendClientMessage(playerid, COLOR_RED, \"___________________________________________\");
}
}
} else {
SendClientMessage(playerid, COLOR_GRAD1, \"Nem vagy 2es admin!\");
}
return 1;
}
CMD:rac(playerid, params[])
{
new sendername[MAX_PLAYER_NAME];
if(PlayerInfo[playerid][pAdmin] >= 4)
{
GetPlayerName(playerid, sendername, sizeof(sendername));
format(stringa, 128, \"Minden használaton kívüli jármû újra lett spawnolva %s által!\", sendername);
SendClientMessageToAll(0x33CCFFAA, stringa);
CarRespawn();
} else {
SendClientMessage(playerid, COLOR_RED, \"Nem vagy 4es admin!\");
}
return 1;
}
CMD:ban(playerid, params[])
{
new sendername[MAX_PLAYER_NAME];
if(PlayerInfo[playerid][pAdmin] >= 2)
{
new ok[100];
if(sscanf(params, \"us[100]\",giveplayerid, ok))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /ban [név/azonosító] [indok]\");
return 1;
}
new playerip[18];
GetPlayerIp( giveplayerid,playerip,sizeof(playerip));
format(stringa,sizeof(stringa),\"banip %s\", playerip);
SendRconCommand(stringa);
SendRconCommand(\"banip\");
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(stringa, sizeof(stringa), \"AdmCmd: %s ki lett tiltva %s által. Ok:%s\", giveplayer,sendername,ok);
SendClientMessageToAll(COLOR_RED, stringa);
Ban(giveplayerid);
printf(\"%s bannolva lett\", giveplayer);
} else {
SendClientMessage(playerid, COLOR_GRAD1, \"Nem vagy 5ös admin!\");
}
return 1;
}
CMD:unban(playerid, params[])
{
new sendername[MAX_PLAYER_NAME], pip[18];
if(PlayerInfo[playerid][pAdmin] >= 5)
{
if(sscanf(params, \"s[18]\", pip))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /unban [iP]\");
return 1;
}
format(stringa,sizeof(stringa),\"unbanip %s\",pip);
SendRconCommand(stringa);
SendRconCommand(\"unbanip\");
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(stringa, sizeof(stringa), \"AdmWarning: %s unbannolta a következõ ip-t: IP %s\", sendername, pip);
SendAdminMessage(COLOR_RED, stringa);
} else {
SendClientMessage(playerid, COLOR_GRAD1, \"Nem vagy 5ös admin!\");
}
return 1;
}
CMD:destroycar(playerid, params[])
{
new sendername[MAX_PLAYER_NAME];
if(PlayerInfo[playerid][pAdmin] < 4) return SendClientMessage(playerid, COLOR_GRAD1, \"Nem vagy 4es admin!\");
DestroyVehicle(GetPlayerVehicleID(playerid));
GetPlayerName(playerid, sendername, sizeof(sendername));
SendClientMessage(playerid, COLOR_GREEN, \"Kocsi Megsemmisítve!\");
format(stringa, sizeof(stringa), \"AdmWarning: %s törölt egy jármûvet!\", sendername, giveplayer);
SendAdminMessage(COLOR_RED, stringa);
return 1;
}
CMD:dcar(playerid, params[])
{
return cmd_destroycar(playerid,params);
}
CMD:rtc(playerid, params[])
{
new sendername[MAX_PLAYER_NAME];
if(PlayerInfo[playerid][pAdmin] < 2) return SendClientMessage(playerid, COLOR_GRAD1, \"Nem vagy 2es admin!\");
SetVehicleToRespawn(GetPlayerVehicleID(playerid));
SendClientMessage(playerid, COLOR_GREEN, \"Kocsi Helyreálítva!\");
GetPlayerName(playerid, sendername, sizeof(sendername));
format(stringa, sizeof(stringa), \"AdmWarning: %s respawnolt egy jármûvet!\", sendername, giveplayer);
SendAdminMessage(COLOR_RED, stringa);
return 1;
}
CMD:respawnthiscar(playerid, params[])
{
return cmd_rtc(playerid,params);
}
CMD:god(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] >= 4) {
SetPlayerHealth(playerid, 100000);
} else {
SendClientMessage(playerid, COLOR_RED, \"Nem vagy 4es admin!\");
}
return 1;
}
CMD:godoff(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] >= 4) {
SetPlayerHealth(playerid, 100);
} else {
SendClientMessage(playerid, COLOR_RED, \"Nem vagy 4es admin!\");
}
return 1;
}
CMD:a(playerid, params[])
{
new result[104], sendername[MAX_PLAYER_NAME];
GetPlayerName(playerid, sendername, sizeof(sendername));
if(sscanf(params,\"s[104]\", result))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /(a)dmin [szöveg]\");
return 1;
}
format(stringa, sizeof(stringa), \"*%d Admin %s: %s\", PlayerInfo[playerid][pAdmin], sendername, result);
if (PlayerInfo[playerid][pAdmin] >= 1)
{
SendAdminMessage(COLOR_YELLOW, stringa);
printf(\"Admin %s: %s\", sendername, result);
}
return 1;
}
CMD:goto(playerid, params[])
{
new sendername[MAX_PLAYER_NAME];
if (PlayerInfo[playerid][pAdmin] >=2)
{
if(sscanf(params, \"u\", giveplayerid))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /goto [név/azonosító]\");
return 1;
}
Goto(playerid, giveplayerid);
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
format(stringa, sizeof(stringa), \"AdmWarning: %s odateleportált %s -hoz/hez.\", sendername, giveplayer);
SendAdminMessage(COLOR_RED, stringa);
} else {
SendClientMessage(playerid, COLOR_RED, \"Nem vagy 2es admin!\");
}
return 1;
}
CMD:gethere(playerid, params[])
{
new sendername[MAX_PLAYER_NAME];
if(PlayerInfo[playerid][pAdmin] >= 3)
{
if(sscanf(params, \"u\", giveplayerid))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /gethere [név/azonosító]\");
return 1;
}
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
GetPlayerPos(playerid, x, y, z);
SetPlayerPos(giveplayerid, x,y,z);
SetPlayerInterior(giveplayerid,GetPlayerInterior(playerid));
SetPlayerVirtualWorld(giveplayerid,GetPlayerVirtualWorld(playerid));
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
format(stringa, sizeof(stringa), \"Admin %s magához teleportált\", giveplayer);
GetPlayerName(playerid, sendername, sizeof(sendername));
SendClientMessage(giveplayerid, COLOR_RED, stringa);
format(stringa, sizeof(stringa), \"AdmWarning: %s magához teleportálta %s -t.\", sendername, giveplayer);
SendAdminMessage(COLOR_RED, stringa);
return 1;
}
}
}
return 1;
}
CMD:makeadmin(playerid, params[])
{
new sendername[MAX_PLAYER_NAME], level;
if(sscanf(params, \"ui\", giveplayerid, level))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /makeadmin [név/azonosító] [szint(0-5)]\");
return 1;
}
if(level < 0 || level > 6)
{
SendClientMessage(playerid, COLOR_RED, \"[HIBA]: 0 és 5 között legyen a szint!\");
return 1;
}
if(PlayerInfo[playerid][pAdmin] >= 5)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
format(stringa, sizeof(stringa), \"AdmWarning: %s kinevezte %s-t %d szintû adminnak!.\", sendername, giveplayer, level);
SendAdminMessage(COLOR_RED, stringa);
format(stringa, sizeof(stringa), \"%s felkért %d szintû adminnak. Parancsok: /ah(elp)\", sendername, level, giveplayer);
SendClientMessage(giveplayerid, COLOR_RED, stringa);
PlayerInfo[giveplayerid][pAdmin] = level;
return 1;
}
}
}
return 1;
}
CMD:kick(playerid, params[])
{
new indok[104], sendername[MAX_PLAYER_NAME];
if (PlayerInfo[playerid][pAdmin] >= 1)
{
if(sscanf(params, \"us[104]\", giveplayerid, indok))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /kick [név/azonosító] [indok]\");
return 1;
}
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
format(stringa, sizeof(stringa), \"*AdmCmd: %s ki lett rúgva %s által. Indok:%s\", giveplayer, sendername, indok);
SendClientMessageToAll(COLOR_RED, stringa);
Kick(giveplayerid);
}
}
} else {
SendClientMessage(playerid, COLOR_GRAD1, \"Nem vagy admin!\");
}
return 1;
}
CMD:warn(playerid, params[])
{
new indok[104], sendername[MAX_PLAYER_NAME];
if(sscanf(params, \"us[104]\", giveplayerid, indok))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /warn [név/azonosító] [indok]\");
return 1;
}
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(giveplayerid, giveplayer, sizeof(sendername));
if (PlayerInfo[playerid][pAdmin] >= 1)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
format(stringa, sizeof(stringa), \"Figyelmeztetve lettél %s által. [%d/5 warn] Indok: %s\", sendername, Warns[giveplayerid], indok);
SendClientMessage(giveplayerid, COLOR_YELLOW, stringa);
if(Warns[giveplayerid] == 5)
{
format(stringa, sizeof(stringa), \"*AdmCmd: %s ki lett tiltva a rendszer által. Ok: 5 figyelmeztetés\", giveplayer);
SendClientMessageToAll(COLOR_RED, stringa);
BanEx(giveplayerid, \"5 figyelmeztetés\");
return 1;
}
Warns[giveplayerid] ++;
format(stringa, sizeof(stringa), \"*AdmWarning: %s figyelmeztetve lett %s által. [%d/5 warn] Ok: %s\",giveplayer,sendername,Warns[giveplayerid], indok);
SendAdminMessage(COLOR_RED, stringa);
return 1;
}
}
}
return 1;
}
CMD:givemoney(playerid, params[])
{
new money, sendername[MAX_PLAYER_NAME];
if(sscanf(params, \"ui\", giveplayerid, money))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /givemoney [név/azonosító] [összeg]\");
return 1;
}
if (PlayerInfo[playerid][pAdmin] >= 5)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
GivePlayerMoney(giveplayerid, money);
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
format(stringa, sizeof(stringa), \"AdmWarning: %s pénzt adott neki: %s. [ÖSSZEG: %i]\", sendername, giveplayerid, money);
SendAdminMessage(COLOR_RED, stringa);
}
}
} else {
SendClientMessage(playerid, COLOR_GRAD1, \"Nem vagy 5ös admin!\");
}
return 1;
}
CMD:setvw(playerid, params[])
{
new vw;
if(sscanf(params, \"ui\", giveplayerid, vw))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /setvw [név/azonosító] [virtual world azonosító]\");
return 1;
}
if(PlayerInfo[playerid][pAdmin] >= 1)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
SetPlayerVirtualWorld(giveplayerid, vw);
SendClientMessage(playerid, COLOR_LIGHTGREEN, \"Játékos vw-je megváltoztatva!\");
}
}
} else {
SendClientMessage(playerid, COLOR_GRAD1, \"Nem vagy admin!\");
}
return 1;
}
CMD:akill(playerid, params[])
{
if(sscanf(params,\"u\",giveplayerid))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /akill [név/azonosító]\");
return 1;
}
if(PlayerInfo[playerid][pAdmin] >= 1)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
SetPlayerHealth(giveplayerid, 0);
SendClientMessage(playerid, COLOR_LIGHTGREEN, \"Játékos megölve!\");
}
}
} else {
SendClientMessage(playerid, COLOR_GRAD1, \"Nem vagy admin!\");
}
return 1;
}
CMD:setint(playerid, params[])
{
new interior;
if(sscanf(params,\"ui\",giveplayerid, interior))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /setint [név/azonosító] [interior azonosító]\");
return 1;
}
if(PlayerInfo[playerid][pAdmin] >= 1)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
SetPlayerInterior(giveplayerid, interior);
SendClientMessage(playerid, COLOR_LIGHTGREEN, \"Játékos belsõje megváltoztatva!\");
}
}
} else {
SendClientMessage(playerid, COLOR_GRAD1, \"Nem vagy admin!\");
}
return 1;
}
CMD:setscore(playerid, params[])
{
new score, sendername[MAX_PLAYER_NAME];
if(sscanf(params, \"ui\", giveplayerid, score))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /setscore [név/azonosító] [pont]\");
return 1;
}
if (PlayerInfo[playerid][pAdmin] >= 5)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
SetPlayerScore(giveplayerid, score);
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
format(stringa, sizeof(stringa), \"AdmWarning: %s pontot adott neki: %s. [ÉRTÉK: %i]\", sendername, giveplayer, score);
SendAdminMessage(COLOR_RED, stringa);
}
}
} else {
SendClientMessage(playerid, COLOR_GRAD1, \"Nem vagy 5ös admin!\");
}
return 1;
}
CMD:sethp(playerid, params[])
{
new hp, sendername[MAX_PLAYER_NAME];
if(sscanf(params, \"ui\", giveplayerid, hp))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /sethp [név/azonosító] [élet]\");
return 1;
}
if (PlayerInfo[playerid][pAdmin] >= 3)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
SetPlayerHealth(giveplayerid, hp);
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
format(stringa, sizeof(stringa), \"AdmWarning: %s átálította az életpontját neki: %s. [ÖSSZEG: %i]\", sendername, giveplayer, hp);
SendAdminMessage(COLOR_RED, stringa);
}
}
} else {
SendClientMessage(playerid, COLOR_GRAD1, \"Nem vagy 3as admin!\");
}
return 1;
}
CMD:setarmor(playerid, params[])
{
new armor, sendername[MAX_PLAYER_NAME];
if(sscanf(params, \"ui\", giveplayerid, armor))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /setarmor [név/azonosító] [pajzs]\");
return 1;
}
if (PlayerInfo[playerid][pAdmin] >= 3)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
SetPlayerArmour(giveplayerid, armor);
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
format(stringa, sizeof(stringa), \"AdmWarning: %s átálította a páncélját neki: %s. [ÖSSZEG: %i]\", sendername, giveplayer, armor);
SendAdminMessage(COLOR_RED, stringa);
}
}
} else {
SendClientMessage(playerid, COLOR_GRAD1, \"Nem vagy 3as admin!\");
}
return 1;
}
CMD:slap(playerid, params[])
{
if(sscanf(params, \"u\", giveplayerid)) return SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /slap [név/azonosító]\");
if (PlayerInfo[playerid][pAdmin] >= 1)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
GetPlayerPos(playerid, x, y, z);
SetPlayerPos(giveplayerid, x,y,z+10);
}
}
} else {
SendClientMessage(playerid, COLOR_GRAD1, \"Nem vagy admin!\");
}
return 1;
}
CMD:fly(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] >=1)
{
GetPlayerPos(playerid, x, y, z);
SetPlayerPos(playerid, x+10, y, z+5);
} else {
SendClientMessage(playerid, COLOR_GRAD1, \"Nem vagy admin!\");
}
return 1;
}
CMD:up(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] >=1)
{
GetPlayerPos(playerid, x, y, z);
SetPlayerPos(playerid, x, y, z+5);
} else {
SendClientMessage(playerid, COLOR_GRAD1, \"Nem vagy admin!\");
}
return 1;
}
CMD:dn(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] >=1)
{
GetPlayerPos(playerid, x, y, z);
SetPlayerPos(playerid, x, y, z-5);
} else {
SendClientMessage(playerid, COLOR_GRAD1, \"Nem vagy admin!\");
}
return 1;
}
CMD:asay(playerid, params[])
{
new sendername[MAX_PLAYER_NAME];
new result[95];
if (PlayerInfo[playerid][pAdmin] <= 1)
{
SendClientMessage(playerid, COLOR_GRAD2, \"Nem vagy admin!\");
return 1;
}
if(sscanf(params, \"s[95]\", result)) return SendClientMessage(playerid, COLOR_GRAD2, \"Használat /asay [szöveg]\");
GetPlayerName(playerid, sendername, sizeof(sendername));
format(stringa, sizeof(stringa),\"*Admin %s: %s\", sendername, result);
SendClientMessageToAll(COLOR_LIGHTBLUE1, stringa);
return 1;
}
CMD:veh(playerid, params[])
{
new sendername[MAX_PLAYER_NAME];
new car, color1, color2;
if (PlayerInfo[playerid][pAdmin] <= 3)
{
SendClientMessage(playerid, COLOR_GRAD1, \"Nem vagy 3as admin!\");
return 1;
}
if(sscanf(params, \"iii\", car, color1, color2))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /veh [carid] [color1] [color2]\");
return 1;
}
if(car >= 400 || car <= 611) { SendClientMessage(playerid, COLOR_GREEN, \"Kocsi azonosítónak 400 és 611 közt kell lennie!\"); return 1; }
if(color1 >= 0 || color1 <= 255) { SendClientMessage(playerid, COLOR_GREEN, \"Szín 1 azonosítójának 0 és 255 közt kell lennie!\"); return 1; }
if(color2 >= 0 || color2 <= 255) { SendClientMessage(playerid, COLOR_GREEN, \"Szín 2 azonosítójának 0 és 255 közt kell lennie!\"); return 1; }
GetPlayerPos(playerid, x,y,z);
new carid = CreateVehicle(car, x,y,z, 0.0, color1, color2, 60000);
CreatedCars[CreatedCar] = carid;
CreatedCar ++;
format(stringa, sizeof(stringa), \" Jármû %d Spawnolva.\", carid);
SendClientMessage(playerid, COLOR_GREEN, stringa);
GetPlayerName(playerid, sendername, sizeof(sendername));
format(stringa, 256, \"AdmWarning: %s lehívott egy jármûvet.\",sendername);
SendAdminMessage(COLOR_RED, stringa);
printf(\"%s\", stringa);
return 1;
}
/*public OnPlayerCommandText(playerid, cmdtext[]) {
if(strcmp(cmd, \"/destroycars\", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pAdmin] < 4) return SendClientMessage(playerid, COLOR_GRAD1, \" Nem vagy jogosult használni ezt a parancsot!\");
DestroyVehicle(GetPlayerVehicleID(playerid));
GetPlayerName(playerid, sendername, sizeof(sendername));
SendClientMessage(playerid, COLOR_GREEN, \"Kocsi Megsemmisítve!\");
format(string, sizeof(string), \"AdmWarning: %s törölt egy jármûvet!\", sendername, giveplayer);
SendAdminMessage(COLOR_RED, string);
}
return 1;
}
if(strcmp(cmd, \"/rtc\", true) == 0|| strcmp(cmd, \"/respawnthiscar\", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pAdmin] < 2) return SendClientMessage(playerid, COLOR_GRAD1, \" Nem vagy jogosult használni ezt a parancsot!\");
SetVehicleToRespawn(GetPlayerVehicleID(playerid));
SendClientMessage(playerid, COLOR_GREEN, \"Kocsi Helyreálítva!\");
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), \"AdmWarning: %s respawnolt egy jármûvet!\", sendername, giveplayer);
SendAdminMessage(COLOR_RED, string);
}
return 1;
}
if (strcmp(cmd, \"/god\", true) == 0) {
if(PlayerInfo[playerid][pAdmin] >= 4) {
SetPlayerHealth(playerid, 100000);
}
else{
SendClientMessage(playerid, COLOR_RED, \"Nem vagy jogosult ezen parancs használatára!\");
}
return 1;
}
if(strcmp(cmd, \"/god-off\", true) == 0) {
if(PlayerInfo[playerid][pAdmin] >= 4) {
SetPlayerHealth(playerid, 100);
}
else{
SendClientMessage(playerid, COLOR_RED, \"Nem vagy jogosult ezen parancs használatára!\");
}
return 1;
}
if(strcmp(cmd, \"/a\", true) == 0|| strcmp(cmd, \"/admin\", true) == 0)
{
if(IsPlayerConnected(playerid))
{
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= \' \'))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: (/a)dmin [admin chat]\");
return 1;
}
format(string, sizeof(string), \"*%d Admin %s: %s\", PlayerInfo[playerid][pAdmin], sendername, result);
if (PlayerInfo[playerid][pAdmin] >= 1)
{
SendAdminMessage(COLOR_YELLOW, string);
}
printf(\"Admin %s: %s\", sendername, result);
}
return 1;
}
if(strcmp(cmd, \"/goto\", true) == 0) {
if (PlayerInfo[playerid][pAdmin] >=2)
{
tmp = strtok(cmdtext, idx);
giveplayerid = ReturnUser(tmp);
Goto(playerid, giveplayerid);
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
format(string, sizeof(string), \"AdmWarning: %s odateleportált %s -hoz/hez.\", sendername, giveplayer);
SendAdminMessage(COLOR_RED, string);
}else {
SendClientMessage(playerid, COLOR_RED, \"Nem vagy admin\");
}
return 1;
}
if(strcmp(cmd, \"/gethere\", true) == 0)
{
if(PlayerInfo[playerid][pAdmin] >= 3)
{
tmp = strtok(cmdtext,idx);
if(!strlen(tmp))
{
SendClientMessage(playerid,COLOR_GRAD1,\"Használat: /gethere [Játékos ID]\");
return 1;
}
giveplayerid = ReturnUser(tmp);
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
SetPlayerPos(giveplayerid, x,y,z);
SetPlayerInterior(giveplayerid,GetPlayerInterior(playerid));
SetPlayerVirtualWorld(giveplayerid,GetPlayerVirtualWorld(playerid));
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
format(string, sizeof(string), \"Admin %s magáhozteleportált\", giveplayer);
GetPlayerName(playerid, sendername, sizeof(sendername));
SendClientMessage(giveplayerid, COLOR_RED, string);
format(string, sizeof(string), \"AdmWarning: %s magáhozteleportálta %s -t.\", sendername, giveplayer);
SendAdminMessage(COLOR_RED, string);
return 1;
}
}
}
}
if(strcmp(cmd, \"/makeadmin\", true) == 0)
{
if(PlayerInfo[playerid][pAdmin] >= 5)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, \"Használat: /makeadmin [JátékosID] [sZINT: 1-5]\");
return 1;
}
giveplayerid = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
new level = strval(tmp);
if(level < 0 || level > 1338) { SendClientMessage(playerid, COLOR_RED, \"[HIBA:] 0-5 = Hibás szint.\"); return 1; }
SendClientMessage(playerid, COLOR_RED, \"Sikeres adminfelkérés\");
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
format(string, sizeof(string), \"AdmWarning: %s kinevezte %s-t %d szintû adminnak!.\", sendername, giveplayer, level);
SendAdminMessage(COLOR_RED, string);
format(string, sizeof(string), \"%s felékért %d szintû adminnak. Parancsok: /ah(elp)\", sendername, level, giveplayer);
SendClientMessage(giveplayerid, COLOR_RED, string);
PlayerInfo[giveplayerid][pAdmin] = level;
return 1;
}
}
}
}
if(strcmp(cmd, \"/kick\", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /kick [Játékos id/név] [indok]\");
return 1;
}
new kick;
kick = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
if (PlayerInfo[playerid][pAdmin] >= 1)
{
if(IsPlayerConnected(kick))
{
if(kick != INVALID_PLAYER_ID)
{
new text[128];
new kickname[MAX_PLAYER_NAME];
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(kick, kickname, sizeof(kickname));
format(string, sizeof(string), \"*AdmCmd: %s kickelve lett %s által. Indok:[%s]\", kickname, sendername, text);
SendClientMessageToAll(COLOR_RED, string);
Kick(kick);
}
}
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, \"Nem vagy admin\");
}
return 1;
}
if(strcmp(cmd, \"/warn\", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /warn [Játékos id/név] [indok]\");
return 1;
}
new warn;
new result[128];
warn = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(giveplayerid, giveplayer, sizeof(sendername));
if (PlayerInfo[playerid][pAdmin] >= 1)
{
if(IsPlayerConnected(warn))
{
if(warn != INVALID_PLAYER_ID)
{
format(string, sizeof(string), \"Figyelmeztetve lettél %s által. Indok: [%s]\", sendername, result);
SendClientMessage(giveplayerid, COLOR_YELLOW, string);
if(Warns[warn] == 3)
{
format(string, sizeof(string), \"*AdmCmd: %s bannolva lett a rendszer által. Ok: 3 Figyelmeztetés\", giveplayer);
SendClientMessageToAll(COLOR_RED, string);
BanEx(warn, \"3 figyelmeztetés\");
return 1;
}
Warns[warn] ++;
format(string, sizeof(string), \"*AdmWarning: %s figyelmezettve lett %s által. Ok: [%s]\",giveplayer,sendername, result);
SendAdminMessage(COLOR_RED, string);
return 1;
}
}
}
}
}
if(strcmp(cmd, \"/givemoney\", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /givemoney [Játékos id/név] [összeg]\");
return 1;
}
new playa;
new money;
playa = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
money = strval(tmp);
if (PlayerInfo[playerid][pAdmin] >= 5)
{
if(IsPlayerConnected(playa))
{
if(playa != INVALID_PLAYER_ID)
{
GivePlayerMoney(playa, money);
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(playa, giveplayer, sizeof(giveplayer));
format(string, sizeof(string), \"AdmWarning: %s pénzt adott neki: %s. [ÖSSZEG: %i]\", sendername, giveplayerid, money);
SendAdminMessage(COLOR_RED, string);
}
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, \" Nem vagy jogosult használni ezt a parancsot!\");
}
}
return 1;
}
if(strcmp(cmd, \"/setvw\", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /setvw [Játékos id/név] [Érték]\");
return 1;
}
new vw;
new ertek;
vw = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
ertek = strval(tmp);
if(PlayerInfo[playerid][pAdmin] >=1)
{
if(IsPlayerConnected(vw))
{
if(vw != INVALID_PLAYER_ID)
{
SetPlayerVirtualWorld(vw, ertek);
SendClientMessage(playerid, COLOR_LIGHTGREEN, \"Játékos vw-je megváltoztatva!\");
}
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, \" Nem vagy jogosult használni ezt a parancsot\");
}
}
return 1;
}
if(strcmp(cmd, \"/akill\", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /akill [Játékos id/név]\");
return 1;
}
new kill;
kill = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
if(PlayerInfo[playerid][pAdmin] >=1)
{
if(IsPlayerConnected(kill))
{
if(kill != INVALID_PLAYER_ID)
{
SetPlayerHealth(kill, 0);
SendClientMessage(playerid, COLOR_LIGHTGREEN, \"Játékos megölve!\");
}
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, \" Nem vagy jogosult használni ezt a parancsot\");
}
}
return 1;
}
if(strcmp(cmd, \"/setint\", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /setint [Játékos id/név] [Érték]\");
return 1;
}
new interior;
new ertek;
interior = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
ertek = strval(tmp);
if(PlayerInfo[playerid][pAdmin] >=1)
{
if(IsPlayerConnected(interior))
{
if(interior != INVALID_PLAYER_ID)
{
SetPlayerInterior(interior, ertek);
SendClientMessage(playerid, COLOR_LIGHTGREEN, \"Játékos interiorja megváltoztatva!\");
}
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, \" Nem vagy jogosult használni ezt a parancsot\");
}
}
return 1;
}
if(strcmp(cmd, \"/givescore\", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /givescore [Játékos id/név] [összeg]\");
return 1;
}
new playa;
new score;
playa = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
score = strval(tmp);
if (PlayerInfo[playerid][pAdmin] >= 5)
{
if(IsPlayerConnected(playa))
{
if(playa != INVALID_PLAYER_ID)
{
SetPlayerScore(playa, score);
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(playa, giveplayer, sizeof(giveplayer));
format(string, sizeof(string), \"AdmWarning: %s pontot adott neki: %s. [ÖSSZEG: %i]\", sendername, giveplayer, score);
SendAdminMessage(COLOR_RED, string);
}
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, \" Nem vagy jogosult használni ezt a parancsot!\");
}
}
return 1;
}
if(strcmp(cmd, \"/sethp\", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /sethp [Játékos id/név] [összeg]\");
return 1;
}
new score;
new player;
player = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
score = strval(tmp);
if (PlayerInfo[playerid][pAdmin] >= 3)
{
if(IsPlayerConnected(player))
{
if(player != INVALID_PLAYER_ID)
{
SetPlayerHealth(player, score);
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(player, giveplayer, sizeof(giveplayer));
format(string, sizeof(string), \"AdmWarning: %s átálította az életpontját neki: %s. [ÖSSZEG: %i]\", sendername, giveplayer, score);
SendAdminMessage(COLOR_RED, string);
}
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, \" Nem vagy jogosult használni ezt a parancsot!\");
}
}
return 1;
}
if(strcmp(cmd, \"/setarmor\", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /setarmor [Játékos id/név] [összeg]\");
return 1;
}
new score;
new player;
player = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
score = strval(tmp);
if (PlayerInfo[playerid][pAdmin] >= 3)
{
if(IsPlayerConnected(player))
{
if(player != INVALID_PLAYER_ID)
{
SetPlayerHealth(player, score);
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(player, giveplayer, sizeof(giveplayer));
format(string, sizeof(string), \"AdmWarning: %s átálította a páncélját neki: %s. [ÖSSZEG: %i]\", sendername, giveplayer, score);
SendAdminMessage(COLOR_RED, string);
}
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, \" Nem vagy jogosult használni ezt a parancsot!\");
}
}
return 1;
}
if(strcmp(cmd, \"/slap\", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /slap [Játékos id/név]\");
return 1;
}
new slap;
slap = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
if (PlayerInfo[playerid][pAdmin] >= 1)
{
if(IsPlayerConnected(slap))
{
if(slap != INVALID_PLAYER_ID)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
SetPlayerPos(slap, x,y,z+10);
}
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, \" Nem vagy jogosult használni ezt a parancsot!\");
}
}
return 1;
}
if(strcmp(cmd, \"/fly\", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pAdmin] >=1)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
SetPlayerPos(playerid, x+10, y, z+5);
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, \" Nem vagy jogosult használni ezt a parancsot!\");
}
return 1;
}
if(strcmp(cmd, \"/up\", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pAdmin] >=1)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
SetPlayerPos(playerid, x, y, z+5);
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, \" Nem vagy jogosult használni ezt a parancsot!\");
}
return 1;
}
if(strcmp(cmd, \"/dn\", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pAdmin] >=1)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
SetPlayerPos(playerid, x, y, z-5);
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, \" Nem vagy jogosult használni ezt a parancsot!\");
}
return 1;
}
if(strcmp(cmd, \"/asay\", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if (PlayerInfo[playerid][pAdmin] <= 1)
{
SendClientMessage(playerid, COLOR_GRAD2, \"Nem vagy admin!\");
return 1;
}
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= \' \'))
{
idx++;
}
new offset = idx;
new result[128];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_WHITE, \"HASZNÁLAT: /asay [szöveg]\");
return 1;
}
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string),\"*Admin %s: %s\", sendername, result);
SendClientMessageToAll(COLOR_LIGHTBLUE1, string);
}
return 1;
}
if(strcmp(cmd, \"/veh\", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if (PlayerInfo[playerid][pAdmin] <= 3)
{
SendClientMessage(playerid, COLOR_GRAD1, \"Nem vagy jogosult a használatára!\");
return 1;
}
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, \"USAGE: /veh [carid] [color1] [color2]\");
return 1;
}
new car;
car = strval(tmp);
if(car < 400 || car > 611) { SendClientMessage(playerid, COLOR_GREEN, \" KocsiIDnek 400 és 611 közt kell lennie! !\"); return 1; }
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, \"USAGE: /veh [carid] [color1] [color2]\");
return 1;
}
new color1;
color1 = strval(tmp);
if(color1 < 0 || color1 > 126) { SendClientMessage(playerid, COLOR_GREEN, \" Szin ID-nek 0 és 126 közt kell lennie !\"); return 1; }
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, \"USAGE: /veh [carid] [color1] [color2]\");
return 1;
}
new color2;
color2 = strval(tmp);
if(color2 < 0 || color2 > 126) { SendClientMessage(playerid, COLOR_GREEN, \" Szin ID-nek 0 és 126 közt kell lennie !\"); return 1; }
new Float:X,Float:Y,Float:Z;
GetPlayerPos(playerid, X,Y,Z);
new carid = CreateVehicle(car, X,Y,Z, 0.0, color1, color2, 60000);
CreatedCars[CreatedCar] = carid;
CreatedCar ++;
format(string, sizeof(string), \" Jármû %d Spawnolva.\", carid);
SendClientMessage(playerid, COLOR_GREEN, string);
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, 256, \"AdmWarning: %s le hívott egy jármûvet.\",sendername);
SendAdminMessage(COLOR_RED, string);
printf(\"%s\", string);
}
return 1;
}
return 0;
}*/
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == ReGiStEr)
{
if(response)
{
new file[128];
new string[128];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof(name));
if(strlen(inputtext) == 0)
{
format(string, sizeof string, \"Regisztráció \\n\\nÜdv %s! \\nTe még nem vagy regisztrálva! \\n\\nKérjük regisztrálj.\", name);
ShowPlayerDialog(playerid, ReGiStEr, DIALOG_STYLE_INPUT, \"Regisztráció\", string, \"Register\", \"Cancel.\");
return 0;
}
format(file,sizeof(file),\"%s.ini\",name);
if(!fexist(file))
{
dini_Create(file);
dini_IntSet(file,\"Password\", udb_hash(inputtext));
dini_IntSet(file,\"pScore\", GetPlayerScore(playerid));
dini_IntSet(file,\"pMoney\", GetPlayerMoney(playerid));
dini_IntSet(file,\"pDeaths\", PlayerInfo[playerid][pDeaths]);
dini_IntSet(file,\"pKills\", PlayerInfo[playerid][pKills]);
dini_IntSet(file,\"pAdmin\", PlayerInfo[playerid][pAdmin]);
dini_IntSet(file, \"Seconds\", 0);
dini_IntSet(file, \"Minutes\", 0);
dini_IntSet(file, \"Hours\", 0);
dini_IntSet(file, \"Days\", 0);
format(string, sizeof string,\"Bejelentkezés \\n\\nÜdv %s! \\nTe regisztrálva vagy! \\n\\nKérjük jelentkezz be.\", name);
ShowPlayerDialog(playerid, LoGiN, DIALOG_STYLE_INPUT, \"Bejelentkezés\", string, \"Login\", \"Cancel.\");
PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
GetPlayerName(playerid, name, sizeof(name));
printf(\"%s sikeresen regisztrált!\", name);
}
}
if(!response) return Kick(playerid);
}
if(dialogid == LoGiN)
{
if(response)
{
new file[128];
new string[128];
new PlayerName[24];
if(strlen(inputtext) == 0)
{
GetPlayerName(playerid, PlayerName, sizeof PlayerName);
format(string, sizeof string, \"Bejelentkezés \\n\\nÜdv %s! \\nTe regisztrálva vagy! \\n\\nKérjük jelentkezz be.\", PlayerName);
ShowPlayerDialog(playerid, LoGiN, DIALOG_STYLE_INPUT, \"Bejelentkezés\", string, \"Login\", \"Cancel.\");
return 0;
}
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof(name));
format(file,sizeof(file),\"%s.ini\",name);
if(fexist(file))
{
new password = dini_Int(file, \"Password\");
if(udb_hash(inputtext) != password)
{
SendClientMessage(playerid, COLOR_RED, \"Hiba: Nem jó jelszó!\");
Kick(playerid);
GetPlayerName(playerid, PlayerName, sizeof(PlayerName));
printf(\"%s Nem tudott bejelentkezni!\", name);
}
else
{
IsLogged[playerid] = 1;
ResetPlayerMoney(playerid);
SetPlayerScore(playerid, dini_Int(file,\"pScore\"));
GivePlayerMoney(playerid, dini_Int(file,\"pMoney\"));
PlayerInfo[playerid][pDeaths] = dini_Int(file,\"pDeaths\");
PlayerInfo[playerid][pKills] = dini_Int(file,\"pKills\");
PlayerInfo[playerid][pAdmin] = dini_Int(file,\"pAdmin\");
PlayerTime[playerid][seconds] = dini_Int(file, \"Seconds\");
PlayerTime[playerid][Minutes] = dini_Int(file, \"Minutes\");
PlayerTime[playerid][Hours] = dini_Int(file, \"Hours\");
PlayerTime[playerid][Days] = dini_Int(file, \"Days\");
SendClientMessage(playerid, COLOR_GREEN, \"Sikeresen be jelentkeztél!\");
TogglePlayerSpectating(playerid, 0);
SendClientMessage(playerid, COLOR_GRAD1, \"Csatlakoztál a szerverre, kilépéskor a változások mentõdnek!\");
}
}
}
if(!response) return Kick(playerid);
}
return 0;
}
public SendAdminMessage(color, string[])
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo[pAdmin] >= 1)
{
SendClientMessage(i, color, string);
}
}
}
}
public PlayedTime(playerid)
{
if(!IsPlayerConnected(playerid)) return 0;
PlayerTime[playerid][seconds]++;
if(PlayerTime[playerid][seconds] == 60)
{
PlayerTime[playerid][Minutes]++;
PlayerTime[playerid][seconds] = 0;
}
if(PlayerTime[playerid][Minutes] == 60)
{
PlayerTime[playerid][Hours]++;
PlayerTime[playerid][Minutes] = 0;
}
if(PlayerTime[playerid][Hours] == 24)
{
PlayerTime[playerid][Days]++;
PlayerTime[playerid][Hours] = 0;
}
return 1;
}
public RestartServer( ) {
--serverCount;
if( !serverCount ) {
inProgress = false;
SendRconCommand( \"gmx\" );
KillTimer( restartTimer );
return;
}
static formatString[ 3 ];
format( formatString, 3, \"%d\", serverCount );
GameTextForAll( formatString, 1000, 6 );
}
stock Goto(playerid, toplayerid)
{
new Float:xd[3];
GetPlayerPos(toplayerid,xd[0],xd[1],xd[2]);
SetPlayerPos(playerid,xd[0],xd[1]-2.2,xd[2]+0.5);
return 1;
}
public CarRespawn()
{
for(new vid = 0; vid < MAX_VEHICLES; vid ++)
if(!IsVehicleOccupied(vid))SetVehicleToRespawn(vid); return SendClientMessageToAll(0x33CCFFAA, \"* Minden használaton kívüli jármû helyreállítva!\");
}
stock IsVehicleOccupied(vehicleid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
if(IsPlayerInVehicle(i, vehicleid))
return 1;
return 0;
}
stock pName(playerid) {
new name[24];
GetPlayerName(playerid,name,24);
return name;
}