Jump to content

Search the Community

Showing results for tags 'help'.

  • Search By Tags

    Oddělujte čárkami
  • Search By Author

Content Type


Fórum

  • Obecné
    • Všeobecné
    • Všechno možné
  • Programování
    • Poradna
    • Návody
    • Tvorba
    • Hledám programátora
  • Herní oblast
    • Poradna
    • Jak na to?
    • Herní kontext
    • Herní zážitky
    • Komunita
  • Grafika
    • Poradna
    • Návody
    • Tvorba
  • Ostatní
    • Hardware a software
    • Hledám/nabízím
    • Archiv
    • 3D Tisk

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Web


Facebook


Jabber


Skype


Steam


Twitter


Github


Pastebin

  1. Mám FS, kde jsou pomocí TextDrawu a Progress Baru udělány potřeby, ale mám problém. Jakmile se spawnu, hned mě to zabije a hlásí, že si musím dojít na WC, do ledničky a taky si jít lehnout. Ale jelikož mě to stále zabíjí, nemůžu nic dělat. Přitom nikde v FS nemám, že by to mělo zabíjet, jenom že každých 30 sekund odebere 1HP. A i když mám v souboru se svým jménem nastaveno vše na 100%, hlásí mi to že mám 0% Nevíte čím to je?. Je to pro mě důležité. Pro bezpečnost smazáno
  2. Ahoj, zkouším si udělat FS, ale potřebuji, aby si hráč mohl změnit skin jenom jednou a to poté, co se zaregistruje. Jak to udělám, asi budu potřebovat, aby to hráčovi zapisovalo do souboru. Děkuji za odpověď
  3. Ahoj, našel jsem si a přeložil skript, ale nejde mi skompilovat. Je to problém s YSI a to jsem to aktualizoval na 0.3z http://pastebin.com/a2V0FLdw (Nejde to sem vložit, nějak to blbne, nevím proč....) Absolutně si s tím nevím rady a přidal jsem si tam příkaz na : bazar, tak doufám že to není tím. Dík za odpověď
  4. Ahojte umí tady nikdo dělat módy potřeboval bych pomoct.S uprevinim modu a dát tam věci na roleplay bližší INFO na skype: matysek5103 PDěkuju předem
  5. Neopry

    pomoc Práce

    Ahoj, Potřeboval bych pomoc s pracema. Udělal jsem si filescript: Policie, Řidič Kamionů. (zatím jenom dvě abych vyzkoušel jestli to funguje) U práce "Policie" nemám problém, ale u Řidiče kamionů se mi zobrazí jenom Dialog. Když kliknu na "Přijmout práci" tak se nic nestane. Možná je to tím že, to chci mít rozdělený ve filescriptech jako každé samostané zaměstnání. Policie: #include <a_samp> #if defined FILTERSCRIPT #define 0xFF0000AA new Povolani[MAX_PLAYERS]; new POLICIE; public OnGameModeInit(){ POLICIE = CreatePickup(1581, 1, 253.1612,64.7975,1003.6406, -1); return 1; } public OnPlayerPickUpPickup(playerid, pickupid) { if(pickupid == POLICIE) ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST,"Policie","Přimout Práci\nPřevléknout se","Vybrat","Konec"); return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]){ if(dialogid == 1){ switch(listitem){ case 0: { if(Povolani[playerid] == 1) return SendClientMessage(playerid,-1,"[ ! ] Tady už jsi zaměstnaný!"); SendClientMessage(0xFF0000AA, string); GivePlayerWeapon(playerid,24,1000); GivePlayerWeapon(playerid,25,1000); GivePlayerWeapon(playerid,3,1); SetPlayerColor(playerid,0x0066FFFF); SendClientMessage(playerid,-1,"Připojil jsi se k povolání policie"); SendClientMessage(0xFFFF00AA, string); Povolani[playerid] = 1; } case 1: { if(Povolani[playerid] != 1) return SendClientMessage(playerid,-1,"Nejsi tu zaměstnaný!"); SendClientMessage(0xFF0000AA, string); switch(random(3)) { case 0: SetPlayerSkin(playerid,280); case 1: SetPlayerSkin(playerid,283); case 2: SetPlayerSkin(playerid,284); } SendClientMessage(playerid,-1,"Vzal jsi si skin povolání"); SendClientMessage(0xFF0000AA, string); } } } return 1; } #endif Řidič kamionů: #include <a_samp> #if defined FILTERSCRIPT #define 0xFF0000AA new Povolani2[MAX_PLAYERS]; new RIDICKAMIONU; public OnGameModeInit(){ RIDICKAMIONU = CreatePickup(1581, 1, 2194.0481,-2246.5322,13.5469, -1); return 1; } public OnPlayerPickUpPickup(playerid, pickupid) { if(pickupid == RIDICKAMIONU) ShowPlayerDialog(playerid,2,DIALOG_STYLE_LIST,"Řidič Kamionu","Přimout Práci\nPřevléknout se","Vybrat","Konec"); return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]){ if(dialogid == 2){ switch(listitem){ case 0: { if(Povolani2[playerid] == 1) return SendClientMessage(playerid,-1,"V tomto zaměstnání jsi již zaměstnán!"); SendClientMessage(0xFF0000AA, string); GivePlayerWeapon(playerid,32,1000); GivePlayerWeapon(playerid,25,1000); SetPlayerColor(playerid,0xFF00FFFF); SendClientMessage(playerid,-1,"Stal jsi se Řidičem kamionů"); SendClientMessage(0xFFFF00AA, string); Povolani2[playerid] = 2; } case 1: { if(Povolani2[playerid] != 1) return SendClientMessage(playerid,-1,"U toho zaměstání nejsi zaměstnán!"); SendClientMessage(0xFF0000AA, string); switch(random(3)) { case 0: SetPlayerSkin(playerid,128); case 1: SetPlayerSkin(playerid,133); case 2: SetPlayerSkin(playerid,135); } SendClientMessage(playerid,-1,"Převléknul jsi se"); SendClientMessage(0xFF0000AA, string); } } } return 1; } #endif
  6. Nazdar, pomohol by mi niekto ? Prečo keď prídem do CheckPointu sa nič nestane a chcekpoint ostáva stále ?? #include <a_samp> //============================================================================== // PickUp´s //============================================================================== new TechnickeSluzby; //============================================================================== // JOBS //============================================================================== new TechnickeSluzby_1; new TechnickeSluzby_2; main() { print("\n----------------------------------"); print(" NoName"); print("----------------------------------\n"); } public OnGameModeInit() { SetGameModeText("Little Heaven"); AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0); TechnickeSluzby = CreatePickup(1581, 23, 2262.2412, 2036.2616, 10.8203) ; return 1; } public OnGameModeExit() { return 1; } public OnPlayerRequestClass(playerid, classid) { SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746); SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746); SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746); return 1; } public OnPlayerConnect(playerid) { new pname[MAX_PLAYER_NAME], string[200 + MAX_PLAYER_NAME]; GetPlayerName(playerid, pname, sizeof(pname)); format(string, sizeof(string), "{111111}%s {CC00FF}sa pripojil na server!", pname); SendClientMessageToAll(0xAAAAAAAA, string); //============================================================================================================================ // Pravidla //============================================================================================================================ new pravidla[1200]; strcat(pravidla,"{CC3300}Toto sú pravidla pre každého {99FFFF}hráča {CC3300}! Kto ich nebude dodržovať tak {99FFFF}ADMIN {CC3300}ho može potrestať ako uzná za vhodné !\n"); strcat(pravidla,"{CC3300}1. Zákaz urážania serveru, adminov, alebo hráčov.\n{CC3300}2. Zákaz teamkillovať (napr. ste ruská mafia a zabijete člena ruskej mafie)\n{CC3300}3. Zákaz zenužívanie bugov na servery\n{CC3300}4. Zákaz cheatovať (CLEO mody, s0beit a podobné cheaty)\n"); strcat(pravidla,"{CC3300}5. Zákaz spamovania (písať stále tú istú správu)\n{CC3300}6. Zákaz rasistických narážok na národy, rasy a podobne !\n{CC3300}7. Zákaz vstupu s neslušnými nickami alebo sa vydávať za adminov !\n{CC3300}8. Dodržovať toto inak vás stihne trest !\n"); ShowPlayerDialog(playerid,787,DIALOG_STYLE_MSGBOX,"Pravidla",pravidla,"Súhlasím",""); return 1; } public OnPlayerDisconnect(playerid, reason) { new pname[MAX_PLAYER_NAME], string[200 + MAX_PLAYER_NAME]; GetPlayerName(playerid, pname, sizeof(pname)); switch(reason) { case 0: format(string, sizeof(string), "{111111}%s {CC00FF}sa odpojil zo servera!", pname); case 1: format(string, sizeof(string), "{111111}%s {CC00FF}sa odpojil zo servera!", pname); case 2: format(string, sizeof(string), "{111111}%s {CC00FF}sa odpojil zo servera!", pname); } SendClientMessageToAll(0xFF0000FF, string); return 1; } public OnPlayerSpawn(playerid) { return 1; } public OnPlayerDeath(playerid, killerid, reason) { SendDeathMessage(killerid, playerid, reason); return 1; } public OnVehicleSpawn(vehicleid) { return 1; } public OnVehicleDeath(vehicleid, killerid) { return 1; } public OnPlayerText(playerid, text[]) { return 1; } public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp("/nastavenie", cmdtext, true, 10) == 0) { ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST,"Nastavenie","Farba nicku\n","Ok","Zavriet"); return 1; } if (strcmp("/pravidla", cmdtext, true, 10) == 0) { new pravidla[1200]; strcat(pravidla,"{CC3300}Toto sú pravidla pre každého {99FFFF}hráča {CC3300}! Kto ich nebude dodržovať tak {99FFFF}ADMIN {CC3300}ho može potrestať ako uzná za vhodné !\n"); strcat(pravidla,"{CC3300}1. Zákaz urážania serveru, adminov, alebo hráčov.\n{CC3300}2. Zákaz teamkillovať (napr. ste ruská mafia a zabijete člena ruskej mafie)\n{CC3300}3. Zákaz zenužívanie bugov na servery\n{CC3300}4. Zákaz cheatovať (CLEO mody, s0beit a podobné cheaty)\n"); strcat(pravidla,"{CC3300}5. Zákaz spamovania (písať stále tú istú správu)\n{CC3300}6. Zákaz rasistických narážok na národy, rasy a podobne !\n{CC3300}7. Zákaz vstupu s neslušnými nickami alebo sa vydávať za adminov !\n{CC3300}8. Dodržovať toto inak vás stihne trest !\n"); ShowPlayerDialog(playerid,787,DIALOG_STYLE_MSGBOX,"Pravidla",pravidla,"Zavrieť",""); return 1; } return 0; } public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger) { return 1; } public OnPlayerExitVehicle(playerid, vehicleid) { return 1; } public OnPlayerStateChange(playerid, newstate, oldstate) { return 1; } public OnPlayerEnterCheckpoint(playerid) { if (TechnickeSluzby_1 == 1)//id CP { SendClientMessage(playerid, 0xFF0000FF,"Dostávaš 1 300 za vyčistenie ulice"); GivePlayerMoney(playerid, 1300); DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid, 2154.3904, 2212.0320, 10.4707, 4.0); return 1; } if (TechnickeSluzby_2 == 1)//id CP { SendClientMessage(playerid, 0xFF0000FF,"Dostávaš 1 300 za vyčistenie ulice"); GivePlayerMoney(playerid, 1300); DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid, 2150.4016, 2354.0959, 10.4361, 4.0); return 1; } return 0; } public OnPlayerLeaveCheckpoint(playerid) { return 1; } public OnPlayerEnterRaceCheckpoint(playerid) { return 1; } public OnPlayerLeaveRaceCheckpoint(playerid) { return 1; } public OnRconCommand(cmd[]) { return 1; } public OnPlayerRequestSpawn(playerid) { return 1; } public OnObjectMoved(objectid) { return 1; } public OnPlayerObjectMoved(playerid, objectid) { return 1; } public OnPlayerPickUpPickup(playerid, pickupid) { if(pickupid == TechnickeSluzby) { ShowPlayerDialog(playerid, 574, DIALOG_STYLE_LIST, "Technické služby", "Zamestnať sa\nOblek", "Potvrdiť", "Zavrieť"); } return 1; } public OnVehicleMod(playerid, vehicleid, componentid) { return 1; } public OnVehiclePaintjob(playerid, vehicleid, paintjobid) { return 1; } public OnVehicleRespray(playerid, vehicleid, color1, color2) { return 1; } public OnPlayerSelectedMenuRow(playerid, row) { return 1; } public OnPlayerExitedMenu(playerid) { return 1; } public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid) { return 1; } public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { return 1; } public OnRconLoginAttempt(ip[], password[], success) { return 1; } public OnPlayerUpdate(playerid) { return 1; } public OnPlayerStreamIn(playerid, forplayerid) { return 1; } public OnPlayerStreamOut(playerid, forplayerid) { return 1; } public OnVehicleStreamIn(vehicleid, forplayerid) { return 1; } public OnVehicleStreamOut(vehicleid, forplayerid) { return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == 1) { if(response) { switch(listitem) { case 0: ShowPlayerDialog(playerid,2,DIALOG_STYLE_LIST,"Nastavenie -> Farba Nicku","{FF0000}Červená\n{33FF00}Zelená\n{0088FF}Modrá","Nastaviť","Zavriet"); } } return 1; } if(dialogid == 2) { if(response) { switch(listitem) { case 0: SetPlayerColor(playerid, 0xFF0000FF); case 1: SetPlayerColor(playerid, 0x33FF00FF); case 2: SetPlayerColor(playerid, 0x0088FFFF); } } return 1; } if(dialogid == 574) { if(response) { switch(listitem) { case 0: SetPlayerCheckpoint(playerid, 2158.4861, 2083.4512, 10.8203, 4.0); } } return 1; } return 0; } public OnPlayerClickPlayer(playerid, clickedplayerid, source) { return 1; }
  7. Ahojte, pomohol by mi niekto ako opravím tieto chyby ?? (Mohol by aj vysvetliť) ... C:\Users\Filip\Desktop\SAMP Server\Prácièky\Módy\NONAME.pwn(22) : warning 215: expression has no effect C:\Users\Filip\Desktop\SAMP Server\Prácièky\Módy\NONAME.pwn(274) : error 010: invalid function or declaration C:\Users\Filip\Desktop\SAMP Server\Prácièky\Módy\NONAME.pwn(276) : error 010: invalid function or declaration C:\Users\Filip\Desktop\SAMP Server\Prácièky\Módy\NONAME.pwn(278) : error 010: invalid function or declaration C:\Users\Filip\Desktop\SAMP Server\Prácièky\Módy\NONAME.pwn(284) : error 010: invalid function or declaration C:\Users\Filip\Desktop\SAMP Server\Prácièky\Módy\NONAME.pwn(286) : error 010: invalid function or declaration Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase 5 Errors. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == 1) { if(response == 1) { if(listitem == 0) { ShowPlayerDialog(playerid,2,DIALOG_STYLE_LIST,"Nastavenie -> Farba Nicku","{FF0000}Èervená\n{33FF00}Zelená\n{0088FF}Modrá","Nastavi","Zavriet"); } } } if(response == 1) { if(listitem == 0) { SetPlayerColor(playerid, 0xFF0000FF); } else if(listitem == 1) { SetPlayerColor(playerid, 0x33FF00FF); } else if(listitem == 2) { SetPlayerColor(playerid, 0x0088FFFF); } } } if(dialogid == 574) { if(response == 1) { if(listitem == 0) { SetPlayerCheckpoint(playerid, 2158.4861, 2083.4512, 10.8203, 3.0); } } } return 1; } return 0; }
  8. vopojtepek

    pomoc Dialog

    Ahojte, po dlhom čase som sa vrátil k Pawn ... Zabudol som dosť vecí a tak potrebujem pomôcť a vysvetliť s Dialogom. C:\Users\Filip\Desktop\SAMP\Prácičky\Módy\NONAME.pwn(219) : error 029: invalid expression, assumed zero C:\Users\Filip\Desktop\SAMP\Prácičky\Módy\NONAME.pwn(219 -- 220) : warning 215: expression has no effect C:\Users\Filip\Desktop\SAMP\Prácičky\Módy\NONAME.pwn(220) : error 001: expected token: ";", but found "if" C:\Users\Filip\Desktop\SAMP\Prácičky\Módy\NONAME.pwn(222) : error 010: invalid function or declaration C:\Users\Filip\Desktop\SAMP\Prácičky\Módy\NONAME.pwn(224) : error 010: invalid function or declaration C:\Users\Filip\Desktop\SAMP\Prácičky\Módy\NONAME.pwn(227) : error 021: symbol already defined: "ShowPlayerDialog" C:\Users\Filip\Desktop\SAMP\Prácičky\Módy\NONAME.pwn(232) : error 010: invalid function or declaration C:\Users\Filip\Desktop\SAMP\Prácičky\Módy\NONAME.pwn(234) : error 010: invalid function or declaration C:\Users\Filip\Desktop\SAMP\Prácičky\Módy\NONAME.pwn(238) : error 010: invalid function or declaration C:\Users\Filip\Desktop\SAMP\Prácičky\Módy\NONAME.pwn(241) : error 021: symbol already defined: "SetPlayerColor" C:\Users\Filip\Desktop\SAMP\Prácičky\Módy\NONAME.pwn(243) : error 010: invalid function or declaration C:\Users\Filip\Desktop\SAMP\Prácičky\Módy\NONAME.pwn(246) : error 021: symbol already defined: "SetPlayerColor" C:\Users\Filip\Desktop\SAMP\Prácičky\Módy\NONAME.pwn(250) : error 010: invalid function or declaration C:\Users\Filip\Desktop\SAMP\Prácičky\Módy\NONAME.pwn(252) : error 010: invalid function or declaration Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase 13 Errors. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) } if(dialogid == 2) { if(response == 1) { if(listitem == 0) { ShowPlayerDialog(playerid,2,DIALOG_STYLE_LIST,"Nastavenie -> Farba Nicku","FF0000FF}Červená\n{33FF00FF}Zelená\n{0088FFFF}Modrá","Nastaviť","Zavriet"); } } } if(response == 1) { if(listitem == 0) { SetPlayerColor(playerid, 0xFF0000FF); } else if(listitem == 1) { SetPlayerColor(playerid, 0x33FF00FF); } else if(listitem == 2) { SetPlayerColor(playerid, 0x0088FFFF); } } } return 1; } return 0;
  9. Ahoj, mám kód a chci si udělat zabezpečení na port serveru a udělal jsem si to zatím jen na IP, ale nevím, jak to udělat i na port. #include <a_samp> //By SA-MP Team public OnFilterScriptInit() { if( !strcmp( IPSERVER( ), "MOJE.IP.TOHO.SERVERU" ) ) //Kontrola IP { SendRconCommand( "exit" ); //Vypne server } return 1; } public OnFilterScriptExit() { return 1; } stock IPSERVER() { static IpServeru[16] ; GetServerVarAsString("bind", IpServeru, sizeof(IpServeru)); //Zjistí IP return IpServeru; } Poradí mi někdo?
  10. Jakub Kučera

    pomoc SAMP Online Stat

    Ahoj, mám problém, stáhnul jsem si pár PHP scriptů, které mi vytvoří na web SAMP Server banner, ale ať zadám jakoukoli IP, tak píše, že je vypnut. Viz zde http://www.samp.teracraft.eu/syst/ a přitom na ukázce, kde jsem to stáhnul to funguje tak nevím v čem je problém.
  11. Jakub Kučera

    pomoc AFK

    Ahoj, mám příkaz : AFK CMD:afk(playerid,params[]){ new Name[32],string[128]; GetPlayerName(playerid, Name, 32); if(GetPVarInt(playerid,"AFK") == 0){ if(GetPVarInt(playerid,"AFK_TIME") > gettime()){ new str[128]; format(str,128,"[AFK] AFK můžeš být až za %i sekund.",GetPVarInt(playerid,"AFK_TIME")-gettime()); SendClientMessage(playerid,-1,str); }else{ strins(Name, "[AFK]", 0); SetPlayerName(playerid, Name); format(string,128,"Hráč %s je nyní AFK (Důvod : %s).",Name,params); SendClientMessageToAll(-1,string); TogglePlayerControllable(playerid,false); SetPVarInt(playerid,"AFK_World",GetPlayerVirtualWorld(playerid)); SetPlayerVirtualWorld(playerid,GetPlayerVirtualWorld(playerid)+2012); SetPVarInt(playerid,"AFK",1); A potřebuji, že když hráč nezadá důvod, tak se to zobrazí bez toho (Důvod : %s) Poradíte mi někdo?
  12. Ahoj, mám problém. Stáhnul jsem si Race Systém od Rider /* Release: » Race System Filterscript Author: » » RyDeR « Last Update: » 26/04/2010 ChangeLog: » v0.1a: - Initial release » v0.2a: - Major Bugs fixed! - Racing in other worlds added (enable/disbable with uncomment/comment-ing the define) - New Commands added: - /startautorace: You can enable that the script starts automaticly a race after the previous one is done. - /stopautorace: You can disable the command above. - /exitrace: To exit the race safely - Best Race Times added (Top 5 best time laps; You will see a message when the record is broken). - Crash while creating a race is fixed. - Etc.. Bugs: » No bugs Version: » v0.2a Functions: » IsPlayerInRace(playerid); >> UseFull in stunt servers to disable speedhack, nitro etc. while racing. Credits: » Joker: He knows why » Joe Torran C, ModrLicC: For testing. » DracoBlue: 'Dini' include. » Y_Less: 'IsOdd' function. » Seif_: 'function' function. » ZeeX: 'zcmd' include. » Switch: InRace Position function. */ #include <a_samp> #include <dini> #include <zcmd> #include <cardefines> #include <nRace> #define ForEach(%0,%1) \ for(new %0 = 0; %0 != %1; %0++) if(IsPlayerConnected(%0) && !IsPlayerNPC(%0)) #define Loop(%0,%1) \ for(new %0 = 0; %0 != %1; %0++) #define IsOdd(%1) \ ((%1) & 1) #define ConvertTime(%0,%1,%2,%3,%4) \ new \ Float: %0 = floatdiv(%1, 60000) \ ;\ %2 = floatround(%0, floatround_tozero); \ %3 = floatround(floatmul(%0 - %2, 60), floatround_tozero); \ %4 = floatround(floatmul(floatmul(%0 - %2, 60) - %3, 1000), floatround_tozero) #define MAX_RACE_CHECKPOINTS_EACH_RACE \ 120 #define MAX_RACES \ 100 #define COUNT_DOWN_TILL_RACE_START \ 30 // seconds #define MAX_RACE_TIME \ 300 // seconds #define RACE_CHECKPOINT_SIZE \ 12.0 #define DEBUG_RACE \ 0 #define RACE_IN_OTHER_WORLD // Uncomment to enable #define GREY \ 0xAFAFAFAA #define GREEN \ 0x9FFF00FF #define RED \ 0xE60000FF #define YELLOW \ 0xFFFF00AA #define WHITE \ 0xFFFFFFAA #define red 0xF60000AA #define PRESSED(%0) \ (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0))) #define COLOR_MESSAGE_YELLOW 0xFFDD00AA new vNames[212][] = { {"Landstalker"}, {"Bravura"}, {"Buffalo"}, {"Linerunner"}, {"Perrenial"}, {"Sentinel"}, {"Dumper"}, {"Firetruck"}, {"Trashmaster"}, {"Stretch"}, {"Manana"}, {"Infernus"}, {"Voodoo"}, {"Pony"}, {"Mule"}, {"Cheetah"}, {"Ambulance"}, {"Leviathan"}, {"Moonbeam"}, {"Esperanto"}, {"Taxi"}, {"Washington"}, {"Bobcat"}, {"Mr Whoopee"}, {"BF Injection"}, {"Hunter"}, {"Premier"}, {"Enforcer"}, {"Securicar"}, {"Banshee"}, {"Predator"}, {"Bus"}, {"Rhino"}, {"Barracks"}, {"Hotknife"}, {"Trailer 1"}, {"Previon"}, {"Coach"}, {"Cabbie"}, {"Stallion"}, {"Rumpo"}, {"RC Bandit"}, {"Romero"}, {"Packer"}, {"Monster"}, {"Admiral"}, {"Squalo"}, {"Seasparrow"}, {"Pizzaboy"}, {"Tram"}, {"Trailer 2"}, {"Turismo"}, {"Speeder"}, {"Reefer"}, {"Tropic"}, {"Flatbed"}, {"Yankee"}, {"Caddy"}, {"Solair"}, {"Berkley's RC Van"}, {"Skimmer"}, {"PCJ-600"}, {"Faggio"}, {"Freeway"}, {"RC Baron"}, {"RC Raider"}, {"Glendale"}, {"Oceanic"}, {"Sanchez"}, {"Sparrow"}, {"Patriot"}, {"Quad"}, {"Coastguard"}, {"Dinghy"}, {"Hermes"}, {"Sabre"}, {"Rustler"}, {"ZR-350"}, {"Walton"}, {"Regina"}, {"Comet"}, {"BMX"}, {"Burrito"}, {"Camper"}, {"Marquis"}, {"Baggage"}, {"Dozer"}, {"Maverick"}, {"News Chopper"}, {"Rancher"}, {"FBI Rancher"}, {"Virgo"}, {"Greenwood"}, {"Jetmax"}, {"Hotring"}, {"Sandking"}, {"Blista Compact"}, {"Police Maverick"}, {"Boxville"}, {"Benson"}, {"Mesa"}, {"RC Goblin"}, {"Hotring Racer A"}, {"Hotring Racer B"}, {"Bloodring Banger"}, {"Rancher"}, {"Super GT"}, {"Elegant"}, {"Journey"}, {"Bike"}, {"Mountain Bike"}, {"Beagle"}, {"Cropdust"}, {"Stunt"}, {"Tanker"}, {"Roadtrain"}, {"Nebula"}, {"Majestic"}, {"Buccaneer"}, {"Shamal"}, {"Hydra"}, {"FCR-900"}, {"NRG-500"}, {"HPV1000"}, {"Cement Truck"}, {"Tow Truck"}, {"Fortune"}, {"Cadrona"}, {"FBI Truck"}, {"Willard"}, {"Forklift"}, {"Tractor"}, {"Combine"}, {"Feltzer"}, {"Remington"}, {"Slamvan"}, {"Blade"}, {"Freight"}, {"Streak"}, {"Vortex"}, {"Vincent"}, {"Bullet"}, {"Clover"}, {"Sadler"}, {"Firetruck LA"}, {"Hustler"}, {"Intruder"}, {"Primo"}, {"Cargobob"}, {"Tampa"}, {"Sunrise"}, {"Merit"}, {"Utility"}, {"Nevada"}, {"Yosemite"}, {"Windsor"}, {"Monster A"}, {"Monster B"}, {"Uranus"}, {"Jester"}, {"Sultan"}, {"Stratum"}, {"Elegy"}, {"Raindance"}, {"RC Tiger"}, {"Flash"}, {"Tahoma"}, {"Savanna"}, {"Bandito"}, {"Freight Flat"}, {"Streak Carriage"}, {"Kart"}, {"Mower"}, {"Duneride"}, {"Sweeper"}, {"Broadway"}, {"Tornado"}, {"AT-400"}, {"DFT-30"}, {"Huntley"}, {"Stafford"}, {"BF-400"}, {"Newsvan"}, {"Tug"}, {"Trailer 3"}, {"Emperor"}, {"Wayfarer"}, {"Euros"}, {"Hotdog"}, {"Club"}, {"Freight Carriage"}, {"Trailer 3"}, {"Andromada"}, {"Dodo"}, {"RC Cam"}, {"Launch"}, {"Police Car (LSPD)"}, {"Police Car (SFPD)"}, {"Police Car (LVPD)"}, {"Police Ranger"}, {"Picador"}, {"S.W.A.T. Van"}, {"Alpha"}, {"Phoenix"}, {"Glendale"}, {"Sadler"}, {"Luggage Trailer A"}, {"Luggage Trailer B"}, {"Stair Trailer"}, {"Boxville"}, {"Farm Plow"}, {"Utility Trailer"} }, RandCars[][] = { {411}, {451}, {560}, {568}, {424}, {562}, {559}, {555}, {549}, {541}, {534}, {533}, {518}, {506}, {504}, {502}, {503}, {500}, {495}, {494}, {489}, {480}, {477} }, RandBikes[][] = { {461}, {468}, {521}, {522}, {463}, {462}, {448} }, BikesAndCars[][] = { {411}, {451}, {560}, {568}, {424}, {562}, {559}, {555}, {556}, {557}, {549}, {541}, {534}, {533}, {518}, {506}, {504}, {502}, {503}, {500}, {495}, {494}, {489}, {480}, {477}, {461}, {468}, {521}, {522}, {463}, {462}, {448} }, RandMonsters[][] = { {444}, {556}, {557} }, RandBoats[][] = { {493}, {446}, {473}, {472}, {452}, {453}, {454}, {430}, {595} }, RandPlanes[][] = { {513}, {512}, {476}, {520} }, BuildRace, BuildRaceType, BuildVehicle, BuildCreatedVehicle, BuildModeVID, BuildName[30], bool: BuildTakeVehPos, BuildVehPosCount, bool: BuildTakeCheckpoints, BuildCheckPointCount, RaceBusy = 0x00, RaceName[30], RaceVehicle, RaceType, TotalCP, Float: RaceVehCoords[2][4], Float: CPCoords[MAX_RACE_CHECKPOINTS_EACH_RACE][4], CreatedRaceVeh[MAX_PLAYERS], Index, PlayersCount[2], CountTimer, CountAmount, RaceTick, RaceStarted, CPProgess[MAX_PLAYERS], Position, FinishCount, JoinCount, rCounter, RaceTime, Text: RaceInfo[MAX_PLAYERS], InfoTimer[MAX_PLAYERS], RacePosition[MAX_PLAYERS], RaceNames[MAX_RACES][128], TotalRaces, bool: AutomaticRace, TimeProgress, RaceMode ; public OnFilterScriptInit() { print("\n+-----------------------+"); printf("| Zavod|"); print("+-------NActen----------+\n"); LoadRaceNames(); LoadAutoRace(RaceNames[random(TotalRaces)]); AutomaticRace = true; return 1; } public OnFilterScriptExit() { BuildCreatedVehicle = (BuildCreatedVehicle == 0x01) ? (DestroyVehicle(BuildVehicle), BuildCreatedVehicle = 0x00) : (DestroyVehicle(BuildVehicle), BuildCreatedVehicle = 0x00); KillTimer(rCounter); KillTimer(CountTimer); Loop(i, MAX_PLAYERS) { DisablePlayerRaceCheckpoint(i); TextDrawDestroy(RaceInfo[i]); DestroyVehicle(CreatedRaceVeh[i]); Joined[i] = false; KillTimer(InfoTimer[i]); } JoinCount = 0; FinishCount = 0; TimeProgress = 0; AutomaticRace = false; return 1; } CMD:buildrace(playerid, params[]) { if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, RED, "<!> Nejsi Admin"); if(BuildRace != 0) return SendClientMessage(playerid, RED, "<!> Už někdo závod dělá!"); if(RaceBusy == 0x01) return SendClientMessage(playerid, RED, "<!> Počkej, až závod skončí!"); if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, RED, "<!> Nejprve opusťvozidlo!"); BuildRace = playerid+1; ShowDialog(playerid, 500); return 1; } CMD:startrace(playerid, params[]) { if(AutomaticRace == true) return SendClientMessage(playerid, RED, "<!> Není možné. Automatický závod je povolen!"); if(BuildRace != 0) return SendClientMessage(playerid, RED, "<!> Už někdo závod dělá !"); if(RaceBusy == 0x01 || RaceStarted == 1) return SendClientMessage(playerid, RED, "<!> Závod probíhá, počkej až skončí!"); if(isnull(params)) return SendClientMessage(playerid, RED, "<!> /startrace [nazev]"); LoadRace(playerid, params); return 1; } CMD:stoprace(playerid, params[]) { if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, RED, "<!> Nejsi Admin"); if(RaceBusy == 0x00 || RaceStarted == 0) return SendClientMessage(playerid, RED, "<!> Žádný závod neprobíhá!"); SendClientMessageToAll(RED, ">> Administrátor stopnul závod!"); return StopRace(); } CMD:race(playerid, params[]) { if(RaceStarted == 1) return SendClientMessage(playerid, RED, "<!> Závod již začal! Počkej, až závod skončí!"); if(RaceBusy == 0x00) return SendClientMessage(playerid, RED, "<!> Neprobíhá žádný závod!"); if(Joined[playerid] == true) return SendClientMessage(playerid, RED, "<!> Už jsi v závodě!"); if(IsPlayerInAnyVehicle(playerid)) return SetTimerEx("SetupRaceForPlayer", 2500, 0, "e", playerid), RemovePlayerFromVehicle(playerid), Joined[playerid] = true; SetupRaceForPlayer(playerid); Joined[playerid] = true; return 1; } CMD:startautorace(playerid, params[]) { if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, RED, "<!> Nejsi Admin"); if(RaceBusy == 0x01 || RaceStarted == 1) return SendClientMessage(playerid, RED, "<!> Nějaký závod již probíhá. Počkej, až skončí!"); if(AutomaticRace == true) return SendClientMessage(playerid, RED, "<!> Už je zapnut!"); LoadRaceNames(); LoadAutoRace(RaceNames[random(TotalRaces)]); AutomaticRace = true; SendClientMessage(playerid, GREEN, ">> Zapnul jsi AutoRace. Automaticky se budou vytvářet závody!"); return 1; } CMD:stopautorace(playerid, params[]) { if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, RED, "<!> Nejsi Admin"); if(AutomaticRace == false) return SendClientMessage(playerid, RED, "<!> Už jse vypnut!"); AutomaticRace = false; SendClientMessage(playerid, RED, "Auto Race deaktivován!, Pro aktivaci, použí /startautorace"); return 1; } CMD:exitrace(playerid, params[]) { if(Joined[playerid] == true) { JoinCount--; Joined[playerid] = false; DestroyVehicle(CreatedRaceVeh[playerid]); DisablePlayerRaceCheckpoint(playerid); TextDrawHideForPlayer(playerid, RaceInfo[playerid]); CPProgess[playerid] = 0; KillTimer(InfoTimer[playerid]); TogglePlayerControllable(playerid, true); SetCameraBehindPlayer(playerid); SpawnPlayer(playerid); } else return SendClientMessage(playerid, RED, "<!> Nejsi v závodě!"); return 1; } public OnPlayerEnterRaceCheckpoint(playerid) { if(CPProgess[playerid] == TotalCP -1) { new TimeStamp, TotalRaceTime, string[256], rFile[256], pName[MAX_PLAYER_NAME], rTime[3], Prize[2], TempTotalTime, TempTime[3] ; Position++; GetPlayerName(playerid, pName, sizeof(pName)); TimeStamp = GetTickCount(); TotalRaceTime = TimeStamp - RaceTick; ConvertTime(var, TotalRaceTime, rTime[0], rTime[1], rTime[2]); switch(Position) { case 1: Prize[0] = (random(random(5000)) + 10000), Prize[1] = 10; case 2: Prize[0] = (random(random(4500)) + 9000), Prize[1] = 9; case 3: Prize[0] = (random(random(4000)) + 8000), Prize[1] = 8; case 4: Prize[0] = (random(random(3500)) + 7000), Prize[1] = 7; case 5: Prize[0] = (random(random(3000)) + 6000), Prize[1] = 6; case 6: Prize[0] = (random(random(2500)) + 5000), Prize[1] = 5; case 7: Prize[0] = (random(random(2000)) + 4000), Prize[1] = 4; case 8: Prize[0] = (random(random(1500)) + 3000), Prize[1] = 3; case 9: Prize[0] = (random(random(1000)) + 2000), Prize[1] = 2; default: Prize[0] = random(random(1000)), Prize[1] = 1; } format(string, sizeof(string), ">> \"%s\" dokončil závod na pozici \"%d\".", pName, Position); SendClientMessageToAll(WHITE, string); format(string, sizeof(string), " - Čas: \"%d:%d.%d\".", rTime[0], rTime[1], rTime[2]); SendClientMessageToAll(WHITE, string); format(string, sizeof(string), " - Cena: \"$%d a +%d Skóre\".", Prize[0], Prize[1]); SendClientMessageToAll(WHITE, string); if(FinishCount <= 5) { format(rFile, sizeof(rFile), "/rRaceSystem/%s.RRACE", RaceName); format(string, sizeof(string), "BestRacerTime_%d", TimeProgress); TempTotalTime = dini_Int(rFile, string); ConvertTime(var1, TempTotalTime, TempTime[0], TempTime[1], TempTime[2]); if(TotalRaceTime <= dini_Int(rFile, string) || TempTotalTime == 0) { dini_IntSet(rFile, string, TotalRaceTime); format(string, sizeof(string), "BestRacer_%d", TimeProgress); if(TempTotalTime != 0) format(string, sizeof(string), ">> \"%s\" překonal rekord \"%s\" s \"%d\" sekundy rychlejší na \"%d\" místo", pName, dini_Get(rFile, string), -(rTime[1] - TempTime[1]), TimeProgress+1); else format(string, sizeof(string), ">> \"%s\" překonal rekord na \"%d\" místě!", pName, TimeProgress+1); SendClientMessageToAll(GREEN, " "); SendClientMessageToAll(GREEN, string); SendClientMessageToAll(GREEN, " "); format(string, sizeof(string), "BestRacer_%d", TimeProgress); dini_Set(rFile, string, pName); TimeProgress++; } } FinishCount++; GivePlayerMoney(playerid, Prize[0]); SetPlayerScore(playerid, GetPlayerScore(playerid) + Prize[1]); DisablePlayerRaceCheckpoint(playerid); SetCameraBehindPlayer(playerid); CPProgess[playerid]++; if(FinishCount >= JoinCount) return StopRace(); } else { CPProgess[playerid]++; CPCoords[CPProgess[playerid]][3]++; RacePosition[playerid] = floatround(CPCoords[CPProgess[playerid]][3], floatround_floor); SetCP(playerid, CPProgess[playerid], CPProgess[playerid]+1, TotalCP, RaceType); PlayerPlaySound(playerid, 1137, 0.0, 0.0, 0.0); } return 1; } public OnPlayerDisconnect(playerid) { if(Joined[playerid] == true) { JoinCount--; Joined[playerid] = false; DestroyVehicle(CreatedRaceVeh[playerid]); DisablePlayerRaceCheckpoint(playerid); TextDrawHideForPlayer(playerid, RaceInfo[playerid]); CPProgess[playerid] = 0; KillTimer(InfoTimer[playerid]); } TextDrawDestroy(RaceInfo[playerid]); if(BuildRace == playerid+1) BuildRace = 0; return 1; } public OnPlayerConnect(playerid) { RaceInfo[playerid] = TextDrawCreate(633.000000, 348.000000, " "); TextDrawAlignment(RaceInfo[playerid], 3); TextDrawBackgroundColor(RaceInfo[playerid], 255); TextDrawFont(RaceInfo[playerid], 1); TextDrawLetterSize(RaceInfo[playerid], 0.240000, 1.100000); TextDrawColor(RaceInfo[playerid], -687931137); TextDrawSetOutline(RaceInfo[playerid], 0); TextDrawSetProportional(RaceInfo[playerid], 1); TextDrawSetShadow(RaceInfo[playerid], 1); return 1; } public OnPlayerStateChange(playerid, newstate, oldstate) { return 1; } public OnPlayerExitVehicle(playerid, vehicleid) { return 1; } public OnPlayerDeath(playerid) { if(Joined[playerid] == true) { JoinCount--; Joined[playerid] = false; DestroyVehicle(CreatedRaceVeh[playerid]); DisablePlayerRaceCheckpoint(playerid); TextDrawHideForPlayer(playerid, RaceInfo[playerid]); CPProgess[playerid] = 0; KillTimer(InfoTimer[playerid]); } if(BuildRace == playerid+1) BuildRace = 0; return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { switch(dialogid) { case 500: { switch(listitem) { case 0: // bike race { BuildRaceType = 0; RaceMode = 5; RaceType = 0; } case 1: // car race { BuildRaceType = 0; RaceMode = 6; RaceType = 0; } case 2: // bike and car race { BuildRaceType = 0; RaceMode = 7; RaceType = 0; } case 3: // monster race { BuildRaceType = 0; RaceMode = 8; RaceType = 0; } case 4: // boat race { BuildRaceType = 0; RaceMode = 9; RaceType = 0; } case 5: // plane race { BuildRaceType = 3; RaceMode = 10; RaceType = 0; } } ShowDialog(playerid, 600); } case 600..601: { if(!response) return ShowDialog(playerid, 599); if(!strlen(inputtext)) return ShowDialog(playerid, 601); if(strlen(inputtext) < 1 || strlen(inputtext) > 20) return ShowDialog(playerid, 601); strmid(BuildName, inputtext, 0, strlen(inputtext), sizeof(BuildName)); ShowDialog(playerid, 602); } case 602..603: { if(!response) return ShowDialog(playerid, 600); if(!strlen(inputtext)) return ShowDialog(playerid, 603); if(isNumeric(inputtext)) { if(!IsValidVehicle(strval(inputtext))) return ShowDialog(playerid, 603); new Float: pPos[4] ; GetPlayerPos(playerid, pPos[0], pPos[1], pPos[2]); GetPlayerFacingAngle(playerid, pPos[3]); BuildModeVID = strval(inputtext); BuildCreatedVehicle = (BuildCreatedVehicle == 0x01) ? (DestroyVehicle(BuildVehicle), BuildCreatedVehicle = 0x00) : (DestroyVehicle(BuildVehicle), BuildCreatedVehicle = 0x00); BuildVehicle = CreateVehicle(strval(inputtext), pPos[0], pPos[1], pPos[2], pPos[3], random(126), random(126), (60 * 60)); PutPlayerInVehicle(playerid, BuildVehicle, 0); BuildCreatedVehicle = 0x01; ShowDialog(playerid, 604); } else { if(!IsValidVehicle(ReturnVehicleID(inputtext))) return ShowDialog(playerid, 603); new Float: pPos[4] ; GetPlayerPos(playerid, pPos[0], pPos[1], pPos[2]); GetPlayerFacingAngle(playerid, pPos[3]); BuildModeVID = ReturnVehicleID(inputtext); BuildCreatedVehicle = (BuildCreatedVehicle == 0x01) ? (DestroyVehicle(BuildVehicle), BuildCreatedVehicle = 0x00) : (DestroyVehicle(BuildVehicle), BuildCreatedVehicle = 0x00); BuildVehicle = CreateVehicle(ReturnVehicleID(inputtext), pPos[0], pPos[1], pPos[2], pPos[3], random(126), random(126), (60 * 60)); PutPlayerInVehicle(playerid, BuildVehicle, 0); BuildCreatedVehicle = 0x01; ShowDialog(playerid, 604); } } case 604: { if(!response) return ShowDialog(playerid, 602); SendClientMessage(playerid, GREEN, ">> Jdi na startovní lajnu a stiskni 'Tlačítko Střílet' a to samé udělej i pro druhé vozidlo."); SendClientMessage(playerid, GREEN, " - Až budeš hotov, zobrazí se ti dialog."); BuildVehPosCount = 0; BuildTakeVehPos = true; } case 605: { if(!response) return ShowDialog(playerid, 604); SendClientMessage(playerid, GREEN, ">> Vytvářej Checkpointy stisknutím 'Tlačítko Střílet'."); SendClientMessage(playerid, GREEN, " - Důležité: Zmačkni 'ENTER' až budeš hotov! Bacha, nesmíš ho zmačknout víckrát (Pád hry)."); BuildCheckPointCount = 0; BuildTakeCheckpoints = true; } case 606: { if(!response) return ShowDialog(playerid, 606); BuildRace = 0; BuildCheckPointCount = 0; BuildVehPosCount = 0; BuildTakeCheckpoints = false; BuildTakeVehPos = false; BuildCreatedVehicle = (BuildCreatedVehicle == 0x01) ? (DestroyVehicle(BuildVehicle), BuildCreatedVehicle = 0x00) : (DestroyVehicle(BuildVehicle), BuildCreatedVehicle = 0x00); } } return 0; } public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { new string[256], rNameFile[256], rFile[256], Float: vPos[4] ; if(newkeys & KEY_FIRE) { if(BuildRace == playerid+1) { if(BuildTakeVehPos == true) { if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, RED, ">> Musíš být v autě"); GetVehiclePos(GetPlayerVehicleID(playerid), vPos[0], vPos[1], vPos[2]); GetVehicleZAngle(GetPlayerVehicleID(playerid), vPos[3]); format(rFile, sizeof(rFile), "/rRaceSystem/%s.RRACE", BuildName); dini_Create(rFile); dini_IntSet(rFile, "vModel", BuildModeVID); dini_IntSet(rFile, "rType", BuildRaceType); dini_IntSet(rFile, "RaceMode", RaceMode); format(string, sizeof(string), "vPosX_%d", BuildVehPosCount), dini_FloatSet(rFile, string, vPos[0]); format(string, sizeof(string), "vPosY_%d", BuildVehPosCount), dini_FloatSet(rFile, string, vPos[1]); format(string, sizeof(string), "vPosZ_%d", BuildVehPosCount), dini_FloatSet(rFile, string, vPos[2]); format(string, sizeof(string), "vAngle_%d", BuildVehPosCount), dini_FloatSet(rFile, string, vPos[3]); format(string, sizeof(string), ">> Pozice vozidla '%d' nastavena.", BuildVehPosCount+1); SendClientMessage(playerid, YELLOW, string); BuildVehPosCount++; } if(BuildVehPosCount >= 2) { BuildVehPosCount = 0; BuildTakeVehPos = false; ShowDialog(playerid, 605); } if(BuildTakeCheckpoints == true) { if(BuildCheckPointCount > MAX_RACE_CHECKPOINTS_EACH_RACE) return SendClientMessage(playerid, RED, ">> Překročil jsi maximum checkpointu!"); if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, RED, ">> Musíš být ve vozidle"); format(rFile, sizeof(rFile), "/rRaceSystem/%s.RRACE", BuildName); GetVehiclePos(GetPlayerVehicleID(playerid), vPos[0], vPos[1], vPos[2]); format(string, sizeof(string), "CP_%d_PosX", BuildCheckPointCount), dini_FloatSet(rFile, string, vPos[0]); format(string, sizeof(string), "CP_%d_PosY", BuildCheckPointCount), dini_FloatSet(rFile, string, vPos[1]); format(string, sizeof(string), "CP_%d_PosZ", BuildCheckPointCount), dini_FloatSet(rFile, string, vPos[2]); format(string, sizeof(string), ">> Checkpoint '%d' nastaven!", BuildCheckPointCount+1); SendClientMessage(playerid, YELLOW, string); BuildCheckPointCount++; } } } if(newkeys & KEY_SECONDARY_ATTACK) { if(BuildTakeCheckpoints == true) { ShowDialog(playerid, 606); format(rNameFile, sizeof(rNameFile), "/rRaceSystem/RaceNames/RaceNames.txt"); TotalRaces = dini_Int(rNameFile, "TotalRaces"); TotalRaces++; dini_IntSet(rNameFile, "TotalRaces", TotalRaces); format(string, sizeof(string), "Race_%d", TotalRaces-1); format(rFile, sizeof(rFile), "/rRaceSystem/%s.RRACE", BuildName); dini_Set(rNameFile, string, BuildName); dini_IntSet(rFile, "TotalCP", BuildCheckPointCount); Loop(x, 5) { format(string, sizeof(string), "BestRacerTime_%d", x); dini_Set(rFile, string, "0"); format(string, sizeof(string), "BestRacer_%d", x); dini_Set(rFile, string, "noone"); } } } /*if (PRESSED(KEY_FIRE)) { new vehicleid = GetPlayerVehicleID(playerid); if (vehicleid) { AddVehicleComponent(vehicleid, 1010); } } if(newkeys & KEY_FIRE && IsPlayerInAnyVehicle(playerid)) { if(!IsNosVehicle(GetPlayerVehicleID(playerid))) return AddVehicleComponent(GetPlayerVehicleID(playerid), 1010); PlayerPlaySound(playerid, 1133 ,0, 0, 0); } if(newkeys & KEY_SUBMISSION && IsPlayerInAnyVehicle(playerid)) { if(IsPlayerInAnyVehicle(playerid)) { new Float:x, Float:y, Float:z; GetVehicleVelocity(GetPlayerVehicleID(playerid), x, y, z); SetVehicleVelocity(GetPlayerVehicleID(playerid) ,x ,y ,z+0.3); } } if (IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == PLAYER_STATE_DRIVER) { if(!IsPlayerInRace(playerid)) { if (newkeys & KEY_FIRE) { new Float:vx, Float:vy, Float:vz; GetVehicleVelocity(GetPlayerVehicleID(playerid), vx, vy, vz); if (floatabs(vx) < 3 && floatabs(vy) < 3 && floatabs(vz) < 3) { SetVehicleVelocity(GetPlayerVehicleID(playerid), vx * SpeedBoostMultiplier[playerid], vy * SpeedBoostMultiplier[playerid], vz * SpeedBoostMultiplier[playerid]); } return 1; } } }*/ /*if(newkeys == KEY_NO) { if(!IsPlayerInRace(playerid)) { if(IsPlayerInAnyVehicle(playerid)) { new vehicleid = GetPlayerVehicleID(playerid) ; if(vehicleid) { new Float: x, Float: y, Float: z, Float: a ; GetVehicleZAngle(vehicleid, a); GetVehiclePos(vehicleid, x, y, z); switch(IsTransFormed[playerid]++) { case 0: (_: a) = CreateVehicle(infernus, x, y, z, a, -1, -1, -1); case 1: (_: a) = CreateVehicle(rancher, x, y, z, a, -1, -1, -1); case 2: (_: a) = CreateVehicle(roadtrain, x, y, z, a, -1, -1, -1); case 3: (_: a) = CreateVehicle(linerunner, x, y, z, a, -1, -1, -1); case 4: (_: a) = CreateVehicle(bandito, x, y, z, a, -1, -1, -1); case 5: (_: a) = CreateVehicle(hydra, x, y, z, a, -1, -1, -1); case 6: (_: a) = CreateVehicle(hotringracer, x, y, z, a, -1, -1, -1); case 7: (_: a) = CreateVehicle(hotknife, x, y, z, a, -1, -1, -1); case 8: (_: a) = CreateVehicle(monster, x, y, z, a, -1, -1, -1); case 9: (_: a) = CreateVehicle(turismo, x, y, z, a, -1, -1, -1); case 10: (_: a) = CreateVehicle(sanchez, x, y, z, a, -1, -1, -1); case 11: (_: a) = CreateVehicle(nrg500, x, y, z, a, -1, -1, -1); case 12: (_: a) = CreateVehicle(mesa, x, y, z, a, -1, -1, -1); case 13: (_: a) = CreateVehicle(supergt, x, y, z, a, -1, -1, -1); case 14: (_: a) = CreateVehicle(banshee, x, y, z, a, -1, -1, -1); case 15: (_: a) = CreateVehicle(caddy, x, y, z, a, -1, -1, -1); case 16: (_: a) = CreateVehicle(quad, x, y, z, a, -1, -1, -1); case 17: (_: a) = CreateVehicle(comet, x, y, z, a, -1, -1, -1); case 18: (_: a) = CreateVehicle(bullet, x, y, z, a, -1, -1, -1); default: { (_: a) = CreateVehicle(hotringracer, x, y, z, a, -1, -1, -1); IsTransFormed[playerid] = 0; } } GetVehicleVelocity(vehicleid, x, y, z); TransForm = SetTimerEx("PutPlayerInTransVehicle", 0, false, "iifff", playerid, _: a, x, y, z); SendClientMessage(playerid, GREEN, "Vehicle Transformed!"); DestroyVehicle(vehicleid); } } } else if(IsPlayerInRace(playerid)) return SendClientMessage(playerid, RED, "ERROR: you can't transform your vehicle when in racing!"); }*/ return 1; } forward PutPlayerInTransVehicle(playerid, vehicleid, Float: x, Float: y, Float: z); public PutPlayerInTransVehicle(playerid, vehicleid, Float: x, Float: y, Float: z) { PutPlayerInVehicle(playerid, vehicleid, 0); SetVehicleVelocity(vehicleid, x, y, z); } function LoadRaceNames() { new rNameFile[64], string[64] ; format(rNameFile, sizeof(rNameFile), "/rRaceSystem/RaceNames/RaceNames.txt"); TotalRaces = dini_Int(rNameFile, "TotalRaces"); Loop(x, TotalRaces) { format(string, sizeof(string), "Race_%d", x), strmid(RaceNames[x], dini_Get(rNameFile, string), 0, 20, sizeof(RaceNames)); printf(">> Nactene zavody: %s", RaceNames[x]); } return 1; } function LoadAutoRace(rName[]) { new rFile[256], string[256] ; format(rFile, sizeof(rFile), "/rRaceSystem/%s.RRACE", rName); if(!dini_Exists(rFile)) return printf("Zavod \"%s\" neexistuje!", rName); strmid(RaceName, rName, 0, strlen(rName), sizeof(RaceName)); RaceVehicle = dini_Int(rFile, "vModel"); RaceType = dini_Int(rFile, "rType"); TotalCP = dini_Int(rFile, "TotalCP"); RaceMode = dini_Int(rFile, "RaceMode"); #if DEBUG_RACE == 1 printf("Vozidlo: %d", RaceVehicle); printf("Typ_Zavodu: %d", RaceType); printf("Mod_Zavodu: %d", RaceMode); printf("Celkem_Checkpointu: %d", TotalCP); #endif Loop(x, 2) { format(string, sizeof(string), "vPosX_%d", x), RaceVehCoords[x][0] = dini_Float(rFile, string); format(string, sizeof(string), "vPosY_%d", x), RaceVehCoords[x][1] = dini_Float(rFile, string); format(string, sizeof(string), "vPosZ_%d", x), RaceVehCoords[x][2] = dini_Float(rFile, string); format(string, sizeof(string), "vAngle_%d", x), RaceVehCoords[x][3] = dini_Float(rFile, string); #if DEBUG_RACE == 1 printf("VehiclePos %d: %f, %f, %f, %f", x, RaceVehCoords[x][0], RaceVehCoords[x][1], RaceVehCoords[x][2], RaceVehCoords[x][3]); #endif } Loop(x, TotalCP) { format(string, sizeof(string), "CP_%d_PosX", x), CPCoords[x][0] = dini_Float(rFile, string); format(string, sizeof(string), "CP_%d_PosY", x), CPCoords[x][1] = dini_Float(rFile, string); format(string, sizeof(string), "CP_%d_PosZ", x), CPCoords[x][2] = dini_Float(rFile, string); #if DEBUG_RACE == 1 printf("RaceCheckPoint %d: %f, %f, %f", x, CPCoords[x][0], CPCoords[x][1], CPCoords[x][2]); #endif } Position = 0; FinishCount = 0; JoinCount = 0; Loop(x, 2) PlayersCount[x] = 0; CountAmount = COUNT_DOWN_TILL_RACE_START; RaceTime = MAX_RACE_TIME; RaceBusy = 0x01; CountTimer = SetTimer("CountTillRace", 999, 1); TimeProgress = 0; return 1; } function LoadRace(playerid, rName[]) { new rFile[256], string[256] ; format(rFile, sizeof(rFile), "/rRaceSystem/%s.RRACE", rName); if(!dini_Exists(rFile)) return SendClientMessage(playerid, RED, "<!> Závod neexistuje!"), printf("Zavod \"%s\" neexistuje!", rName); strmid(RaceName, rName, 0, strlen(rName), sizeof(RaceName)); RaceVehicle = dini_Int(rFile, "vModel"); RaceType = dini_Int(rFile, "rType"); RaceMode = dini_Int(rFile, "RaceMode"); TotalCP = dini_Int(rFile, "TotalCP"); printf("Vozidlo: %d", RaceVehicle); #if DEBUG_RACE == 1 printf("Typ_Zavodu: %d", RaceType); printf("Mod_Zavodu: %d", RaceMode); printf("Celkem_Checkpointu: %d", TotalCP); #endif Loop(x, 2) { format(string, sizeof(string), "vPosX_%d", x), RaceVehCoords[x][0] = dini_Float(rFile, string); format(string, sizeof(string), "vPosY_%d", x), RaceVehCoords[x][1] = dini_Float(rFile, string); format(string, sizeof(string), "vPosZ_%d", x), RaceVehCoords[x][2] = dini_Float(rFile, string); format(string, sizeof(string), "vAngle_%d", x), RaceVehCoords[x][3] = dini_Float(rFile, string); #if DEBUG_RACE == 1 printf("VehiclePos %d: %f, %f, %f, %f", x, RaceVehCoords[x][0], RaceVehCoords[x][1], RaceVehCoords[x][2], RaceVehCoords[x][3]); #endif } Loop(x, TotalCP) { format(string, sizeof(string), "CP_%d_PosX", x), CPCoords[x][0] = dini_Float(rFile, string); format(string, sizeof(string), "CP_%d_PosY", x), CPCoords[x][1] = dini_Float(rFile, string); format(string, sizeof(string), "CP_%d_PosZ", x), CPCoords[x][2] = dini_Float(rFile, string); #if DEBUG_RACE == 1 printf("RaceCheckPoint %d: %f, %f, %f", x, CPCoords[x][0], CPCoords[x][1], CPCoords[x][2]); #endif } Position = 0; FinishCount = 0; JoinCount = 0; Loop(x, 2) PlayersCount[x] = 0; Joined[playerid] = true; CountAmount = COUNT_DOWN_TILL_RACE_START; RaceTime = MAX_RACE_TIME; RaceBusy = 0x01; TimeProgress = 0; SetupRaceForPlayer(playerid); CountTimer = SetTimer("CountTillRace", 999, 1); return 1; } stock isNumeric(const string[]) { new length=strlen(string); if (length==0) return false; for (new i = 0; i < length; i++) { if ( (string[i] > '9' || string[i] < '0' && string[i]!='-' && string[i]!='+') // Not a number,'+' or '-' || (string[i]=='-' && i!=0) // A '-' but not at first. || (string[i]=='+' && i!=0) // A '+' but not at first. ) return false; } if (length==1 && (string[0]=='-' || string[0]=='+')) return false; return true; } function SetCP(playerid, PrevCP, NextCP, MaxCP, Type) { if(Type == 0) { if(NextCP == MaxCP) SetPlayerRaceCheckpoint(playerid, 1, CPCoords[PrevCP][0], CPCoords[PrevCP][1], CPCoords[PrevCP][2], CPCoords[NextCP][0], CPCoords[NextCP][1], CPCoords[NextCP][2], RACE_CHECKPOINT_SIZE); else SetPlayerRaceCheckpoint(playerid, 0, CPCoords[PrevCP][0], CPCoords[PrevCP][1], CPCoords[PrevCP][2], CPCoords[NextCP][0], CPCoords[NextCP][1], CPCoords[NextCP][2], RACE_CHECKPOINT_SIZE); } else if(Type == 3) { if(NextCP == MaxCP) SetPlayerRaceCheckpoint(playerid, 4, CPCoords[PrevCP][0], CPCoords[PrevCP][1], CPCoords[PrevCP][2], CPCoords[NextCP][0], CPCoords[NextCP][1], CPCoords[NextCP][2], RACE_CHECKPOINT_SIZE); else SetPlayerRaceCheckpoint(playerid, 3, CPCoords[PrevCP][0], CPCoords[PrevCP][1], CPCoords[PrevCP][2], CPCoords[NextCP][0], CPCoords[NextCP][1], CPCoords[NextCP][2], RACE_CHECKPOINT_SIZE); } return 1; } function SetupRaceForPlayer(playerid) { CPProgess[playerid] = 0; TogglePlayerControllable(playerid, false); CPCoords[playerid][3] = 0; SetCP(playerid, CPProgess[playerid], CPProgess[playerid]+1, TotalCP, RaceType); if(IsOdd(playerid)) Index = 1; else Index = 0; new rFile[256]; format(rFile, sizeof(rFile), "/rRaceSystem/%s.RRACE", RaceName); if(!dini_Exists(rFile)) return printf("Závod \"%s\" neexistuje!", RaceName); RaceMode = dini_Int(rFile, "RaceMode"); switch(Index) { case 0: { if(PlayersCount[0] == 1) { if(RaceMode == 5) // bike race { new carcount = 0; new id = random(carcount+6); // should return number RaceVehCoords[0][0] -= (6 * floatsin(-RaceVehCoords[0][3], degrees)); RaceVehCoords[0][1] -= (6 * floatcos(-RaceVehCoords[0][3], degrees)); CreatedRaceVeh[playerid] = CreateVehicle(RandBikes[id][carcount], RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2, RaceVehCoords[0][3], random(126), random(126), (60 * 60)); SetPlayerPos(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2); SetPlayerFacingAngle(playerid, RaceVehCoords[0][3]); #if defined RACE_IN_OTHER_WORLD SetVehicleVirtualWorld(CreatedRaceVeh[playerid], 10); #endif PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); Camera(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2], RaceVehCoords[0][3], 20); } if(RaceMode == 6) // car race { new carcount = 0; new id = random(carcount+24); // should return number RaceVehCoords[0][0] -= (6 * floatsin(-RaceVehCoords[0][3], degrees)); RaceVehCoords[0][1] -= (6 * floatcos(-RaceVehCoords[0][3], degrees)); CreatedRaceVeh[playerid] = CreateVehicle(RandCars[id][carcount], RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2, RaceVehCoords[0][3], random(126), random(126), (60 * 60)); SetPlayerPos(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2); SetPlayerFacingAngle(playerid, RaceVehCoords[0][3]); #if defined RACE_IN_OTHER_WORLD SetVehicleVirtualWorld(CreatedRaceVeh[playerid], 10); #endif PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); Camera(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2], RaceVehCoords[0][3], 20); } if(RaceMode == 7) // bike and car race { new carcount = 0; new id = random(carcount+27); // should return number RaceVehCoords[0][0] -= (6 * floatsin(-RaceVehCoords[0][3], degrees)); RaceVehCoords[0][1] -= (6 * floatcos(-RaceVehCoords[0][3], degrees)); CreatedRaceVeh[playerid] = CreateVehicle(BikesAndCars[id][carcount], RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2, RaceVehCoords[0][3], random(126), random(126), (60 * 60)); SetPlayerPos(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2); SetPlayerFacingAngle(playerid, RaceVehCoords[0][3]); #if defined RACE_IN_OTHER_WORLD SetVehicleVirtualWorld(CreatedRaceVeh[playerid], 10); #endif PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); Camera(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2], RaceVehCoords[0][3], 20); } if(RaceMode == 8) // monster race { new carcount = 0; new id = random(carcount+2); // should return number RaceVehCoords[0][0] -= (6 * floatsin(-RaceVehCoords[0][3], degrees)); RaceVehCoords[0][1] -= (6 * floatcos(-RaceVehCoords[0][3], degrees)); CreatedRaceVeh[playerid] = CreateVehicle(RandMonsters[id][carcount], RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2, RaceVehCoords[0][3], random(126), random(126), (60 * 60)); SetPlayerPos(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2); SetPlayerFacingAngle(playerid, RaceVehCoords[0][3]); #if defined RACE_IN_OTHER_WORLD SetVehicleVirtualWorld(CreatedRaceVeh[playerid], 10); #endif PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); Camera(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2], RaceVehCoords[0][3], 20); } if(RaceMode == 9) // boat race { new carcount = 0; new id = random(carcount+8); // should return number RaceVehCoords[0][0] -= (6 * floatsin(-RaceVehCoords[0][3], degrees)); RaceVehCoords[0][1] -= (6 * floatcos(-RaceVehCoords[0][3], degrees)); CreatedRaceVeh[playerid] = CreateVehicle(RandBoats[id][carcount], RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2, RaceVehCoords[0][3], random(126), random(126), (60 * 60)); SetPlayerPos(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2); SetPlayerFacingAngle(playerid, RaceVehCoords[0][3]); #if defined RACE_IN_OTHER_WORLD SetVehicleVirtualWorld(CreatedRaceVeh[playerid], 10); #endif PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); Camera(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2], RaceVehCoords[0][3], 20); } if(RaceMode == 10) { new carcount = 0; new id = random(carcount+3); // should return number RaceVehCoords[0][0] -= (6 * floatsin(-RaceVehCoords[0][3], degrees)); RaceVehCoords[0][1] -= (6 * floatcos(-RaceVehCoords[0][3], degrees)); CreatedRaceVeh[playerid] = CreateVehicle(RandPlanes[id][carcount], RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2, RaceVehCoords[0][3], random(126), random(126), (60 * 60)); SetPlayerPos(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2); SetPlayerFacingAngle(playerid, RaceVehCoords[0][3]); #if defined RACE_IN_OTHER_WORLD SetVehicleVirtualWorld(CreatedRaceVeh[playerid], 10); #endif PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); Camera(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2], RaceVehCoords[0][3], 20); } } } case 1: { if(PlayersCount[1] == 1) { if(RaceMode == 5) // bike race { new carcount = 0; new id = random(carcount+6); // should return number RaceVehCoords[1][0] -= (6 * floatsin(-RaceVehCoords[1][3], degrees)); RaceVehCoords[1][1] -= (6 * floatcos(-RaceVehCoords[1][3], degrees)); CreatedRaceVeh[playerid] = CreateVehicle(RandBikes[id][carcount], RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2, RaceVehCoords[0][3], random(126), random(126), (60 * 60)); SetPlayerPos(playerid, RaceVehCoords[1][0], RaceVehCoords[1][1], RaceVehCoords[1][2]+2); SetPlayerFacingAngle(playerid, RaceVehCoords[1][3]); #if defined RACE_IN_OTHER_WORLD SetVehicleVirtualWorld(CreatedRaceVeh[playerid], 10); #endif PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); Camera(playerid, RaceVehCoords[1][0], RaceVehCoords[1][1], RaceVehCoords[1][2], RaceVehCoords[1][3], 20); } if(RaceMode == 6) // car race { new carcount = 0; new id = random(carcount+24); // should return number RaceVehCoords[1][0] -= (6 * floatsin(-RaceVehCoords[1][3], degrees)); RaceVehCoords[1][1] -= (6 * floatcos(-RaceVehCoords[1][3], degrees)); CreatedRaceVeh[playerid] = CreateVehicle(RandCars[id][carcount], RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2, RaceVehCoords[0][3], random(126), random(126), (60 * 60)); SetPlayerPos(playerid, RaceVehCoords[1][0], RaceVehCoords[1][1], RaceVehCoords[1][2]+2); SetPlayerFacingAngle(playerid, RaceVehCoords[1][3]); #if defined RACE_IN_OTHER_WORLD SetVehicleVirtualWorld(CreatedRaceVeh[playerid], 10); #endif PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); Camera(playerid, RaceVehCoords[1][0], RaceVehCoords[1][1], RaceVehCoords[1][2], RaceVehCoords[1][3], 20); } if(RaceMode == 7) // bike and car race { new carcount = 0; new id = random(carcount+27); // should return number RaceVehCoords[1][0] -= (6 * floatsin(-RaceVehCoords[1][3], degrees)); RaceVehCoords[1][1] -= (6 * floatcos(-RaceVehCoords[1][3], degrees)); CreatedRaceVeh[playerid] = CreateVehicle(BikesAndCars[id][carcount], RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2, RaceVehCoords[0][3], random(126), random(126), (60 * 60)); SetPlayerPos(playerid, RaceVehCoords[1][0], RaceVehCoords[1][1], RaceVehCoords[1][2]+2); SetPlayerFacingAngle(playerid, RaceVehCoords[1][3]); #if defined RACE_IN_OTHER_WORLD SetVehicleVirtualWorld(CreatedRaceVeh[playerid], 10); #endif PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); Camera(playerid, RaceVehCoords[1][0], RaceVehCoords[1][1], RaceVehCoords[1][2], RaceVehCoords[1][3], 20); } if(RaceMode == 8) // monster race { new carcount = 0; new id = random(carcount+2); // should return number RaceVehCoords[0][0] -= (6 * floatsin(-RaceVehCoords[0][3], degrees)); RaceVehCoords[0][1] -= (6 * floatcos(-RaceVehCoords[0][3], degrees)); CreatedRaceVeh[playerid] = CreateVehicle(RandMonsters[id][carcount], RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2, RaceVehCoords[0][3], random(126), random(126), (60 * 60)); SetPlayerPos(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2); SetPlayerFacingAngle(playerid, RaceVehCoords[0][3]); #if defined RACE_IN_OTHER_WORLD SetVehicleVirtualWorld(CreatedRaceVeh[playerid], 10); #endif PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); Camera(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2], RaceVehCoords[0][3], 20); } if(RaceMode == 9) // boat race { new carcount = 0; new id = random(carcount+8); // should return number RaceVehCoords[0][0] -= (6 * floatsin(-RaceVehCoords[0][3], degrees)); RaceVehCoords[0][1] -= (6 * floatcos(-RaceVehCoords[0][3], degrees)); CreatedRaceVeh[playerid] = CreateVehicle(RandBoats[id][carcount], RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2, RaceVehCoords[0][3], random(126), random(126), (60 * 60)); SetPlayerPos(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2); SetPlayerFacingAngle(playerid, RaceVehCoords[0][3]); #if defined RACE_IN_OTHER_WORLD SetVehicleVirtualWorld(CreatedRaceVeh[playerid], 10); #endif PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); Camera(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2], RaceVehCoords[0][3], 20); } if(RaceMode == 10) { new carcount = 0; new id = random(carcount+3); // should return number RaceVehCoords[0][0] -= (6 * floatsin(-RaceVehCoords[0][3], degrees)); RaceVehCoords[0][1] -= (6 * floatcos(-RaceVehCoords[0][3], degrees)); CreatedRaceVeh[playerid] = CreateVehicle(RandPlanes[id][carcount], RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2, RaceVehCoords[0][3], random(126), random(126), (60 * 60)); SetPlayerPos(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2); SetPlayerFacingAngle(playerid, RaceVehCoords[0][3]); #if defined RACE_IN_OTHER_WORLD SetVehicleVirtualWorld(CreatedRaceVeh[playerid], 10); #endif PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); Camera(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2], RaceVehCoords[0][3], 20); } } } } switch(Index) { case 0: { if(PlayersCount[0] != 1) { if(RaceMode == 5) // bike race { new carcount = 0; new id = random(carcount+6); // should return number CreatedRaceVeh[playerid] = CreateVehicle(RandBikes[id][carcount], RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2, RaceVehCoords[0][3], random(126), random(126), (60 * 60)); SetPlayerPos(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2); SetPlayerFacingAngle(playerid, RaceVehCoords[0][3]); #if defined RACE_IN_OTHER_WORLD SetVehicleVirtualWorld(CreatedRaceVeh[playerid], 10); #endif PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); Camera(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2], RaceVehCoords[0][3], 20); PlayersCount[0] = 1; } if(RaceMode == 6) // car race { new carcount = 0; new id = random(carcount+24); // should return number CreatedRaceVeh[playerid] = CreateVehicle(RandCars[id][carcount], RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2, RaceVehCoords[0][3], random(126), random(126), (60 * 60)); SetPlayerPos(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2); SetPlayerFacingAngle(playerid, RaceVehCoords[0][3]); #if defined RACE_IN_OTHER_WORLD SetVehicleVirtualWorld(CreatedRaceVeh[playerid], 10); #endif PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); Camera(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2], RaceVehCoords[0][3], 20); PlayersCount[0] = 1; } if(RaceMode == 7) // bike and car race { new carcount = 0; new id = random(carcount+27); // should return number CreatedRaceVeh[playerid] = CreateVehicle(BikesAndCars[id][carcount], RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2, RaceVehCoords[0][3], random(126), random(126), (60 * 60)); SetPlayerPos(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2); SetPlayerFacingAngle(playerid, RaceVehCoords[0][3]); #if defined RACE_IN_OTHER_WORLD SetVehicleVirtualWorld(CreatedRaceVeh[playerid], 10); #endif PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); Camera(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2], RaceVehCoords[0][3], 20); PlayersCount[0] = 1; } if(RaceMode == 8) // monster race { new carcount = 0; new id = random(carcount+2); // should return number RaceVehCoords[0][0] -= (6 * floatsin(-RaceVehCoords[0][3], degrees)); RaceVehCoords[0][1] -= (6 * floatcos(-RaceVehCoords[0][3], degrees)); CreatedRaceVeh[playerid] = CreateVehicle(RandMonsters[id][carcount], RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2, RaceVehCoords[0][3], random(126), random(126), (60 * 60)); SetPlayerPos(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2); SetPlayerFacingAngle(playerid, RaceVehCoords[0][3]); #if defined RACE_IN_OTHER_WORLD SetVehicleVirtualWorld(CreatedRaceVeh[playerid], 10); #endif PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); Camera(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2], RaceVehCoords[0][3], 20); } if(RaceMode == 9) // boat race { new carcount = 0; new id = random(carcount+8); // should return number RaceVehCoords[0][0] -= (6 * floatsin(-RaceVehCoords[0][3], degrees)); RaceVehCoords[0][1] -= (6 * floatcos(-RaceVehCoords[0][3], degrees)); CreatedRaceVeh[playerid] = CreateVehicle(RandBoats[id][carcount], RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2, RaceVehCoords[0][3], random(126), random(126), (60 * 60)); SetPlayerPos(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2); SetPlayerFacingAngle(playerid, RaceVehCoords[0][3]); #if defined RACE_IN_OTHER_WORLD SetVehicleVirtualWorld(CreatedRaceVeh[playerid], 10); #endif PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); Camera(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2], RaceVehCoords[0][3], 20); } if(RaceMode == 10) { new carcount = 0; new id = random(carcount+3); // should return number RaceVehCoords[0][0] -= (6 * floatsin(-RaceVehCoords[0][3], degrees)); RaceVehCoords[0][1] -= (6 * floatcos(-RaceVehCoords[0][3], degrees)); CreatedRaceVeh[playerid] = CreateVehicle(RandPlanes[id][carcount], RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2, RaceVehCoords[0][3], random(126), random(126), (60 * 60)); SetPlayerPos(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2); SetPlayerFacingAngle(playerid, RaceVehCoords[0][3]); #if defined RACE_IN_OTHER_WORLD SetVehicleVirtualWorld(CreatedRaceVeh[playerid], 10); #endif PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); Camera(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2], RaceVehCoords[0][3], 20); } } } case 1: { if(PlayersCount[1] != 1) { if(RaceMode == 5) // bike race { new carcount = 0; new id = random(carcount+6); // should return number CreatedRaceVeh[playerid] = CreateVehicle(RandBikes[id][carcount], RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2, RaceVehCoords[0][3], random(126), random(126), (60 * 60)); SetPlayerPos(playerid, RaceVehCoords[1][0], RaceVehCoords[1][1], RaceVehCoords[1][2]+2); SetPlayerFacingAngle(playerid, RaceVehCoords[1][3]); #if defined RACE_IN_OTHER_WORLD SetVehicleVirtualWorld(CreatedRaceVeh[playerid], 10); #endif PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); Camera(playerid, RaceVehCoords[1][0], RaceVehCoords[1][1], RaceVehCoords[1][2], RaceVehCoords[1][3], 20); PlayersCount[1] = 1; } if(RaceMode == 6) // car race { new carcount = 0; new id = random(carcount+24); // should return number CreatedRaceVeh[playerid] = CreateVehicle(RandCars[id][carcount], RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2, RaceVehCoords[0][3], random(126), random(126), (60 * 60)); SetPlayerPos(playerid, RaceVehCoords[1][0], RaceVehCoords[1][1], RaceVehCoords[1][2]+2); SetPlayerFacingAngle(playerid, RaceVehCoords[1][3]); #if defined RACE_IN_OTHER_WORLD SetVehicleVirtualWorld(CreatedRaceVeh[playerid], 10); #endif PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); Camera(playerid, RaceVehCoords[1][0], RaceVehCoords[1][1], RaceVehCoords[1][2], RaceVehCoords[1][3], 20); PlayersCount[1] = 1; } if(RaceMode == 7) // bike and car race { new carcount = 0; new id = random(carcount+27); // should return number CreatedRaceVeh[playerid] = CreateVehicle(BikesAndCars[id][carcount], RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2, RaceVehCoords[0][3], random(126), random(126), (60 * 60)); SetPlayerPos(playerid, RaceVehCoords[1][0], RaceVehCoords[1][1], RaceVehCoords[1][2]+2); SetPlayerFacingAngle(playerid, RaceVehCoords[1][3]); #if defined RACE_IN_OTHER_WORLD SetVehicleVirtualWorld(CreatedRaceVeh[playerid], 10); #endif PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); Camera(playerid, RaceVehCoords[1][0], RaceVehCoords[1][1], RaceVehCoords[1][2], RaceVehCoords[1][3], 20); PlayersCount[1] = 1; } if(RaceMode == 8) // monster race { new carcount = 0; new id = random(carcount+2); // should return number RaceVehCoords[0][0] -= (6 * floatsin(-RaceVehCoords[0][3], degrees)); RaceVehCoords[0][1] -= (6 * floatcos(-RaceVehCoords[0][3], degrees)); CreatedRaceVeh[playerid] = CreateVehicle(RandMonsters[id][carcount], RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2, RaceVehCoords[0][3], random(126), random(126), (60 * 60)); SetPlayerPos(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2); SetPlayerFacingAngle(playerid, RaceVehCoords[0][3]); #if defined RACE_IN_OTHER_WORLD SetVehicleVirtualWorld(CreatedRaceVeh[playerid], 10); #endif PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); Camera(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2], RaceVehCoords[0][3], 20); } if(RaceMode == 9) // boat race { new carcount = 0; new id = random(carcount+8); // should return number RaceVehCoords[0][0] -= (6 * floatsin(-RaceVehCoords[0][3], degrees)); RaceVehCoords[0][1] -= (6 * floatcos(-RaceVehCoords[0][3], degrees)); CreatedRaceVeh[playerid] = CreateVehicle(RandBoats[id][carcount], RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2, RaceVehCoords[0][3], random(126), random(126), (60 * 60)); SetPlayerPos(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2); SetPlayerFacingAngle(playerid, RaceVehCoords[0][3]); #if defined RACE_IN_OTHER_WORLD SetVehicleVirtualWorld(CreatedRaceVeh[playerid], 10); #endif PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); Camera(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2], RaceVehCoords[0][3], 20); } if(RaceMode == 10) { new carcount = 0; new id = random(carcount+3); // should return number RaceVehCoords[0][0] -= (6 * floatsin(-RaceVehCoords[0][3], degrees)); RaceVehCoords[0][1] -= (6 * floatcos(-RaceVehCoords[0][3], degrees)); CreatedRaceVeh[playerid] = CreateVehicle(RandPlanes[id][carcount], RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2, RaceVehCoords[0][3], random(126), random(126), (60 * 60)); SetPlayerPos(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2]+2); SetPlayerFacingAngle(playerid, RaceVehCoords[0][3]); #if defined RACE_IN_OTHER_WORLD SetVehicleVirtualWorld(CreatedRaceVeh[playerid], 10); #endif PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); Camera(playerid, RaceVehCoords[0][0], RaceVehCoords[0][1], RaceVehCoords[0][2], RaceVehCoords[0][3], 20); } } } } new string[128] ; #if defined RACE_IN_OTHER_WORLD SetPlayerVirtualWorld(playerid, 10); #endif InfoTimer[playerid] = SetTimerEx("TextInfo", 500, 1, "e", playerid); if(JoinCount == 1) format(string, sizeof(string), "Zavod: ~w~%s~n~~p~~h~Checkpoint: ~w~%d/%d~n~~b~~h~Cas: ~w~%s~n~~y~Pozice: ~w~1/1~n~ ", RaceName, CPProgess[playerid], TotalCP, TimeConvert(RaceTime)); else format(string, sizeof(string), "Zavod: ~w~%s~n~~p~~h~Checkpoint: ~w~%d/%d~n~~b~~h~Cas: ~w~%s~n~~y~Pozice: ~w~%d/%d~n~ ", RaceName, CPProgess[playerid], TotalCP, TimeConvert(RaceTime), RacePosition[playerid], JoinCount); TextDrawSetString(RaceInfo[playerid], string); TextDrawShowForPlayer(playerid, RaceInfo[playerid]); JoinCount++; return 1; } function CountTillRace() { switch(CountAmount) { case 0: { ForEach(i, MAX_PLAYERS) { if(Joined[i] == false) { new string[128] ; format(string, sizeof(string), ">> Nemůžeš se připojit do \"%s\". Čas na připojení už vypršel!", RaceName); SendClientMessage(i, RED, string); } } StartRace(); } case 1..5: { new string[10] ; format(string, sizeof(string), "~b~%d", CountAmount); ForEach(i, MAX_PLAYERS) { if(Joined[i] == true) { GameTextForPlayer(i, string, 999, 5); PlayerPlaySound(i, 1056, 0.0, 0.0, 0.0); } } } case 60, 50, 40, 30, 20, 10: { new string[128] ; format(string, sizeof(string), ">> \"%d\" sekund do \"%s\" začátku! Použij \"/race\" pro připojení.", CountAmount, RaceName); SendClientMessageToAll(GREEN, string); } } return CountAmount--; } function StartRace() { ForEach(i, MAX_PLAYERS) { if(Joined[i] == true) { TogglePlayerControllable(i, true); PlayerPlaySound(i, 1057, 0.0, 0.0, 0.0); GameTextForPlayer(i, "~g~Jed jed jed", 2000, 5); SetCameraBehindPlayer(i); } } rCounter = SetTimer("RaceCounter", 900, 1); RaceTick = GetTickCount(); RaceStarted = 1; KillTimer(CountTimer); return 1; } function StopRace() { KillTimer(rCounter); RaceStarted = 0; RaceTick = 0; RaceBusy = 0x00; JoinCount = 0; FinishCount = 0; TimeProgress = 0; ForEach(i, MAX_PLAYERS) { if(Joined[i] == true) { DisablePlayerRaceCheckpoint(i); DestroyVehicle(CreatedRaceVeh[i]); Joined[i] = false; SpawnPlayer(i); SetCameraBehindPlayer(i); TextDrawHideForPlayer(i, RaceInfo[i]); CPProgess[i] = 0; KillTimer(InfoTimer[i]); } } SendClientMessageToAll(YELLOW, ">> Čas závodu skončil!"); if(AutomaticRace == true) LoadRaceNames(), LoadAutoRace(RaceNames[random(TotalRaces)]); return 1; } function RaceCounter() { if(RaceStarted == 1) { RaceTime--; if(JoinCount <= 0) { StopRace(); SendClientMessageToAll(RED, ">> Závod skončil!"); } } if(RaceTime <= 0) { StopRace(); } return 1; } function TextInfo(playerid) { new string[128] ; if(JoinCount == 1) format(string, sizeof(string), "Zavod: ~w~%s~n~~p~~h~Checkpoint: ~w~%d/%d~n~~b~~h~ZCas: ~w~%s~n~~y~Pozice: ~w~1/1~n~", RaceName, CPProgess[playerid], TotalCP, TimeConvert(RaceTime)); else format(string, sizeof(string), "Zavod: ~w~%s~n~~p~~h~Checkpoint: ~w~%d/%d~n~~b~~h~Cas: ~w~%s~n~~y~Pozice: ~w~%d/%d~n~", RaceName, CPProgess[playerid], TotalCP, TimeConvert(RaceTime), RacePosition[playerid], JoinCount); TextDrawSetString(RaceInfo[playerid], string); TextDrawShowForPlayer(playerid, RaceInfo[playerid]); } function Camera(playerid, Float:X, Float:Y, Float:Z, Float:A, Mul) { SetPlayerCameraLookAt(playerid, X, Y, Z); SetPlayerCameraPos(playerid, X + (Mul * floatsin(-A, degrees)), Y + (Mul * floatcos(-A, degrees)), Z+6); } /*function IsPlayerInRace(playerid) { if(Joined[playerid] == true) return true; else return false; }*/ function ShowDialog(playerid, dialogid) { switch(dialogid) { case 500: ShowPlayerDialog(playerid, dialogid, DIALOG_STYLE_LIST, CreateCaption("Vytvořit závod"), "\ Motorky\nAuta\nAuta a Motorky\nMonster Trucky\nLodě\nLetadla", "Další", "Zavřít"); case 600: ShowPlayerDialog(playerid, dialogid, DIALOG_STYLE_INPUT, CreateCaption("Vytvořit závod (Část 1/4)"), "\ Část 1:\n\ ********\n\ Vítejte v stavbě závodu.\n\ Dříve, než začnete budovat závod, zadejte název trati.\n\n\ >> Zadejte název trati níže a zmačkněte 'Další' pro postup.", "Další", "Zpět"); case 601: ShowPlayerDialog(playerid, dialogid, DIALOG_STYLE_INPUT, CreateCaption("Vytvořit závod (Část 1/4)"), "\ Chyba: Moc dlouhé nebo krátké! (min. 1 - max. 20)\n\n\n\ Část 1:\n\ ********\n\ Vítejte v stavbě závodu.\n\ Dříve, než začnete budovat závod, zadejte název trati.\n\n\ >> Zadejte název trati níže a zmačkněte 'Další' pro postup.", "Další", "Zpět"); case 602: ShowPlayerDialog(playerid, dialogid, DIALOG_STYLE_INPUT, CreateCaption("Vytvořit závod (Část 2/4)"), "\ Část 2:\n\ ********\n\ Zadejte ID nebo název vozidla, s čím se bude závodit.\n\n\ >> Zadejte ID nebo název vozidla a zmačněte 'Další' pro pokračování. 'Zpět' pokud chcete něco změnit.", "Další", "Zpět"); case 603: ShowPlayerDialog(playerid, dialogid, DIALOG_STYLE_INPUT, CreateCaption("Vytvořit závod (Část 2/4)"), "\ Chyba: Špatný název nebo ID\n\n\n\ Část 2:\n\ ********\n\ Zadejte ID nebo název vozidla, s čím se bude závodit.\n\n\ >> Zadejte ID nebo název vozidla a zmačněte 'Další' pro pokračování. 'Zpět' pokud chcete něco změnit.", "Další", "Zpět"); case 604: ShowPlayerDialog(playerid, dialogid, DIALOG_STYLE_MSGBOX, CreateCaption("Vytvořit závod (Část 3/4)"), "\ Část 3:\n\ ********\n\ Už je skoro hotovo! Jdi na místo, kde budou začínat 1. a 2. auta.\n\ Poznámka: Až kliknete 'OK' budete volní. Použijte 'Tlačítko Střelba' pro nastavení pozice.\n\ Poznámka: Až zadáte první souřadnice, objeví se znovu dialog.\n\n\ >> Zmáčkmi 'OK' pro pokračování. 'Zpět' pokud chcete něco změnit.", "OK", "Zpět"); case 605: ShowPlayerDialog(playerid, dialogid, DIALOG_STYLE_MSGBOX, CreateCaption("Vytvořit závod (Část 4/4)"), "\ Část 4:\n\ ********\n\ Vítejte v poslední části. V této části uděláte Checkpointy, kliknutím na 'OK' je budete moc vytvářet.\n\ Checkpoint vytvoříš 'Tlačítko Střelba'. Automaticky se sami uloží.\n\ Až stiskneš 'ENTER', dokončí stavbu Checkpointu. Závod bude skoro dostupný!\n\n\ >> Zmáčkmi 'OK' pro pokračování. 'Zpět' pokud chcete něco změnit.", "OK", "Zpět"); case 606: ShowPlayerDialog(playerid, dialogid, DIALOG_STYLE_MSGBOX, CreateCaption("Vytvořit"), "\ Nyní jste vytvořil závod a je je nyní dostupný.\n\n\ >> Zmačkni 'Dokončit' pro dokončení", "Dokončit", ""); } return 1; } CreateCaption(arguments[]) { new string[128 char] ; format(string, sizeof(string), "System závodů - %s", arguments); return string; } stock IsValidVehicle(vehicleid) { if(vehicleid < 400 || vehicleid > 611) return false; else return true; } ReturnVehicleID(vName[]) { Loop(x, 211) { if(strfind(vNames[x], vName, true) != -1) return x + 400; } return -1; } TimeConvert(seconds) { new tmp[16]; new minutes = floatround(seconds/60); seconds -= minutes*60; format(tmp, sizeof(tmp), "%d:%02d", minutes, seconds); return tmp; } /*IsNosVehicle(vehicleid) { #define NO_NOS_VEHICLES 52 new InvalidNosVehicles[NO_NOS_VEHICLES] = { 581,523,462,521,463,522,461,448,468,586,417,425,469,487,512,520,563,593, 509,481,510,472,473,493,520,595,484,430,453,432,476,497,513,533,577, 452,446,447,454,590,569,537,538,570,449,519,460,488,511,519,548,592 }; for(new i = 0; i < NO_NOS_VEHICLES; i++) { if(GetVehicleModel(vehicleid) == InvalidNosVehicles[i]) { return false; } } return true; }*/ // -----------------------------------------------------------------------------a include nRace.inc #define function%0(%1) \ forward%0(%1); public%0(%1) new bool: Joined[MAX_PLAYERS]; function IsPlayerInRace(playerid) { if(Joined[playerid] == true) return true; else return false; } A je tam ji funkce autoracestart, ale když ji zapnu jako Rcon, tam se mi závody nenačítají a píšou mi do logu : [17:46:25] | Zavod| [17:46:25] +-------Nacten----------+ [17:46:25] >> Nactene zavody: [17:46:25] >> Nactene zavody: [17:46:25] >> Nactene zavody: [17:46:25] >> Nactene zavody: [17:46:25] >> Nactene zavody: [17:46:25] >> Nactene zavody: [17:46:25] >> Nactene zavody: [17:46:25] >> Nactene zavody: [17:46:25] >> Nactene zavody: [17:46:25] >> Nactene zavody: [17:46:25] >> Nactene zavody: [17:46:25] >> Nactene zavody: [17:46:25] Závod "" neexistuje! Takže nechápu v čem je problém, protože soubory nahrané pro závod mám ve ScriptFiles. Můžete mi poradit?
  13. NoJo_

    pomoc GangZóna

    Čavte mám na Vás jednu otázku. Chcem sa spýtať či existuje nejaká funkcia ktorá zistí či hráč je v danej gangzóne + ak neexistuje tak ako zistiť či hráč je v gz Vopred ďakujem na odpoveď
  14. Ahoj, to jsem zas já Potřeboval bych udělat InGame Warp creator, jak jste mohli vyčíst z názvu. Když jsem to zkoušel se svým kódem, že jsem tam dal proměnné a že se to zapisovalo i do logu, ale bohužel, když jsem vytvořil 1 warp, a pak další, tak se to přemazalo a když jsem se na ten warp portnul, schodilo to celý server... Respektivě potřebuji : /createwarp nazev | pro vytvoření /delwarp nazev | pro smazáni /nazev | pro teleportaci Děkuji za odpověď
  15. NoJo_

    pomoc Problém z compiláciou

    Čavte, chcem sa Vás spýtať či neviete vyriešiť tento problém: Kamoš si stiahol Pawno z:http://sa-mp.com/download.php a keď si ho spustí a klikne na tlačidlo Compile (nie Compile and Run) tak mu to neukáže tu tabuľku z errormi, warnigmy atd. ale zapne mu to SAMP a napíše "Connected to :7777" "Server didn`t respond..." Neviete čo s tým? Vopred ďakujem. S pozdravom NoJo
  16. Ahoj, mám problém,zkoušel jsem si udělat vlastní blokaci IP serverů v CHATU. Bohužel, kód, který jsem použil mi nefungoval.... Potřeboval bych poradit, jak to udělat, aby to detekoval IP, ale i doménu s portem viz : XX.XXX.XXX.XX:xxxx a i www.XXX.cz:xxxx Děkuji za odpověď.
  17. Zdravím chtěl bych se zda by mi poradil někdo pomoct s počítačem , nešťastnou náhodou mi vyhořela grafika a zdroj , tak jsme si musel koupit zdroj , a chtěl bych se zeptat zda někdo mi může poradit jakou grafiku k této sestavě do 3 000 Kč. CPU : Intel Core Quad 2 4 jádro.. Ram: 4 Gb s frekvencí 1333 Mhz. HDD : 250 Gb 7200 Otáček za minutu (strašně starý) GPU : Integrovana zatím Zak. Deska : P5G43T-M PRO Díky. Po koupě GPU mám v plánu koupit nový HDD na 500 Gb , Ram na 8 Gb o stejné frekvencí. Děkují
  18. Zdravím komunitu Pawno.cz, chtěli bychom s kamarádem udělat takový menší "projekt" - myslím, že by se to tak dalo nazvat... Chtěli bychom lidem hostovat servery, ale pouze TeamSpeak3 servery. Asi se ptáte, proč sem píšu, ale chtěl bych se zeptat, co vše k tomu potřebuji. Samozřejmě nějaký server, kde se budou ukládat data a poběží na tom ten TS3 server - myslím ti VPS (Virtuální server). A dále vůbec nevím, zda k tomu potřebuji nějaké povolení, licence apod. Proto Vás prosím o nějakou radu apod. Děkuji a přeji příjemný den.
  19. Čaute, v pawnu jsem začátečník a zkoušel jsem udělat warpy, ale nejde mi to zkompilovat, nevíte, co s tím? #include <a_samp> #pragma tabsize 0 #define COLOR_BLUE 0x3333FFFF public OnPlayerCommandText(playerid, cmdtext[]) { new sendername[32], string[256]; if(strcmp(cmdtext, "/sf", true) == 0){ SetPlayerInterior(playerid,0); GetPlayerName(playerid, sendername, sizeof(sendername)); SetPlayerPos(playerid,-1967.1337,568.4955,34.8689); format(string, sizeof(string), "Hrac %s se teleportoval do SF . ", sendername); SendClientMessageToAll(COLOR_BLUE, string); else else if(IsPlayerInAnyVehicle(playerid)) { SetVehiclePos(GetPlayerVehicleID(playerid),-1967.1337,568.4955,34.8689); format(string, sizeof(string), "Hrac %s se teleportoval do SF . ", sendername); SendClientMessageToAll(COLOR_BLUE, string); return 1; } return 0; }
  20. Cau prosim pomzte mi proc mi pawno zkompiluje tuhle mapu kdyz me nejde na server se pripojim a zadny ani jeden novi objekt proc? jde mi o to aby ta mapa fungovala zde je kod: #include <a_samp> #if defined FILTERSCRIPT public OnFilterScriptInit() { RemoveBuildingForPlayer(playerid, 1350, 1127.3516, 1807.1172, 9.8125, 0.25); RemoveBuildingForPlayer(playerid, 1350, 1143.0078, 1802.6875, 9.8125, 0.25); RemoveBuildingForPlayer(playerid, 3460, 1116.9063, 1809.5313, 13.7656, 0.25); RemoveBuildingForPlayer(playerid, 1350, 1147.8125, 1818.5156, 9.8125, 0.25); RemoveBuildingForPlayer(playerid, 3513, 1129.7422, 1833.9609, 14.0156, 0.25); RemoveBuildingForPlayer(playerid, 1350, 1131.8672, 1823.7969, 9.8125, 0.25); CreateObject(1655, 1136.51367, 1800.76306, 10.77630, 0.00000, 0.00000, 0.00000); CreateObject(1655, 1125.20947, 1813.27393, 10.79630, 0.00000, 0.00000, -90.36000); CreateObject(1655, 1138.07959, 1827.97205, 10.77630, -0.04000, 0.00000, 177.17984); CreateObject(1655, 1150.50952, 1812.18042, 10.77630, 0.00000, 0.00000, 89.75990); CreateObject(710, 1724.50049, 1415.25928, 24.82813, 0.00000, 0.00000, 0.00000); CreateObject(710, 1723.28955, 1427.37183, 24.82813, 0.00000, 0.00000, 0.00000); CreateObject(710, 1729.57532, 1441.10803, 24.82813, 0.00000, 0.00000, 0.00000); CreateObject(710, 1733.85083, 1440.82788, 24.82813, 0.00000, 0.00000, 0.00000); CreateObject(710, 1733.85083, 1440.82788, 24.82813, 0.00000, 0.00000, 0.00000); CreateObject(710, 1737.41699, 1432.29504, 24.82813, 0.00000, 0.00000, 0.00000); CreateObject(710, 1729.57532, 1441.10803, 24.82813, 0.00000, 0.00000, 0.00000); CreateObject(710, 1731.96509, 1425.80762, 24.82813, 0.00000, 0.00000, 0.00000); CreateObject(710, 1728.67371, 1414.80737, 24.82813, 0.00000, 0.00000, 0.06000); CreateObject(710, 1732.13831, 1465.40454, 24.82813, 0.00000, 0.00000, -0.06000); CreateObject(710, 1733.51123, 1470.10706, 24.82813, 0.00000, 0.00000, -0.06000); CreateObject(710, 1736.97437, 1467.28479, 24.82813, 0.00000, 0.00000, -0.06000); CreateObject(710, 1736.00330, 1476.07312, 24.82813, 0.00000, 0.00000, -0.06000); CreateObject(710, 1736.00330, 1476.07312, 24.82813, 0.00000, 0.00000, -0.06000); CreateObject(710, 1741.15808, 1472.47107, 24.82813, 0.00000, 0.00000, -0.06000); CreateObject(1257, 1732.61914, 1479.75854, 11.04688, 356.85840, 0.00000, -2.83917); CreateObject(1257, 1732.61914, 1479.75854, 11.04688, 356.85840, 0.00000, -2.83917); CreateObject(1257, 1732.71875, 1479.75000, 11.04688, 356.85840, 0.00000, -2.83917); CreateObject(1257, 1073.37500, 2062.07813, 11.09375, 3.14159, 0.00000, 1.57080); CreateObject(1257, 999.93048, 2024.75085, 11.09375, 3.14159, 0.00000, 183.19070); CreateObject(1257, 1020.61896, 1806.35352, 11.09375, 3.14159, 0.00000, 270.55096); CreateObject(1257, 1310.95923, 1806.38269, 11.57380, 3.14160, 0.00000, 270.55099); CreateObject(1257, 1400.74097, 1865.92261, 11.57380, 3.14160, 0.00000, 270.55099); CreateObject(1257, 1500.83191, 1865.91833, 11.57380, 3.14160, 0.00000, 270.55099); CreateObject(1257, 1560.07764, 1817.15759, 11.57380, 3.14160, 0.00000, 540.43097); CreateObject(1257, 1608.68372, 1706.22400, 11.57380, 3.14160, 0.00000, 633.25073); CreateObject(1257, 1738.11328, 1607.09131, 11.57380, 3.14160, 0.00000, 702.24994); CreateObject(1257, 1729.15210, 1626.47888, 11.03906, 356.85840, 0.00000, -17.21979); CreateObject(1257, 1607.52368, 1720.81897, 11.57380, 3.14160, 0.00000, 811.21088); CreateObject(1257, 1574.92651, 1818.56104, 11.57380, 3.14160, 0.00000, 722.11127); CreateObject(1257, 1502.43433, 1880.16199, 11.57380, 3.14160, 0.00000, 453.73120); CreateObject(1257, 1401.42700, 1880.72705, 11.57380, 3.14160, 0.00000, 451.03085); CreateObject(1257, 1311.71985, 1820.52722, 11.57380, 3.14160, 0.00000, 450.07083); CreateObject(1257, 1020.66449, 1820.02832, 11.09375, 3.14159, 0.00000, 446.95071); CreateObject(1257, 999.93048, 2024.75085, 11.09375, 3.14159, 0.00000, 179.35074); CreateObject(1257, 999.93048, 2024.75085, 11.09375, 3.14159, 0.00000, 183.19070); CreateObject(1257, 1014.98260, 2024.86768, 11.09375, 3.14159, 0.00000, 359.83096); CreateObject(1257, 1072.65186, 2046.64075, 11.09380, -0.29840, 0.78000, -91.30921); CreateObject(1257, 1332.91016, 2045.75452, 11.09375, 3.14159, 0.00000, 270.91055); CreateObject(1257, 1502.31165, 2045.93982, 11.09375, 3.14159, 0.00000, -88.90919); CreateObject(1257, 1574.66174, 2199.60645, 11.09375, 3.14159, 0.00000, -0.89999); CreateVehicle(431, 1514.7267, 2255.0532, 10.8784, 0.0000, -1, -1, 100); CreateVehicle(431, 1522.1656, 2255.6050, 10.8784, 0.0000, -1, -1, 100); CreateVehicle(431, 1534.8287, 2255.5305, 10.8784, 0.0000, -1, -1, 100); CreateVehicle(431, 1541.8119, 2255.2202, 10.8784, -0.1800, -1, -1, 100); CreateVehicle(431, 1542.8761, 2277.9512, 10.8784, -0.1800, -1, -1, 100); CreateVehicle(431, 1537.8810, 2277.8513, 10.8784, -0.1800, -1, -1, 100); CreateVehicle(431, 1532.3556, 2277.3926, 10.8784, -0.1800, -1, -1, 100); CreateVehicle(431, 1525.7283, 2277.2983, 10.8784, -0.1800, -1, -1, 100); CreateVehicle(431, 1518.4456, 2277.3862, 10.8784, -0.1800, -1, -1, 100); CreateVehicle(431, 1513.9470, 2277.1321, 10.8784, -0.1800, -1, -1, 100); CreateVehicle(431, 1526.2407, 2255.4907, 10.8784, 0.0000, -1, -1, 100); CreateVehicle(431, 1529.6312, 2255.4675, 10.8784, 0.0000, -1, -1, 100); CreateVehicle(431, 1509.0753, 2255.3979, 10.8784, 0.0000, -1, -1, 100); CreateVehicle(431, 1534.8287, 2255.5305, 10.8784, 0.0000, -1, -1, 100); ) #endif
  21. Zdravím. Mám jeden problém a zároveň aj otázku. Na stránke si robím multilanguage- viac jazykový web no a mojim problémom je, že som nepočítal s tým, že mi to nebude čítať diakritiku(písanie ľščťžýáíé..). V index.php mám charset nastavený na windows1250. Ak to dám klasicky napr. na <title>čšťčžč</title> tak to ide v pohode ale ak to dám ako čítanie zo súboru / <title><?php echo $lang['HEAD_TITLE']; ?></title>, tak mi to diakritiku nečíta. Kód language.php Kód lang.sk.php Bez diakritiky mi to ide v pohode. Poradili by ste mi ako tam nastaviť charset alebo nejaký spôsob aby tam tá diakritika šla ?
  22. Dobrý den. Jsem DilexCZ a potřeboval bych pomoct ohledně admin systému. Když sem se koukal na ty admin příkazy tak sem tam furt viděl ZCMD a command atd.. Ktomu potřebuji ZCMD a nemůžu ho nikde najít (našel sem několik odkazů na stáhnutí, ale nešo to). A když najdu nějaký admin systém tak tam to je nastavené jen pro RCON a není tam jako například v RZE /setlvl ID abych někomu nastavil admina. Tak vás prosím jestli byste mi zkusily napsat jak se to dělá když mám jen include SAMP. Nebo pokuď se dá použít něco co už tam mam když sem to stáhl ze stránky sa-mp.cz . To je asi poslední věc která mi brání udělat si vlastní GAMEMODE . Protože sám bych to na sereru nezvládl jako jeden admin a RCON jim dávat rozhodně nechci . Děkuji za pozornost a doufám že mi nějaký zkušený pawner pomůže
  23. Alsei

    pomoc COD4 cd key

    Zdravím Vás, mám taký menší problém. Ide o hru Call of Duty 4 MW, ja mám túto hru originál kúpenu (nie cez steam) a na obale hry som mal CD KEY, no bohužiaľ CD mám ale obal nie taže nemám key. Tak som si stiahol CD KEY generator a dúfal som že mi pôjde MP ale stále mi vypíše že cd key je používaný, skúste sa pripojiť znova alebo dačo také. Neviete mi niečo poslať funkčné kľúče alebo poradiť či to neni nejaká chyba? Díky za odpovede..
  24. Ahoj, mám kód <?php echo str_replace(':)', '<img src="http://rupture.tode.cz/datas/smile.gif" title=":)"/>', $body); ?> a potřebuji, že když napíšu , vytvoří mi to tohoto smajlíka , ale nefunguje mi to.. Nevíte proč? Děkuji za každou radu.
  25. vopojtepek

    pomoc PickUp

    Ahojte, vedel by mi niekto poradiť že mam nastavený pickup a keď stúpite naň tak sa vam ukáže DIALOG LIST ale keď tam stale stojite a chcete si vybrať stale sa zapína od znova ... Ako nastavim že sa mu pickup spustí iba 1 x ked donho vstúpi... Ak niekto chápe prosím HELP
×
×
  • Create New...