Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //By excel
- #include <a_samp>
- #include <dini>
- #include <zcmd>
- #include <sscanf>
- #include <dudb>
- #include <dutils>
- #pragma tabsize 0
- #define dcmd(%1,%2,%3) if (!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == '\0') && (dcmd_%1(playerid, ""))) || (((%3)[(%2) + 1] == ' ') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
- #define COLOR_WHITE 0xFFFFFFFF
- #define COLOR_NORMAL_PLAYER 0xFFBB7777
- #define COLOR_YELLOW 0xFFFF00AA
- #define COLOR_LIGHTGREEN 0x38FF06FF
- #define COLOR_LIGHTBLUE 0x91C8FF
- #define COLOR_GREEN 0x66CC99AA
- #define COLOR_RED 0xFF0000AA
- #define CITY_LOS_SANTOS 0
- #define CITY_SAN_FIERRO 1
- #define CITY_LAS_VENTURAS 2
- #define TOTAL_ITEMS 207
- #define SELECTION_ITEMS 21
- #define ITEMS_PER_LINE 7
- #define HEADER_TEXT "Vehicles"
- #define NEXT_TEXT "Next"
- #define PREV_TEXT "Prev"
- #define DIALOG_BASE_X 75.0
- #define DIALOG_BASE_Y 130.0
- #define DIALOG_WIDTH 550.0
- #define DIALOG_HEIGHT 180.0
- #define SPRITE_DIM_X 60.0
- #define SPRITE_DIM_Y 70.0
- new gTotalItems = TOTAL_ITEMS;
- new PlayerText:gCurrentPageTextDrawId[MAX_PLAYERS];
- new PlayerText:gHeaderTextDrawId[MAX_PLAYERS];
- new PlayerText:gBackgroundTextDrawId[MAX_PLAYERS];
- new PlayerText:gNextButtonTextDrawId[MAX_PLAYERS];
- new PlayerText:gPrevButtonTextDrawId[MAX_PLAYERS];
- new PlayerText:gSelectionItems[MAX_PLAYERS][SELECTION_ITEMS];
- new gSelectionItemsTag[MAX_PLAYERS][SELECTION_ITEMS];
- new gItemAt[MAX_PLAYERS];
- new pv[MAX_PLAYERS];
- new gItemList[TOTAL_ITEMS] = {
- 400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,
- 431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,450,451,452,453,454,455,456,457,458,459,460,461,
- 462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,
- 493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,
- 524,525,526,527,528,529,530,531,532,533,534,535,536,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,
- 555,556,557,558,559,560,561,562,563,564,565,566,567,568,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,
- 586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611
- };
- new Menu:teleport;
- new Menu:modif;
- new Menu:drift;
- new Menu:ah;
- new Menu:diger;
- new Menu:inter;
- new Menu:dm;
- new Menu:dm2;
- new var0[25];
- new var1[256];
- //asd
- new Float:gRandomSpawns_LosSantos[][4] = {
- {2495.0720,-1687.5278,13.5150,359.6696}, // Outside CJ's house - lots of cars nearby
- {2306.8252,-1675.4340,13.9221,2.6271}, // House in ganton - lots of cars nearby
- {1240.3170,-2036.6886,59.9575,276.4659} /* Verdant Bluffs */
- };
- //asd
- new Float:gRandomSpawns_LasVenturas[][4] = {
- {1860.9672,1030.2910,10.8203,271.6988} // Behind 4 Dragons
- };
- new Float:gRandomSpawns_SanFierro[][4] = {
- {-2723.4639,-314.8138,7.1839,43.5562}, // golf course spawn
- {-2694.5344,64.5550,4.3359,95.0190}, // in front of a house
- {-2458.2000,134.5419,35.1719,303.9446}, // hotel
- {-2796.6589,219.5733,7.1875,88.8288}, // house
- {-2706.5261,397.7129,4.3672,179.8611}, // park
- {-2866.7683,691.9363,23.4989,286.3060}, // house
- {-2764.9543,785.6434,52.7813,357.6817}, // donut shop
- {-2660.9402,883.2115,79.7738,357.4440}, // house
- {-2861.0796,1047.7109,33.6068,188.2750}, // parking lot
- {-2629.2009,1383.1367,7.1833,179.7006}, // parking lot at the bridge
- {-2079.6802,1430.0189,7.1016,177.6486}, // pier
- {-1660.2294,1382.6698,9.8047,136.2952}, // pier 69
- {-1674.1964,430.3246,7.1797,226.1357}, // gas station]
- {-1954.9982,141.8080,27.1747,277.7342}, // train station
- {-1956.1447,287.1091,35.4688,90.4465}, // car shop
- {-1888.1117,615.7245,35.1719,128.4498}, // random
- {-1922.5566,886.8939,35.3359,272.1293}, // random
- {-1983.3458,1117.0645,53.1243,271.2390}, // church
- {-2417.6458,970.1491,45.2969,269.3676}, // gas station
- {-2108.0171,902.8030,76.5792,5.7139}, // house
- {-2097.5664,658.0771,52.3672,270.4487}, // random
- {-2263.6650,393.7423,34.7708,136.4152}, // random
- {-2287.5027,149.1875,35.3125,266.3989}, // baseball parking lot
- {-2039.3571,-97.7205,35.1641,7.4744}, // driving school
- {-1867.5022,-141.9203,11.8984,22.4499}, // factory
- {-1537.8992,116.0441,17.3226,120.8537}, // docks ship
- {-1708.4763,7.0187,3.5489,319.3260}, // docks hangar
- {-1427.0858,-288.9430,14.1484,137.0812}, // airport
- {-2173.0654,-392.7444,35.3359,237.0159}, // stadium
- {-2320.5286,-180.3870,35.3135,179.6980}, // burger shot
- {-2930.0049,487.2518,4.9141,3.8258}, // harbor
- {2215.5181,-2627.8174,13.5469,273.7786}, // Ocean docks 1
- {2509.4346,-2637.6543,13.6453,358.3565} // Ocean Docks spawn 2
- };
- new total_vehicles_from_files=0;
- new gPlayerCitySelection[MAX_PLAYERS];
- new gPlayerHasCitySelected[MAX_PLAYERS];
- new gPlayerLastCitySelectionTick[MAX_PLAYERS];
- new PlayerText:Textdraw0;
- new PlayerText:Textdraw1;
- new PlayerText:Textdraw2;
- new PlayerText:Textdraw3;
- //===============================NEWS Y MAS=====================================
- new str[128], pname[MAX_PLAYER_NAME]; // Creacion de str y pname, para no crearlos constantemente.
- new archivo[256]; // Creacion del string "archivo", donde almacenaremos la información.
- enum pInfo //Array donde se guardara la info del jugador!
- {
- Registrado,
- Logueado,
- Baneado,
- Admin,
- };
- new aInfo[MAX_PLAYERS][pInfo]; // Variable que incluye todos los datos del jugador
- #define Users "TuMamaSystem/%s.ini" //Carpeta donde se guardaran los archivos dentro de scriptfiles!
- forward SpawnKick(playerid);
- forward MessageToAdmins(color,const string[]);
- main()
- {
- print("\n---------------------------------------");
- print("Running Grand Larceny - by the SA-MP team\n");
- print("---------------------------------------\n");
- }
- public OnPlayerConnect(playerid)
- {
- //Seteamos todos los valores a 0, ya que quedan "guardados" los del jugador anterior.
- aInfo[playerid][Registrado] = 0;
- aInfo[playerid][Logueado] = 0;
- aInfo[playerid][Admin] = 0;
- aInfo[playerid][Baneado] = 0;
- GetPlayerName(playerid, pname, sizeof(pname)); //Obtenemos el nombre del jugador y lo guardamos en la variable pname.
- format(archivo, sizeof(archivo), Users, udb_encode(pname)); // Con el nombre del jugador, le damos "nombre" al string "archivo".
- if(!dini_Exists(archivo)) // Si el archivo PLAYERNAME.ini no existe...
- {
- format(str, sizeof(str), "Bienvenido %s! Tu cuenta no esta registrada! Utiliza /registrar para registrarla!", pname); // Le damos formato a la string "str" con un texto.
- SendClientMessage(playerid, COLOR_YELLOW, str); // Enviamos el texto al jugador.
- aInfo[playerid][Registrado] = 0; // Indicamos que este jugador no esta registrado.
- }
- else //En caso de que el archivo PLAYERNAME.ini SI exista...
- {
- format(str, sizeof(str), "Bienvenido %s! Utiliza /login para ingresar a tu cuenta", pname); // Le damos formato a la string "str" con un texto.
- SendClientMessage(playerid, COLOR_LIGHTGREEN, str); // Enviamos el texto al jugador.
- aInfo[playerid][Registrado] = 1; // Indicamos que este jugador esta registrado.
- }
- format(str, sizeof(str), "%s Ingreso al servidor!", pname); //Damos formato a "str"...
- SendClientMessageToAll(COLOR_LIGHTGREEN, str); // y la enviamos a todos los jugadores conectados.
- return 1;
- }
- new pname[MAX_PLAYER_NAME], string[128];
- GetPlayerName(playerid, pname, sizeof(pname));
- format(string, sizeof(string), "|> %s Se unió al server.", pname);
- SendClientMessageToAll(0xF4A419AA, string);
- SetPlayerMapIcon(playerid,49,822.6,-1590.3,13.5,7,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,50,-2570.1,245.4,10.3,7,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,51,2726.6,-2026.4,17.5,7,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,52,2080.3,2119.0,10.8,7,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,53,675.7,-496.6,16.8,7,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,54,-1805.7,943.2,24.8,29,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,55,2750.9,2470.9,11.0,29,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,56,2351.8,2529.0,10.8,29,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,57,2635.5,1847.4,11.0,29,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,58,2083.4,2221.0,11.0,29,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,59,-1719.1,1359.4,8.6,29,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,60,2330.2,75.2,31.0,29,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,61,203.2,-200.4,6.5,29,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,62,812.9,-1616.1,13.6,10,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,63,1199.1,-924.0,43.3,10,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,64,2362.2,2069.9,10.8,10,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,65,2469.5,2033.8,10.8,10,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,66,2172.9,2795.7,10.8,10,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,67,1875.3,2072.0,10.8,10,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,68,1161.5,2072.0,10.8,10,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,69,-2356.0,1009.0,49.0,10,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,70,-1913.3,826.2,36.9,10,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,71,-2335.6,-165.6,39.5,10,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,72,2397.8,-1895.6,13.7,14,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,73,2421.6,-1509.6,24.1,14,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,74,-2671.6,257.4,4.6,14,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,75,2392.4,2046.5,10.8,14,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,76,2844.5,2401.1,11.0,14,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,77,2635.5,1674.3,11.0,14,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,78,2105.7,2228.7,11.0,14,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,79,-2154.0,-2461.2,30.8,14,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,80,-1816.2,620.8,37.5,14,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,81,-1216.0,1831.4,45.3,14,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,82,172.73,1176.76,13.7,14,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,83,932.0,-1353.0,14.0,14,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,84,1971.7,-2036.6,13.5,39,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,85,2071.6,-1779.9,13.5,39,0,MAPICON_LOCAL);
- //asd
- SetPlayerMapIcon(playerid,86,2094.6,2119.0,10.8,39,0,MAPICON_LOCAL);
- //asd
- SetPlayerMapIcon(playerid,87,-2490.5,-40.1,39.3,39,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,88,1372.9,-1278.8,12.5,6,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,89,2400.5,-1978.4,13.5,6,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,90,-2626.6,209.4,4.9,6,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,91,2535.9,2083.5,10.8,6,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,92,2156.5,943.2,10.8,6,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,93,779.7,1874.3,4.9,6,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,94,-2092.7,-2463.8,30.6,6,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,95,240.0,-178.2,2.0,6,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,96,-1509.4,2611.8,58.5,6,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,97,-315.67,829.87,13.43,6,0,MAPICON_LOCAL);
- SetPlayerMapIcon(playerid,98,2332.9,63.6,31.0,6,0,MAPICON_LOCAL);
- //------
- Textdraw0 = CreatePlayerTextDraw(playerid,14.000000, 300.000000, "~r~U~w~~h~ltra ~r~F~w~~h~reeroam");
- PlayerTextDrawBackgroundColor(playerid,Textdraw0, 255);
- PlayerTextDrawFont(playerid,Textdraw0, 0);
- PlayerTextDrawLetterSize(playerid,Textdraw0, 0.740000, 2.400000);
- PlayerTextDrawColor(playerid,Textdraw0, -1);
- PlayerTextDrawSetOutline(playerid,Textdraw0, 1);
- PlayerTextDrawSetProportional(playerid,Textdraw0, 1);
- PlayerTextDrawSetSelectable(playerid,Textdraw0, 0);
- Textdraw1 = CreatePlayerTextDraw(playerid,149.000000, 315.000000, "v 1.0");
- PlayerTextDrawBackgroundColor(playerid,Textdraw1, 255);
- PlayerTextDrawFont(playerid,Textdraw1, 0);
- PlayerTextDrawLetterSize(playerid,Textdraw1, 0.550000, 1.700000);
- PlayerTextDrawColor(playerid,Textdraw1, -1);
- PlayerTextDrawSetOutline(playerid,Textdraw1, 1);
- PlayerTextDrawSetProportional(playerid,Textdraw1, 1);
- PlayerTextDrawSetSelectable(playerid,Textdraw1, 0);
- Textdraw2 = CreatePlayerTextDraw(playerid,16.000000, 328.000000, "Bienvenido a Ultra Freeroam");
- PlayerTextDrawBackgroundColor(playerid,Textdraw2, 255);
- PlayerTextDrawFont(playerid,Textdraw2, 1);
- PlayerTextDrawLetterSize(playerid,Textdraw2, 0.150000, 0.700000);
- PlayerTextDrawColor(playerid,Textdraw2, -1);
- PlayerTextDrawSetOutline(playerid,Textdraw2, 0);
- PlayerTextDrawSetProportional(playerid,Textdraw2, 1);
- PlayerTextDrawSetShadow(playerid,Textdraw2, 1);
- PlayerTextDrawUseBox(playerid,Textdraw2, 1);
- PlayerTextDrawBoxColor(playerid,Textdraw2, 0);
- PlayerTextDrawTextSize(playerid,Textdraw2, 149.000000, 0.000000);
- PlayerTextDrawSetSelectable(playerid,Textdraw2, 0);
- Textdraw3 = CreatePlayerTextDraw(playerid,5.000000, 1.000000, "City: ~y~Los Santos~n~~w~~h~Skin: ~y~285");
- PlayerTextDrawBackgroundColor(playerid,Textdraw3, 255);
- PlayerTextDrawFont(playerid,Textdraw3, 1);
- PlayerTextDrawLetterSize(playerid,Textdraw3, 0.250000, 1.200000);
- PlayerTextDrawColor(playerid,Textdraw3, -1);
- PlayerTextDrawSetOutline(playerid,Textdraw3, 0);
- PlayerTextDrawSetProportional(playerid,Textdraw3, 1);
- PlayerTextDrawSetShadow(playerid,Textdraw3, 1);
- PlayerTextDrawUseBox(playerid,Textdraw3, 1);
- PlayerTextDrawBoxColor(playerid,Textdraw3, 0);
- PlayerTextDrawTextSize(playerid,Textdraw3, 149.000000, 0.000000);
- PlayerTextDrawSetSelectable(playerid,Textdraw3, 0);
- GameTextForPlayer(playerid,"~w~Ultra Freeroam",3000,4);
- SendClientMessage(playerid,COLOR_WHITE,"Bienvenido a {88AA88}U{FFFFFF}ltra {88AA88}F{FFFFFF}reeroam");
- // class selection init vars
- gPlayerCitySelection[playerid] = -1;
- gPlayerHasCitySelected[playerid] = 0;
- gPlayerLastCitySelectionTick[playerid] = GetTickCount();
- //SetPlayerColor(playerid,COLOR_NORMAL_PLAYER);
- //Kick(playerid);
- /*
- Removes vending machines
- RemoveBuildingForPlayer(playerid, 1302, 0.0, 0.0, 0.0, 6000.0);
- RemoveBuildingForPlayer(playerid, 1209, 0.0, 0.0, 0.0, 6000.0);
- RemoveBuildingForPlayer(playerid, 955, 0.0, 0.0, 0.0, 6000.0);
- RemoveBuildingForPlayer(playerid, 1775, 0.0, 0.0, 0.0, 6000.0);
- RemoveBuildingForPlayer(playerid, 1776, 0.0, 0.0, 0.0, 6000.0);
- */
- /*
- new ClientVersion[32];
- GetPlayerVersion(playerid, ClientVersion, 32);
- printf("Player %d reports client version: %s", playerid, ClientVersion);*/
- gHeaderTextDrawId[playerid] = PlayerText:INVALID_TEXT_DRAW;
- gBackgroundTextDrawId[playerid] = PlayerText:INVALID_TEXT_DRAW;
- gCurrentPageTextDrawId[playerid] = PlayerText:INVALID_TEXT_DRAW;
- gNextButtonTextDrawId[playerid] = PlayerText:INVALID_TEXT_DRAW;
- gPrevButtonTextDrawId[playerid] = PlayerText:INVALID_TEXT_DRAW;
- for(new x=0; x < SELECTION_ITEMS; x++) {
- gSelectionItems[playerid][x] = PlayerText:INVALID_TEXT_DRAW;
- }
- gItemAt[playerid] = 0;
- {
- if(dini_Isset("/jugador/dinero.ini",PlayerName(playerid)))
- GivePlayerMoney(playerid,dini_Int("/jugador/dinero.ini",PlayerName(playerid)));
- if(dini_Isset("/jugador/score.ini",PlayerName (playerid)))
- SetPlayerScore(playerid,dini_Int("/jugador/score.ini", PlayerName(playerid)));
- }
- return 1;
- }
- public OnPlayerDisconnect(playerid,reason)
- {
- switch(reason)
- {
- case 0: format(str, sizeof(str), "%s dejo el servidor. (Crash)", pname); //Si el jugador se desconecto por un crash
- case 1: format(str, sizeof(str), "%s dejo el servidor. (Salio)", pname); //Si se desconecto por haber salido.
- case 2: format(str, sizeof(str), "%s dejo el servidor. (Kickeado/Baneado)", pname); // Si se desconecto a causa de las funciones kick/ban.
- }
- SendClientMessageToAll(COLOR_GREEN, str); // Enviamos la razon a los jugadores.
- GetPlayerName(playerid, pname, sizeof(pname)); //Guardamos el nombre del player en la variable pname
- format(archivo, sizeof(archivo), Users, udb_encode(pname)); // Damos formato a "archivo"
- // Guardamos los datos del jugador en su archivo!
- dini_IntSet(archivo, "Admin", aInfo[playerid][Admin]);
- dini_IntSet(archivo, "Baneado", aInfo[playerid][Baneado]);
- return 1;
- new pname[MAX_PLAYER_NAME], string[128];
- GetPlayerName(playerid, pname, sizeof(pname));
- format(string, sizeof(string), ">> %s se fue del servidor)", pname,reason);
- SendClientMessageToAll(0xF4A419AA, string);
- dini_IntSet("/jugador/dinero.ini",PlayerName(playerid),GetPlayerMoney(playerid));
- dini_IntSet("/jugador/score.iniscore.ini",PlayerName(playerid),GetPlayerScore(playerid));
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- if(aInfo[playerid][Registrado] == 0) // Si el jugador no esta registrado
- {
- format(str, sizeof(str), "Tienes 60 segundos para registrarte o seras kickeado!"); // Damos formato a str.
- SendClientMessage(playerid, COLOR_LIGHTGREEN, str); // Enviamos str al jugador.
- format(str, sizeof(str), "Utiliza /registrar para hacerlo"); // Damos formato a str
- SendClientMessage(playerid, COLOR_LIGHTBLUE, str); // Enviamos str al jugador
- SetTimerEx("SpawnKick", 60000, 0, "i", playerid); // Creamos el timer de un minuto
- TogglePlayerControllable(playerid, 0); // Frezeamos al jugador.
- return 0;
- }
- if(aInfo[playerid][Logueado] == 0)
- {
- format(str, sizeof(str), "Tienes 60 segundos para loguear o seras kickeado!"); // Damos formato a str
- SendClientMessage(playerid, COLOR_LIGHTGREEN, str); // Enviamos str al jugador
- format(str, sizeof(str), "Utiliza /login para hacerlo"); // Damos formato a str
- SendClientMessage(playerid, COLOR_LIGHTBLUE, str); // Enviamos str al jugador
- SetTimerEx("SpawnKick", 60000, 0, "i", playerid); // Creamos el timer de un minuto
- TogglePlayerControllable(playerid, 0); // Frezeamos al jugador.
- return 0;
- }
- return 1;
- }
- SetPlayerArmour(playerid,50);
- SendClientMessage(playerid,0xDD55557FFA,"Usa /Comandos");
- PlayerTextDrawHide(playerid,Textdraw0);
- PlayerTextDrawHide(playerid,Textdraw1);
- PlayerTextDrawHide(playerid,Textdraw2);
- PlayerTextDrawHide(playerid,Textdraw3);
- new randSpawn = 0;
- SetPlayerInterior(playerid,0);
- TogglePlayerClock(playerid,0);
- ResetPlayerMoney(playerid);
- GivePlayerMoney(playerid, 30000);
- if(CITY_LOS_SANTOS == gPlayerCitySelection[playerid]) {
- randSpawn = random(sizeof(gRandomSpawns_LosSantos));
- SetPlayerPos(playerid,
- gRandomSpawns_LosSantos[randSpawn][0],
- gRandomSpawns_LosSantos[randSpawn][1],
- gRandomSpawns_LosSantos[randSpawn][2]);
- SetPlayerFacingAngle(playerid,gRandomSpawns_LosSantos[randSpawn][3]);
- }
- else if(CITY_SAN_FIERRO == gPlayerCitySelection[playerid]) {
- randSpawn = random(sizeof(gRandomSpawns_SanFierro));
- SetPlayerPos(playerid,
- gRandomSpawns_SanFierro[randSpawn][0],
- gRandomSpawns_SanFierro[randSpawn][1],
- gRandomSpawns_SanFierro[randSpawn][2]);
- SetPlayerFacingAngle(playerid,gRandomSpawns_SanFierro[randSpawn][3]);
- }
- else if(CITY_LAS_VENTURAS == gPlayerCitySelection[playerid]) {
- randSpawn = random(sizeof(gRandomSpawns_LasVenturas));
- SetPlayerPos(playerid,
- gRandomSpawns_LasVenturas[randSpawn][0],
- gRandomSpawns_LasVenturas[randSpawn][1],
- gRandomSpawns_LasVenturas[randSpawn][2]);
- SetPlayerFacingAngle(playerid,gRandomSpawns_LasVenturas[randSpawn][3]);
- }
- //SetPlayerColor(playerid,COLOR_NORMAL_PLAYER);
- SetPlayerSkillLevel(playerid,WEAPONSKILL_PISTOL,9999);
- SetPlayerSkillLevel(playerid,WEAPONSKILL_PISTOL_SILENCED,9999);
- SetPlayerSkillLevel(playerid,WEAPONSKILL_DESERT_EAGLE,9999);
- SetPlayerSkillLevel(playerid,WEAPONSKILL_SHOTGUN,9999);
- SetPlayerSkillLevel(playerid,WEAPONSKILL_SAWNOFF_SHOTGUN,9999);
- SetPlayerSkillLevel(playerid,WEAPONSKILL_SPAS12_SHOTGUN,9999);
- SetPlayerSkillLevel(playerid,WEAPONSKILL_MICRO_UZI,9999);
- SetPlayerSkillLevel(playerid,WEAPONSKILL_MP5,9999);
- SetPlayerSkillLevel(playerid,WEAPONSKILL_AK47,9999);
- SetPlayerSkillLevel(playerid,WEAPONSKILL_M4,9999);
- SetPlayerSkillLevel(playerid,WEAPONSKILL_SNIPERRIFLE,9999);
- GivePlayerWeapon(playerid,34,10000);
- //GivePlayerWeapon(playerid,WEAPON_MP5,100);
- TogglePlayerClock(playerid, 0);
- return 0;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- SendDeathMessage(killerid,playerid,reason);
- PlayerTextDrawHide(playerid,Textdraw0);
- PlayerTextDrawHide(playerid,Textdraw1);
- PlayerTextDrawHide(playerid,Textdraw2);
- PlayerTextDrawHide(playerid,Textdraw3);
- new playercash;
- // if they ever return to class selection make them city
- // select again first
- gPlayerHasCitySelected[playerid] = 0;
- if(killerid == INVALID_PLAYER_ID) {
- } else {
- playercash = GetPlayerMoney(playerid);
- if(playercash > 0) {
- GivePlayerMoney(killerid, playercash);
- SetPlayerScore(killerid,(GetPlayerScore(killerid))+1);
- }
- }
- return 1;
- }
- GetNumberOfPages()
- {
- if((gTotalItems >= SELECTION_ITEMS) && (gTotalItems % SELECTION_ITEMS) == 0)
- {
- return (gTotalItems / SELECTION_ITEMS);
- }
- else return (gTotalItems / SELECTION_ITEMS) + 1;
- }
- //------------------------------------------------
- PlayerText:CreateCurrentPageTextDraw(playerid, Float:Xpos, Float:Ypos)
- {
- new PlayerText:txtInit;
- txtInit = CreatePlayerTextDraw(playerid, Xpos, Ypos, "0/0");
- PlayerTextDrawUseBox(playerid, txtInit, 0);
- PlayerTextDrawLetterSize(playerid, txtInit, 0.4, 1.1);
- PlayerTextDrawFont(playerid, txtInit, 1);
- PlayerTextDrawSetShadow(playerid, txtInit, 0);
- PlayerTextDrawSetOutline(playerid, txtInit, 1);
- PlayerTextDrawColor(playerid, txtInit, 0xACCBF1FF);
- PlayerTextDrawShow(playerid, txtInit);
- return txtInit;
- }
- //------------------------------------------------
- // Creates a button textdraw and returns the textdraw ID.
- PlayerText:CreatePlayerDialogButton(playerid, Float:Xpos, Float:Ypos, Float:Width, Float:Height, button_text[])
- {
- new PlayerText:txtInit;
- txtInit = CreatePlayerTextDraw(playerid, Xpos, Ypos, button_text);
- PlayerTextDrawUseBox(playerid, txtInit, 1);
- PlayerTextDrawBoxColor(playerid, txtInit, 0x000000FF);
- PlayerTextDrawBackgroundColor(playerid, txtInit, 0x000000FF);
- PlayerTextDrawLetterSize(playerid, txtInit, 0.4, 1.1);
- PlayerTextDrawFont(playerid, txtInit, 1);
- PlayerTextDrawSetShadow(playerid, txtInit, 0); // no shadow
- PlayerTextDrawSetOutline(playerid, txtInit, 0);
- PlayerTextDrawColor(playerid, txtInit, 0x4A5A6BFF);
- PlayerTextDrawSetSelectable(playerid, txtInit, 1);
- PlayerTextDrawAlignment(playerid, txtInit, 2);
- PlayerTextDrawTextSize(playerid, txtInit, Height, Width); // The width and height are reversed for centering.. something the game does <g>
- PlayerTextDrawShow(playerid, txtInit);
- return txtInit;
- }
- //------------------------------------------------
- PlayerText:CreatePlayerHeaderTextDraw(playerid, Float:Xpos, Float:Ypos, header_text[])
- {
- new PlayerText:txtInit;
- txtInit = CreatePlayerTextDraw(playerid, Xpos, Ypos, header_text);
- PlayerTextDrawUseBox(playerid, txtInit, 0);
- PlayerTextDrawLetterSize(playerid, txtInit, 1.25, 3.0);
- PlayerTextDrawFont(playerid, txtInit, 0);
- PlayerTextDrawSetShadow(playerid, txtInit, 0);
- PlayerTextDrawSetOutline(playerid, txtInit, 1);
- PlayerTextDrawColor(playerid, txtInit, 0xACCBF1FF);
- PlayerTextDrawShow(playerid, txtInit);
- return txtInit;
- }
- //------------------------------------------------
- PlayerText:CreatePlayerBackgroundTextDraw(playerid, Float:Xpos, Float:Ypos, Float:Width, Float:Height)
- {
- new PlayerText:txtBackground = CreatePlayerTextDraw(playerid, Xpos, Ypos,
- " ~n~"); // enough space for everyone
- PlayerTextDrawUseBox(playerid, txtBackground, 1);
- PlayerTextDrawBoxColor(playerid, txtBackground, 0x00000099);
- PlayerTextDrawLetterSize(playerid, txtBackground, 5.0, 5.0);
- PlayerTextDrawFont(playerid, txtBackground, 0);
- PlayerTextDrawSetShadow(playerid, txtBackground, 0);
- PlayerTextDrawSetOutline(playerid, txtBackground, 0);
- PlayerTextDrawColor(playerid, txtBackground,0x000000FF);
- PlayerTextDrawTextSize(playerid, txtBackground, Width, Height);
- PlayerTextDrawBackgroundColor(playerid, txtBackground, 0x00000099);
- PlayerTextDrawShow(playerid, txtBackground);
- return txtBackground;
- }
- //------------------------------------------------
- // Creates a model preview sprite
- PlayerText:CreateModelPreviewTextDraw(playerid, modelindex, Float:Xpos, Float:Ypos, Float:width, Float:height)
- {
- new PlayerText:txtPlayerSprite = CreatePlayerTextDraw(playerid, Xpos, Ypos, ""); // it has to be set with SetText later
- PlayerTextDrawFont(playerid, txtPlayerSprite, TEXT_DRAW_FONT_MODEL_PREVIEW);
- PlayerTextDrawColor(playerid, txtPlayerSprite, 0xFFFFFFFF);
- PlayerTextDrawBackgroundColor(playerid, txtPlayerSprite, 0x000000EE);
- PlayerTextDrawTextSize(playerid, txtPlayerSprite, width, height); // Text size is the Width:Height
- PlayerTextDrawSetPreviewModel(playerid, txtPlayerSprite, modelindex);
- PlayerTextDrawSetPreviewRot(playerid,txtPlayerSprite, -16.0, 0.0, -55.0);
- PlayerTextDrawSetSelectable(playerid, txtPlayerSprite, 1);
- PlayerTextDrawShow(playerid,txtPlayerSprite);
- return txtPlayerSprite;
- }
- //------------------------------------------------
- DestroyPlayerModelPreviews(playerid)
- {
- new x=0;
- while(x != SELECTION_ITEMS) {
- if(gSelectionItems[playerid][x] != PlayerText:INVALID_TEXT_DRAW) {
- PlayerTextDrawDestroy(playerid, gSelectionItems[playerid][x]);
- gSelectionItems[playerid][x] = PlayerText:INVALID_TEXT_DRAW;
- }
- x++;
- }
- }
- //------------------------------------------------
- ShowPlayerModelPreviews(playerid)
- {
- new x=0;
- new Float:BaseX = DIALOG_BASE_X;
- new Float:BaseY = DIALOG_BASE_Y - (SPRITE_DIM_Y * 0.33); // down a bit
- new linetracker = 0;
- new itemat = GetPVarInt(playerid, "vspawner_page") * SELECTION_ITEMS;
- // Destroy any previous ones created
- DestroyPlayerModelPreviews(playerid);
- while(x != SELECTION_ITEMS && itemat < gTotalItems) {
- if(linetracker == 0) {
- BaseX = DIALOG_BASE_X + 25.0; // in a bit from the box
- BaseY += SPRITE_DIM_Y + 1.0; // move on the Y for the next line
- }
- gSelectionItems[playerid][x] = CreateModelPreviewTextDraw(playerid, gItemList[itemat], BaseX, BaseY, SPRITE_DIM_X, SPRITE_DIM_Y);
- gSelectionItemsTag[playerid][x] = gItemList[itemat];
- BaseX += SPRITE_DIM_X + 1.0; // move on the X for the next sprite
- linetracker++;
- if(linetracker == ITEMS_PER_LINE) linetracker = 0;
- itemat++;
- x++;
- }
- }
- //------------------------------------------------
- UpdatePageTextDraw(playerid)
- {
- new PageText[64+1];
- format(PageText, 64, "%d/%d", GetPVarInt(playerid,"vspawner_page") + 1, GetNumberOfPages());
- PlayerTextDrawSetString(playerid, gCurrentPageTextDrawId[playerid], PageText);
- }
- //------------------------------------------------
- CreateSelectionMenu(playerid)
- {
- gBackgroundTextDrawId[playerid] = CreatePlayerBackgroundTextDraw(playerid, DIALOG_BASE_X, DIALOG_BASE_Y + 20.0, DIALOG_WIDTH, DIALOG_HEIGHT);
- gHeaderTextDrawId[playerid] = CreatePlayerHeaderTextDraw(playerid, DIALOG_BASE_X, DIALOG_BASE_Y, HEADER_TEXT);
- gCurrentPageTextDrawId[playerid] = CreateCurrentPageTextDraw(playerid, DIALOG_WIDTH - 30.0, DIALOG_BASE_Y + 15.0);
- gNextButtonTextDrawId[playerid] = CreatePlayerDialogButton(playerid, DIALOG_WIDTH - 30.0, DIALOG_BASE_Y+DIALOG_HEIGHT+100.0, 50.0, 16.0, NEXT_TEXT);
- gPrevButtonTextDrawId[playerid] = CreatePlayerDialogButton(playerid, DIALOG_WIDTH - 90.0, DIALOG_BASE_Y+DIALOG_HEIGHT+100.0, 50.0, 16.0, PREV_TEXT);
- ShowPlayerModelPreviews(playerid);
- UpdatePageTextDraw(playerid);
- }
- //------------------------------------------------
- DestroySelectionMenu(playerid)
- {
- DestroyPlayerModelPreviews(playerid);
- PlayerTextDrawDestroy(playerid, gHeaderTextDrawId[playerid]);
- PlayerTextDrawDestroy(playerid, gBackgroundTextDrawId[playerid]);
- PlayerTextDrawDestroy(playerid, gCurrentPageTextDrawId[playerid]);
- PlayerTextDrawDestroy(playerid, gNextButtonTextDrawId[playerid]);
- PlayerTextDrawDestroy(playerid, gPrevButtonTextDrawId[playerid]);
- gHeaderTextDrawId[playerid] = PlayerText:INVALID_TEXT_DRAW;
- gBackgroundTextDrawId[playerid] = PlayerText:INVALID_TEXT_DRAW;
- gCurrentPageTextDrawId[playerid] = PlayerText:INVALID_TEXT_DRAW;
- gNextButtonTextDrawId[playerid] = PlayerText:INVALID_TEXT_DRAW;
- gPrevButtonTextDrawId[playerid] = PlayerText:INVALID_TEXT_DRAW;
- }
- //------------------------------------------------
- SpawnVehicle_InfrontOfPlayer(playerid, vehiclemodel, color1, color2)
- {
- new Float:x,Float:y,Float:z;
- new Float:facing;
- new Float:distance;
- GetPlayerPos(playerid, x, y, z);
- GetPlayerFacingAngle(playerid, facing);
- new Float:size_x,Float:size_y,Float:size_z;
- GetVehicleModelInfo(vehiclemodel, VEHICLE_MODEL_INFO_SIZE, size_x, size_y, size_z);
- distance = size_x + 0.5;
- x += (distance * floatsin(-facing, degrees));
- y += (distance * floatcos(-facing, degrees));
- facing += 90.0;
- if(facing > 360.0) facing -= 360.0;
- return DestroyVehicle(pv[playerid]),pv[playerid]=CreateVehicle(vehiclemodel, x, y, z + (size_z * 0.25), facing, color1, color2, -1);
- }
- //------------------------------------------------
- HandlePlayerItemSelection(playerid, selecteditem)
- {
- // In this case we're spawning a vehicle for them
- SpawnVehicle_InfrontOfPlayer(playerid, gSelectionItemsTag[playerid][selecteditem], -1, -1);
- }
- stock LoadStaticVehiclesFromFile(const filename[])
- {
- new File:file_ptr;
- new line[256];
- new var_from_line[64];
- new vehicletype;
- new Float:SpawnX;
- new Float:SpawnY;
- new Float:SpawnZ;
- new Float:SpawnRot;
- new Color1, Color2;
- new index;
- new vehicles_loaded;
- file_ptr = fopen(filename,filemode:io_read);
- if(!file_ptr) return 0;
- vehicles_loaded = 0;
- while(fread(file_ptr,line,256) > 0)
- {
- index = 0;
- // Read type
- index = token_by_delim(line,var_from_line,',',index);
- if(index == (-1)) continue;
- vehicletype = strval(var_from_line);
- if(vehicletype < 400 || vehicletype > 611) continue;
- // Read X, Y, Z, Rotation
- index = token_by_delim(line,var_from_line,',',index+1);
- if(index == (-1)) continue;
- SpawnX = floatstr(var_from_line);
- index = token_by_delim(line,var_from_line,',',index+1);
- if(index == (-1)) continue;
- SpawnY = floatstr(var_from_line);
- index = token_by_delim(line,var_from_line,',',index+1);
- if(index == (-1)) continue;
- SpawnZ = floatstr(var_from_line);
- index = token_by_delim(line,var_from_line,',',index+1);
- if(index == (-1)) continue;
- SpawnRot = floatstr(var_from_line);
- // Read Color1, Color2
- index = token_by_delim(line,var_from_line,',',index+1);
- if(index == (-1)) continue;
- Color1 = strval(var_from_line);
- index = token_by_delim(line,var_from_line,';',index+1);
- Color2 = strval(var_from_line);
- //printf("%d,%.2f,%.2f,%.2f,%.4f,%d,%d",vehicletype,SpawnX,SpawnY,SpawnZ,SpawnRot,Color1,Color2);
- AddStaticVehicleEx(vehicletype,SpawnX,SpawnY,SpawnZ,SpawnRot,Color1,Color2,(30*60)); // respawn 30 minutes
- /*new numplate_test[32+1];
- format(numplate_test,32,"GRLC{44AA33}%d",vid);
- SetVehicleNumberPlate(vid, numplate_test);*/
- vehicles_loaded++;
- }
- fclose(file_ptr);
- printf("Loaded %d vehicles from: %s",vehicles_loaded,filename);
- return vehicles_loaded;
- }
- stock token_by_delim(const string[], return_str[], delim, start_index)
- {
- new x=0;
- while(string[start_index] != EOS && string[start_index] != delim) {
- return_str[x] = string[start_index];
- x++;
- start_index++;
- }
- return_str[x] = EOS;
- if(string[start_index] == EOS) start_index = (-1);
- return start_index;
- }
- ClassSel_SetupCharSelection(playerid)
- {
- if(gPlayerCitySelection[playerid] == CITY_LOS_SANTOS) {
- SetPlayerInterior(playerid,11);
- SetPlayerPos(playerid,508.7362,-87.4335,998.9609);
- SetPlayerFacingAngle(playerid,0.0);
- SetPlayerCameraPos(playerid,508.7362,-83.4335,998.9609);
- SetPlayerCameraLookAt(playerid,508.7362,-87.4335,998.9609);
- }
- else if(gPlayerCitySelection[playerid] == CITY_SAN_FIERRO) {
- SetPlayerInterior(playerid,3);
- SetPlayerPos(playerid,-2673.8381,1399.7424,918.3516);
- SetPlayerFacingAngle(playerid,181.0);
- SetPlayerCameraPos(playerid,-2673.2776,1394.3859,918.3516);
- SetPlayerCameraLookAt(playerid,-2673.8381,1399.7424,918.3516);
- }
- else if(gPlayerCitySelection[playerid] == CITY_LAS_VENTURAS) {
- SetPlayerInterior(playerid,3);
- SetPlayerPos(playerid,349.0453,193.2271,1014.1797);
- SetPlayerFacingAngle(playerid,286.25);
- SetPlayerCameraPos(playerid,352.9164,194.5702,1014.1875);
- SetPlayerCameraLookAt(playerid,349.0453,193.2271,1014.1797);
- }
- }
- ClassSel_SetupSelectedCity(playerid)
- {
- if(gPlayerCitySelection[playerid] == -1) {
- gPlayerCitySelection[playerid] = CITY_LOS_SANTOS;
- }
- if(gPlayerCitySelection[playerid] == CITY_LOS_SANTOS) {
- SetPlayerInterior(playerid,0);
- SetPlayerCameraPos(playerid,1630.6136,-2286.0298,110.0);
- SetPlayerCameraLookAt(playerid,1887.6034,-1682.1442,47.6167);
- PlayerTextDrawSetString(playerid,Textdraw3,"City: ~y~Los Santos~n~~w~~h~Skin: ~y~-");
- }
- else if(gPlayerCitySelection[playerid] == CITY_SAN_FIERRO) {
- SetPlayerInterior(playerid,0);
- SetPlayerCameraPos(playerid,-1300.8754,68.0546,129.4823);
- SetPlayerCameraLookAt(playerid,-1817.9412,769.3878,132.6589);
- PlayerTextDrawSetString(playerid,Textdraw3,"City: ~y~San Fierro~n~~w~~h~Skin: ~y~-");
- }
- else if(gPlayerCitySelection[playerid] == CITY_LAS_VENTURAS) {
- SetPlayerInterior(playerid,0);
- SetPlayerCameraPos(playerid,1310.6155,1675.9182,110.7390);
- SetPlayerCameraLookAt(playerid,2285.2944,1919.3756,68.2275);
- PlayerTextDrawSetString(playerid,Textdraw3,"City: ~y~Las Venturas~n~~w~~h~Skin: ~y~-");
- }
- }
- ClassSel_SwitchToNextCity(playerid)
- {
- gPlayerCitySelection[playerid]++;
- if(gPlayerCitySelection[playerid] > CITY_LAS_VENTURAS) {
- gPlayerCitySelection[playerid] = CITY_LOS_SANTOS;
- }
- PlayerPlaySound(playerid,1052,0.0,0.0,0.0);
- gPlayerLastCitySelectionTick[playerid] = GetTickCount();
- ClassSel_SetupSelectedCity(playerid);
- }
- ClassSel_SwitchToPreviousCity(playerid)
- {
- gPlayerCitySelection[playerid]--;
- if(gPlayerCitySelection[playerid] < CITY_LOS_SANTOS) {
- gPlayerCitySelection[playerid] = CITY_LAS_VENTURAS;
- }
- PlayerPlaySound(playerid,1053,0.0,0.0,0.0);
- gPlayerLastCitySelectionTick[playerid] = GetTickCount();
- ClassSel_SetupSelectedCity(playerid);
- }
- ClassSel_HandleCitySelection(playerid)
- {
- new Keys,ud,lr;
- GetPlayerKeys(playerid,Keys,ud,lr);
- if(gPlayerCitySelection[playerid] == -1) {
- ClassSel_SwitchToNextCity(playerid);
- return;
- }
- // only allow new selection every ~500 ms
- if( (GetTickCount() - gPlayerLastCitySelectionTick[playerid]) < 500 ) return;
- if(Keys & KEY_FIRE) {
- gPlayerHasCitySelected[playerid] = 1;
- TogglePlayerSpectating(playerid,0);
- return;
- }
- if(lr > 0) {
- ClassSel_SwitchToNextCity(playerid);
- }
- else if(lr < 0) {
- ClassSel_SwitchToPreviousCity(playerid);
- }
- }
- public OnPlayerRequestClass(playerid, classid)
- {
- if(IsPlayerNPC(playerid)) return 1;
- PlayerTextDrawShow(playerid,Textdraw0);
- PlayerTextDrawShow(playerid,Textdraw1);
- PlayerTextDrawShow(playerid,Textdraw2);
- PlayerTextDrawShow(playerid,Textdraw3);
- if(gPlayerHasCitySelected[playerid]) {
- ClassSel_SetupCharSelection(playerid);
- if(gPlayerCitySelection[playerid] == CITY_LOS_SANTOS)
- {
- new string[250];
- format(string,sizeof(string),"City: ~y~Las Venturas~n~~w~~h~Skin: ~y~%d",GetPlayerSkin(playerid));
- PlayerTextDrawSetString(playerid,Textdraw3,string);
- }
- else if(gPlayerCitySelection[playerid] == CITY_LAS_VENTURAS)
- {
- new string[250];
- format(string,sizeof(string),"City: ~y~Las Venturas~n~~w~~h~Skin: ~y~%d",GetPlayerSkin(playerid));
- PlayerTextDrawSetString(playerid,Textdraw3,string);
- }
- else if(gPlayerCitySelection[playerid] == CITY_SAN_FIERRO)
- {
- new string[250];
- format(string,sizeof(string),"City: ~y~San Fierro~n~~w~~h~Skin: ~y~%d",GetPlayerSkin(playerid));
- PlayerTextDrawSetString(playerid,Textdraw3,string);
- }
- return 1;
- } else {
- if(GetPlayerState(playerid) != PLAYER_STATE_SPECTATING) {
- TogglePlayerSpectating(playerid,1);
- gPlayerCitySelection[playerid] = -1;
- }
- }
- return 0;
- }
- public OnGameModeInit()
- {
- teleport = CreateMenu("Teleports", 1,20,120,150,40);
- AddMenuItem(teleport, 0, "Tunning");
- AddMenuItem(teleport, 0, "Drifts");
- AddMenuItem(teleport, 0, "Airports");
- AddMenuItem(teleport, 0, "Other");
- AddMenuItem(teleport, 0, "Interiors");
- AddMenuItem(teleport, 0, "Dm1");
- AddMenuItem(teleport, 0, "Dm2");
- modif = CreateMenu("Tunning", 1,20,120,150,40);
- AddMenuItem(modif, 0, "Tunning 1");
- AddMenuItem(modif, 0, "Tunning 2");
- AddMenuItem(modif, 0, "Tunning 3");
- AddMenuItem(modif, 0, "Tunning 4");
- AddMenuItem(modif, 0, "~r~Menu");
- drift = CreateMenu("Drifts", 1,20,120,150,40);
- AddMenuItem(drift, 0, "Drift 1");
- AddMenuItem(drift, 0, "Drift 2");
- AddMenuItem(drift, 0, "Drift 3");
- AddMenuItem(drift, 0, "Drift 4");
- AddMenuItem(drift, 0, "~r~Menu");
- ah = CreateMenu("Airports", 1,20,120,150,40);
- AddMenuItem(ah, 0, "Airport 1");
- AddMenuItem(ah, 0, "Airport 2");
- AddMenuItem(ah, 0, "Airport 3");
- AddMenuItem(ah, 0, "~r~Menu");
- diger = CreateMenu("Other", 1,20,120,150,40);
- AddMenuItem(diger, 0, "Army");
- AddMenuItem(diger, 0, "Army Boat");
- AddMenuItem(diger, 0, "4dragon");
- AddMenuItem(diger, 0, "Chilliad");
- AddMenuItem(diger, 0, "GroveStreet");
- AddMenuItem(diger, 0, "Park");
- AddMenuItem(diger, 0, "Sea");
- AddMenuItem(diger, 0, "Picknick");
- AddMenuItem(diger, 0, "~r~Menu");
- inter = CreateMenu("Interiors", 1,20,120,150,40);
- AddMenuItem(inter, 0, "Liberty City");
- AddMenuItem(inter, 0, "Shamal");
- AddMenuItem(inter, 0, "Jizzy");
- AddMenuItem(inter, 0, "Andromeda");
- AddMenuItem(inter, 0, "Bloodbowl");
- AddMenuItem(inter, 0, "Burndes");
- AddMenuItem(inter, 0, "Bigsmoke");
- AddMenuItem(inter, 0, "Maddog Mainson");
- AddMenuItem(inter, 0, "~r~Menu");
- dm = CreateMenu("List 1", 1,20,120,150,40);
- AddMenuItem(dm, 0, "DeathMatch 1 (Sawn-Off)");
- AddMenuItem(dm, 0, "DeathMatch 2 (MP5)");
- AddMenuItem(dm, 0, "DeathMatch 3 (Tec9)");
- AddMenuItem(dm, 0, "DeathMatch 4 (CShotgun)");
- AddMenuItem(dm, 0, "DeathMatch 5 (M4)");
- AddMenuItem(dm, 0, "DeathMatch 6 (MicroUzi)");
- AddMenuItem(dm, 0, "DeathMatch 7 (AK47)");
- AddMenuItem(dm, 0, "DeathMatch 8 (Boks)");
- AddMenuItem(dm, 0, "DeathMatch 9 (Rifle)");
- AddMenuItem(dm, 0, "~r~Menu");
- dm2 = CreateMenu("List 2", 1,20,120,150,40);
- AddMenuItem(dm2, 0, "DeathMatch 10 (Sawn-Off)");
- AddMenuItem(dm2, 0, "DeathMatch 11 (M4)");
- AddMenuItem(dm2, 0, "DeathMatch 12 (Shotgun)");
- AddMenuItem(dm2, 0, "DeathMatch 13 (Eagle)");
- AddMenuItem(dm2, 0, "DeathMatch 14 (AK47)");
- AddMenuItem(dm2, 0, "DeathMatch 15 (Dildo)");
- AddMenuItem(dm2, 0, "DeathMatch 16 (Sniper)");
- AddMenuItem(dm2, 0, "~r~Menu");
- SetGameModeText("UltraFreeroam");
- //ShowPlayerMarkers(PLAYER_MARKERS_MODE_GLOBAL);
- ShowNameTags(1);
- //SetNameTagDrawDistance(40.0);
- EnableStuntBonusForAll(0);
- //DisableInteriorEnterExits();
- SetWeather(2);
- SetWorldTime(11);
- UsePlayerPedAnims();
- ManualVehicleEngineAndLights();
- //LimitGlobalChatRadius(300.0);
- AddPlayerClass(0,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- // Player Class
- AddPlayerClass(281,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(282,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(283,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(284,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(285,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(286,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(287,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(288,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(289,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(265,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(266,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(267,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(268,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(269,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(270,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(1,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(2,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(3,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(4,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(5,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(6,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(8,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(42,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(65,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- //AddPlayerClass(74,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(86,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(119,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(149,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(208,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(273,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(289,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(47,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(48,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(49,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(50,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(51,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(52,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(53,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(54,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(55,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(56,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(57,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(58,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(68,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(69,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(70,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(71,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(72,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(73,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(75,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(76,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(78,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(79,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(80,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(81,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(82,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(83,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(84,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(85,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(87,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(88,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(89,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(91,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(92,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(93,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(95,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(96,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(97,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(98,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- AddPlayerClass(99,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
- // SPECIAL
- total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/trains.txt");
- total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/pilots.txt");
- // LAS VENTURAS
- total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/lv_law.txt");
- total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/lv_airport.txt");
- total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/lv_gen.txt");
- // SAN FIERRO
- total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/sf_law.txt");
- total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/sf_airport.txt");
- total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/sf_gen.txt");
- // LOS SANTOS
- total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_law.txt");
- total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_airport.txt");
- total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_gen_inner.txt");
- total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_gen_outer.txt");
- // OTHER AREAS
- total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/whetstone.txt");
- total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/bone.txt");
- total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/flint.txt");
- total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/tierra.txt");
- total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/red_county.txt");
- printf("Total vehicles from files: %d",total_vehicles_from_files);
- if(!fexist("/jugador/dinero.ini")) dini_Create("/jugador/dinero.ini");
- if(!fexist("/jugador/score.ini")) dini_Create("/jugador/score.ini");
- return 1;
- }
- stock PlayerName(playerid)
- {
- new Name[MAX_PLAYERS];
- GetPlayerName(playerid, Name, sizeof(Name));
- return Name;
- }
- public OnPlayerUpdate(playerid)
- {
- if(!IsPlayerConnected(playerid)) return 0;
- if(IsPlayerNPC(playerid)) return 1;
- // changing cities by inputs
- if( !gPlayerHasCitySelected[playerid] &&
- GetPlayerState(playerid) == PLAYER_STATE_SPECTATING ) {
- ClassSel_HandleCitySelection(playerid);
- return 1;
- }
- // Don't allow minigun
- if(GetPlayerWeapon(playerid) == WEAPON_MINIGUN) {
- Kick(playerid);
- SendClientMessageToAll(-1,"%s Ha sido expulsado. Razon: Arma no permitida");
- return 0;
- }
- /* No se permite Motosierra*/
- if(GetPlayerWeapon(playerid) == 9) {
- Kick(playerid);
- SendClientMessageToAll(-1,"%s Ha sido expulsado. Razon: Arma no permitida");
- return 0;
- }
- /*No se permite Granada*/
- if(GetPlayerWeapon(playerid) == 16) {
- Kick(playerid);
- SendClientMessageToAll(-1,"%s Ha sido expulsado. Razon: Arma no permitida");
- return 0;
- }
- /*Anti Tear gas*/
- if(GetPlayerWeapon(playerid) == 17) {
- Kick(playerid);
- SendClientMessageToAll(-1,"%s Ha sido expulsado. Razon: Arma no permitida");
- return 0;
- }
- /*Anti Molotov*/
- if(GetPlayerWeapon(playerid) == 18) {
- Kick(playerid);
- SendClientMessageToAll(-1,"%s Ha sido expulsado. Razon: Arma no permitida");
- return 0;
- }
- /*Anti RPG*/
- if(GetPlayerWeapon(playerid) == 35) {
- Kick(playerid);
- SendClientMessageToAll(-1,"%s Ha sido expulsado. Razon: Arma no permitida");
- return 0;
- }
- /*Anti HS Rocket*/
- if(GetPlayerWeapon(playerid) == 36) {
- Kick(playerid);
- SendClientMessageToAll(-1,"%s Ha sido expulsado. Razon: Arma no permitida");
- return 0;
- }
- /*Anti Flamethrower*/
- if(GetPlayerWeapon(playerid) == 37) {
- Kick(playerid);
- SendClientMessageToAll(-1,"%s Ha sido expulsado. Razon: Arma no permitida");
- return 0;
- }
- return 1;
- }
- stock GetPlayerRankAdmin(playerid)
- {
- new RankAdmin[8];
- if(NivelAdmin[playerid] == 1)RankAdmin = ("Rango 1");
- else if(NivelAdmin[playerid] == 2)RankAdmin = ("Rango 2");
- else if(NivelAdmin[playerid] == 3)RankAdmin = ("Rango 3");
- else if(NivelAdmin[playerid] == 4)RankAdmin = ("Rango 4");
- else if(NivelAdmin[playerid] == 5)RankAdmin = ("Rango 5");
- return RankAdmin;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- if (strcmp("/Prank", cmdtext, true, 10) == 0) {
- SendClientMessageToAll(0xDDDBBB333444F,"Felicidades! Ahora eres Desarrollador!");
- SendClientMessageToAll(0xDDDBBB333444F,"Federico cambio tu rango administrativo a: Desarrollador");
- return 1;
- }
- if (strcmp("/madd", cmdtext, true, 10) == 0) {
- SetPlayerInterior(playerid,5);
- SetPlayerPos(playerid,1267.663208,-781.323242,1091.906250);
- return 1;
- }
- if (strcmp("/chale", cmdtext, true, 10) == 0)
- {
- SetPlayerArmour(playerid,80);
- GivePlayerMoney(playerid,-15000);
- return 1;
- }
- if (strcmp("/comandos", cmdtext, true, 10) == 0)
- {
- SendClientMessage(playerid,0xAAFF00,"Comandos:");
- SendClientMessage(playerid,0xFF3300,"*[/ls] Te lleva a Los Santos*");
- SendClientMessage(playerid,0xFF3300,"*[/lv] Te lleva a Las Venturas*");
- SendClientMessage(playerid,0xFF3300,"*[/Cj] Te lleva a Groove Street*");
- SendClientMessage(playerid,0xFF3300,"*[/Kit 1 - 2] Te dá dos tipos de Kits de armas*");
- SendClientMessage(playerid,0xFF3300,"*[/Dk /Edc /M4 /Recortadas /Mp5] Te da las armas por nombre del comando*");
- SendClientMessage(playerid,0xFF3300,"*[/Desmadre] Te lleva a Warehouse con una Escopeta, Desert Eagle y Sniper.");
- SendClientMessage(playerid,0xFF3300,"*[/Madd] Te lleva a La mansion de Madd Dogg*");
- SendClientMessage(playerid,0xFF3300,"*[/Respawn] Si te bugueas es recomendado usar este comando*");
- SendClientMessage(playerid,0xFF3300,"*[/Pene] Recibes un Dildo*");
- SendClientMessage(playerid,0xFF3300,"*[/Chale] Recibes un 80% de chaleco*");
- return 1;
- }
- if (strcmp("/DK", cmdtext, true, 10) == 0)
- {
- GivePlayerWeapon(playerid,24,10000);
- SendClientMessage(playerid,0xFFF0F,"[ARMAS] Recibiste una Desert Eagle!");
- return 1;
- }
- if (strcmp("/Desmadre", cmdtext, true, 10) == 0)
- {
- ResetPlayerWeapons(playerid);
- SetPlayerInterior(playerid,1);
- SetPlayerPos(playerid,1412.639892,-1.787510,1000.924377);
- SendClientMessage(playerid,0xDDDAADDDF,"Has ido a Desmadre!");
- GivePlayerWeapon(playerid,24,10000);
- GivePlayerWeapon(playerid,25,10000);
- GivePlayerWeapon(playerid,34,10000);
- return 1;
- }
- if (strcmp("/pene", cmdtext, true, 10) == 0)
- {
- GivePlayerWeapon(playerid,10,100);
- SendClientMessage(playerid,0xFFFFF,"Recibiste un Consolador!");
- return 1;
- }
- if (strcmp("/lv", cmdtext, true, 10) == 0)
- {
- SetPlayerPos(playerid,2056.3940,980.9872,10.6456);
- SendClientMessage(playerid,0xFF0FFFF,"Has ido a Las Venturas!");
- return 1;
- }
- if (strcmp("/Ls", cmdtext, true, 10) == 0)
- {
- SetPlayerPos(playerid,1552.5913,-1676.4386,16.1953);
- SendClientMessage(playerid,0x00FF0FF,"Has ido a Los Santos!");
- return 1;
- }
- if (strcmp("/kill", cmdtext, true, 10) == 0)
- {
- SetPlayerHealth(playerid,0);
- SetPlayerArmour(playerid,0);
- SendClientMessage(playerid,0x0FF0FF,"[MUERTES] Te has suicidado!");
- return 1;
- }
- if (strcmp("/cj", cmdtext, true, 10) == 0)
- {
- SetPlayerPos(playerid,2477.8782,-1668.0282,13.3287);
- SendClientMessage(playerid,0xFFFFF,"Has ido a Groove Street!");
- return 1;
- }
- if (strcmp("/kit 2", cmdtext, true, 10) == 0)
- {
- SendClientMessage(playerid,0xAAAAAD,"Recibiste un Kit de armas!");
- GivePlayerWeapon(playerid,22,10000);
- GivePlayerWeapon(playerid,26,10000);
- GivePlayerWeapon(playerid,28,10000);
- GivePlayerWeapon(playerid,30,10000);
- GivePlayerWeapon(playerid,34,10000);
- return 1;
- }
- if (strcmp("/Kit 1", cmdtext, true, 10) == 0)
- {
- SendClientMessage(playerid,0xAAAAAD,"Recibiste un Kit de armas!");
- GivePlayerWeapon(playerid,24,10000);
- GivePlayerWeapon(playerid,25,10000);
- GivePlayerWeapon(playerid,29,10000);
- GivePlayerWeapon(playerid,31,10000);
- GivePlayerWeapon(playerid,33,10000);
- return 1;
- }
- if (strcmp("/m4", cmdtext, true, 10) == 0)
- {
- GivePlayerWeapon(playerid,31,10000);
- SendClientMessage(playerid,0xFFF0F,"[ARMAS] Recibiste una M4a1!");
- return 1;
- }
- /* */
- if (strcmp("/edc", cmdtext, true, 10) == 0)
- {
- GivePlayerWeapon(playerid,27,10000);
- SendClientMessage(playerid,0xFFF0F,"[ARMAS] Recibiste una Spas-12!");
- return 1;
- }
- if(!strcmp(cmdtext, "/kickall", true))
- {
- if(!IsPlayerAdmin(playerid)) // Sólo lo podrán usar admins RCON. Puedes modificarlo según tu sistema de admin.
- {
- SendClientMessage(playerid, -1, "No eres admin RCON.");
- return 1;
- }
- SendClientMessageToAll(playerid, "* Todos los usuarios han sido kickeados por un administrador.");
- for(new i = 0; i < MAX_PLAYERS; i++) // Cambialo por foreach si tienes foreach.
- {
- if(IsPlayerConnected(i) && !IsPlayerNPC(i)) // Evitará que kickee a los NPC.
- {
- Kick(i);
- }
- }
- return 1;
- }
- /* */
- if(!strcmp(cmdtext, "/mp5", true))
- {
- GivePlayerWeapon(playerid,29,10000);
- SendClientMessage(playerid,0xAADDADD0,"[ARMAS] Recibiste una MP5!");
- return 1;
- }
- if(!strcmp(cmdtext,"/respawn", true))
- {
- SpawnPlayer(playerid);
- }
- if(!strcmp(cmdtext, "/kill", true))
- {
- SendClientMessage(playerid,COLOR_WHITE,"SERVER: You commited sucide.");
- SetPlayerHealth(playerid,0.0);
- return 1;
- }
- if(!strcmp(cmdtext, "/v", true))
- {
- // If there was a previously created selection menu, destroy it
- DestroySelectionMenu(playerid);
- SetPVarInt(playerid, "vspawner_active", 1);
- //SetPVarInt(playerid, "vspawner_page", 0); // will reset the page back to the first
- CreateSelectionMenu(playerid);
- SelectTextDraw(playerid, 0xACCBF1FF);
- return 1;
- }
- if(!strcmp(cmdtext, "/teleports", true))
- {
- ShowMenuForPlayer(teleport,playerid);
- }
- return 0;
- }
- public OnPlayerClickTextDraw(playerid, Text:clickedid)
- {
- if(GetPVarInt(playerid, "vspawner_active") == 0) return 0;
- // Handle: They cancelled (with ESC)
- if(clickedid == Text:INVALID_TEXT_DRAW) {
- DestroySelectionMenu(playerid);
- SetPVarInt(playerid, "vspawner_active", 0);
- PlayerPlaySound(playerid, 1085, 0.0, 0.0, 0.0);
- return 1;
- }
- return 0;
- }
- //------------------------------------------------
- public OnPlayerClickPlayerTextDraw(playerid, PlayerText:playertextid)
- {
- if(GetPVarInt(playerid, "vspawner_active") == 0) return 0;
- new curpage = GetPVarInt(playerid, "vspawner_page");
- // Handle: next button
- if(playertextid == gNextButtonTextDrawId[playerid]) {
- if(curpage < (GetNumberOfPages() - 1)) {
- SetPVarInt(playerid, "vspawner_page", curpage + 1);
- ShowPlayerModelPreviews(playerid);
- UpdatePageTextDraw(playerid);
- PlayerPlaySound(playerid, 1083, 0.0, 0.0, 0.0);
- } else {
- PlayerPlaySound(playerid, 1085, 0.0, 0.0, 0.0);
- }
- return 1;
- }
- // Handle: previous button
- if(playertextid == gPrevButtonTextDrawId[playerid]) {
- if(curpage > 0) {
- SetPVarInt(playerid, "vspawner_page", curpage - 1);
- ShowPlayerModelPreviews(playerid);
- UpdatePageTextDraw(playerid);
- PlayerPlaySound(playerid, 1084, 0.0, 0.0, 0.0);
- } else {
- PlayerPlaySound(playerid, 1085, 0.0, 0.0, 0.0);
- }
- return 1;
- }
- // Search in the array of textdraws used for the items
- new x=0;
- while(x != SELECTION_ITEMS) {
- if(playertextid == gSelectionItems[playerid][x]) {
- HandlePlayerItemSelection(playerid, x);
- PlayerPlaySound(playerid, 1083, 0.0, 0.0, 0.0);
- DestroySelectionMenu(playerid);
- CancelSelectTextDraw(playerid);
- SetPVarInt(playerid, "vspawner_active", 0);
- return 1;
- }
- x++;
- }
- return 0;
- }
- public OnPlayerSelectedMenuRow(playerid, row)
- {
- new Menu:CurrentMenu = GetPlayerMenu(playerid);
- if(CurrentMenu == teleport)
- {
- switch(row)
- {
- case 0:
- {
- ShowMenuForPlayer(modif, playerid);
- }
- case 1:
- {
- ShowMenuForPlayer(drift, playerid);
- }
- case 2:
- {
- ShowMenuForPlayer(ah, playerid);
- }
- case 3:
- {
- ShowMenuForPlayer(diger, playerid);
- }
- case 4:
- {
- ShowMenuForPlayer(inter, playerid);
- }
- case 5:
- {
- ShowMenuForPlayer(dm, playerid);
- }
- case 6:
- {
- ShowMenuForPlayer(dm2, playerid);
- }
- }
- }
- if(CurrentMenu == modif)
- {
- switch(row)
- {
- case 0:
- {
- new araba;
- araba=GetPlayerVehicleID(playerid);
- SetPlayerPos(playerid, 2644.5220,-2004.0026,13.3828);
- SetVehiclePos(araba, 2644.5220,-2004.0026,13.3828);
- PutPlayerInVehicle(playerid,araba,0);
- TogglePlayerControllable(playerid,1);
- }
- case 1:
- {
- new araba;
- araba=GetPlayerVehicleID(playerid);
- SetPlayerPos(playerid, -1917.2754,287.0215,41.0469);
- SetVehiclePos(araba, -1917.2754,287.0215,41.0469);
- PutPlayerInVehicle(playerid,araba,0);
- TogglePlayerControllable(playerid,1);
- }
- case 2:
- {
- new araba;
- araba=GetPlayerVehicleID(playerid);
- SetPlayerPos(playerid, -2705.5503, 206.1621, 4.1797);
- SetVehiclePos(araba, -2705.5503, 206.1621, 4.1797);
- PutPlayerInVehicle(playerid,araba,0);
- TogglePlayerControllable(playerid,1);
- }
- case 3:
- {
- new araba;
- araba=GetPlayerVehicleID(playerid);
- SetPlayerPos(playerid, 2387.4126,1022.6620,10.8203);
- SetVehiclePos(araba, 2387.4126,1022.6620,10.8203);
- PutPlayerInVehicle(playerid,araba,0);
- TogglePlayerControllable(playerid,1);
- }
- case 4: //main menu
- {
- ShowMenuForPlayer(teleport, playerid);
- }
- }
- }
- if(CurrentMenu == drift)
- {
- switch(row)
- {
- case 0:
- {
- new araba;
- araba=GetPlayerVehicleID(playerid);
- SetPlayerPos(playerid, -274.9351,1535.3416,75.3594);
- SetVehiclePos(araba, -274.9351,1535.3416,75.3594);
- PutPlayerInVehicle(playerid,araba,0);
- TogglePlayerControllable(playerid,1);
- }
- case 1:
- {
- new araba;
- araba=GetPlayerVehicleID(playerid);
- SetPlayerPos(playerid, 2273.3972,1395.4358,42.8203);
- SetVehiclePos(araba, 2273.3972,1395.4358,42.8203);
- PutPlayerInVehicle(playerid,araba,0);
- TogglePlayerControllable(playerid,1);
- }
- case 2:
- {
- new araba;
- araba=GetPlayerVehicleID(playerid);
- SetPlayerPos(playerid, 1210.4374,-2037.3204,69.0078);
- SetVehiclePos(araba, 1210.4374,-2037.3204,69.0078);
- PutPlayerInVehicle(playerid,araba,0);
- TogglePlayerControllable(playerid,1);
- }
- case 3:
- {
- new araba;
- araba=GetPlayerVehicleID(playerid);
- SetPlayerPos(playerid, -2399.6096,-613.3132,132.3755);
- SetVehiclePos(araba, -2399.6096,-613.3132,132.3755);
- PutPlayerInVehicle(playerid,araba,0);
- TogglePlayerControllable(playerid,1);
- }
- case 4: //main menu
- {
- ShowMenuForPlayer(teleport, playerid);
- }
- }
- }
- if(CurrentMenu == ah)
- {
- switch(row)
- {
- case 0:
- {
- new araba;
- araba=GetPlayerVehicleID(playerid);
- SetPlayerPos(playerid, -1347.1360,-234.9015,14.1484);
- SetVehiclePos(araba, -1347.1360,-234.9015,14.1484);
- PutPlayerInVehicle(playerid,araba,0);
- TogglePlayerControllable(playerid,1);
- }
- case 1:
- {
- new araba;
- araba=GetPlayerVehicleID(playerid);
- SetPlayerPos(playerid, 1317.7917,1260.0190,10.8203);
- SetVehiclePos(araba, 1317.7917,1260.0190,10.8203);
- PutPlayerInVehicle(playerid,araba,0);
- TogglePlayerControllable(playerid,1);
- }
- case 2:
- {
- new araba;
- araba=GetPlayerVehicleID(playerid);
- SetPlayerPos(playerid, 420.2640,2521.1553,16.4844);
- SetVehiclePos(araba, 420.2640,2521.1553,16.4844);
- PutPlayerInVehicle(playerid,araba,0);
- TogglePlayerControllable(playerid,1);
- }
- case 3: //main menu
- {
- ShowMenuForPlayer(teleport, playerid);
- }
- }
- }
- if(CurrentMenu == diger)
- {
- switch(row)
- {
- case 0:
- {
- new araba;
- araba=GetPlayerVehicleID(playerid);
- SetPlayerPos(playerid, 308.2827,1989.2064,17.6406);
- SetVehiclePos(araba, 308.2827,1989.2064,17.6406);
- PutPlayerInVehicle(playerid,araba,0);
- TogglePlayerControllable(playerid,1);
- }
- case 1:
- {
- new araba;
- araba=GetPlayerVehicleID(playerid);
- SetPlayerPos(playerid, -1385.3300,493.5960,27.6945);
- SetVehiclePos(araba, -1385.3300,493.5960,27.6945);
- PutPlayerInVehicle(playerid,araba,0);
- TogglePlayerControllable(playerid,1);
- }
- case 2:
- {
- new araba;
- araba=GetPlayerVehicleID(playerid);
- SetPlayerPos(playerid, 2028.5538, 1008.3543, 10.8203);
- SetVehiclePos(araba, 2028.5538, 1008.3543, 10.8203);
- PutPlayerInVehicle(playerid,araba,0);
- TogglePlayerControllable(playerid,1);
- }
- case 3:
- {
- new araba;
- araba=GetPlayerVehicleID(playerid);
- SetPlayerPos(playerid, -2319.8105,-1652.5789,483.7031);
- SetVehiclePos(araba, -2319.8105,-1652.5789,483.7031);
- PutPlayerInVehicle(playerid,araba,0);
- TogglePlayerControllable(playerid,1);
- }
- case 4:
- {
- new araba;
- araba=GetPlayerVehicleID(playerid);
- SetPlayerPos(playerid, 2493.9133, -1682.3986, 13.3382);
- SetVehiclePos(araba, 2493.9133, -1682.3986, 13.3382);
- PutPlayerInVehicle(playerid,araba,0);
- TogglePlayerControllable(playerid,1);
- }
- case 5:
- {
- new araba;
- araba=GetPlayerVehicleID(playerid);
- SetPlayerPos(playerid, 1880.9452,-1394.7611,13.1246);
- SetVehiclePos(araba, 1880.9452,-1394.7611,13.1246);
- PutPlayerInVehicle(playerid,araba,0);
- TogglePlayerControllable(playerid,1);
- }
- case 6:
- {
- new araba;
- ResetPlayerWeapons(playerid);
- SetPlayerPos(playerid,324.8073,-1773.4330,4.8532);
- SetVehiclePos(araba, 324.8073,-1773.4330,4.8532);
- PutPlayerInVehicle(playerid,araba,0);
- TogglePlayerControllable(playerid,1);
- }
- case 7:
- {
- new araba;
- ResetPlayerWeapons(playerid);
- SetPlayerPos(playerid,-456.9700,-2479.3562,116.3534);
- SetVehiclePos(araba, -456.9700,-2479.3562,116.3534);
- PutPlayerInVehicle(playerid,araba,0);
- TogglePlayerControllable(playerid,1);
- }
- case 8: //main menu
- {
- ShowMenuForPlayer(teleport, playerid);
- }
- }
- }
- if(CurrentMenu == inter)
- {
- switch(row)
- {
- case 0:
- {
- SetPlayerInterior(playerid, 1);
- SetPlayerPos(playerid,-750.80,491.00,1371.70);
- TogglePlayerControllable(playerid,1);
- }
- case 1:
- {
- SetPlayerInterior(playerid, 1);
- SetPlayerPos(playerid,1.6127,34.7411,1199.0);
- TogglePlayerControllable(playerid,1);
- }
- case 2:
- {
- SetPlayerInterior(playerid, 3);
- SetPlayerPos(playerid,-2637.69,1404.24,906.46);
- TogglePlayerControllable(playerid,1);
- }
- case 3:
- {
- SetPlayerInterior(playerid, 9);
- SetPlayerPos(playerid,315.48,984.13,1959.11);
- TogglePlayerControllable(playerid,1);
- }
- case 4:
- {
- SetPlayerInterior(playerid, 15);
- SetPlayerPos(playerid,-1394.20,987.62,1023.96);
- TogglePlayerControllable(playerid,1);
- }
- case 5:
- {
- SetPlayerInterior(playerid, 5);
- SetPlayerPos(playerid,2338.32,-1180.61,1027.98);
- TogglePlayerControllable(playerid,1);
- }
- case 6:
- {
- SetPlayerInterior(playerid, 2);
- SetPlayerPos(playerid,2567.52,-1294.59,1063.25);
- TogglePlayerControllable(playerid,1);
- }
- case 7:
- {
- SetPlayerInterior(playerid, 2);
- SetPlayerPos(playerid,2567.52,-1294.59,1063.25);
- TogglePlayerControllable(playerid,1);
- }
- case 8:
- {
- ShowMenuForPlayer(teleport, playerid);
- }
- }
- }
- if(CurrentMenu == dm)
- {
- switch(row)
- {
- case 0:
- {
- ResetPlayerWeapons(playerid);
- SetPlayerInterior(playerid, 0);
- GivePlayerWeapon(playerid, 26, 999);
- SetPlayerHealth(playerid, 100.0);
- SetPlayerPos(playerid, 1127.9473, -1446.7574, 15.7968);
- GetPlayerName(playerid, var0, 25);
- format(var1, 256, ">>%s has teleported to deathmatch 1 (SAWNOFF).", var0);
- SendClientMessageToAll(0xFF9900AA, var1);
- TogglePlayerControllable(playerid,1);
- }
- case 1:
- {
- ResetPlayerWeapons(playerid);
- SetPlayerInterior(playerid, 0);
- GivePlayerWeapon(playerid, 29, 999);
- SetPlayerHealth(playerid, 100.0);
- SetPlayerPos(playerid, 2508.3786, 2786.6369, 10.8203);
- GetPlayerName(playerid, var0, 25);
- format(var1, 256, ">>%s has teleported to deathmatch 2 (MP5).", var0);
- SendClientMessageToAll(0xFF9900AA, var1);
- TogglePlayerControllable(playerid,1);
- }
- case 2:
- {
- ResetPlayerWeapons(playerid);
- SetPlayerInterior(playerid, 0);
- GivePlayerWeapon(playerid, 32, 999);
- SetPlayerHealth(playerid, 100.0);
- SetPlayerPos(playerid, 1445.934, -1064.5279, 213.3827);
- GetPlayerName(playerid, var0, 25);
- format(var1, 256, ">>%s has teleported to deathmatch 3 (TEC9).", var0);
- SendClientMessageToAll(0xFF9900AA, var1);
- TogglePlayerControllable(playerid,1);
- }
- case 3:
- {
- ResetPlayerWeapons(playerid);
- SetPlayerInterior(playerid, 0);
- GivePlayerWeapon(playerid, 27, 999);
- SetPlayerHealth(playerid, 100.0);
- SetPlayerPos(playerid, -924.254, -498.0311, 26.7656);
- GetPlayerName(playerid, var0, 25);
- format(var1, 256, ">>%s has teleported to deathmatch 4(CombatShotgun).", var0);
- SendClientMessageToAll(0xFF9900AA, var1);
- TogglePlayerControllable(playerid,1);
- }
- case 4:
- {
- ResetPlayerWeapons(playerid);
- SetPlayerInterior(playerid, 0);
- GivePlayerWeapon(playerid, 31, 999);
- SetPlayerHealth(playerid, 100.0);
- SetPlayerPos(playerid, -2129.3096, -444.2732, 35.5344);
- GetPlayerName(playerid, var0, 25);
- format(var1, 256, ">>%s has teleported to deathmatch 5(M4).", var0);
- SendClientMessageToAll(0xFF9900AA, var1);
- TogglePlayerControllable(playerid,1);
- }
- case 5:
- {
- ResetPlayerWeapons(playerid);
- SetPlayerInterior(playerid, 0);
- GivePlayerWeapon(playerid, 28, 999);
- SetPlayerHealth(playerid, 100.0);
- SetPlayerPos(playerid, 1315.9521, -987.8052, 148.6437);
- GetPlayerName(playerid, var0, 25);
- format(var1, 256, ">>%s has teleported to deathmatch 6(MicroUzi).", var0);
- SendClientMessageToAll(0xFF9900AA, var1);
- TogglePlayerControllable(playerid,1);
- }
- case 6:
- {
- ResetPlayerWeapons(playerid);
- SetPlayerInterior(playerid, 0);
- GivePlayerWeapon(playerid, 30, 999);
- SetPlayerHealth(playerid, 100.0);
- SetPlayerPos(playerid, 214.5838, 1875.3218, 17.6406);
- GetPlayerName(playerid, var0, 25);
- format(var1, 256, ">>%s has teleported to deathmatch 7(AK47).", var0);
- SendClientMessageToAll(0xFF9900AA, var1);
- TogglePlayerControllable(playerid,1);
- }
- case 7:
- {
- ResetPlayerWeapons(playerid);
- SetPlayerInterior(playerid, 0);
- SetPlayerHealth(playerid, 100.0);
- SetPlayerInterior(playerid, 5);
- SetPlayerPos(playerid, 761.6077, 11.0399, 1001.1638);
- GetPlayerName(playerid, var0, 25);
- format(var1, 256, ">>%s has teleported to deathmatch 8 (Boks).", var0);
- SendClientMessageToAll(0xFF9900AA, var1);
- TogglePlayerControllable(playerid,1);
- }
- case 8:
- {
- ResetPlayerWeapons(playerid);
- SetPlayerInterior(playerid, 0);
- GivePlayerWeapon(playerid, 33, 999);
- SetPlayerHealth(playerid, 100.0);
- SetPlayerPos(playerid, 2276.2846, 1070.2078, 10.8203);
- GetPlayerName(playerid, var0, 25);
- format(var1, 256, ">>%s has teleported to deathmatch 9 (Rifle).", var0);
- SendClientMessageToAll(0xFF9900AA, var1);
- TogglePlayerControllable(playerid,1);
- }
- case 9:
- {
- ShowMenuForPlayer(teleport, playerid);
- }
- }
- }
- if(CurrentMenu == dm2)
- {
- switch(row)
- {
- case 0:
- {
- ResetPlayerWeapons(playerid);
- SetPlayerInterior(playerid, 0);
- GivePlayerWeapon(playerid, 26, 999);
- SetPlayerHealth(playerid, 100.0);
- SetPlayerPos(playerid, 2256.1511, 1081.4821, 33.5284);
- GetPlayerName(playerid, var0, 25);
- format(var1, 256, ">>%s has teleported to deathmatch 10(SAWNOFF2).", var0);
- SendClientMessageToAll(0xFF9900AA, var1);
- TogglePlayerControllable(playerid,1);
- }
- case 1:
- {
- ResetPlayerWeapons(playerid);
- SetPlayerInterior(playerid, 0);
- GivePlayerWeapon(playerid, 31, 999);
- SetPlayerHealth(playerid, 100.0);
- SetPlayerPos(playerid, -1470.9282, 382.7427, 30.0858);
- GetPlayerName(playerid, var0, 25);
- format(var1, 256, ">>%s has teleported to deathmatch 11(M4).", var0);
- SendClientMessageToAll(0xFF9900AA, var1);
- TogglePlayerControllable(playerid,1);
- }
- case 2:
- {
- ResetPlayerWeapons(playerid);
- SetPlayerInterior(playerid, 0);
- GivePlayerWeapon(playerid, 25, 999);
- SetPlayerHealth(playerid, 100.0);
- SetPlayerPos(playerid, -1596.9136, 149.0782, -10.8312);
- GetPlayerName(playerid, var0, 25);
- format(var1, 256, ">>%s has teleported to deathmatch 12(Shotgun).", var0);
- SendClientMessageToAll(0xFF9900AA, var1);
- TogglePlayerControllable(playerid,1);
- }
- case 3:
- {
- ResetPlayerWeapons(playerid);
- SetPlayerInterior(playerid, 0);
- GivePlayerWeapon(playerid, 24, 999);
- SetPlayerHealth(playerid, 100.0);
- SetPlayerPos(playerid, 260.5979, 2898.8537, 8.9909);
- GetPlayerName(playerid, var0, 25);
- format(var1, 256, ">>%s has teleported to deathmatch 13(DesertEagle).", var0);
- SendClientMessageToAll(0xFF9900AA, var1);
- TogglePlayerControllable(playerid,1);
- }
- case 4:
- {
- ResetPlayerWeapons(playerid);
- SetPlayerInterior(playerid, 0);
- GivePlayerWeapon(playerid, 30, 999);
- SetPlayerHealth(playerid, 100.0);
- SetPlayerPos(playerid, -273.9698, 2353.0808, 109.2238);
- GetPlayerName(playerid, var0, 25);
- format(var1, 256, ">>%s has teleported to deathmatch 14(AK47).", var0);
- SendClientMessageToAll(0xFF9900AA, var1);
- TogglePlayerControllable(playerid,1);
- }
- case 5:
- {
- ResetPlayerWeapons(playerid);
- SetPlayerInterior(playerid, 0);
- GivePlayerWeapon(playerid, 9, 1);
- SetPlayerHealth(playerid, 100.0);
- SetPlayerPos(playerid, -924.0569, 2675.6586, 42.3703);
- GetPlayerName(playerid, var0, 25);
- format(var1, 256, ">>%s has teleported to deathmatch 15(Dildo).", var0);
- SendClientMessageToAll(0xFF9900AA, var1);
- TogglePlayerControllable(playerid,1);
- }
- case 6:
- {
- ResetPlayerWeapons(playerid);
- SetPlayerInterior(playerid, 0);
- GivePlayerWeapon(playerid, 34, 999);
- SetPlayerHealth(playerid, 100.0);
- SetPlayerPos(playerid, -1288.9788,2504.3210,86.9994);
- GetPlayerName(playerid, var0, 25);
- format(var1, 256, ">>%s has teleported to deathmatch 16(Sniper).", var0);
- SendClientMessageToAll(0xFF9900AA, var1);
- TogglePlayerControllable(playerid,1);
- }
- case 7:
- {
- ShowMenuForPlayer(teleport, playerid);
- }
- }
- }
- return 1;
- }
- CMD:registrar(playerid, params[])
- {
- new WAZAA[24]; // String que almacena hasta 24 caracteres.
- GetPlayerName(playerid, pname, sizeof(pname)); // Obtenemos el nombre del jugador
- format(archivo, sizeof(archivo), Users, udb_encode(pname)); // Damos formato a "archivo"
- format(WAZAA, sizeof(WAZAA), "%s", params); // Damos formato a "WAZAA" con el valor de "params"
- if(aInfo[playerid][Registrado] == 1) return SendClientMessage(playerid, COLOR_YELLOW, "Esta cuenta esta registrada! Utiliza /login para ingresar"); // En caso de que el jugador ya este registrado-
- if(strlen(WAZAA) > 4 && strlen(WAZAA) < 24) // Si WAZAA es mayor a 4 / Menor a 24
- {
- dini_Create(archivo); // Creacion del archivo PLAYERNAME.ini
- dini_IntSet(archivo, "pass", udb_hash(WAZAA)); // Guardamos la password con un hash, para que no sea "visible".
- dini_IntSet(archivo, "Admin", 0); // Indicamos que el jugador no es admin.
- dini_IntSet(archivo, "Baneado", 0); // Indicamos que el jugador no esta baneado.
- format(str, sizeof(str), "[rAdmin] Registraste el nombre %s bajo la contraseña %s. Fuiste logueado automaticamente!", pname, WAZAA); // Damos formato a str con el nombre de la cuenta, la contraseña y le informamos que quedo automaticamente logueado.
- SendClientMessage(playerid, COLOR_LIGHTGREEN, str); // Enviamos str.
- aInfo[playerid][Logueado] = 1; // Indicamos que el jugador esta logueado.
- aInfo[playerid][Registrado] = 1; // Indicamos que el jugador esta registrado.
- TogglePlayerControllable(playerid, 1); // Le damos movilidad al jugador (por si ya habia spawneado y estaba frezeado)
- }
- else return SendClientMessage(playerid, COLOR_RED, "Su contraseña debe tener entre 4 & 24 caracteres!"); // En caso de que la pass tenga menos de 4 caraceters/mas de 24, va a dar error.
- return 1;
- }
- CMD:login(playerid, params[])
- {
- GetPlayerName(playerid, pname, sizeof(pname)); //Obtenemos el nombre del player.
- format(archivo, sizeof(archivo), Users, udb_encode(pname));//Damos formato a archivo.
- if(aInfo[playerid][Registrado] == 0) return SendClientMessage(playerid, COLOR_YELLOW, "Esta cuenta no esta registrada! Utiliza /registrar para registrarla!");// Si el jugador no esta registrado
- if(aInfo[playerid][Logueado] == 1) return SendClientMessage(playerid, COLOR_YELLOW, "Ya estas logueado!");// Si el jugador ya esta logueado
- if(isnull(params)) return SendClientMessage(playerid, COLOR_RED, "Uso: /login <password>");// Si no indico su pass.
- new tmp; // creamos tmp, donde se va a almacenar la pass del archivo.
- tmp = dini_Int(archivo, "pass"); //almacenamos la pass
- if(udb_hash(params) != tmp) //comparamos, y si es distinta:
- {
- format(str, sizeof(str), "La contraseña que ingresaste es incorrecta!"); //damos formato a str
- SendClientMessage(playerid, COLOR_RED, str);// enviamos str al jugador
- }
- else // si la pass indicada es la correcta:
- {
- aInfo[playerid][Admin] = dini_Int(archivo, "Admin"); // Guardamos el nivel de Admin del archivo en la variable.
- aInfo[playerid][Baneado] = dini_Int(archivo, "Baneado"); // Guardamos el valor de "Baneado" del archivo en la variable.
- aInfo[playerid][Logueado] = 1; // Indicamos que el jugador esta logueado
- if(aInfo[playerid][Baneado] == 1) // Si el jugador esta baneado
- {
- SendClientMessage(playerid, COLOR_RED, "Estas baneado en el servidor!"); // Le enviamos un mensaje
- return Kick(playerid); // Lo kickeamos.
- }else{ // Si no esta baneado
- if(aInfo[playerid][Admin] > 0) //Si su nivel de admin es mayor a 0
- {
- format(str, sizeof(str), "Bienvenido %s! Admin Level: %d.! Utiliza /acmds para ver tus comandos de administracion!", pname, aInfo[playerid][Admin]); // Formateamos str con los datos del nombre, nivel, etc.
- SendClientMessage(playerid, COLOR_LIGHTGREEN, str); //Enviamos el str
- SendClientMessage(playerid, COLOR_RED, "[rAdmin] Logueado satisfactoriamente!"); // Informamos que ha sido logueado.
- }
- else //Si su nivel de admin no es mayor a 0
- {
- format(str, sizeof(str), "Bienvenido %s! Utiliza /comandos para ver los comandos disponibles!", pname); //Damos formato a str con el nombre del jugador.
- SendClientMessage(playerid, COLOR_YELLOW, str); //Enviamos el str.
- SendClientMessage(playerid, COLOR_RED, "[rAdmin] Logueado satisfactoriamente!"); // Informamos que ha sido logueado.
- }
- TogglePlayerControllable(playerid, 1);} //Unfezeamos al jugador (por si spawneo antes de loguearse)
- }
- return 1;
- }
- CMD:kick(playerid, params[])
- {
- new playerid2, pname2[MAX_PLAYER_NAME], reason[128]; // Creamos las variables necesarias
- if(aInfo[playerid][Admin] >= 1) //Si el nivel de admin del jugador es mayor a 0
- {
- GetPlayerName(playerid, pname, sizeof(pname)); //Guardamos su nombre en pname
- if(isnull(params)) return SendClientMessage(playerid, COLOR_RED, "Uso: /kick <playerid> <razon>"); //Si no hay params
- if(!sscanf(params, "rs", playerid2, reason)) //Si los params son correctos
- {
- if(!IsPlayerConnected(playerid2)) return SendClientMessage(playerid, COLOR_RED, "ID Incorrecto."); //Si el jugador no esta conectado
- if(aInfo[playerid2][Admin] > aInfo[playerid][Admin]) return SendClientMessage(playerid, COLOR_RED, "Imposible afectar a un admin de mayor nivel!"); //Si el nivel del playerid es menor al del jugador a kickear
- GetPlayerName(playerid2, pname2, sizeof(pname2)); //Guardamos el nombre del playerid2 en pname2.
- format(str, sizeof(str), "El jugador %s [ID: %d] fue kickeado por el administrador %s ~ Razon: %s", pname2, playerid2, pname, reason); //Formateamos str
- SendClientMessageToAll(COLOR_YELLOW, str); //Enviamos str a todos
- Kick(playerid2); //Kickeamos al jugador.
- }
- SendClientMessage(playerid, COLOR_RED, "Uso: /kick <playerid> <razon>"); //Si los params no estan
- }
- else return SendClientMessage(playerid, COLOR_RED, "Este comando es solo para Admins"); //Si no es admin
- return 1;
- }
- CMD:ban(playerid, params[])
- {
- new playerid2, pname2[MAX_PLAYER_NAME], reason[128]; //Creamos variables necesarias.
- if(aInfo[playerid][Admin] >= 1) //Si el nivel de admin del player es mayor o igual a 1
- {
- GetPlayerName(playerid, pname, sizeof(pname)); //Obtenemos el nombre del admin
- if(!sscanf(params, "rs", playerid2, reason)) //Si los params estan completos
- {
- if(!IsPlayerConnected(playerid2)) return SendClientMessage(playerid, COLOR_RED, "ID Incorrecto."); //Si el jugador no esta conectado
- if(aInfo[playerid2][Admin] > aInfo[playerid][Admin]) return SendClientMessage(playerid, COLOR_RED, "Imposible afectar a un admin de mayor nivel!"); //Si el nivel del jugador es mayor al del que intenta kickearlo
- GetPlayerName(playerid2, pname2, sizeof(pname2)); //Obtenemos el nombre del jugador
- format(str, sizeof(str), "El jugador %s [ID: %d] fue baneado por el administrador %s ~ Razon: %s", pname2, playerid2, pname, reason); //Damos formato a str
- SendClientMessageToAll(COLOR_YELLOW, str); //La enviamos a todos
- aInfo[playerid2][Baneado] = 1; //Seteamos que el jugador esta baneado
- BanEx(playerid2, reason); //Baneamos la IP del jugador (samp.ban)
- }
- SendClientMessage(playerid, COLOR_RED, "Uso: /ban <playerid> <razon>"); //Si los params no estan completos
- }
- else return SendClientMessage(playerid, COLOR_RED, "Este comando es solo para Admins"); //Si no es admin
- return 1;
- }
- if(aInfo[playerid][Registrado] == 0 || aInfo[playerid][Logueado] == 0)
- {
- SendClientMessage(playerid, COLOR_RED, "[rAdmin] Fuiste kickeado por no registrarte/loguearte en los primeros 60 segundos!");
- Kick(playerid);
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement