Comandos: /joinrace [ID] Entra em um evento Race.
/exitrace Sai do evento race atual. (Proxima versão)
Comandos de para admin /addstartrace [ID] Adiciona Posição de Partida.
/addracecp Adiciona um Checkpoint a corrida.
/setracelaps [Lpas] Seta o valor de Voltas do Evento.
/startrace [ID] Admins started Race ID.
@Change Log: RC 0.1 Criado em meu Gamemode Beta
RC 0.2 Versão Filterscript Feita
- Adicionado comandos Do editor sómente para Admins RCON.
- Reparados algums erros
Creditos:
Scripter: SchocC
INC'S: Y_less
Convert Time: ipsBruno
================================================== ===================================
Download:FilterScript: Pastebin RC 0.2 New Version
Plugins Includes:
YSI New Version
sscanf New Version
FilterScript .pwn:
pawn Code:
#include < a_samp > #include < YSI\y_bit > #include < YSI\y_commands > #include < YSI\y_races > #include < sscanf2 > #define ShowDBox(%0,%1,%2) ShowPlayerDialog(playerid,%0,0,%1,%2,"Enter","Exit") #define SCM(%0) SendClientMessage( playerid, -1, %0 ) forward OnPlayerFinishRace(playerid, race, position, prize, time); forward OnPlayerExitRace(playerid, race); forward OnRaceEnd(race); new F_STRING[ 256 ], rraceid, g@RaceID[50] ; public OnGameModeInit() { Langs_AddLanguage("EN", "English"); g@RaceID[0] = Race_Create(); Race_AddStart( g@RaceID[0], 1435.908325, -2493.994384, 13.272641, 128.750793 ); Race_AddStart( g@RaceID[0], 1435.908325+3.0, -2493.994384, 13.272641, 128.750793 ); Race_AddCheckpoint( g@RaceID[0], 1534.438964, -2493.948486, 13.272622 ); Race_AddCheckpoint( g@RaceID[0], 1700.397705, -2494.083740, 13.272712 ); Race_AddCheckpoint( g@RaceID[0], 1946.568359, -2494.284667, 13.257122 ); Race_AddCheckpoint( g@RaceID[0], 2110.717041, -2542.304931, 13.260956 ); Race_AddCheckpoint( g@RaceID[0], 2051.137695, -2593.408935, 13.264842 ); Race_AddCheckpoint( g@RaceID[0], 1834.979003, -2593.570556, 13.264850 ); Race_AddCheckpoint( g@RaceID[0], 1582.781494, -2593.209960, 13.264926 ); Race_AddCheckpoint( g@RaceID[0], 1444.916381, -2593.334472, 13.264843 ); Race_SetCountdown( g@RaceID[0], 15 ); g@RaceID[1] = Race_Create(); Race_AddStart( g@RaceID[1], 1622.436889, -1894.844848, 13.277151, 359.848693 ); Race_AddCheckpoint( g@RaceID[1], 1622.479980, -1876.266845, 13.109622 ); Race_AddCheckpoint( g@RaceID[1], 1620.655151, -1794.542724, 13.229494 ); Race_AddCheckpoint( g@RaceID[1], 1620.539184, -1712.654907, 3.907930 ); Race_AddCheckpoint( g@RaceID[1], 1618.323730, -1648.257568, 13.216590 ); Race_AddCheckpoint( g@RaceID[1], 1621.375366, -1595.430908, 13.215985 ); Race_AddCheckpoint( g@RaceID[1], 1708.125122, -1588.911132, 13.084106 ); Race_AddCheckpoint( g@RaceID[1], 1705.692138, -1475.342163, 13.214834 ); Race_AddCheckpoint( g@RaceID[1], 1743.679931, -1479.450805, 13.104063 ); Race_AddCheckpoint( g@RaceID[1], 1803.015625, -1473.225219, 11.545431 ); Race_AddCheckpoint( g@RaceID[1], 1796.509033, -1443.832031, 13.087376 ); Race_AddCheckpoint( g@RaceID[1], 1783.431640, -1396.355346, 15.425807 ); Race_AddCheckpoint( g@RaceID[1], 1752.633544, -1383.046875, 14.684855 ); Race_AddCheckpoint( g@RaceID[1], 1730.052490, -1381.837158, 13.223507 ); Race_AddCheckpoint( g@RaceID[1], 1705.305175, -1345.829956, 13.217838 ); Race_AddCheckpoint( g@RaceID[1], 1684.648315, -1324.058959, 17.097501 ); Race_AddCheckpoint( g@RaceID[1], 1634.062500, -1299.970703, 15.927244 ); Race_AddCheckpoint( g@RaceID[1], 1544.714477, -1299.194824, 15.826711 ); Race_AddCheckpoint( g@RaceID[1], 1456.564697, -1294.789550, 13.059918 ); Race_AddCheckpoint( g@RaceID[1], 1454.527832, -1201.686035, 18.331308 ); Race_AddCheckpoint( g@RaceID[1], 1474.828735, -1160.146484, 23.575687 ); Race_AddCheckpoint( g@RaceID[1], 1560.704711, -1160.985107, 23.576232 ); Race_AddCheckpoint( g@RaceID[1], 1668.714233, -1126.255981, 23.575777 ); Race_AddCheckpoint( g@RaceID[1], 1706.554321, -1099.330932, 23.747850 ); Race_AddCheckpoint( g@RaceID[1], 1749.145507, -1079.410156, 23.630628 ); Race_AddCheckpoint( g@RaceID[1], 1809.471557, -1061.824829, 23.657234 ); Race_AddCheckpoint( g@RaceID[1], 1861.971801, -1047.862792, 23.562444 ); Race_AddCheckpoint( g@RaceID[1], 1947.542602, -1051.967895, 23.849369 ); Race_AddCheckpoint( g@RaceID[1], 1978.302612, -1048.215087, 24.062419 ); Race_AddCheckpoint( g@RaceID[1], 2002.609863, -1007.602111, 28.618946 ); Race_AddCheckpoint( g@RaceID[1], 2066.159667, -982.472473, 47.553493 ); Race_AddCheckpoint( g@RaceID[1], 2124.047363, -994.828247, 57.867980 ); Race_AddCheckpoint( g@RaceID[1], 2140.650146, -992.161132, 60.708446 ); Race_AddCheckpoint( g@RaceID[1], 2158.966308, -946.279968, 74.866966 ); Race_AddCheckpoint( g@RaceID[1], 2195.620117, -911.895446, 81.934074 ); Race_AddCheckpoint( g@RaceID[1], 2217.635253, -854.354064, 107.184486 ); Race_AddCheckpoint( g@RaceID[1], 2218.729248, -793.640075, 117.310371 ); Race_AddCheckpoint( g@RaceID[1], 2204.147216, -766.489868, 109.847579 ); Race_AddCheckpoint( g@RaceID[1], 2170.405029, -710.251770, 89.946060 ); Race_AddCheckpoint( g@RaceID[1], 2115.111083, -639.709167, 59.279689 ); Race_SetCountdown(g@RaceID[1], 15 ); Race_SetLaps( g@RaceID[1], 1 ); g@RaceID[2] = Race_Create(); Race_AddStart( g@RaceID[2], -168.250854, -2474.321044, 28.681678, 166.266952 ); Race_AddStart( g@RaceID[2], -168.250854-5.2, -2474.321044, 28.681678, 166.266952 ); Race_AddCheckpoint( g@RaceID[2], -184.060302, -2545.611572, 35.316738 ); Race_AddCheckpoint( g@RaceID[2], -170.263900, -2640.835693, 25.829425 ); Race_AddCheckpoint( g@RaceID[2], -182.561050, -2756.326904, 37.754737 ); Race_AddCheckpoint( g@RaceID[2], -162.760116, -2830.438476, 41.368888 ); Race_AddCheckpoint( g@RaceID[2], -90.699470, -2798.123046, 39.049362 ); Race_AddCheckpoint( g@RaceID[2], -28.793342, -2678.522460, 42.752941 ); Race_AddCheckpoint( g@RaceID[2], -64.058311, -2535.574462, 41.239757 ); Race_AddCheckpoint( g@RaceID[2], -154.521942, -2394.966552, 31.929756 ); Race_AddCheckpoint( g@RaceID[2], -251.288467, -2263.495361, 28.644998 ); Race_AddCheckpoint( g@RaceID[2], -291.641662, -2249.635498, 30.220754 ); Race_AddCheckpoint( g@RaceID[2], -338.005371, -2253.360351, 40.450500 ); Race_AddCheckpoint( g@RaceID[2], -405.332244, -2260.247802, 47.930454 ); Race_AddCheckpoint( g@RaceID[2], -485.616882, -2272.334716, 39.905647 ); Race_AddCheckpoint( g@RaceID[2], -546.371276, -2328.886230, 29.250383 ); Race_AddCheckpoint( g@RaceID[2], -599.524963, -2357.693847, 28.776807 ); Race_AddCheckpoint( g@RaceID[2], -672.567687, -2358.097167, 37.844814 ); Race_AddCheckpoint( g@RaceID[2], -736.537597, -2388.732177, 54.063873 ); Race_AddCheckpoint( g@RaceID[2], -791.629089, -2462.771728, 76.792602 ); Race_AddCheckpoint( g@RaceID[2], -884.072326, -2398.044677, 54.547096 ); Race_AddCheckpoint( g@RaceID[2], -981.510925, -2362.253173, 65.858856 ); Race_AddCheckpoint( g@RaceID[2], -1033.688232, -2376.432373, 54.918464 ); Race_AddCheckpoint( g@RaceID[2], -1087.851562, -2375.209228, 42.150260 ); Race_AddCheckpoint( g@RaceID[2], -1190.875244, -2351.192382, 19.513832 ); Race_AddCheckpoint( g@RaceID[2], -1251.671875, -2301.271972, 20.758291 ); Race_AddCheckpoint( g@RaceID[2], -1293.622924, -2190.965576, 20.924282 ); Race_AddCheckpoint( g@RaceID[2], -1306.750732, -2121.078369, 24.990949 ); Race_AddCheckpoint( g@RaceID[2], -1306.624389, -2071.759765, 22.953298 ); Race_AddCheckpoint( g@RaceID[2], -1348.214477, -2048.494873, 11.008213 ); Race_AddCheckpoint( g@RaceID[2], -1406.222167, -2035.348510, 0.768890 ); Race_AddCheckpoint( g@RaceID[2], -1428.375854, -1986.285644, 13.521820 ); Race_AddCheckpoint( g@RaceID[2], -1435.346069, -1873.953369, 33.670173 ); Race_AddCheckpoint( g@RaceID[2], -1476.537231, -1801.821411, 52.389701 ); Race_SetCountdown( g@RaceID[2], 15 ); g@RaceID[3] = Race_Create(); Race_AddStart( g@RaceID[3], 2069.985595, 849.963439, 6.444620, 86.674140 ); Race_AddStart( g@RaceID[3], 2069.985595-5.0, 849.963439, 6.444620, 86.674140 ); Race_AddCheckpoint( g@RaceID[3], 1960.016601, 849.532836, 6.444680 ); Race_AddCheckpoint( g@RaceID[3], 1705.614135, 852.839111, 8.039340 ); Race_AddCheckpoint( g@RaceID[3], 1428.365356, 852.931030, 6.530603 ); Race_AddCheckpoint( g@RaceID[3], 1252.380615, 956.583557, 6.530538 ); Race_AddCheckpoint( g@RaceID[3], 1229.116821, 1167.920410, 6.538726 ); Race_AddCheckpoint( g@RaceID[3], 1229.060180, 1364.255737, 6.460108 ); Race_AddCheckpoint( g@RaceID[3], 1229.370483, 1581.049926, 6.452533 ); Race_AddCheckpoint( g@RaceID[3], 1229.770874, 1859.101562, 6.452541 ); Race_AddCheckpoint( g@RaceID[3], 1230.180053, 2141.499023, 6.460168 ); Race_AddCheckpoint( g@RaceID[3], 1236.771484, 2292.437500, 6.522113 ); Race_AddCheckpoint( g@RaceID[3], 1349.901855, 2439.846435, 6.452347 ); Race_AddCheckpoint( g@RaceID[3], 1527.315063, 2452.473876, 6.452512 ); Race_AddCheckpoint( g@RaceID[3], 1768.836303, 2478.543212, 6.546759 ); Race_AddCheckpoint( g@RaceID[3], 1955.583374, 2525.662597, 6.512997 ); Race_AddCheckpoint( g@RaceID[3], 2190.688720, 2589.530517, 6.482783 ); Race_AddCheckpoint( g@RaceID[3], 2418.144287, 2604.230224, 6.203961 ); Race_AddCheckpoint( g@RaceID[3], 2611.585693, 2508.402343, 5.933406 ); Race_AddCheckpoint( g@RaceID[3], 2702.511962, 2213.313232, 6.493758 ); Race_AddCheckpoint( g@RaceID[3], 2705.229003, 1990.008911, 6.448888 ); Race_AddCheckpoint( g@RaceID[3], 2706.847167, 1795.343261, 6.452586 ); Race_AddCheckpoint( g@RaceID[3], 2707.663574, 1599.522949, 6.456269 ); Race_AddCheckpoint( g@RaceID[3], 2704.678222, 1431.741943, 6.452466 ); Race_AddCheckpoint( g@RaceID[3], 2703.799804, 1273.331054, 6.452391 ); Race_AddCheckpoint( g@RaceID[3], 2707.018554, 1125.824340, 6.452451 ); Race_AddCheckpoint( g@RaceID[3], 2679.339355, 1011.617065, 6.452590 ); Race_AddCheckpoint( g@RaceID[3], 2583.666259, 896.993652, 6.451868 ); Race_AddCheckpoint( g@RaceID[3], 2435.870605, 856.050109, 6.452451 ); Race_AddCheckpoint( g@RaceID[3], 2254.428466, 857.469360, 6.458678 ); Race_AddCheckpoint( g@RaceID[3], 2132.856201, 855.905273, 6.452364 ); Race_SetCountdown( g@RaceID[3], 15 ); g@RaceID[4] = Race_Create( 0, 0, 3, true,true, 15, 0, 0, true ); Race_AddStart( g@RaceID[4], 1936.132202, -1634.739379, 496.326202, 58.655498 ); Race_AddStart( g@RaceID[4], 1675.113647, -1364.434692, 251.656814, 54.842491 ); Race_AddCheckpoint( g@RaceID[4], 1225.399536, -1219.531494, 214.554962 ); Race_AddCheckpoint( g@RaceID[4], 963.247558, -705.124206, 249.166000 ); Race_AddCheckpoint( g@RaceID[4], 1196.675903, -520.284118, 226.123214 ); Race_AddCheckpoint( g@RaceID[4], 1293.632446, -705.119567, 167.279754 ); Race_AddCheckpoint( g@RaceID[4], 1364.355834, -978.687011, 109.882896 ); Race_AddCheckpoint( g@RaceID[4], 1442.570312, -1116.751586, 113.410987 ); Race_AddCheckpoint( g@RaceID[4], 1637.943603, -1184.453979, 130.238830 ); Race_AddCheckpoint( g@RaceID[4], 1867.184570, -1159.550659, 109.410079 ); Race_AddCheckpoint( g@RaceID[4], 2064.929199, -1544.847167, 159.374023 ); Race_AddCheckpoint( g@RaceID[4], 1895.084350, -1643.382690, 155.109466 ); Race_AddCheckpoint( g@RaceID[4], 1490.170532, -1650.124755, 45.069538 ); Race_AddCheckpoint( g@RaceID[4], 589.137512, -1315.026733, 37.706745 ); Race_AddCheckpoint( g@RaceID[4], 379.035369, -1477.323608, 63.034122 ); Race_SetCountdown( g@RaceID[4], 15 ); return 1; } public OnPlayerExitRace( playerid, race ) { format( F_STRING, sizeof( F_STRING ), "%s(%i) Saiu do Evento ID: %i ", PlayerName( playerid), playerid, race ); SendClientMessageToAll( 0x00F020FF, F_STRING ); return 1; } public OnPlayerFinishRace( playerid, race, position, prize, time ) { new _str_info[256], Min,Sec,MS; ConvertTime( time, Min, Sec, MS ); format( _str_info, sizeof( _str_info ), "{001F00}Player/ID:{0F0F10}%i \n\ {001F00}Posição:{0F0F10}%i \n\ {001F00}Vencedores:{0F0F10}%i \n\ {001F00}Premio{0F0F10}%i \n\ {001F00}Tempo:{0F0F10}%d:%d.%d", playerid, position, prize, Min, Sec, MS ); ShowDBox( 247, "Evento completado", _str_info ); new strfd[256]; format( strfd, 256,"Evento Race: %s(%i) Chegou em %i° Lugar(Position) {001400}Tempo:{0F0F10}%d:%d.%d", PlayerName( playerid), playerid, position, Min, Sec, MS ); SendClientMessageToAll(0xff1f88, strfd ); return 1; } public OnRaceEnd(race) { format( F_STRING, sizeof( F_STRING ), "Evento ID: %i Finalizado!", race ); SendClientMessageToAll( 0x00F020FF, F_STRING ); return 1; } YCMD:addnewrace( playerid, params[], help ) { if( !IsPlayerAdmin( playerid ) ) return 0; rraceid++; new string[128]; format( string, 128, "Nova Corrida foi criada com sucesso: ID:%i", rraceid ); SCM( string ); SCM(#Proximo passo use /addracestart ); return 1; } YCMD:addracestart(playerid, params[], help) { if( !IsPlayerAdmin( playerid ) ) return 0; new e_g_str[128], Float:Pos[4], File:FileCP ; FileCP = fopen( "AddCheckpoint.txt", io_append ); GetPlayerPos( playerid, Pos[0], Pos[1], Pos[2] ); GetVehicleZAngle( GetPlayerVehicleID( playerid ), Pos[ 3 ] ); format( e_g_str, sizeof( e_g_str ), "Race_AddStart( g@RaceID[%i], %f, %f, %f, %f );", rraceid, Pos[0], Pos[1], Pos[2], Pos[3] ); strcat( e_g_str, "\r\n" ); SCM( e_g_str ); if( FileCP ) { fwrite( FileCP , e_g_str ); fclose( FileCP ); } SCM(#Proximo passo use /addracecp ); return 1; } YCMD:addracecp(playerid, params[], help) { if( !IsPlayerAdmin( playerid ) ) return 0; new e_g_str[128], Float:Pos[3], File:FileCP ; FileCP = fopen( "AddCheckpoint.txt", io_append ); GetPlayerPos( playerid, Pos[0], Pos[1], Pos[2] ); format( e_g_str, sizeof( e_g_str ), "Race_AddCheckpoint( g@RaceID[%i], %f, %f, %f );", rraceid, Pos[0], Pos[1], Pos[2] ); strcat( e_g_str, "\r\n" ); SCM( e_g_str ); if( FileCP ) { fwrite( FileCP , e_g_str ); fclose( FileCP ); } SCM(#Evento finalizado ); SCM(#Para opções do evento use /setracelaps [Laps] ); return true; } YCMD:setracelaps(playerid, params[], help) { if( !IsPlayerAdmin( playerid ) ) return 0; new e_g_str[128], File:FileCP ; if( sscanf( params, "i", params[0] ) ) return SCM( "{ff0000}Use: /setracelaps [Laps]" ); FileCP = fopen( "AddCheckpoint.txt", io_append ); if( FileCP ) { format( e_g_str, sizeof( e_g_str ), "Race_SetLaps( g@RaceID[%i], %i );", rraceid, params[0] ); strcat( e_g_str, "\r\n" ); fwrite( FileCP , e_g_str ); format( e_g_str, sizeof( e_g_str ), "Race_PlayerJoin( playerid, g@RaceID[%i] );", rraceid ); strcat( e_g_str, "\r\n" ); fwrite( FileCP , e_g_str ); format( e_g_str, sizeof( e_g_str ), "Race_Start( g@RaceID[%i] );", rraceid ); strcat( e_g_str, "\r\n" ); fclose( FileCP ); SCM( e_g_str ); } return 1; } // Command Joinrace [ID] Enter event race BY 'ID' For ALL Players YCMD:joinrace( playerid, params[], help) { new rrace; if( help ) { SendClientMessage(playerid, 0xFF0000AA, "Entra em um evento Race"); } else { if( sscanf( params, "i", rrace ) ) return SendClientMessage( playerid, -1, "Digite /Joinrace [Raceid]" ); Race_PlayerJoin( playerid, g@RaceID[rrace] ); new s_str[128]; format( s_str, sizeof( s_str ), "[%s] Entrou na corrida Digite /joinrace %i | Para entrar No evento Racing", PlayerName( playerid ), g@RaceID[rrace] ); SendClientMessageToAll( 0x00ff10, s_str ); } return 1; } // Command Race START BY 'ID' For Admins YCMD:startrace( playerid, params[], help ) { if( !IsPlayerAdmin( playerid ) ) return 0; new rrace; if( sscanf( params, "i", rrace ) ) return SendClientMessage( playerid, -1, "Digite /Joinrace [Raceid]" ); Race_Start( g@RaceID[rrace] ); SendClientMessageToAll( 0x00ff10, "Go go go Go !!!!" ); return 1; } YCMD:rcmds( playerid, pr[], h ) { new str[ 512 ]; if( IsPlayerAdmin( playerid ) ) { format( str, sizeof( str ), "/joinrace [ Race/ID ] \tEntra em um evento Race\n\ /exitrace \t Sai do evento race atual\n\ /addstartrace [ID] \tAdiciona Posição de Partida\n\ /addracecp \tAdiciona um Checkpoint a corrida\n\ /setracelaps [LAPS] \tSeta o valor de Voltas do Evento\n\ /startrace [ ID ] \tAdmins started Race ID" ); } else { format( str, sizeof( str ), "/joinrace [ Race/ID ] \tEntra em um evento Race\n\ /exitrace \t Sai do evento race atual" ); } ShowDBox(247,"Race commands /rcmds", str ); return 1; } stock ConvertTime( Milliseconds, &rMin, &rS, &rMS ) { rMin = Milliseconds / 60000; Milliseconds -= rMin * 60000; rS = Milliseconds / 1000; Milliseconds -= rS * 1000; rMS = Milliseconds; } stock PlayerName( playerid ) { new Name[MAX_PLAYER_NAME]; GetPlayerName( playerid, Name, MAX_PLAYER_NAME); return Name; }
Topico não Finalizado
Projeto Beta Testing RC 0.2 !!
0 comentários:
Postar um comentário