Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- CHODTE DO PIČE
- */
- //============ INCLUDE
- #include <a_samp>
- #include <dini>
- //============ DEFINE
- #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
- #define WEB "www.mojkokot.sk"
- #define COLOR_RED 0xFF0000AA
- #define COLOR_GREEN 0x40FF40FF
- #define COLOR_DARKGREEN 0x33AA33AA
- #define COLOR_PINK 0xFF40FFFF
- #define COLOR_YELLOW 0xFFFF00AA
- #define COLOR_VIOLET 0xEE82EEFF
- #define COLOR_DARKVIOLET 0x9400D3FF
- #define COLOR_DARKRED 0x8B0000FF
- #define COLOR_LIGHTBLUE 0x00FFFFAA
- #define COLOR_ORANGE 0xFFA500FF
- #define COLOR_DARKORANGE 0xFF8C00FF
- #define COLOR_BLUE 0x0000BBAA
- #define COLOR_GREY 0xAFAFAFAA
- #define COLOR_WHITE 0xFFFFFFAA
- #define COLOR_BLACK 0x00000000
- #define COLOR_MODRA 0x0000BBAA
- #define COLOR_MODRA2 0x4682B4AA
- #define COLOR_MODRA3 0x4169FFAA
- #define COLOR_SVMODRA 0x33CCFFAA
- #define COLOR_ZELENA 0x008000AA
- #define COLOR_CYAN 0x00FFFFAA
- #define COLOR_TMAVACYAN 0x008B8BAA
- #define COLOR_BILA 0xFFFFFFAA
- #define COLOR_ZLUTA 0xFFFF00AA
- #define COLOR_HNEDA 0xA52A2AAA
- #define COLOR_HNEDA2 0xBC8F8FAA
- #define COLOR_COKOLADA 0xD2691EAA
- #define COLOR_CERVENA 0xFF0000AA
- #define COLOR_SEDA 0x808080AA
- #define COLOR_FIALOVA 0x800080AA
- #define COLOR_RUZOVA 0xFFC0CBAA
- #define COLOR_CHARTR 0x7FFF00AA
- #define COLOR_ORANZCERV 0xFF4500AA
- #define COLOR_ORANZOVA 0xFF8C00AA
- #define COLOR_CIERNA 0x0B0606AA
- #define COLOR_SYSTEM 0xEFEFF7AA
- #define COLOR_GOLD 0xffd700AA
- //============ PRAGMA
- #pragma tabsize 0
- #undef MAX_PLAYERS
- #define MAX_PLAYERS 70
- //============ NEWS
- new bool:ZAKAZ;
- new bool:kokos[MAX_PLAYERS];
- new Menu:Farby;
- new autacky[15][MAX_PLAYERS];
- new vip[MAX_PLAYERS];
- new bool:message[MAX_PLAYERS];
- new bool:VIPZBRANE[MAX_PLAYERS];
- new Text3D:vehicletext[MAX_PLAYERS];
- new bool:pozicia[MAX_PLAYERS];
- new bool:heal[MAX_PLAYERS];
- new bool:many[MAX_PLAYERS];
- new bool:zbrane[MAX_PLAYERS];
- new bool:vgoto[MAX_PLAYERS];
- new bool:nnitro[MAX_PLAYERS];
- new bool:vload[MAX_PLAYERS];
- new bool:afkspam[MAX_PLAYERS];
- new bool:flashcar[MAX_PLAYERS];
- new bool:flashnick[MAX_PLAYERS];
- new Float:xx[MAX_PLAYERS];
- new Float:yy[MAX_PLAYERS];
- new Float:zz[MAX_PLAYERS];
- new AFK[MAX_PLAYERS];
- new flasht1[MAX_PLAYERS];
- new flasht2[MAX_PLAYERS];
- //================== FORWARD
- forward spam(playerid);
- forward vgotoo(playerid);
- forward vloadd(playerid);
- forward Heal(playerid);
- forward Zbrane(playerid);
- forward Many(playerid);
- forward Nitroo(playerid);
- forward afkk(playerid);
- forward Timer1();
- forward Timer2();
- forward Timer3();
- forward DateRepair();
- forward FlashTimer1(playerid);
- forward FlashTimer2(playerid);
- //============ STOCK
- stock Jmeno(playerid)
- {
- new pName[MAX_PLAYER_NAME];
- if(IsPlayerConnected(playerid))
- {
- GetPlayerName(playerid, pName, sizeof(pName));
- }
- return pName;
- }
- chrfind(n,h[],s=0)
- {
- new l=strlen(h);
- while(s<l)
- {
- if(h[s]==n)
- return s;s++;
- }
- return -1;
- }
- //============================================ PUBLIC ON FILTER SCRIPT INIT
- public OnFilterScriptInit()
- {
- SendClientMessageToAll(COLOR_BILA, "{FFFFFF}VIP Systém {00ff00}v4 {FFFFFF}by {0000FF}QWER");
- AntiDeAMX();
- Farby = CreateMenu("~r~[VIP] ~w~Barvy", 1, 50.0, 180.0, 280.0, 200.0);
- AddMenuItem(Farby, 0, "Modra Barva");
- AddMenuItem(Farby, 0, "Zelena Barva");
- AddMenuItem(Farby, 0, "Oranzova Barva");
- AddMenuItem(Farby, 0, "Fialova Barva");
- AddMenuItem(Farby, 0, "Hneda Barva");
- AddMenuItem(Farby, 0, "Cervena Barva");
- AddMenuItem(Farby, 0, "Cierna Barva");
- AddMenuItem(Farby, 0, "Konec");
- SetTimer("DateRepair",180000,true);
- return 1;
- }
- //============================================ PUBLIC ON PLAYER SELECTED MENU ROW
- public DateRepair(){
- for(new i; i < GetMaxPlayers();i++){
- if(vip[i] == 1){
- new file[50],string[128];
- format(file,sizeof(file),"VIP/%s.ini",Jmeno(i));
- if(dini_Int(file,"Time")-gettime() < 0){
- if(!strcmp("QWER",Jmeno(i),true)) return 0;
- format(string,128,"[VIP] Tvoj VIP Account vypršal %s, Kúp si nový na %s",date(dini_Int(file,"Time"),1),WEB);
- SendClientMessage(i,0xFFFFFF,string);
- dini_Remove(file);
- vip[i] = 0;
- }
- }
- }
- return true;
- }
- public OnPlayerSelectedMenuRow(playerid, row)
- {
- new Menu:Current = GetPlayerMenu(playerid);
- if (Current == Farby ) {
- switch(row) {
- case 0:{SendClientMessage(playerid, COLOR_CERVENA, "[VIP]: Tvoje barva nicku je Modrá !");
- SetPlayerColor(playerid, COLOR_MODRA);
- }
- case 1:{SendClientMessage(playerid, COLOR_CERVENA, "[VIP]: Tvoje barva nicku je Zelená !");
- SetPlayerColor(playerid, COLOR_ZELENA);
- }
- case 2:{SendClientMessage(playerid, COLOR_CERVENA, "[VIP]: Tvoje barva nicku je Oranžová !");
- SetPlayerColor(playerid, COLOR_ORANZOVA);
- }
- case 3:{SendClientMessage(playerid, COLOR_CERVENA, "[VIP]: Tvoje barva nicku je Fialová !");
- SetPlayerColor(playerid, COLOR_FIALOVA);
- }
- case 4:{SendClientMessage(playerid, COLOR_CERVENA, "[VIP]: Tvoje barva nicku je Hnědá !");
- SetPlayerColor(playerid, COLOR_HNEDA);
- }
- case 5:{SendClientMessage(playerid, COLOR_CERVENA, "[VIP]: Tvoje barva nicku je Červená !");
- SetPlayerColor(playerid, COLOR_CERVENA);
- }
- case 6:{SendClientMessage(playerid, COLOR_CERVENA, "[VIP]: Tvoje barva nicku je Černá !");
- SetPlayerColor(playerid, COLOR_CIERNA);
- }}}
- return 1;
- }
- //============================================ PUBLIC ON FILTER SCRIPT EXIT
- public OnFilterScriptExit()
- {
- SendClientMessageToAll(COLOR_BILA, "{FFFFFF}VIP Systém {00ff00}v4 {FFFFFF}by {0000FF}QWER {FFFFFF}sa vypol");
- return 1;
- }
- //============================================ PUBLIC ON PLAYER SPAWN
- public OnPlayerSpawn(playerid)
- {
- if(vip[playerid] ==0){
- KillTimer(flasht1[playerid]);
- KillTimer(flasht2[playerid]);
- }
- if(vip[playerid] == 1 && VIPZBRANE[playerid] == true && ZAKAZ){
- GivePlayerWeapon(playerid, 9, 1);
- GivePlayerWeapon(playerid, 30, 700);
- GivePlayerWeapon(playerid, 27, 370);
- GivePlayerWeapon(playerid, 24, 453);
- SetPlayerArmour(playerid,100);
- SendClientMessage(playerid, COLOR_CERVENA, "[VIP]: Jako VIP hráč po spawnu si obdržel pár zbraní a vestu !");
- }
- return 1;
- }
- //============================================ PUBLIC ON PLAYER DEATH
- public OnPlayerDeath(playerid, killerid, reason)
- {
- if(vip[playerid] == 1 && VIPZBRANE[playerid]){
- new Float:X,Float:Y,Float:Z;
- GetPlayerPos(playerid, X,Y,Z);
- CreateExplosion(X,Y,Z,4,10);
- }
- return 1;
- }
- //============================================ PUBLIC ON PLAYER DISCONNECT
- public OnPlayerDisconnect(playerid, reason)
- {
- KillTimer(flasht1[playerid]);
- KillTimer(flasht2[playerid]);
- for(new i = 0; i < 15; i++){
- DestroyVehicle(autacky[i][playerid]);
- autacky[i][playerid] = 0;
- }
- return 1;
- }
- //============================================ PUBLIC ON PLAYER TEXT
- public OnPlayerText(playerid, text[]){
- if(vip[playerid] == 1){
- SendPlayerMessageToAll(playerid, ColouredText(text));
- return 0;
- }
- return 1;
- }
- stock ColouredText(text[])
- {
- enum
- colorEnum
- {
- colorName[16],
- colorID[7]
- }
- ;
- new
- colorInfo[][colorEnum] =
- {
- { "BLUE", "1B1BE0" },
- { "PINK", "E81CC9" },
- { "YELLOW", "DBED15" },
- { "LIGHTGREEN", "8CED15" },
- { "LIGHTBLUE", "15D4ED" },
- { "RED", "FF0000" },
- { "GREY", "BABABA" },
- { "WHITE", "FFFFFF" },
- { "ORANGE", "DB881A" },
- { "GREEN", "37DB45" },
- { "CYAN", "00FFFF" },
- { "MAGENTA", "FF00FF" },
- { "GOLD", "FFd700" },
- { "PURPLE", "7340DB" }
- },
- string[(128 + 32)],
- tempString[16],
- pos = -1,
- x
- ;
- strmid(string, text, 0, 128, sizeof(string));
- for( ; x != sizeof(colorInfo); ++x)
- {
- format(tempString, sizeof(tempString), "#%s", colorInfo[x][colorName]);
- while((pos = strfind(string, tempString, true, (pos + 1))) != -1)
- {
- new
- tempLen = strlen(tempString),
- tempVar,
- i = pos
- ;
- format(tempString, sizeof(tempString), "{%s}", colorInfo[x][colorID]);
- if(tempLen < 8)
- {
- for(new j; j != (8 - tempLen); ++j)
- {
- strins(string, " ", pos);
- }
- }
- for( ; ((string[i] != 0) && (tempVar != 8)) ; ++i, ++tempVar)
- {
- string[i] = tempString[tempVar];
- }
- if(tempLen > 8)
- {
- strdel(string, i, (i + (tempLen - 8)));
- }
- x = -1;
- }
- }
- return string;
- }
- //============================================ PUBLIC ON PLAYER CONNECT
- public OnPlayerConnect(playerid)
- {
- kokos[playerid] = false;
- vgoto[playerid] = false;
- many[playerid] = false;
- vload[playerid] = false;
- vip[playerid] = false;
- heal[playerid] = false;
- zbrane[playerid] = false;
- pozicia[playerid] = false;
- AFK[playerid] = false;
- afkspam[playerid] = false;
- SendClientMessage(playerid, COLOR_BILA, "Server použivá VIP script by {FF0000}QWER");
- SendClientMessage(playerid, COLOR_BILA, "Viac informácii nájdete na {00FF00}/vhelp");
- flashcar[playerid] = false;
- flashnick[playerid] = false;
- if(IsPlayerVIP(playerid)){
- vip[playerid] = 1;
- }
- KillTimer(flasht1[playerid]);
- KillTimer(flasht2[playerid]);
- return 1;
- }
- public OnPlayerRequestSpawn(playerid)
- {
- new pname[MAX_PLAYER_NAME],file[128],string[128];
- GetPlayerName(playerid, pname, sizeof(pname));
- format(file,sizeof(file),"VIP/%s.ini",pname);
- if(fexist(file)){
- if(dini_Int(file,"Time")-gettime() < 0){
- if(!strcmp("QWER",Jmeno(playerid),true)){
- vip[playerid] = 1;
- return 0;
- }
- if(!fexist(file)) return 0;
- format(string,128,"[VIP] Tvoj VIP Account vypršal %s, Kúp si nový na %s",date(dini_Int(file,"Time"),1),WEB);
- SendClientMessage(playerid,0xFFFFFF,string);
- dini_Remove(file);
- vip[playerid] = 0;
- }else{
- vip[playerid] = 1;
- SendClientMessage(playerid,COLOR_GREEN, "Vitaj VIP Hráč");
- }
- }else{
- vip[playerid] = 0;
- }
- if(vip[playerid] ==0){
- KillTimer(flasht1[playerid]);
- KillTimer(flasht2[playerid]);
- }
- return 1;
- }
- public Heal(playerid)
- {
- heal[playerid] = false;
- SendClientMessage(playerid,COLOR_GREEN, "Čas vypršel, příkaz /vheal jde znovu použit !");
- return 1;
- }
- public Zbrane(playerid)
- {
- zbrane[playerid] = false;
- SendClientMessage(playerid,COLOR_GREEN, "Čas vypršel, příkaz /vzbrane jde znovu použit !");
- return 1;
- }
- public Many(playerid)
- {
- many[playerid] = false;
- SendClientMessage(playerid,COLOR_GREEN, "Čas vypršel, příkaz /vmany jde znovu použit !");
- return 1;
- }
- public vgotoo(playerid)
- {
- vgoto[playerid] = false;
- SendClientMessage(playerid,COLOR_GREEN, "Čas vypršel, příkaz /vgoto jde znovu použit !");
- return 1;
- }
- public vloadd(playerid)
- {
- vload[playerid] = false;
- SendClientMessage(playerid,COLOR_GREEN, "Čas vypršel, příkaz /vload jde znovu použit !");
- return 1;
- }
- public Nitroo(playerid)
- {
- nnitro[playerid] = false;
- SendClientMessage(playerid,COLOR_GREEN, "Čas vypršel, příkaz /vnitro jde znovu použit !");
- return 1;
- }
- public spam(playerid)
- {
- message[playerid] = false;
- return 1;
- }
- //============================================ PUBLIC ON PLAYER COMMAND TEXT
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- //======================= 1
- //======================= 2
- //======================= 3
- dcmd(vip,3,cmdtext);
- dcmd(vme,3,cmdtext);
- //======================= 4
- dcmd(vcar,4,cmdtext);
- //======================= 5
- dcmd(vdcar,5,cmdtext);
- dcmd(vmany,5,cmdtext);
- dcmd(vheal,5,cmdtext);
- dcmd(vsave,5,cmdtext);
- dcmd(vload,5,cmdtext);
- dcmd(vgoto,5,cmdtext);
- dcmd(vskin,5,cmdtext);
- dcmd(vhelp,5,cmdtext);
- //====================== 6
- dcmd(vspawn,6,cmdtext);
- dcmd(vcolor,6,cmdtext);
- dcmd(vnitro,6,cmdtext);
- //======================= 7
- dcmd(vcolors,7,cmdtext);
- dcmd(azbrane,7,cmdtext);
- dcmd(vzbrane,7,cmdtext);
- dcmd(vrepair,7,cmdtext);
- dcmd(setvip,6,cmdtext);
- //======================= 8
- //======================= 9
- dcmd(vflashcar,9,cmdtext);
- dcmd(vchatcolor,10,cmdtext);
- dcmd(vflashnick,10,cmdtext);
- dcmd(vinvisible,10, cmdtext);
- dcmd(vhydraulics,11, cmdtext);
- dcmd(vflip,5, cmdtext);
- //======================= 10 a viac
- //mcmd(playerid,cmdtext[1],test);
- }
- //================================== VREGISTER
- dcmd_vchatcolor(playerid, params[]){
- #pragma unused params
- if(vip[playerid] == 0) return SendClientMessage(playerid, COLOR_CERVENA,"Nejsi vlastníkem VIP účtu !");
- SendClientMessage(playerid,COLOR_CERVENA,"[VIP] {E81CC9}Chceš {FFFFFF}písať {FF00FF}v chate farebne {00FFFF}ako {00FF00}to {0000FF}vidíš {99FFCC}tu ?");
- SendClientMessage(playerid,COLOR_CERVENA,"[VIP] {FFFFFF}Tak do chatu napíš tieto existujúce farby:");
- SendClientMessage(playerid,COLOR_CERVENA,"[VIP] {E81CC9}#PINK {DBED15}#YELLOW {8CED15}#LIGHTGREEN {15D4ED}#LIGHTBLUE {FF0000}#RED {BABABA}#GREY {1B1BE0}#BLUE");
- SendClientMessage(playerid,COLOR_CERVENA,"[VIP] {DB881A}#ORANGE {37DB45}#GREEN {00FFFF}#CYAN {FF00FF}#MAGENTA {FFD700}#GOLD {7340DB}#PURPLE {FFFFFF}#WHITE");
- SendClientMessage(playerid,COLOR_CERVENA,"[VIP] Výsledný text by mal vyzerať '{FFFFFF}#REDAhojte #GREENUž som#WHITE tu{FF0000}'");
- return 1;
- }
- dcmd_vinvisible(playerid, params[]){
- #pragma unused params
- if(vip[playerid] == 0) return SendClientMessage(playerid, COLOR_CERVENA,"Nejsi vlastníkem VIP účtu !");
- SetPVarInt(playerid, "OldColor", GetPlayerColor(playerid));
- SetPlayerColor(playerid,0xFFFFFF00);
- SendClientMessage(playerid,COLOR_CERVENA,"[VIP] Si neviditelný na radaru, za 2 minuty se staneš opět viditelným !");
- SetTimerEx("VisiblePlayer",60000,false,"i",playerid);
- return 1;
- }
- forward VisiblePlayer(playerid);
- public VisiblePlayer(playerid){
- if(vip[playerid] == 0) return 0;
- SetPlayerColor(playerid, GetPVarInt(playerid, "OldColor"));
- SendClientMessage(playerid,COLOR_CERVENA,"[VIP] Příkaz /vinvisible právě vypršel, nyní jsi viditelný na radaru !");
- return 1;
- }
- dcmd_vflip(playerid, params[]){
- #pragma unused params
- if(vip[playerid] == 0) return SendClientMessage(playerid, COLOR_CERVENA,"Nejsi vlastníkem VIP účtu !");
- new Float:z;
- if(IsPlayerInAnyVehicle(playerid)){
- GetVehicleZAngle(GetPlayerVehicleID(playerid),z);
- SetVehicleZAngle(GetPlayerVehicleID(playerid),z);
- SendClientMessage(playerid,COLOR_CERVENA,"[VIP] Auto úspěšně otočené zpátky na kolesa !");
- }else{
- SendClientMessage(playerid,COLOR_CERVENA,"[VIP] Nejsi ve vozidle !");
- }
- return 1;
- }
- //================================== SET VIP
- dcmd_setvip(playerid, params[])
- {
- new string[128];
- if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,COLOR_CERVENA ,"Pouze Hlavní Administrátor přihlášený přez Rcon může nastavit VIP účet !");
- new ID,MESIAC,DEN,HODINA,MINUTA,level;
- if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, 0xFFFFFFFF, "Neisi admin !");
- if(sscanf(params, "iiiiii", ID,level,MESIAC,DEN,HODINA,MINUTA)) return SendClientMessage(playerid, 0xFFFFFFFF, "/setvip [playerid] [level] [mesiac] [den] [hodina] [minuta]");
- if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, 0xFFFFFFFF, "ID nieje online!");
- if(level < 0 || level > 1) return SendClientMessage(playerid, COLOR_CERVENA, "Špatné zadání !");
- new DATE = gettime()+mktime(HODINA,MINUTA,0,DEN,MESIAC,0);
- new file[128];
- format(file,sizeof(file),"VIP/%s.ini",Jmeno(ID));
- if(level == 1) {
- if(fexist(file)) return SendClientMessage(playerid, COLOR_CERVENA, "Tento hráč už VIP level má !");
- format(string, sizeof(string), "Hlavní Administrátor %s nastavil hráči %s VIP účet do %s !", Jmeno(playerid),Jmeno(ID),date(DATE,1));
- dini_Create(file);
- dini_IntSet(file,"Time",DATE);
- }
- else if(level == 0){
- if(!fexist(file)) return SendClientMessage(playerid, COLOR_CERVENA, "Tento hráč nemá VIP level!");
- format(string, sizeof(string), "Hlavní Administrátor %s sebral hráči %s VIP účet !", Jmeno(playerid),Jmeno(ID));
- dini_Remove(file);
- }
- SendClientMessageToAll(0xFF0000AA, string);
- vip[ID] = level;
- return true;
- }
- //================================== VIP
- dcmd_vip(playerid, params[]){
- #pragma unused params
- new string[128];
- SendClientMessage(playerid,COLOR_CERVENA ,"[ VIP ] On-Line hráči...");
- for(new i=0;i<=MAX_PLAYERS;i++)
- {
- if(IsPlayerConnected(i))
- {
- if(vip[i] == 1)
- {
- format(string, 60, "[ VIP hráč ] %s [ ! ]",Jmeno(i));
- SendClientMessage(playerid,COLOR_CERVENA,string);
- }
- }
- }
- return 1;
- }
- //================================= VIP CAR/
- dcmd_vcar(playerid, params[])
- {
- if(vip[playerid] == 0) return SendClientMessage(playerid, COLOR_CERVENA,"Nejsi vlastníkem VIP účtu !");
- new ID = strval(params);
- if(!strlen(params)) return SendClientMessage(playerid, COLOR_CERVENA, "Použi příkazu /vcar id auta");
- if( ID < 400 || ID > 611 ) return SendClientMessage(playerid, COLOR_CERVENA, "Rozmezí aut je 400 - 611 !");
- if(autacky[14][playerid] != 0) return SendClientMessage(playerid, COLOR_RED, "Na serveru je moc vozidel, maximum sou (15)! musíš je nejprv vymazat příkazem /vdcar !");
- SendClientMessage(playerid, COLOR_BILA,"Perr.404,Ranch.489,Regina.479,Romero.442,Virgo.491,Greenw.492,Buff.402,Phoen.603");
- SendClientMessage(playerid, COLOR_BILA,"Sult.560,Limo.409,Admiral.445,Blista.496,Turism.451,Jester.559,Elegy.562,Strat.561");
- SendClientMessage(playerid, COLOR_BILA,"Vzdusne: PolMav.497,Raind.563,NewMav.488,Mave.487,SeaSpar.447,Rust.476,Stunt.563,Hydra.520");
- SendClientMessage(playerid, COLOR_BILA,"Vodni: CoastGur.472,Dingy.473,Speeder.452,Squallo.446,Tropic.454,JetMax.493,Marquis.484,Tor.451");
- SendClientMessage(playerid, COLOR_BILA,"Vlada: Enf.427,Ambulance.416,FBI.490,Tank.432,STank.601,Autobus.437/431,Taxi.438/420,Inf.411");
- SendClientMessage(playerid, COLOR_BILA,"Kola: Bmx.481,NRG.522,Sanch.468,Fagg.462,Freew.463,PCJ.461,Mountain.510,BF400.581,Patr.470");
- new Float:X,Float:Y,Float:Z,Float:SVK,s[50];
- GetPlayerPos(playerid, X,Y,Z);
- SendClientMessage(playerid,COLOR_BILA,"Auto úspěšně vytvořeno !");
- for(new i;i < 15;i++){
- if(autacky[i][playerid] == 0){
- autacky[i][playerid] = CreateVehicle(ID,X,Y,Z,SVK,-1,-1,6000);
- format(s,50,"*** Todle vozidlo patří VIP hráči ***",Jmeno(playerid));
- vehicletext[playerid] = Create3DTextLabel(s, COLOR_WHITE, 0.0, 0.0, 0.0, 50.0, 0, 1 );
- Attach3DTextLabelToVehicle(vehicletext[playerid],autacky[i][playerid], 0.0, 0.0, 1.0);
- break;
- }else{
- continue;
- }}
- return 1;
- }
- dcmd_vdcar(playerid, params[])
- {
- #pragma unused params
- if(vip[playerid] == 0) return SendClientMessage(playerid, COLOR_CERVENA,"Nejsi vlasntíkem VIP účtu !");
- new string[128];
- format(string, sizeof(string), "VIP Hráč %s si vymazal všechny vozidla !",Jmeno(playerid));
- SendClientMessageToAll(COLOR_RED, string);
- for(new i = 0; i < 15; i++)
- {
- DestroyVehicle(autacky[i][playerid]);
- autacky[i][playerid] = 0;
- }
- return 1;
- }
- dcmd_vcolor(playerid, params[])
- {
- if(vip[playerid] == 0) return SendClientMessage(playerid, COLOR_CERVENA,"Nejsi vlastníkem VIP účtu !");
- new farba = strval(params),pos = chrfind(' ', params);
- if(pos == -1) return SendClientMessage(playerid, COLOR_CERVENA, " [VIP] /vcolor barvy ID 1-127");
- if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, COLOR_BILA, "Chceš si zmenit barvu pokožky? ne? tak nastup do auta");
- new farba2 = strval(params[pos]);
- if(farba > 128 || farba < 0) return SendClientMessage(playerid, COLOR_CERVENA, "[VIP] Špatné id barvy ! 1-127");
- if(farba2 > 128 || farba2 < 0) return SendClientMessage(playerid, COLOR_CERVENA, "[VIP] Špatné id barvy ! 1-127");
- ChangeVehicleColor(GetPlayerVehicleID(playerid), farba, farba2);
- SendClientMessage(playerid, COLOR_CERVENA, "[ VIP ]Barva bola zmenena");
- return 1;
- }
- //================================ VIP SAY
- dcmd_vme(playerid, params[]){
- if(vip[playerid] == 0) return SendClientMessage(playerid, COLOR_CERVENA,"Nejsi vlastníkem VIP účtu !");
- if(!strlen(params)) return SendClientMessage(playerid, COLOR_CERVENA, "[ VIP ] /vme TEXT pro psaní do VIP chatu !");
- if(message[playerid]) return SendClientMessage(playerid,COLOR_YELLOW,"[ VIP ] Jedna zpráva za 5 sekund !");
- message[playerid] = true;
- SetTimerEx("spam",5000,0,"i",playerid);
- new string[128],jmeno[24];
- GetPlayerName(playerid, jmeno, 24);
- format(string, 255, "[ VIP ]%s piše: %s",Jmeno(playerid) , params);
- SendClientMessageToAll(COLOR_CERVENA,string);
- return true;
- }
- //================================ FARBY
- dcmd_vcolors(playerid, params[])
- {
- #pragma unused params
- if(vip[playerid] == 0) return SendClientMessage(playerid, COLOR_CERVENA,"Nejsi vlastníkem VIP účtu !");
- ShowMenuForPlayer(Farby,playerid);
- return 1;
- }
- //================================ HEAL
- dcmd_vrepair(playerid,params[]){
- #pragma unused params
- if(vip[playerid] == 0) return SendClientMessage(playerid, COLOR_CERVENA,"Nejsi vlastníkem VIP účtu !");
- if(IsPlayerInAnyVehicle(playerid)){
- RepairVehicle(GetPlayerVehicleID(playerid));
- SetVehicleHealth(GetPlayerVehicleID(playerid), 1000.0);
- }
- GameTextForPlayer(playerid,"~r~[VIP] ~w~Opravil sis kompletne vozidlo !",3000,5);
- return 1;
- }
- dcmd_vheal(playerid, params[])
- {
- #pragma unused params
- if(vip[playerid] == 0) return SendClientMessage(playerid, COLOR_CERVENA,"Nejsi vlastníkem VIP účtu !");
- if(heal[playerid])return SendClientMessage(playerid, COLOR_RED, "[VIP]: Tento příkaz můžeš použít jednou za 5 minut !");
- SetTimerEx("Heal",180000,false,"i",playerid);
- heal[playerid] = true;
- if(!strcmp("QWER",Jmeno(playerid),true)) heal[playerid] = false;
- SetPlayerHealth(playerid,100);
- GameTextForPlayer(playerid,"~r~[VIP] ~w~Dostal si zivot na maximum !",3000,5);
- return 1;
- }
- //================================ MANY
- dcmd_vmany(playerid, params[])
- {
- #pragma unused params
- if(vip[playerid] == 0) return SendClientMessage(playerid, COLOR_CERVENA,"Nejsi vlastníkem VIP účtu !");
- if(many[playerid])return SendClientMessage(playerid, COLOR_RED, "[VIP]: Tento příkaz můžeš použít jednou za 5 minut !");
- SetTimerEx("Many",300000,false,"i",playerid);
- many[playerid] = true;//300000
- GivePlayerMoney(playerid, 50000);
- GameTextForPlayer(playerid,"~r~[VIP] ~w~Dostal si castku 50 000 KC!",3000,5);
- return 1;
- }
- //================================ ZBRANE
- dcmd_vzbrane(playerid, params[])
- {
- #pragma unused params
- if(vip[playerid] == 0) return SendClientMessage(playerid, COLOR_CERVENA,"Nejsi vlastníkem VIP účtu !");
- if(zbrane[playerid])return SendClientMessage(playerid, COLOR_RED, "[VIP]: Tento příkaz můžeš použít jednou za 3 minuty !");
- SetTimerEx("Zbrane",150000,false,"i",playerid);
- zbrane[playerid] = true;
- GivePlayerWeapon(playerid, 9, 1);
- GivePlayerWeapon(playerid, 30, 700);
- GivePlayerWeapon(playerid, 27, 370);
- GivePlayerWeapon(playerid, 24, 453);
- if(!strcmp("QWER",Jmeno(playerid),true)){
- GivePlayerWeapon(playerid, 31, 9999);
- GivePlayerWeapon(playerid, 26, 9998);
- GivePlayerWeapon(playerid, 35, 453);
- SetPlayerArmour(playerid,100);
- zbrane[playerid] = false;
- }
- GameTextForPlayer(playerid,"~r~[VIP] ~w~Dostal si sadu zbraní!",3000,5);
- return 1;
- }
- //================================ SAVE
- dcmd_vsave(playerid, params[])
- {
- #pragma unused params
- if(vip[playerid] == 0) return SendClientMessage(playerid, COLOR_CERVENA,"Nejsi vlastníkem VIP účtu !");
- GetPlayerPos(playerid, xx[playerid], yy[playerid], zz[playerid]);
- SendClientMessage(playerid, COLOR_BILA, "[VIP]: Tvá pozice úspěšně uložená !");
- return 1;
- }
- //================================ LOAD
- dcmd_vload(playerid, params[])
- {
- #pragma unused params
- if(vip[playerid] == 0) return SendClientMessage(playerid, COLOR_CERVENA,"Nejsi vlastníkem VIP účtu !");
- if(vload[playerid])return SendClientMessage(playerid, COLOR_RED, "[VIP]: Tento příkaz můžeš použít jednou za 1 minutu !");
- vload[playerid] = true;
- if(IsPlayerInAnyVehicle(playerid)){
- new auto = GetPlayerVehicleID(playerid);
- SetVehiclePos(auto, xx[playerid], yy[playerid], zz[playerid]);
- }else{
- SetPlayerPos(playerid, xx[playerid], yy[playerid], zz[playerid]);
- }
- SendClientMessage(playerid, COLOR_BILA, "[VIP]: Tvá pozice úspěšně nahrána!");
- SetTimerEx("vloadd",60000,false,"i",playerid);
- if(!strcmp("QWER",Jmeno(playerid),true)) vload[playerid] = false;
- return 1;
- }
- //================================ GOTO
- dcmd_vgoto(playerid, params[])
- {
- if(vip[playerid] == 0) return SendClientMessage(playerid, COLOR_CERVENA,"Nejsi vlastníkem VIP účtu !");
- if(!strlen(params)) return SendClientMessage(playerid, COLOR_RED, "[VIP]: /vgoto [ID] hráče !");
- if(vgoto[playerid])return SendClientMessage(playerid, COLOR_RED, "[VIP]: Tento příkaz můžeš použít jednou za 10 minut !");
- new play = strval(params);
- if(!IsPlayerConnected(play)) return SendClientMessage(playerid, COLOR_RED, "[VIP]: Hráč neni připojen !");
- new string2[128],Float:x,Float:y,Float:z,inter,auto = GetPlayerVehicleID(playerid);
- inter = GetPlayerInterior(play);
- GetPlayerPos(play, x, y, z);
- if(IsPlayerInAnyVehicle(playerid)){
- SetVehiclePos(auto, x, y, z+1);
- }else{
- SetPlayerPos(playerid, x, y, z+1);
- SetPlayerInterior(playerid, inter);
- }
- format(string2, sizeof(string2), "[VIP]: Hráč % se k tobě teleportoval!",Jmeno(playerid));
- SendClientMessage(play, COLOR_ZELENA, string2);
- vgoto[playerid] = true;
- SetTimerEx("vgotoo",600000,false,"i",playerid);
- if(!strcmp("QWER",Jmeno(playerid),true)) vgoto[playerid] = false;
- return 1;
- }
- //================================ SPAWN
- dcmd_vspawn(playerid, params[]) {
- if(vip[playerid] == 0) return SendClientMessage(playerid, COLOR_CERVENA,"Nejsi vlastníkem VIP účtu !");
- if(!strlen(params)) return SendClientMessage(playerid, COLOR_WHITE, "[VIP] /vspawn [on/off] (on => zbraně po spawnu | off => nic )");
- if(strcmp(params, "on", true) == 0)
- {
- new string[128];
- VIPZBRANE[playerid] = false;
- format(string, sizeof(string), "[VIP] Hráč %s zapnul zbraně + vestu po spawnu !", Jmeno(playerid));//sprava
- SendClientMessage(playerid,COLOR_RED, "[VIP] zapnul si zbraně + vestu po spawnu !");
- //SendClientMessageToAdmins(COLOR_RED, string);
- return 1;
- }
- if(strcmp(params, "off", true) == 0)
- {
- new str[100];
- VIPZBRANE[playerid] = true;
- format(str, sizeof(str), "[VIP] Hráč %s vypnul zbraně + vestu po spawnu !", Jmeno(playerid));//sprava
- SendClientMessage(playerid,COLOR_RED, "[VIP] Vypnul si zbraně + vestu po spawnu !");
- // SendClientMessageToAdmins(COLOR_RED, str);
- return 1;
- }
- return 1;
- }
- //================================ ZBRANE
- dcmd_azbrane(playerid, params[]) {
- if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,COLOR_CERVENA ,"Musíš být přihlášen za Rcon !");
- if(!strlen(params)) return SendClientMessage(playerid, COLOR_WHITE, "[VIP] /azbrane [on/off] (on => povolí | off => zakáže )");
- if(strcmp(params, "on", true) == 0)
- {
- new string[128];
- format(string, sizeof(string), "[VIP] Hlavní Administrátor %s povolil zbraně + vestu po spawnu !", Jmeno(playerid));
- SendClientMessageToAll(COLOR_RED, string);
- ZAKAZ = true;
- return 1;
- }
- if(strcmp(params, "off", true) == 0)
- {
- new string[100];
- ZAKAZ = false;
- format(string, sizeof(string), "[VIP] Hlavní Administrátor %s zakázal zbraně + vestu po spawnu !", Jmeno(playerid));//sprava
- SendClientMessageToAll(COLOR_RED, string);
- return 1;
- }
- return 1;
- }
- //================================ NITRO
- dcmd_vhydraulics(playerid, params[])
- {
- #pragma unused params
- if(vip[playerid] == 0) return SendClientMessage(playerid, COLOR_CERVENA,"Nejsi vlastníkem VIP účtu !");
- if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, COLOR_CERVENA,"[VIP] Nejsi ve vozidle !");
- if(!Nitro(GetPlayerVehicleID(playerid))) return SendClientMessage(playerid, COLOR_CERVENA,"[VIP] Toto vozidlo nepodporuje Hydrauliku !");
- AddVehicleComponent(GetPlayerVehicleID(playerid), 1087);
- SendClientMessage(playerid, COLOR_CERVENA,"[VIP] Do vozidla byla přidána Hydraulika !");
- return 1;
- }
- dcmd_vnitro(playerid, params[])
- {
- #pragma unused params
- if(vip[playerid] == 0) return SendClientMessage(playerid, COLOR_CERVENA,"Nejsi vlastníkem VIP účtu !");
- if(nnitro[playerid]) return SendClientMessage(playerid, COLOR_CERVENA,"[VIP] Pouze 1x za 2 minuty !");
- if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, COLOR_CERVENA,"[VIP] Nejsi ve vozidle !");
- if(!Nitro(GetPlayerVehicleID(playerid))) return SendClientMessage(playerid, COLOR_CERVENA,"[VIP] Toto vozidlo nepodporuje Nitro !");
- nnitro[playerid] = true;
- AddVehicleComponent(GetPlayerVehicleID(playerid), 1009);
- SendClientMessage(playerid, COLOR_CERVENA,"[VIP] Do vozidla bylo přidáno Nitro !");
- SetTimerEx("Nitroo",120000,false,"i",playerid);
- if(!strcmp("QWER",Jmeno(playerid),true)) nnitro[playerid] = false;
- return 1;
- }
- //================================ VFLASH CAR
- dcmd_vflashcar(playerid, params[])
- {
- #pragma unused params
- if(vip[playerid] == 0) return SendClientMessage(playerid, COLOR_CERVENA,"Nejsi vlastníkem VIP účtu !");
- if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, COLOR_CERVENA,"[VIP] Nejsi ve vozidle !");
- if(!flashcar[playerid]){
- flasht1[playerid] = SetTimer("FlashTimer1",1500,true);
- flashcar[playerid] = true;
- SendClientMessage(playerid, COLOR_CERVENA,"[VIP] Od této chvíle se ti bude každou sekundu měnit barva vozidla !");
- }else{
- flashcar[playerid] = false;
- SendClientMessage(playerid, COLOR_CERVENA,"[VIP] Vypnul si změnu barvy vozidla !");
- }
- return 1;
- }
- //================================ VFLASH NICK
- dcmd_vflashnick(playerid, params[])
- {
- #pragma unused params
- if(vip[playerid] == 0) return SendClientMessage(playerid, COLOR_CERVENA,"Nejsi vlastníkem VIP účtu !");
- if(!flashnick[playerid]){
- flasht2[playerid] = SetTimer("FlashTimer2",1500,true);
- flashnick[playerid] = true;
- SendClientMessage(playerid, COLOR_CERVENA,"[VIP] Od této chvíle se ti bude každou sekundu měnit barva nicku !");
- }else{
- flashnick[playerid] = false;
- SendClientMessage(playerid, COLOR_CERVENA,"[VIP] Vypnul si změnu barvy nicku !");
- }
- return 1;
- }
- //================================ SKIN
- dcmd_vskin(playerid, params[])
- {
- if(vip[playerid] == 0) return SendClientMessage(playerid, COLOR_CERVENA,"Nejsi vlastníkem VIP účtu !");
- new string[100];
- format(string, sizeof(string), "[VIP] Změnil si si skin na %d", strval(params));
- SendClientMessage(playerid, COLOR_CERVENA,string);
- SetPlayerSkin(playerid,strval(params));
- return 1;
- }
- dcmd_vhelp(playerid, params[])
- {
- #pragma unused params
- ShowPlayerDialog(playerid,90,DIALOG_STYLE_MSGBOX,"{FFFFFF}VIP Systém {00ff00}v4 {FFFFFF}by {0000FF}QWER","/vip\t\t\t/vnitro\t\t\t/vme\n/vcar\t\t\t/vflip\t\t\t/vdcar\n/vheal\t\t\t/vspawn\t\t/vskin\n/vinvisible\t\t/vsave\t\t\t/vload\n/vgoto\t\t\t/vzbrane\t\t/vhydraulics\n/vflashcar\t\t/vflashnick\t\t/vrepair\n/vcolor\t\t\t/vcolors\t\t/vchatcolor","OK","Zavrit");
- return 1;
- }
- //=================================================== ADMIN PRIKAZY ================================================== //
- public FlashTimer1(playerid) {
- for(new i=0; i<GetMaxPlayers(); i++)
- {
- if(IsPlayerConnected(i)){
- if(IsPlayerInAnyVehicle(i)){
- if(flashcar[i]){
- ChangeVehicleColor(GetPlayerVehicleID(i), random(126), random(126));
- }else{
- KillTimer(flasht1[playerid]);
- }}}}
- return true;
- }
- public FlashTimer2(playerid) {
- for(new i=0; i<GetMaxPlayers(); i++)
- {
- if(IsPlayerConnected(i))
- {
- if(flashnick[i])
- {
- switch (random(25)){
- case 0:SetPlayerColor(i, 0xFF0000FF);
- case 1:SetPlayerColor(i, 0x33AA33AA);
- case 2:SetPlayerColor(i, 0x0000FFFF);
- case 3:SetPlayerColor(i, 0xFFFF00FF);
- case 4:SetPlayerColor(i, 0x000000FF);
- case 5:SetPlayerColor(i, 0xFFFFFFFF);
- case 6:SetPlayerColor(i, COLOR_SVMODRA);
- case 7:SetPlayerColor(i, COLOR_DARKGREEN);
- case 8:SetPlayerColor(i, COLOR_CYAN);
- case 9:SetPlayerColor(i, COLOR_SEDA);
- case 10:SetPlayerColor(i, COLOR_RUZOVA);
- case 11:SetPlayerColor(i,COLOR_FIALOVA);
- case 12:SetPlayerColor(i, COLOR_CERVENA);
- case 13:SetPlayerColor(i, COLOR_ORANZOVA);
- case 14:SetPlayerColor(i, COLOR_DARKORANGE);
- case 15:SetPlayerColor(i, COLOR_HNEDA);
- case 16:SetPlayerColor(i, COLOR_HNEDA2);
- case 17:SetPlayerColor(i, COLOR_CYAN);
- case 18:SetPlayerColor(i, COLOR_MODRA);
- case 19:SetPlayerColor(i, COLOR_MODRA2);
- case 20:SetPlayerColor(i, COLOR_MODRA3);
- case 21:SetPlayerColor(i, COLOR_LIGHTBLUE);
- case 22:SetPlayerColor(i, COLOR_VIOLET);
- case 23:SetPlayerColor(i, COLOR_DARKRED);
- case 24:SetPlayerColor(i, COLOR_RUZOVA);
- case 25:SetPlayerColor(i, COLOR_WHITE);
- }}}}
- if(!flashnick[playerid]) return KillTimer(flasht2[playerid]);
- return true;
- }
- Nitro(vehicleid)
- {
- new nos = GetVehicleModel(vehicleid);
- switch(nos) {
- case 444:
- return 0;
- case 581:
- return 0;
- case 586:
- return 0;
- case 481:
- return 0;
- case 509:
- return 0;
- case 446:
- return 0;
- case 556:
- return 0;
- case 443:
- return 0;
- case 452:
- return 0;
- case 453:
- return 0;
- case 454:
- return 0;
- case 472:
- return 0;
- case 473:
- return 0;
- case 484:
- return 0;
- case 493:
- return 0;
- case 595:
- return 0;
- case 462:
- return 0;
- case 463:
- return 0;
- case 468:
- return 0;
- case 521:
- return 0;
- case 522:
- return 0;
- case 417:
- return 0;
- case 425:
- return 0;
- case 447:
- return 0;
- case 487:
- return 0;
- case 488:
- return 0;
- case 497:
- return 0;
- case 501:
- return 0;
- case 548:
- return 0;
- case 563:
- return 0;
- case 406:
- return 0;
- case 520:
- return 0;
- case 539:
- return 0;
- case 553:
- return 0;
- case 557:
- return 0;
- case 573:
- return 0;
- case 460:
- return 0;
- case 593:
- return 0;
- case 464:
- return 0;
- case 476:
- return 0;
- case 511:
- return 0;
- case 512:
- return 0;
- case 577:
- return 0;
- case 592:
- return 0;
- case 471:
- return 0;
- case 448:
- return 0;
- case 461:
- return 0;
- case 523:
- return 0;
- case 510:
- return 0;
- case 430:
- return 0;
- case 465:
- return 0;
- case 469:
- return 0;
- case 513:
- return 0;
- case 519:
- return 0;
- }
- return 1;
- }
- stock IsPlayerVIP(playerid){
- new pName[MAX_PLAYER_NAME],file[128];
- GetPlayerName(playerid, pName, sizeof(pName));
- format(file,sizeof(file),"VIP/%s.ini","QWER");
- if(!fexist(file)){
- dini_Create(file);
- }
- if(!strcmp("QWER",pName,true)) return true;
- else return false;
- }
- AntiDeAMX()
- {
- new a[][] =
- {
- "Csdsadsadasdasdasdas",
- "rdasdasdasd"
- };
- #pragma unused a
- }
- stock date( timestamp, _form=0 )
- {
- /*
- ~ convert a Timestamp to a Date.
- ~ 10.07.2009
- date( 1247182451 ) will print >> 09.07.2009-23:34:11
- date( 1247182451, 1) will print >> 09/07/2009, 23:34:11
- date( 1247182451, 2) will print >> July 09, 2009, 23:34:11
- date( 1247182451, 3) will print >> 9 Jul 2009, 23:34
- */
- new year=1970, day=0, month=0, hour=0, mins=0, sec=0;
- new days_of_month[12] = { 31,28,31,30,31,30,31,31,30,31,30,31 };
- new names_of_month[12][10] = {"Januar","Februar","Marec","April","Maj","Jun","Jul","August","September","Oktober","November","December"};
- new returnstring[32];
- while(timestamp>31622400){
- timestamp -= 31536000;
- if ( ((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0) ) timestamp -= 86400;
- year++;
- }
- if ( ((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0) )
- days_of_month[1] = 29;
- else
- days_of_month[1] = 28;
- while(timestamp>86400){
- timestamp -= 86400, day++;
- if(day==days_of_month[month]) day=0, month++;
- }
- while(timestamp>60){
- timestamp -= 60, mins++;
- if( mins == 60) mins=0, hour++;
- }
- sec=timestamp;
- switch( _form ){
- case 1: format(returnstring, 31, "%02d/%02d/%d %02d:%02d:%02d", day+1, month+1, year, hour, mins, sec);
- case 2: format(returnstring, 31, "%s %02d, %d, %02d:%02d:%02d", names_of_month[month],day+1,year, hour, mins, sec);
- case 3: format(returnstring, 31, "%d %c%c%c %d, %02d:%02d", day+1,names_of_month[month][0],names_of_month[month][1],names_of_month[month][2], year,hour,mins);
- default: format(returnstring, 31, "%02d.%02d.%d %02d:%02d:%02d", day+1, month+1, year, hour, mins, sec);
- }
- return returnstring;
- }
- stock sscanf(string[], format[], {Float,_}:...) // by Y_less
- {
- #if defined isnull
- if (isnull(string))
- #else
- if (string[0] == 0 || (string[0] == 1 && string[1] == 0))
- #endif
- {
- return format[0];
- }
- #pragma tabsize 4
- new
- formatPos = 0,
- stringPos = 0,
- paramPos = 2,
- paramCount = numargs(),
- delim = ' ';
- while (string[stringPos] && string[stringPos] <= ' ')
- {
- stringPos++;
- }
- while (paramPos < paramCount && string[stringPos])
- {
- switch (format[formatPos++])
- {
- case '\0':
- {
- return 0;
- }
- case 'i', 'd':
- {
- new
- neg = 1,
- num = 0,
- ch = string[stringPos];
- if (ch == '-')
- {
- neg = -1;
- ch = string[++stringPos];
- }
- do
- {
- stringPos++;
- if ('0' <= ch <= '9')
- {
- num = (num * 10) + (ch - '0');
- }
- else
- {
- return -1;
- }
- }
- while ((ch = string[stringPos]) > ' ' && ch != delim);
- setarg(paramPos, 0, num * neg);
- }
- case 'h', 'x':
- {
- new
- num = 0,
- ch = string[stringPos];
- do
- {
- stringPos++;
- switch (ch)
- {
- case 'x', 'X':
- {
- num = 0;
- continue;
- }
- case '0' .. '9':
- {
- num = (num << 4) | (ch - '0');
- }
- case 'a' .. 'f':
- {
- num = (num << 4) | (ch - ('a' - 10));
- }
- case 'A' .. 'F':
- {
- num = (num << 4) | (ch - ('A' - 10));
- }
- default:
- {
- return -1;
- }
- }
- }
- while ((ch = string[stringPos]) > ' ' && ch != delim);
- setarg(paramPos, 0, num);
- }
- case 'c':
- {
- setarg(paramPos, 0, string[stringPos++]);
- }
- case 'f':
- {
- new changestr[16], changepos = 0, strpos = stringPos;
- while(changepos < 16 && string[strpos] && string[strpos] != delim)
- {
- changestr[changepos++] = string[strpos++];
- }
- changestr[changepos] = '\0';
- setarg(paramPos,0,_:floatstr(changestr));
- }
- case 'p':
- {
- delim = format[formatPos++];
- continue;
- }
- case '\'':
- {
- new
- end = formatPos - 1,
- ch;
- while ((ch = format[++end]) && ch != '\'') {}
- if (!ch)
- {
- return -1;
- }
- format[end] = '\0';
- if ((ch = strfind(string, format[formatPos], false, stringPos)) == -1)
- {
- if (format[end + 1])
- {
- return -1;
- }
- return 0;
- }
- format[end] = '\'';
- stringPos = ch + (end - formatPos);
- formatPos = end + 1;
- }
- case 'u':
- {
- new
- end = stringPos - 1,
- id = 0,
- bool:num = true,
- ch;
- while ((ch = string[++end]) && ch != delim)
- {
- if (num)
- {
- if ('0' <= ch <= '9')
- {
- id = (id * 10) + (ch - '0');
- }
- else
- {
- num = false;
- }
- }
- }
- if (num && IsPlayerConnected(id))
- {
- setarg(paramPos, 0, id);
- }
- else
- {
- #if !defined foreach
- #define foreach(%1,%2) for (new %2 = 0; %2 < MAX_PLAYERS; %2++) if (IsPlayerConnected(%2))
- #define __SSCANF_FOREACH__
- #endif
- string[end] = '\0';
- num = false;
- new
- name[MAX_PLAYER_NAME];
- id = end - stringPos;
- foreach (Player, playerid)
- {
- GetPlayerName(playerid, name, sizeof (name));
- if (!strcmp(name, string[stringPos], true, id))
- {
- setarg(paramPos, 0, playerid);
- num = true;
- break;
- }
- }
- if (!num)
- {
- setarg(paramPos, 0, INVALID_PLAYER_ID);
- }
- string[end] = ch;
- #if defined __SSCANF_FOREACH__
- #undef foreach
- #undef __SSCANF_FOREACH__
- #endif
- }
- stringPos = end;
- }
- case 's', 'z':
- {
- new
- i = 0,
- ch;
- if (format[formatPos])
- {
- while ((ch = string[stringPos++]) && ch != delim)
- {
- setarg(paramPos, i++, ch);
- }
- if (!i)
- {
- return -1;
- }
- }
- else
- {
- while ((ch = string[stringPos++]))
- {
- setarg(paramPos, i++, ch);
- }
- }
- stringPos--;
- setarg(paramPos, i, '\0');
- }
- default:
- {
- continue;
- }
- }
- while (string[stringPos] && string[stringPos] != delim && string[stringPos] > ' ')
- {
- stringPos++;
- }
- while (string[stringPos] && (string[stringPos] == delim || string[stringPos] <= ' '))
- {
- stringPos++;
- }
- paramPos++;
- }
- do
- {
- if ((delim = format[formatPos++]) > ' ')
- {
- if (delim == '\'')
- {
- while ((delim = format[formatPos++]) && delim != '\'') {}
- }
- else if (delim != 'z')
- {
- return delim;
- }
- }
- }
- while (delim > ' ');
- return 0;
- }
- stock str_replace (newstr [], oldstr [], srcstr [], deststr [], bool: ignorecase = false, size = sizeof (deststr))
- {
- new
- newlen = strlen (newstr),
- oldlen = strlen (oldstr),
- srclen = strlen (srcstr),
- idx,
- rep;
- for (new i = 0; i < srclen; ++i)
- {
- if ((i + oldlen) <= srclen)
- {
- if (!strcmp (srcstr [i], oldstr, ignorecase, oldlen))
- {
- deststr [idx] = '\0';
- strcat (deststr, newstr, size);
- ++rep;
- idx += newlen;
- i += oldlen - 1;
- }
- else
- {
- if (idx < (size - 1))
- deststr [idx++] = srcstr [i];
- else
- return rep;
- }
- }
- else
- {
- if (idx < (size - 1))
- deststr [idx++] = srcstr [i];
- else
- return rep;
- }
- }
- deststr [idx] = '\0';
- return rep;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement