Jump to content

Jakub Kučera

Uživatel
  • Příspěvků

    426
  • Registrován

  • Aktivní

  • Vítězných dnů

    1

Everything posted by Jakub Kučera

  1. Napíše to : Pawn Compiler přestal pracovat a potom error \pawno\include\YSI\y_als.inc(76) : fatal error 111: user error: Use ALS_MAKE not ALS_PREFIX
  2. 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ěď
  3. Ahoj, koukal jsem na pípni.cz na VPS zdarma a chci zjistit, jak to funguje, dočetl jsem se, že když zaplatím 30 Kč SMS, tak mi VPS aktivují. Ale v registraci je jen 1 měsíc, takže když se zaregistruji a zaplatím 30 Kč, tak mi ho po měsíci zase zablokují, nebo to je na furt a nebo se platí každý měsíc? Moc by mě to zajímalo a také by mě zajímalo, jestli se to vůbec vyplatí... Místo na disku 10 GB Měsíční přenos dat 1 TB CPU 1x 800 Mhz RAM 1GB Je to dobré? Stačil by, aby na tom mohl běžet SAMP server?? Děkuji za odpovědi.
  4. Rozdíl mezi velkou akciovou firmou a pitomim názvem nějakého Gamemódu o ničem.....
  5. Jakub Kučera

    pomoc Fire

    Ty génie, když jsi ani nepřidal souřadnice, tak ti to asi nepude public OnPlayerCommandText(playerid, cmdtext[]) { if(!strcmp(cmdtext, "/fire", false)) //strcmp AddFire(Float:TadyBudeX, Float:TadyBudeY, Float:TadyBudeZ, Firehealth); DeleteFire(FireID); DeleteAllFire(); IsValidFire(FireID); GetClosestFire(playerid); return 1; } Asi, nejsem si jistej
  6. WTF.. Nechci nic říkat ale tento problém se dá řešit snad nejsnadněji . Tady s stáhni soubor Dini a vlož ho tam, kde máš pawno... Neboli takto : /pawno/includes/TadyHoVložíš a to je vše. Nevím, co je na tom tak těžkého :D
  7. Takže takto : #include <a_samp> //By SA-MP Team public OnFilterScriptInit() { if( !strcmp( IPSERVER( ), "MOJE.IP.TOHO.SERVERU" ) ) //Kontrola IP { SendRconCommand( "exit" ); //Vypne server } if( !PORTSERVER( ), "PORT" ) //Kontrola PORTU { SendRconCommand( "exit" ); //Vypne server } return 1; } public OnFilterScriptExit() { return 1; } stock IPSERVER() { static IpServeru[16] ; GetServerVarAsString("bind", IpServeru, sizeof(IpServeru)); //Zjistí IP return IpServeru; } stock PORTSERVER() { static PortServeru[16] ; GetServerVarAsString("port", PortServeru, sizeof(PortServeru)); //Zjistí PORT return PortServeru; } ? To je asi blbě, nejde mi to zkompilovat..
  8. Zkusil jsem to, ale místo toho mi to server spustí i když je to na jiné IP..
  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. Tak nevím, mě se to zapasuje úplně normálně, nejspíš máš tam někdy div, který se plete do menu a nebo máš v css špatně nastavený zarovnání nějakého divu.
  11. 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.
  12. Jestli jsem to pochopil, tak asi myslí styl běhu nebo co.... Těžko říct... ale nevím co myslí Player Info.....
  13. 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?
  14. Nemyslím si 1. a 3. možnost, auto se vytvoří, ale postava se spawne na auto a ne do auta.
  15. Problém vyřešen, ale může mi ještě někdo poradit? Mám problém, i když je v kódu : PutPlayerInVehicle(playerid, CreatedRaceVeh[playerid], 0); , tak mi to stejně hráče do auta nedá.. Nevíte proč?
  16. 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?
  17. Ne, ale já chci prostě říci, že je blbé použít jméno na Gamemod, které je používáno už na jiných ne tak známých GameModu. Jinak tu je pravý a hlavní http://forum.sa-mp.com/showthread.php?t=401373 A už se o tom nechci hádat, nechtěl by jsi uznat remízu a přestat se tím zabývat? Myslím si, že je to celkem zbytečné...
  18. Tu je záznam z chatu : Pro informaci, označil jsem to, o čem ty tvrdíš opak... (http://chatroll.com/embed/chat/aj4s?platform=phpbb&id=g3_3ObhiW4p&uid=&sig=c2d90705c228429d5f89b2f991159d0c&w"
  19. Tak promiň, ale dát podobný chat na úplně jiný typ fóra je téměř nemožné, pokud si ho neuděláš sám, což je také nemožné. Vy používáte PHPBB a Pawno používá IP Board - dva rozdílné systémy. Ano Qwere, částečně máš pravdu, když ho autor zveřejní, tak lze ho editovat, ale většinou ho mají pod GNU licencí. Jenže druhá věc je změna názvu editovaného gamemódu na již používaný název na desítkách módech a tvrdit, že je to originální a neexistující název.... Většinou to autor zveřejňuje za účelem inspirace nebo pro použití na server, ale jednoznačně ne na překlad s úplně jiným názvem. Takže si stále stojím za svým názorem, že naše "Hate" byli oprávněné
  20. Příšerný, radši to tu zabalte, než z vás budou ještě větší Ko**** než jste (Sorry AdminTeam Pawna.cz, ale jinak se to vyjádřit "Slušně" nedá.)
  21. 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ěď
×
×
  • Create New...