Guest User

Untitled

a guest
Jun 30th, 2014
337
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 23.55 KB | None | 0 0
  1. #include <a_samp>
  2. #include <YSI\y_ini>
  3. #include <zcmd>
  4. #include <sscanf2>
  5.  
  6. //Colores
  7. #define COL_WHITE "{FFFFFF}"
  8. #define COL_RED "0xFB0000FF"
  9. #define COL_GREEN "0x00D235FF"
  10. #define COL_LIGHTBLUE "{00CED1}"
  11.  
  12. //Dialogs
  13. #define DIALOG_REGISTER  1
  14. #define DIALOG_LOGIN     2
  15. #define DIALOG_SUCCESS_1 3
  16. #define DIALOG_SUCCESS_2 4
  17.  
  18. //Users Path
  19. #define PATH "/Usuarios/%s.ini"
  20. #define CPATH "/Coches/%i.ini"
  21.  
  22. //Enums
  23. enum pInfo
  24. {
  25.     pPass,
  26.     pDinero,
  27.     pAdmin,
  28.     pTelefono,
  29.     pCoche1,
  30.     pCoche2,
  31.     pCoche3,
  32.     pCasa1,
  33.     pCasa2,
  34.     pFaccion,
  35.     pJob,
  36.     pSkin,
  37.     pInterior,
  38.     Float:pPosX,
  39.     Float:pPosY,
  40.     Float:pPosZ
  41. }
  42.  
  43. enum vInfo
  44. {
  45.     vID,
  46.     vModel,
  47.     Float:vX,
  48.     Float:vY,
  49.     Float:vZ,
  50.     Float:vAngle,
  51.     vColor1,
  52.     vColor2,
  53.     vOwner[MAX_PLAYER_NAME],
  54.     bool:vLocked
  55. }
  56.  
  57. //Globales
  58. new Vehicle[MAX_PLAYERS];
  59. new PlayerInfo[MAX_PLAYERS][pInfo];
  60. new VehicleInfo[MAX_VEHICLES][vInfo];
  61. new bool:vCreated[MAX_VEHICLES];
  62.  
  63. //Forwards
  64. forward LoadUser_data(playerid,name[],value[]);
  65. forward SpawnVehicle(playerid, modelid, color1, color2);
  66. forward public LoadVehicleData(vehicleID, name[], value[]);
  67.  
  68. //Stocks
  69. stock UserPath(playerid)
  70. {
  71.     new string[128],playername[MAX_PLAYER_NAME];
  72.     GetPlayerName(playerid,playername,sizeof(playername));
  73.     format(string,sizeof(string),PATH,playername);
  74.     return string;
  75. }
  76.  
  77. stock VehiclePath(vehicleID)
  78. {
  79.     new strPath[64];
  80.     format(strPath, sizeof(strPath), "/Coches/%i.ini", vehicleID);
  81.  
  82.     return strPath;
  83. }
  84.  
  85. stock VehicleGetFreeSlot()
  86. {
  87.     for(new i = 0; i < MAX_VEHICLES; i++)
  88.     {
  89.         if(!vCreated[i]) return i;
  90.     }
  91.  
  92.     return -1;
  93. }
  94.  
  95. stock VehicleCreate(vehicleModel, Float:vehicleX, Float:vehicleY, Float:vehicleZ, Float:vehicleAngle, vehicleColor1, vehicleColor2, vehicleOwner[], bool:vehicleLocked)
  96. {
  97.     new vehicleid = VehicleGetFreeSlot();
  98.     VehicleInfo[vehicleid][vModel] = vehicleModel;
  99.     VehicleInfo[vehicleid][vX] = vehicleX;
  100.     VehicleInfo[vehicleid][vY] = vehicleY;
  101.     VehicleInfo[vehicleid][vZ] = vehicleZ;
  102.     VehicleInfo[vehicleid][vColor1] = vehicleColor1;
  103.     VehicleInfo[vehicleid][vColor2] = vehicleColor2;
  104.     format(VehicleInfo[vehicleid][vOwner], MAX_PLAYER_NAME, vehicleOwner);
  105.     VehicleInfo[vehicleid][vLocked] = vehicleLocked;
  106.     VehicleInfo[vehicleid][vID] = CreateVehicle(vehicleModel, vehicleX, vehicleY, vehicleZ, vehicleAngle,vehicleColor1, vehicleColor2, -1);
  107.     vCreated[vehicleid] = true;
  108.     VehicleSaveAll();
  109.  
  110.     return vehicleid;
  111. }
  112.  
  113. stock VehicleGet(vehicleID)
  114. {
  115.     GetVehiclePos(VehicleInfo[vehicleID][vID], VehicleInfo[vehicleID][vX], VehicleInfo[vehicleID][vY], VehicleInfo[vehicleID][vZ]);
  116.     GetVehicleZAngle(VehicleInfo[vehicleID][vID], VehicleInfo[vehicleID][vAngle]);
  117. }
  118.  
  119. stock VehicleLoad(vehicleID, file[])
  120. {
  121.     INI_ParseFile(file, "LoadVehicleData", .bExtra = true, .extra = vehicleID);
  122.     VehicleCreate(VehicleInfo[vehicleID][vModel],
  123.     VehicleInfo[vehicleID][vX], VehicleInfo[vehicleID][vY], VehicleInfo[vehicleID][vZ], VehicleInfo[vehicleID][vAngle], VehicleInfo[vehicleID][vColor1], VehicleInfo[vehicleID][vColor2],
  124.     VehicleInfo[vehicleID][vOwner], VehicleInfo[vehicleID][vLocked]);
  125. }
  126.  
  127. stock VehicleSave(vehicleID)
  128. {
  129.     new INI:dFile = INI_Open(VehiclePath(vehicleID));
  130.    
  131.     INI_WriteInt(dFile, "model", VehicleInfo[vehicleID][vModel]);
  132.     INI_WriteFloat(dFile, "X", VehicleInfo[vehicleID][vX]);
  133.     INI_WriteFloat(dFile, "Y", VehicleInfo[vehicleID][vY]);
  134.     INI_WriteFloat(dFile, "Z", VehicleInfo[vehicleID][vZ]);
  135.     INI_WriteInt(dFile, "color1", VehicleInfo[vehicleID][vColor1]);
  136.     INI_WriteInt(dFile, "color2", VehicleInfo[vehicleID][vColor2]);
  137.     INI_WriteString(dFile, "owner", VehicleInfo[vehicleID][vOwner]);
  138.     INI_WriteInt(dFile, "locked", VehicleInfo[vehicleID][vLocked] ? 1 : 0);
  139.     INI_Close(dFile);
  140. }
  141.  
  142. stock VehicleLoadAll()
  143. {
  144.     new index = 0;
  145.  
  146.     while(fexist(VehiclePath(index)))
  147.     {
  148.         VehicleLoad(index, VehiclePath(index));
  149.         index++;
  150.     }
  151.  
  152.     printf("Vehicles Loaded: %d", index);
  153. }
  154.  
  155. stock VehicleSaveAll()
  156. {
  157.     new index = 0;
  158.  
  159.     for(new i = 0; i < MAX_VEHICLES; i++)
  160.     {
  161.         if(vCreated[i])
  162.         {
  163.             VehicleGet(index);
  164.             VehicleSave(index);
  165.             index++;
  166.         }
  167.     }
  168.  
  169.     printf("Vehicles Saved: %d", index);
  170. }
  171.  
  172. main(){}
  173.  
  174.  
  175. public LoadUser_data(playerid,name[],value[])
  176. {
  177.     INI_Int("Pass",PlayerInfo[playerid][pPass]);
  178.     INI_Int("Dinero",PlayerInfo[playerid][pDinero]);
  179.     INI_Int("Admin",PlayerInfo[playerid][pAdmin]);
  180.     INI_Int("Telefono",PlayerInfo[playerid][pTelefono]);
  181.     INI_Int("Coche1",PlayerInfo[playerid][pCoche1]);
  182.     INI_Int("Coche2",PlayerInfo[playerid][pCoche2]);
  183.     INI_Int("Coche3",PlayerInfo[playerid][pCoche3]);
  184.     INI_Int("Casa1",PlayerInfo[playerid][pCasa1]);
  185.     INI_Int("Coche2",PlayerInfo[playerid][pCasa2]);
  186.     INI_Int("Faccion",PlayerInfo[playerid][pFaccion]);
  187.     INI_Int("Job",PlayerInfo[playerid][pJob]);
  188.     INI_Int("Skin",PlayerInfo[playerid][pSkin]);
  189.     INI_Int("Interior",PlayerInfo[playerid][pInterior]);
  190.     INI_Float("PosX",PlayerInfo[playerid][pPosX]);
  191.     INI_Float("PosY",PlayerInfo[playerid][pPosY]);
  192.     INI_Float("PosZ",PlayerInfo[playerid][pPosZ]);
  193.     return 1;
  194. }
  195.  
  196. public LoadVehicleData(vehicleID, name[], value[])
  197. {
  198.     INI_Int("model", VehicleInfo[vehicleID][vModel]);
  199.     INI_Float("X", VehicleInfo[vehicleID][vX]);
  200.     INI_Float("Y", VehicleInfo[vehicleID][vY]);
  201.     INI_Float("Z", VehicleInfo[vehicleID][vZ]);
  202.     INI_Int("color1", VehicleInfo[vehicleID][vColor1]);
  203.     INI_Int("color2", VehicleInfo[vehicleID][vColor2]);
  204.     INI_String("owner", VehicleInfo[vehicleID][vOwner], MAX_PLAYER_NAME);
  205.     INI_Bool("locked", VehicleInfo[vehicleID][vLocked]);
  206.     return 1;
  207. }
  208.  
  209. public OnGameModeInit()
  210. {
  211.     EnableStuntBonusForAll(0);
  212.     DisableInteriorEnterExits();
  213.     SetGameModeText("Blank Script");
  214.     AddPlayerClass(0, 1643.4510, -2287.4954, -1.1971, 276.4842,0,0,0,0,0,0);
  215.     VehicleLoadAll();
  216.     return 1;
  217. }
  218.  
  219. public OnGameModeExit()
  220. {
  221.     VehicleSaveAll();
  222.     return 1;
  223. }
  224.  
  225. public OnPlayerRequestClass(playerid, classid)
  226. {
  227.     SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
  228.     return 1;
  229. }
  230.  
  231. public OnPlayerConnect(playerid)
  232. {
  233.     SetPlayerColor(playerid, 0xFFFFFFFF);
  234.  
  235.     if(fexist(UserPath(playerid)))
  236.     {
  237.         INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
  238.         ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD,""COL_WHITE"Login",""COL_WHITE"Bienvenido!\nEscribe tu contraseña debajo para entrar.","Login","Salir");
  239.     }
  240.     else
  241.     {
  242.         ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD,""COL_WHITE"Registrando...",""COL_WHITE"Introduce una contraseña debajo para registrar una nueva cuenta.","Registrar","Salir");
  243.     }
  244.     return 1;
  245. }
  246.  
  247. public OnPlayerDisconnect(playerid, reason)
  248. {
  249.     new Float:Pos[3];
  250.     new INI:File = INI_Open(UserPath(playerid));
  251.    
  252.     GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
  253.    
  254.     INI_SetTag(File,"data");
  255.     INI_WriteInt(File,"Dinero",GetPlayerMoney(playerid));
  256.     INI_WriteInt(File,"Admin",PlayerInfo[playerid][pAdmin]);
  257.     INI_WriteInt(File,"Telefono",PlayerInfo[playerid][pTelefono]);
  258.     INI_WriteInt(File,"Coche1",PlayerInfo[playerid][pCoche1]);
  259.     INI_WriteInt(File,"Coche2",PlayerInfo[playerid][pCoche2]);
  260.     INI_WriteInt(File,"Coche3",PlayerInfo[playerid][pCoche3]);
  261.     INI_WriteInt(File,"Casa1",PlayerInfo[playerid][pCasa1]);
  262.     INI_WriteInt(File,"Casa2",PlayerInfo[playerid][pCasa2]);
  263.     INI_WriteInt(File,"Faccion",PlayerInfo[playerid][pFaccion]);
  264.     INI_WriteInt(File,"Job",PlayerInfo[playerid][pJob]);
  265.     INI_WriteInt(File,"Skin",GetPlayerSkin(playerid));
  266.     INI_WriteInt(File,"Interior",PlayerInfo[playerid][pInterior]);
  267.     INI_WriteFloat(File,"PosX",Pos[0]);
  268.     INI_WriteFloat(File,"PosY",Pos[1]);
  269.     INI_WriteFloat(File,"PosZ",Pos[2]);
  270.     INI_Close(File);
  271.    
  272.    
  273.     if( Vehicle[playerid] != 0)
  274.         {
  275.             DestroyVehicle(Vehicle[playerid]);
  276.         }
  277.    
  278.    
  279.     return 1;
  280. }
  281.  
  282. public OnPlayerSpawn(playerid)
  283. {
  284.     new skin;
  285.     skin = GetPlayerSkin(playerid);
  286.    
  287.     if(skin == 0) SetPlayerSkin(playerid, 26);
  288.    
  289.     if(PlayerInfo[playerid][pPosX] == 0 && PlayerInfo[playerid][pPosY] == 0)
  290.     {
  291.         SetPlayerPos(playerid, 1643.4510, -2287.4954, -1.1971);
  292.         GivePlayerMoney(playerid, 5000);
  293.         SetPlayerSkin(playerid, 26);
  294.     }else
  295.     {
  296.         SetPlayerPos(playerid, PlayerInfo[playerid][pPosX], PlayerInfo[playerid][pPosY], PlayerInfo[playerid][pPosZ]);
  297.         SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
  298.     }
  299.     return 1;
  300. }
  301.  
  302. public OnPlayerDeath(playerid, killerid, reason)
  303. {
  304.     new Float:X, Float:Y, Float:Z;
  305.     GetPlayerPos(playerid, X, Y, Z);
  306.     PlayerInfo[playerid][pPosX] = X;
  307.     PlayerInfo[playerid][pPosY] = Y;
  308.     PlayerInfo[playerid][pPosZ] = Z;
  309.     GivePlayerMoney(playerid, 100);
  310.     return 1;
  311. }
  312.  
  313. public OnVehicleSpawn(vehicleid)
  314. {
  315.     return 1;
  316. }
  317.  
  318. public OnVehicleDeath(vehicleid, killerid)
  319. {
  320.     return 1;
  321. }
  322.  
  323. public OnPlayerText(playerid, text[])
  324. {
  325.     return 1;
  326. }
  327.  
  328. public OnPlayerCommandText(playerid, cmdtext[])
  329. {
  330.     return 0;
  331. }
  332.  
  333. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  334. {
  335.     return 1;
  336. }
  337.  
  338. public OnPlayerExitVehicle(playerid, vehicleid)
  339. {
  340.     return 1;
  341. }
  342.  
  343. public OnPlayerStateChange(playerid, newstate, oldstate)
  344. {
  345.     return 1;
  346. }
  347.  
  348. public OnPlayerEnterCheckpoint(playerid)
  349. {
  350.     return 1;
  351. }
  352.  
  353. public OnPlayerLeaveCheckpoint(playerid)
  354. {
  355.     return 1;
  356. }
  357.  
  358. public OnPlayerEnterRaceCheckpoint(playerid)
  359. {
  360.     return 1;
  361. }
  362.  
  363. public OnPlayerLeaveRaceCheckpoint(playerid)
  364. {
  365.     return 1;
  366. }
  367.  
  368. public OnRconCommand(cmd[])
  369. {
  370.     return 1;
  371. }
  372.  
  373. public OnPlayerRequestSpawn(playerid)
  374. {
  375.     return 1;
  376. }
  377.  
  378. public OnObjectMoved(objectid)
  379. {
  380.     return 1;
  381. }
  382.  
  383. public OnPlayerObjectMoved(playerid, objectid)
  384. {
  385.     return 1;
  386. }
  387.  
  388. public OnPlayerPickUpPickup(playerid, pickupid)
  389. {
  390.     return 1;
  391. }
  392.  
  393. public OnVehicleMod(playerid, vehicleid, componentid)
  394. {
  395.     return 1;
  396. }
  397.  
  398. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  399. {
  400.     return 1;
  401. }
  402.  
  403. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  404. {
  405.     return 1;
  406. }
  407.  
  408. public OnPlayerSelectedMenuRow(playerid, row)
  409. {
  410.     return 1;
  411. }
  412.  
  413. public OnPlayerExitedMenu(playerid)
  414. {
  415.     return 1;
  416. }
  417.  
  418. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  419. {
  420.     return 1;
  421. }
  422.  
  423. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  424. {
  425.     return 1;
  426. }
  427.  
  428. public OnRconLoginAttempt(ip[], password[], success)
  429. {
  430.     return 1;
  431. }
  432.  
  433. public OnPlayerUpdate(playerid)
  434. {
  435.     return 1;
  436. }
  437.  
  438. public OnPlayerStreamIn(playerid, forplayerid)
  439. {
  440.     return 1;
  441. }
  442.  
  443. public OnPlayerStreamOut(playerid, forplayerid)
  444. {
  445.     return 1;
  446. }
  447.  
  448. public OnVehicleStreamIn(vehicleid, forplayerid)
  449. {
  450.     return 1;
  451. }
  452.  
  453. public OnVehicleStreamOut(vehicleid, forplayerid)
  454. {
  455.     return 1;
  456. }
  457.  
  458. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  459. {
  460.     switch( dialogid )
  461.     {
  462.         case DIALOG_REGISTER:
  463.         {
  464.             if (!response) return Kick(playerid);
  465.             if(response)
  466.             {
  467.                 if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, ""COL_WHITE"Registrando...",""COL_RED"Has introducido una contrasela invalida.\n"COL_WHITE"Introduce una contraseña debajo para registrar una nueva cuenta.","Registrar","Salir");
  468.                 new INI:File = INI_Open(UserPath(playerid));
  469.                 INI_SetTag(File,"data");
  470.                 INI_WriteString(File,"Password",inputtext);
  471.                 INI_WriteInt(File,"Dinero", 0);
  472.                 INI_WriteInt(File,"Admin", 0);
  473.                 INI_WriteInt(File,"Telefono", 0);
  474.                 INI_WriteInt(File,"Coche1", 0);
  475.                 INI_WriteInt(File,"Coche2", 0);
  476.                 INI_WriteInt(File,"Coche3", 0);
  477.                 INI_WriteInt(File,"Casa1", 0);
  478.                 INI_WriteInt(File,"Casa2", 0);
  479.                 INI_WriteInt(File,"Faccion", 0);
  480.                 INI_WriteInt(File,"Job", 0);
  481.                 INI_WriteInt(File,"Skin", 0);
  482.                 INI_WriteInt(File,"Interior", 0);
  483.                 INI_WriteFloat(File,"PosX", 0.0);
  484.                 INI_WriteFloat(File,"PosY", 0.0);
  485.                 INI_WriteFloat(File,"PosZ", 0.0);
  486.                 INI_Close(File);
  487.  
  488.                 SetSpawnInfo(playerid, PlayerInfo[playerid][pSkin], 0, PlayerInfo[playerid][pPosX], PlayerInfo[playerid][pPosZ], PlayerInfo[playerid][pPosZ], 269.15, 0, 0, 0, 0, 0, 0);
  489.                 ShowPlayerDialog(playerid, DIALOG_SUCCESS_1, DIALOG_STYLE_MSGBOX,""COL_WHITE"Bien!!",""COL_GREEN"Registrado correctamente! Reloguea para guardar tus datos!","Ok","");
  490.             }
  491.         }
  492.  
  493.         case DIALOG_LOGIN:
  494.         {
  495.             if ( !response ) return Kick ( playerid );
  496.             if( response )
  497.             {
  498.                 if(strcmp(inputtext, PlayerInfo[playerid][pPass]) == 0)
  499.                 {
  500.                     INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
  501.                     SetSpawnInfo(playerid, PlayerInfo[playerid][pSkin], 0, PlayerInfo[playerid][pPosX], PlayerInfo[playerid][pPosZ], PlayerInfo[playerid][pPosZ], 269.15, 0, 0, 0, 0, 0, 0);
  502.                     SpawnPlayer(playerid);
  503.                     GivePlayerMoney(playerid, PlayerInfo[playerid][pDinero]);
  504.                 }
  505.                 else
  506.                 {
  507.                     ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,""COL_WHITE"Login",""COL_RED"Contraseña incorrecta.\n"COL_WHITE"Introduce tu contraseña para entrar.","Login","Salir");
  508.                 }
  509.                 return 1;
  510.             }
  511.         }
  512.        
  513.         case DIALOG_SUCCESS_1:
  514.         {
  515.             if(!response) return 0;
  516.             if(response) return SpawnPlayer(playerid);
  517.         }
  518.     }
  519.     return 1;
  520. }
  521.  
  522. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  523. {
  524.     return 1;
  525. }
  526.  
  527. //Comandos
  528.  
  529.     //Comandos.1: Publicos
  530.  
  531. CMD:comprarveh(playerid, params[])
  532. {
  533.     new carid, dinero, color1, color2, nombre[MAX_PLAYER_NAME+1],
  534.         Float:X, Float:Y, Float:Z, Float:Angle;
  535.     GetPlayerFacingAngle(playerid, Angle);
  536.     GetPlayerPos(playerid, X, Y, Z);
  537.     dinero = GetPlayerMoney(playerid);
  538.     GetPlayerName(playerid, nombre, sizeof(nombre));
  539.     if(!IsPlayerInRangeOfPoint(playerid, 7.0, 1097.6478, -1370.8044, 13.9844)) return SendClientMessage(playerid, 0xFB0000FF, "<!>No estás en el concesionario. (Market)");
  540.     else if(dinero < 10000) return SendClientMessage(playerid, 0xFB0000FF, "<!>No tienes dinero suficiente. (10000 probisionalmente)");
  541.     if(sscanf(params, "ddd", carid, color1, color2)) return SendClientMessage(playerid, 0x00D235FF, "<!>Uso: /comprarveh [Modelo] [Color1] [Color2]");
  542.     else
  543.     {
  544.         VehicleCreate(carid, 1087.1473, -1375.2629, 13.7813, 90.0, color1, color2, nombre, false);
  545.         GivePlayerMoney(playerid, -10000);
  546.     }
  547.    
  548.     return 1;
  549. }
  550.  
  551. CMD:ayuda(playerid, params[])
  552. {
  553.    
  554.     if(PlayerInfo[playerid][pAdmin] < 2) return SendClientMessage(playerid, -1, "COMANDOS: /comprarveh");
  555.     else if(PlayerInfo[playerid][pAdmin] == 4) return SendClientMessage(playerid, -1, "COMANDOS: /ir, /traer, /tadmin, /skin, /curar, /chal, /kick,  /comprarveh");
  556.     else if(PlayerInfo[playerid][pAdmin] > 4) return SendClientMessage(playerid, -1, "COMANDOS: /ir, /traer, /tadmin, /skin, /curar, /chal, /sv, /darv, /kick, /comprarveh");
  557.     return 1;
  558. }
  559.  
  560.     //Comandos.2: Faccionarios
  561.  
  562.  
  563.     // Comandos.3: Admin
  564.  
  565. CMD:adminduty(playerid, params[])
  566. {
  567.     if(PlayerInfo[playerid][pAdmin] < 0) return 0;
  568.     else
  569.     {
  570.         SetPlayerColor(playerid,0xE703B9FF);
  571.         SetPlayerHealth(playerid, 100000.0);
  572.     }
  573.     return 1;
  574. }
  575.  
  576. CMD:kick(playerid, params[])
  577.  {
  578.     new id;
  579.     new razon[144];
  580.     new mensaje2[144];
  581.     new nombread[MAX_PLAYER_NAME+1];
  582.     new nombrek[MAX_PLAYER_NAME+1];
  583.    
  584.     GetPlayerName(playerid, nombread, sizeof(nombread));
  585.     GetPlayerName(id, nombrek, sizeof(nombrek));
  586.    
  587.     if(PlayerInfo[playerid][pAdmin] < 1) return 0;
  588.     if(sscanf(params, "ds", id, razon)) return SendClientMessage(playerid, 0x00D235FF, "<!>Uso: /kick [id] [razon]");
  589.     else
  590.     {
  591.         format(mensaje2, sizeof(mensaje2), "%s ha sido kickeado por %s, razón: %s", nombrek, nombread, razon);
  592.         SendClientMessageToAll(0xFB0000FF, mensaje2);
  593.         Kick(id);
  594.     }
  595.     return 1;
  596.  }
  597.  
  598. CMD:dardinero(playerid, params[])
  599. {
  600.     new id, money;
  601.     if(PlayerInfo[playerid][pAdmin] < 6) return 0;
  602.     else if(sscanf(params, "dd", id, money)) return SendClientMessage(playerid, 0x00D235FF, "<!>Uso: /dardinero [ID] [Cantidad]");
  603.     else
  604.     {
  605.         GivePlayerMoney(id, money);
  606.     }
  607.     return 1;
  608. }
  609.  
  610. CMD:irv(playerid, params[])
  611. {
  612.     new Float:X, Float:Y, Float:Z,
  613.         car;
  614.        
  615.     if(PlayerInfo[playerid][pAdmin] < 1) return 0;
  616.     else if(sscanf(params, "d", car)) return SendClientMessage(playerid, 0x00D235FF, "<!>Uso: /irv [CocheID]");
  617.     else
  618.     {
  619.         GetVehiclePos(car, X, Y, Z);
  620.         SetPlayerPos(playerid, X, Y, Z);
  621.     }
  622.     return 1;
  623. }
  624.  
  625. CMD:traer(playerid, params[])
  626. {
  627.     new id, car,
  628.         Float:X, Float:Y, Float:Z, Float:XC, Float:YC, Float:ZC;
  629.  
  630.     if(PlayerInfo[playerid][pAdmin] < 1) return 0;
  631.     else if(PlayerInfo[playerid][pAdmin] < 2 ) return SendClientMessage(playerid, 0xFB0000FF, "<!>No eres admin 2+");
  632.     else if(sscanf(params, "d", id)) return SendClientMessage(playerid, 0x00D235FF,"<!>Uso /ir [ID]");
  633.     else if(id == INVALID_PLAYER_ID || !IsPlayerConnected(id)) return SendClientMessage(playerid, 0xFB0000FF, "<!>ID inválida.");
  634.     else if(IsPlayerInAnyVehicle(playerid))
  635.     {
  636.         car = GetPlayerVehicleID(id);
  637.         GetVehiclePos(car, XC, YC, ZC);
  638.         GetPlayerPos(playerid, X, Y, Z);
  639.         SetVehiclePos(car, X + 2.0, Y, Z);
  640.         SetPlayerPos(id, X + 2.0, Y, Z);
  641.         PutPlayerInVehicle(playerid, car, 0);
  642.     }
  643.     else
  644.     {
  645.         GetPlayerPos(playerid, X, Y, Z);
  646.         SetPlayerPos(id, X + 2.0, Y, Z);
  647.     }
  648.     return 1;
  649. }
  650.  
  651. CMD:ir(playerid, params[])
  652. {
  653.     new id, car,
  654.         Float:X, Float:Y, Float:Z;
  655.        
  656.     if(PlayerInfo[playerid][pAdmin] < 1) return 0;
  657.     else if(PlayerInfo[playerid][pAdmin] < 2 ) return SendClientMessage(playerid, 0xFB0000FF, "<!>No eres admin 2+");
  658.     else if(sscanf(params, "d", id)) return SendClientMessage(playerid, 0x00D235FF,"<!>Uso /ir [ID]");
  659.     else if(id == INVALID_PLAYER_ID || !IsPlayerConnected(id)) return SendClientMessage(playerid, 0xFB0000FF, "<!>ID inválida.");
  660.     else if(IsPlayerInAnyVehicle(playerid))
  661.     {
  662.         car = GetPlayerVehicleID(playerid);
  663.         GetPlayerPos(id, X, Y, Z);
  664.         SetVehiclePos(car, X + 2.0, Y, Z);
  665.         SetPlayerPos(playerid, X + 2.0, Y, Z);
  666.         PutPlayerInVehicle(playerid, car, 0);
  667.     }
  668.     else
  669.     {
  670.         GetPlayerPos(id, X, Y, Z);
  671.         SetPlayerPos(playerid, X + 2.0, Y, Z);
  672.        
  673.     }
  674.     return 1;
  675. }
  676.  
  677. CMD:chal(playerid, params[])
  678. {
  679.     new id;
  680.     if(PlayerInfo[playerid][pAdmin] < 1 ) return 0;
  681.     else if(PlayerInfo[playerid][pAdmin] < 2 ) return SendClientMessage(playerid, 0xFB0000FF, "<!>No eres admin 2+");
  682.     else if(sscanf(params, "d", id)) return SendClientMessage(playerid, 0x00D235FF,"<!>Uso /chal(eco) [ID]");
  683.     else if(id == INVALID_PLAYER_ID || !IsPlayerConnected(id)) return SendClientMessage(playerid, 0xFB0000FF, "<!>ID inválida.");
  684.     else
  685.     {
  686.         SetPlayerArmour(id, 100.0);
  687.     }
  688.     return 1;
  689. }
  690.  
  691. CMD:curar(playerid, params[])
  692. {
  693.     new id,
  694.         name[MAX_PLAYER_NAME+1],
  695.         name2[MAX_PLAYER_NAME+1],
  696.         str[128],
  697.         str2[128];
  698.  
  699.     if(PlayerInfo[playerid][pAdmin] < 1 ) return 0;
  700.     else if( PlayerInfo[playerid][pAdmin] <= 1 ) return SendClientMessage(playerid, 0xFB0000FF, "<!>No eres admin 2+");
  701.     else
  702.     {
  703.         if (sscanf(params, "u", id)) return SendClientMessage(playerid, 0x00D235FF,"<!>Uso /curar [ID]");
  704.         else if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, 0xFB0000FF, "<!>ID inválida.");
  705.         else
  706.         {
  707.             GetPlayerName(playerid, name, sizeof(name));
  708.             GetPlayerName(id, name2, sizeof(name2));
  709.  
  710.             SetPlayerHealth(id, 100.0);
  711.             format(str, sizeof(str), "<!>Has sido curado por el ID: %s.", name);
  712.             format(str2, sizeof(str2), "<!>Has curado al ID: %s.", name2);
  713.             SendClientMessage(id, 0x00D235FF, str);
  714.             SendClientMessage(playerid, 0x00D235FF, str2);
  715.             printf("<!>El ID %i ha curado al ID %i.", playerid, id);
  716.         }
  717.     }
  718.     return 1;
  719. }
  720.  
  721. CMD:skin(playerid, params[])
  722. {
  723.     new skin,
  724.             id;
  725.     if(PlayerInfo[playerid][pAdmin] < 0) return 0;
  726.     else if(PlayerInfo[playerid][pAdmin] < 4) return SendClientMessage(playerid, 0xFB0000FF, "<!>No eres admin nivel 4+.");
  727.     else if(sscanf(params, "dd", id, skin)) return SendClientMessage(playerid, 0x00D235FF, "<!>Uso /skin [ID] [SKIN]");
  728.     else if(!IsPlayerConnected(id)) return SendClientMessage(playerid, 0xFB0000FF, "<!>ID inválida.");
  729.     else if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, 0xFB0000FF, "<!>ID inválida.");
  730.     else if(skin < 1 || skin > 299) return SendClientMessage(playerid, 0xFB0000FF, "<!>SKIN inválida.");
  731.     else
  732.     {
  733.         SetPlayerSkin(id, skin);
  734.     }
  735.     return 1;
  736. }
  737.  
  738. CMD:daradmin(playerid, params[])
  739. {
  740.     new id,
  741.         str[128],
  742.         str2[128];
  743.        
  744.     if(PlayerInfo[playerid][pAdmin] < 1) return 0;
  745.     else if(PlayerInfo[playerid][pAdmin] < 6) return SendClientMessage(playerid, 0xFB0000FF, "<!>No eres admin nivel 6+.");
  746.     else if(sscanf(params, "u", id)) return SendClientMessage(playerid, 0x00D235FF, "<!>Uso /daradmin [ID].");
  747.     else if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, 0xFB0000FF, "<!>ID inválida.");
  748.     else if(id == playerid) return SendClientMessage(playerid, 0xFB0000FF, "<!>No intentes ascenderte a ti mismo.");
  749.     else if(PlayerInfo[id][pAdmin] >= 5) return SendClientMessage(playerid, 0xFB0000FF, "<!>Ése jugador ya es admin nivel 5+.");
  750.     else if(PlayerInfo[id][pAdmin] < 5)
  751.     {
  752.         PlayerInfo[id][pAdmin] = PlayerInfo[id][pAdmin] + 1;
  753.         format(str, sizeof(str), "<!>Te han ascencido como miembro del STAFF por el admin ID %i.", playerid);
  754.         format(str2, sizeof(str2), "<!>Has ascendido al ID %i como miembro del STAFF.", id);
  755.         SendClientMessage(id, 0x00D235FF, str);
  756.         SendClientMessage(id, 0x00D235FF, str2);
  757.         printf("<!>El ID %i ha ascendido al ID %i como miembro en el STAFF.", playerid, id);
  758.     }
  759.     return 1;
  760. }
  761.  
  762. CMD:sv(playerid, params[])
  763. {
  764.     new car,
  765.         Float:X, Float:Y, Float:Z;
  766.     GetPlayerPos(playerid, X, Y, Z);
  767.    
  768.     if(PlayerInfo[playerid][pAdmin] < 6 ) return 0;
  769.     if(sscanf(params, "%i", car)) return SendClientMessage(playerid, 0x00D235FF, "<!>Uso: /sv [modelID]");
  770.     else if(car < 400 || car > 611 ) return SendClientMessage(playerid, 0xFB0000FF, "<!>ID inválida.");
  771.     else
  772.     {
  773.         if( Vehicle[playerid] != 0)
  774.         {
  775.            DestroyVehicle(Vehicle[playerid]);
  776.         }
  777.         Vehicle[playerid] = AddStaticVehicle(car, X + 2.0, Y, Z , 180, 0, 1);
  778.     }
  779.     return 1;
  780. }
  781.  
  782. /*CMD:darv(playerid, params[])
  783. {
  784.     new car, id,
  785.         Float:X, Float:Y, Float:Z;
  786.  
  787.        
  788.     if(PlayerInfo[playerid][pAdmin] < 6 ) return 0;
  789.     if(sscanf(params, "dd", id, car)) return SendClientMessage(playerid, 0x00D235FF, "<!>Uso: /darv [ID] [modelID]");
  790.     else if(id == INVALID_PLAYER_ID || !IsPlayerConnected(id)) return SendClientMessage(playerid, 0xFB0000FF, "<!>ID inválida.");
  791.     else if(car < 400 || car > 611 ) return SendClientMessage(playerid, 0xFB0000FF, "<!>Modelo inválido.");
  792.     else
  793.     {
  794.         GetPlayerPos(id, X, Y, Z);
  795.         if( Vehicle[id] != 0)
  796.         {
  797.             DestroyVehicle(Vehicle[id]);
  798.         }
  799.         Vehicle[id] = AddStaticVehicle(car, X + 2.0, Y, Z, 180.0, 0, 1);
  800.     }
  801.     return 1;
  802. }*/
  803.  
  804. CMD:tadmin(playerid, params[])
  805. {
  806.     new car;
  807.  
  808.     if(PlayerInfo[playerid][pAdmin] < 1) return 0;
  809.     else if(!IsPlayerInAnyVehicle(playerid))
  810.     {
  811.         SetPlayerPos(playerid, 1456.2214,-1067.5406,213.3828);
  812.     }
  813.     else
  814.     {
  815.         car = GetPlayerVehicleID(playerid);
  816.         SetVehiclePos(car, 1456.2214,-1067.5406,213.3828);
  817.         SetPlayerPos(playerid, 1456.2214,-1067.5406,213.3828);
  818.         PutPlayerInVehicle(playerid, car, 0);
  819.     }
  820.     return 1;
  821. }
Advertisement
Add Comment
Please, Sign In to add comment