Guest User

GM test 8 aout

a guest
Aug 8th, 2013
234
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 43.58 KB | None | 0 0
  1. #include <a_samp>
  2. #include <core>
  3. #include <float>
  4. #include <string>
  5. #include <file>
  6. #include <time>
  7. #include <datagram>
  8. #include <a_players>
  9. #include <a_vehicles>
  10. #include <a_objects>
  11. #include <a_sampdb>
  12. #include <sscanf2>
  13. #include <gl_common>
  14. #include <gl_messages>
  15. #include <vehicleutil>
  16. #include <YSI\y_ini>
  17.  
  18. #define COLOR_SUCCESS 0x64F600FF
  19. #define COLOR_RED 0xFF0000FF
  20. #define TEAM_YAKUZA_COLOR 0x993300AA // Marron
  21. #define TEAM_COSA_COLOR 0x66FFFFAA // Cyan
  22. #define COLOR_ADMIN 0xFF0000 // Rouge
  23. #define COL_WHITE "{FFFFFF}"
  24. #define COL_RED "{F81414}"
  25. #define COL_GREEN "{00FF22}"
  26. #define COL_LIGHTBLUE "{00CED1}"
  27. #define COL_YELLOW "{FAF427}"
  28. #define COLOR_WHITE 0xFFFFFFAA
  29. #define COLOR_GRAY 0x808080FF
  30. #define COLOR_DARKGRAY 0xA9A9A9FF
  31. #define COLOR_YELLOW 0xFAF427FF
  32.  
  33. #define DIALOG_REGISTER 1
  34. #define DIALOG_LOGIN 2
  35. #define DIALOG_SUCCESS_1 3
  36. #define DIALOG_SUCCESS_2 4
  37.  
  38. #define MAX_VEHICLE 100
  39.  
  40.  
  41. #define PATH "/Users/%s.ini"
  42.  
  43.  
  44. forward Kickmessage(message[], playerid);
  45. forward KickPublic(playerid);// Fonction appelé par le timer
  46. new gTeam[MAX_PLAYERS];
  47. new gJob[MAX_PLAYERS];
  48. new NombreCompte;
  49. new pickupCosa;
  50. new pickupYakuza;
  51. new pickuparmurerieCosa;
  52. new pickuparmurerieYaku;
  53. new playerskin;
  54. new checkpoint;
  55. new bool:dutypizza;
  56. new bool:isjail;
  57. new Menu:ArmeMenu;
  58. new Menu:CurrentMenu;
  59. new Text:ChoixTeam;
  60. new Text:HPCar;
  61.  
  62.  
  63. // DONNEES
  64. enum pInfo
  65. {
  66.         pMdp,
  67.         pArgent,
  68.         pAdmin,
  69.         pKills,
  70.         pDeaths,
  71.        
  72. }
  73. new PlayerInfo[MAX_PLAYERS][pInfo];
  74.  
  75. #if defined FILTERSCRIPT
  76.  
  77. public OnFilterScriptInit()
  78. {
  79.         print("\n--------------------------------------");
  80.         print(" Blank Filterscript by your name here");
  81.         print("--------------------------------------\n");
  82.         return 1;
  83. }
  84.  
  85. public OnFilterScriptExit()
  86. {
  87.         return 1;
  88. }
  89.  
  90. #else
  91.  
  92. main()
  93. {
  94.         print("\n----------------------------------");
  95.         print(" Blank Gamemode by your name here");
  96.         print("----------------------------------\n");
  97. }
  98.  
  99. #endif
  100.  
  101. public OnGameModeInit()
  102. {
  103.         SetGameModeText("Blank Script");
  104.         DisableInteriorEnterExits();
  105.         // YAKUZA
  106.         AddPlayerClass(117, 2026.8533, 1007.6032, 10.8203, 273.4366, 8, 0, 24, 50, 27, 100);
  107.         AddPlayerClass(118, 2026.8533, 1007.6032, 10.8203, 273.4366, 8, 0, 24, 50, 27, 100);
  108.         AddPlayerClass(120, 2026.8533, 1007.6032, 10.8203, 273.4366, 8, 0, 24, 50, 27, 100);
  109.         // COSA
  110.         AddPlayerClass(112, 2177.8101,1118.3450,12.6484,60.7048, 8, 0, 24, 50, 27, 100);
  111.         AddPlayerClass(113, 2177.8101,1118.3450,12.6484,60.7048, 8, 0, 24, 50, 27, 100);
  112.         AddPlayerClass(124, 2177.8101,1118.3450,12.6484,60.7048, 8, 0, 24, 50, 27, 100);
  113.         // Vehicule YAKUZ
  114.         AddStaticVehicle(609, 2040.2970,1017.3733,10.6719,180.0624, 0, 0); // 1
  115.         AddStaticVehicle(560, 2040.4908,1001.4202,10.6719,0.0624, 0, 0); // 2
  116.         // Vehicule COSA
  117.         AddStaticVehicle(560, 2169.7695,1114.9070,12.5549,333.5973, 0, 0);// 3
  118.         AddStaticVehicle(451, 2176.1594,1127.4221,12.5548,149.9822, 0, 0);// 4
  119.         // Vehicule PIZZA
  120.         AddStaticVehicle(448, 2032.4785, 991.5887, 10.8203, 268.3214, 0, 0);// 5
  121.         AddStaticVehicle(448, 2032.9995, 994.1013, 10.8203, 268.3214, 0, 0);// 6
  122.         // INTERIEUR
  123.         pickupYakuza = AddStaticPickup(1239, 2, 2023.0333, 1007.7988, 10.8203, 0);
  124.         pickupCosa = AddStaticPickup(1239, 2, 2183.8860, 1114.4989, 12.6484, 0);
  125.         pickuparmurerieYaku = AddStaticPickup(1210, 2, 2235.4111, 1699.0397, 1008.3594, -1);
  126.         pickuparmurerieCosa = AddStaticPickup(1210, 2, 2008.2959, 1017.6251, 994.4688, -1);
  127.         // TEXTDRAW
  128.         ChoixTeam = TextDrawCreate(320, 240, "");
  129.         HPCar = TextDrawCreate(50, 420, "");
  130.         TextDrawUseBox(HPCar, 1);
  131.         TextDrawBackgroundColor(HPCar, 0x000000FF);
  132.         TextDrawBoxColor(HPCar, 0x000000FF);
  133.         TextDrawTextSize(HPCar , 200.0, 200.0);
  134.        
  135.         // Menu
  136.         ArmeMenu = CreateMenu("Armurerie", 1, 200.0, 100.0, 150.0, 150.0);
  137.         AddMenuItem(ArmeMenu, 0, "Eagle (1500$)");
  138.         AddMenuItem(ArmeMenu, 0, "AK-47 (3000$)");
  139.         AddMenuItem(ArmeMenu, 0, "Shotgun (3000$)");
  140.         AddMenuItem(ArmeMenu, 0, "Spas 12 (7000$)");
  141.         AddMenuItem(ArmeMenu, 0, "Sniper Rifle (15.000$)");
  142.         AddMenuItem(ArmeMenu, 0, "RPG (55.000$)");
  143.  
  144.         printf("Nombre de compte: %i\n", NombreCompte);
  145.  
  146.  
  147.  
  148.         return 1;
  149. }
  150.  
  151. public OnGameModeExit()
  152. {
  153.         return 1;
  154. }
  155.  
  156.         SetPlayerTeamFromClass(playerid, classid)
  157.         {
  158.         switch(classid)
  159.         {
  160.             case 0: gTeam[playerid] = 1;
  161.             case 1: gTeam[playerid] = 1;
  162.             case 2: gTeam[playerid] = 1;
  163.             case 3: gTeam[playerid] = 2;
  164.             case 4: gTeam[playerid] = 2;
  165.             case 5: gTeam[playerid] = 2;
  166.         }
  167.         }
  168.  
  169.         SetPlayerToTeamColor(playerid)
  170. {
  171.         if (gTeam[playerid] == 1)
  172.         {
  173.                 SetPlayerColor(playerid, TEAM_YAKUZA_COLOR);
  174.         }
  175.         else if (gTeam[playerid] == 2)
  176.         {
  177.                 SetPlayerColor(playerid, TEAM_COSA_COLOR);
  178.         }
  179. }
  180.  
  181. public OnPlayerRequestClass(playerid, classid)
  182. {
  183.         SetPlayerTeamFromClass(playerid, classid);
  184.         if(gTeam[playerid] == 1)
  185.         {
  186.             ShowTextDrawMessage(playerid, ChoixTeam,"Team ~r~YAKUZA");
  187.             ApplyAnimation(playerid, "LOWRIDER", "RAP_B_Loop", 4.1, 1, 0, 0, 1, 0);
  188.         }
  189.         if(gTeam[playerid] == 2)
  190.         {
  191.             ShowTextDrawMessage(playerid, ChoixTeam,"Team ~b~COSA NOSTRA");
  192.             ApplyAnimation(playerid, "LOWRIDER", "RAP_B_Loop", 4.1, 1, 0, 0, 1, 0);
  193.         }
  194.         SetPlayerPos(playerid,2177.8831,961.8123,10.8203);
  195.         SetPlayerCameraPos(playerid, 2177.8469,965.6021,10.8203);
  196.         SetPlayerCameraLookAt(playerid, 2177.8831,961.8123,10.8203);
  197.         SetPlayerFacingAngle(playerid, 359.1693);
  198.         return 1;
  199. }
  200.  
  201.  
  202. public OnPlayerConnect(playerid)
  203. {
  204.  
  205.         if(fexist(UserPath(playerid)))
  206.         {
  207.             INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
  208.             ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,COL_WHITE"Login",COL_WHITE"Entrez votre mot de passe pour vous connecter.","Login","Quitter");
  209.         }
  210.         else
  211.         {
  212.             ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,COL_WHITE"Enregistrement",COL_WHITE"Entrez un mot de passe pour votre compte.","Valider","Quitter");
  213.         }
  214.  
  215.         return 1;
  216. }
  217.  
  218. public OnPlayerDisconnect(playerid, reason)
  219. {
  220.     new INI:File = INI_Open(UserPath(playerid));
  221.     INI_SetTag(File,"data");
  222.     INI_WriteInt(File,"Cash",GetPlayerMoney(playerid));
  223.     INI_WriteInt(File,"Admin",PlayerInfo[playerid][pAdmin]);
  224.     INI_WriteInt(File,"Kills",PlayerInfo[playerid][pKills]);
  225.     INI_WriteInt(File,"Deaths",PlayerInfo[playerid][pDeaths]);
  226.     INI_Close(File);
  227.  
  228.     gJob[playerid] = 0;
  229.     PlayerInfo[playerid][pAdmin] = 0;
  230.     checkpoint = 0;
  231.     SaveAccount(playerid);
  232.     return 1;
  233. }
  234.  
  235.  
  236. public OnPlayerSpawn(playerid)
  237. {
  238.         dutypizza = false;
  239.         checkpoint = 0;
  240.         SetPlayerToTeamColor(playerid);
  241.         ClearAnimations(playerid);
  242.         TextDrawHideForPlayer(playerid, ChoixTeam);
  243.  
  244.         if(isjail == true)
  245.         {
  246.             SetPlayerPos(playerid, 271.9677, 1857.2141, 8.7578);
  247.             SendClientMessage(playerid, -1, "Vous �tes encore en jail admin !");
  248.         }    
  249.         return 1;
  250. }
  251.  
  252. public OnPlayerDeath(playerid, killerid, reason)
  253. {
  254.     new str[124];
  255.     new playername[MAX_PLAYER_NAME];
  256.     new killername[MAX_PLAYER_NAME];
  257.     PlayerInfo[playerid][pDeaths]++;
  258.     PlayerInfo[killerid][pKills]++;
  259.     gJob[playerid] = 0;
  260.  
  261.     GetPlayerName(playerid, playername, sizeof(playername));
  262.     GetPlayerName(killerid, killername, sizeof(killername));
  263.     format(str, sizeof(str), "%s a tué %s et remporte 5.000$", killername, playername);
  264.     SendClientMessageToAll(COLOR_SUCCESS, str);
  265.     GivePlayerMoney(killerid, 5000);
  266.     return 1;
  267. }
  268.  
  269. public OnVehicleSpawn(vehicleid)
  270. {
  271.         return 1;
  272. }
  273.  
  274. public OnVehicleDeath(vehicleid, killerid)
  275. {
  276.         return 1;
  277. }
  278.  
  279. public OnPlayerText(playerid, text[])
  280. {
  281.     if (PlayerInfo[playerid][pAdmin] == 0)
  282.     {
  283.         new playername[MAX_PLAYER_NAME], str[124];
  284.         GetPlayerName(playerid, playername, sizeof(playername));
  285.         format(str, sizeof(str), "%s [%i] dit: %s", playername, playerid, text);
  286.         SendMessageForNearbyPlayer(playerid, str);
  287.     }
  288.     else if(PlayerInfo[playerid][pAdmin] == 1)
  289.     {
  290.         new playername[MAX_PLAYER_NAME], str[124];
  291.         GetPlayerName(playerid, playername, sizeof(playername));
  292.         format(str, sizeof(str), "L'administrateur %s [%i] dit: %s", playername, playerid, text);
  293.         SendAdminMessageForNearbyplayer(playerid, str);
  294.     }
  295.    
  296.     return 0;
  297. }
  298.  
  299.  
  300.  
  301.         RespawnPlayer(playerid)
  302.         {
  303.             switch(gTeam[playerid])
  304.         {
  305.             case 1: SetPlayerPos(playerid, 2026.8533, 1007.6032, 10.8203);
  306.             case 2: SetPlayerPos(playerid, 2177.8101,1118.3450,12.6484);
  307.         }
  308.         }
  309.  
  310.         public KickPublic(playerid)
  311.         {
  312.                 Kick(playerid);
  313.         }
  314.  
  315.         public Kickmessage(message[], playerid)
  316.         {
  317.                 SendClientMessageToAll(0xFFFF00AA, message);
  318.                 SetTimerEx("KickPublic", 100, 0, "i", playerid);
  319.         }
  320.  
  321.  
  322.  
  323. public OnPlayerCommandText(playerid, cmdtext[])
  324. {
  325.         if(strcmp("/all", cmdtext, true, 4) == 0)
  326.         {
  327.             new text[124];
  328.             new str[124];
  329.             new playername[MAX_PLAYER_NAME];
  330.             if(sscanf(cmdtext[4], "s", text)) SendClientMessage(playerid, 0x41A5F5FF, "[USE] /all <text>");
  331.             else
  332.             {
  333.                 GetPlayerName(playerid, playername, sizeof(playername));
  334.                 format(str, sizeof(str), "[A TOUS] {00CED1}%s {FAF427}dit: %s", playername, text);
  335.                 SendClientMessageToAll(COLOR_YELLOW, str);
  336.             }  
  337.         }
  338.  
  339.         if(strcmp("/ooc", cmdtext, true, 4) == 0)
  340.         {
  341.             new playername[MAX_PLAYER_NAME];
  342.             new str[126];
  343.             new idx;
  344.             new tmp[126];
  345.  
  346.             tmp = strtok(cmdtext[5], idx);
  347.             if(strlen(tmp) == 0) SendClientMessage(playerid, -1, "/ooc <texte>");
  348.             else
  349.             {
  350.                 GetPlayerName(playerid, playername, sizeof(playername));
  351.                 format(str, sizeof(str), "[OOC] %s dit: %s", playername, tmp);
  352.                 SendClientMessageToAll(-1, str);
  353.             }
  354.         }
  355.  
  356.         if (strcmp("/mettreadmin", cmdtext, true, 12) == 0)
  357.         {
  358.             new giveplayer;
  359.             new giveplayername[MAX_PLAYER_NAME];
  360.             new playername[MAX_PLAYER_NAME];
  361.             new str[128];
  362.             if (IsPlayerAdmin(playerid))
  363.             {
  364.                 if (sscanf(cmdtext[13], "u", giveplayer)) SendClientMessage(playerid, -1, "/mettreadmin <ID/partie du nom>");
  365.                 else if (PlayerInfo[giveplayer][pAdmin] == 1) SendClientMessage(playerid, -1, "Le joueur est déjà admin.");
  366.                 else if (!IsPlayerConnected(giveplayer)) SendClientMessage(playerid, -1, "Le joueur n'est pas connecté.");
  367.                 else
  368.                 {
  369.                     GetPlayerName(giveplayer, giveplayername, sizeof(giveplayername));
  370.                     GetPlayerName(playerid, playername, sizeof(playername));
  371.                     format(str, sizeof(str), "%s a promu %s au rang d'admin.", playername, giveplayername);
  372.                     PlayerInfo[giveplayer][pAdmin] = 1;
  373.                     SendClientMessageToAll(COLOR_ADMIN, str);
  374.                     return 1;
  375.                 }
  376.  
  377.             }
  378.         }
  379.  
  380.         if (strcmp("/retireradmin", cmdtext, true, 13) == 0)
  381.         {
  382.             new giveplayer;
  383.             if (IsPlayerpAdmin(playerid))
  384.             {
  385.                 if (sscanf(cmdtext[14], "u", giveplayer)) SendClientMessage(playerid, -1, "/retireradmin <ID/partie du nom>");
  386.                 else if (PlayerInfo[giveplayer][pAdmin] == 0) SendClientMessage(playerid, -1, "Le joueur n'est pas admin.");
  387.                 else if (!IsPlayerConnected(giveplayer)) SendClientMessage(playerid, -1, "Le joueur n'est pas connecté.");
  388.                 else
  389.                 {
  390.                     PlayerInfo[giveplayer][pAdmin] = 0;
  391.                     return 1;
  392.                 }
  393.  
  394.             }
  395.         }
  396.  
  397.  
  398.         if(strcmp("/reparer", cmdtext, true, 8) == 0) // Si la commande entré par le joueur est /reparer
  399.         {
  400.             new bool:found; // On crée un booléen, qui correspond à savoir si une voiture a été trouvé ou non.
  401.             for (new i = 1; i < MAX_VEHICLE ; ++i) // Alors on parcours l'ID de tous les véhicules, sachant que l'id 0 n'existe pas, on met i = 1.
  402.             {
  403.                 if (!IsPlayerInVehicle(playerid, i)) // Si le joueur n'est pas dans le véhicule alors
  404.                 {
  405.                     if(IsPlayerNearVehicle(playerid, i)) // On regarde si le joueur est PROCHE du véhicule, si oui:
  406.                     {
  407.                         found = true; // Alors il l'a trouvé
  408.                         new Float:vehheal; // On crée la variable ou stocké la vie du véhicule trouvé, pour savoir si il a besoin de réparation
  409.                         GetVehicleHealth(i, vehheal); // On stocke la vie du véhicule dans la variable vehheal.
  410.                         if(vehheal < 850) // Si la vie du véhicule est inférieur à 850...
  411.                         {
  412.                             SetVehicleHealth(i, 850); // Alors on fixe la vie du véhicule à 850, et on affiche....
  413.                             SendClientMessage(playerid, COLOR_SUCCESS, "Vous avez réparé le véhicule avec votre boite à outil"); // ce message.
  414.                             return 1; // En indiquant que ça a marché.
  415.                         }
  416.                         else SendClientMessage(playerid, COLOR_RED, "Le véhicule n'a pas besoin d'être réparé"); // Si le véhicule a + de 850 de vie, on indique ce message.
  417.                     }
  418.                 }
  419.                 else return SendClientMessage(playerid, COLOR_RED, "Vous ne pouvez pas a l'intérieur."); // Si le joueur est dans le véhicule "i", alors message !
  420.             }
  421.             if(!found) return SendClientMessage(playerid, COLOR_RED, "Aucun véhicule ne se trouve à coté de vous."); // Si le véhicule n'a pas été trouvé, message!
  422.         }
  423.  
  424.         if (strcmp("/aheure", cmdtext, true, 7) == 0) // Si la commande tapé est /aheure alors
  425.         {
  426.             new heure; // On crée une variable qui contiendras l'heure
  427.             new minute; // Et une qui contiendras les minutes
  428.             if (sscanf(cmdtext[8], "ii", heure, minute)) SendClientMessage(playerid, -1, "[Utilisation] /aheure <heure> <minute>"); // On modifie les variables par ce
  429.             //qu'a entré le joueur. Et si il ne marque rien on affiche comment utiliser la commande.
  430.             else if (heure > 23) heure = 23; // Si l'heure donné est supérieur à 23, on la met a 23
  431.             else if (minute > 59) minute = 59; // Si les minutes données sont supérieures à 59, on les met a 59.
  432.             for (new i = 0; i < MAX_PLAYERS; ++i) // On parcourt tous les ID des joueurs
  433.             {
  434.                 if (IsPlayerConnected(i)) // Si l'ID i est connécté
  435.                 {
  436.                     SetPlayerTime(i,heure,minute=0); // On met son temps  à ce que le joueur à indiqué, s'il n'a pas indiqué de minute, alors elles sont égales à 0
  437.                 }
  438.             }
  439.         }
  440.  
  441.         if(strcmp("/amoney", cmdtext, true, 7) == 0)
  442.         {
  443.             new player;
  444.             new giveplayer[MAX_PLAYER_NAME];
  445.             new playername[MAX_PLAYER_NAME];
  446.             new Montant;
  447.             new str[128];
  448.             if(sscanf(cmdtext[8], "ud", player, Montant)) return  SendClientMessage(playerid, -1, "** [Utilisation]: /amoney [playerid/PartOfName] [Montant]");
  449.             if(IsPlayerpAdmin(playerid))
  450.             {
  451.                 GetPlayerName(player, giveplayer, sizeof(giveplayer));
  452.                 GetPlayerName(playerid, playername, sizeof(playername));
  453.                 if(IsPlayerConnected(player))
  454.                 {
  455.                     format(str, sizeof(str), "L'admin %s a donné %d au joueur %s", playername, Montant, giveplayer);
  456.                     GivePlayerMoney(player, Montant);
  457.                     SendClientMessageToAll(COLOR_RED, str);
  458.                     return 1;
  459.                 }
  460.                 else SendClientMessage(playerid, -1, "Le joueur n'est pas connecté/n'existe pas");
  461.                 return 1;
  462.             }
  463.             else
  464.             {
  465.               SendClientMessage(playerid, -1, "Vous n'étes pas admin.");
  466.             }
  467.             return 1;
  468.         }
  469.  
  470.         if(strcmp(cmdtext, "/armurerie", true) == 0)
  471.         {
  472.  
  473.             if (gTeam[playerid] == 1)
  474.             {
  475.                 if (IsPlayerInRangeOfPoint(playerid, 10, 2235.4111, 1699.0397, 1008.3594))
  476.                 {
  477.                     ShowMenuForPlayer(ArmeMenu, playerid);
  478.                     TogglePlayerControllable(playerid, 0);
  479.                 }
  480.                 else if (IsPlayerInRangeOfPoint(playerid, 10, 2007.8940, 1017.6320, 994.4688))
  481.                 {
  482.                     SendClientMessage(playerid, COLOR_RED, "Vous n'êtes pas à votre armurerie !");
  483.                 }
  484.                 else SendClientMessage(playerid, COLOR_RED, "Vous n'êtes pas à l'armurerie");
  485.             }
  486.             else if (gTeam[playerid] == 2)
  487.             {
  488.                 if (IsPlayerInRangeOfPoint(playerid, 10, 2008.2959, 1017.6251, 994.4688))
  489.                 {
  490.                     ShowMenuForPlayer(ArmeMenu, playerid);
  491.                     TogglePlayerControllable(playerid, 0);
  492.                 }
  493.                 else if (IsPlayerInRangeOfPoint(playerid, 10, 2235.3362,1699.0791,1008.3594))
  494.                 {
  495.                     SendClientMessage(playerid, COLOR_RED, "Vous n'êtes pas à votre armurerie !");
  496.                 }
  497.                 else SendClientMessage(playerid, COLOR_RED, "Vous n'êtes pas à l'armurerie");
  498.             }
  499.  
  500.             return 1;
  501.         }
  502.  
  503.         if(strcmp(cmdtext, "/retourner", true) == 0)
  504.     {
  505.            if(IsPlayerInAnyVehicle(playerid))
  506.            {
  507.                new Float:Z;
  508.                GetVehicleZAngle(GetPlayerVehicleID(playerid), Z);
  509.                SetVehicleZAngle(GetPlayerVehicleID(playerid), Z);
  510.                RepairVehicle(GetPlayerVehicleID(playerid));
  511.                SendClientMessage(playerid, 0x0066FF, "Vehicule retourné et reparé!");
  512.            }
  513.                else return SendClientMessage (playerid, -1, "Vous n'�tes pas dans un v�hicule");
  514.     }
  515.  
  516.  
  517.         if (strcmp("/kill", cmdtext, true, 5) == 0)
  518.         {
  519.                 SetPlayerHealth(playerid, -1);
  520.                 PlayerInfo[playerid][pDeaths]--;
  521.                 return 1;
  522.         }
  523.  
  524.         if (strcmp("/ahelp", cmdtext, true, 6) == 0)
  525.         {
  526.             if(IsPlayerpAdmin(playerid))
  527.             {
  528.             SendClientMessage(playerid, -1, "-------------- COMMANDES ADMINS ---------------");
  529.             SendClientMessage(playerid, -1, "/aheal, /aarmour, /kick, /ban, /jail, /unjail");
  530.                 }
  531.             else
  532.             {
  533.             SendClientMessage(playerid, -1, "T'es pas admin ! ");
  534.             }
  535.             return 1;
  536.         }
  537.  
  538.         if(strcmp("/aheal", cmdtext, true, 6) == 0)
  539.         {
  540.                 new temp[128];
  541.                 new giveplayerid;
  542.                 new giveplayer[MAX_PLAYER_NAME];
  543.                 new playername[MAX_PLAYER_NAME];
  544.                 new str[128];
  545.                 new idx;
  546.                 temp = strtok(cmdtext[6], idx);
  547.  
  548.                 if(strlen(temp) == 0)
  549.                         {
  550.                                 SendClientMessage(playerid, -1, "** [Utilisation]: /aheal [playerid/PartOfName]");
  551.                                 return 1;
  552.                         }
  553.                 else
  554.                 {
  555.                 if(IsPlayerpAdmin(playerid))
  556.                 {
  557.                     giveplayerid = ReturnUser(temp);
  558.                     GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
  559.                     GetPlayerName(playerid, playername, sizeof(playername));
  560.                     if(IsPlayerConnected(giveplayerid))
  561.                     {
  562.                         format(str, sizeof(str), "L'admin %s a soigné le joueur %s", playername, giveplayer);
  563.                         SendClientMessageToAll(COLOR_RED, str);
  564.                         return 1;
  565.                     }
  566.                     else SendClientMessage(playerid, -1, "Le joueur n'est pas connecté/n'existe pas");
  567.                     return 1;
  568.                 }
  569.                 else SendClientMessage(playerid, -1, "Vous n'étes pas admin.");
  570.                 }
  571.                 return 1;
  572.     }
  573.  
  574.         if(strcmp("/aarmour", cmdtext, true) == 0)
  575.         {
  576.             if(IsPlayerpAdmin(playerid))
  577.             {
  578.                 SetPlayerArmour(playerid, 155);
  579.                 return 1;
  580.             }
  581.                
  582.         }
  583.  
  584.         if (strcmp("/enter", cmdtext, true) == 0)
  585.         {
  586.             if(IsPlayerInRangeOfPoint(playerid, 10, 2022.8788, 1007.5472, 10.8203))
  587.             {
  588.                 SetPlayerPos(playerid, 2233.8032, 1712.2303, 1011.7632);
  589.                 SetPlayerInterior(playerid, 1);
  590.                 return 1;
  591.             }
  592.             if(IsPlayerInRangeOfPoint(playerid, 10, 2184.4238, 1114.5066, 12.6484))
  593.             {
  594.                 SetPlayerPos(playerid, 2016.2699, 1017.7790, 996.8750);
  595.                 SetPlayerInterior(playerid, 10);
  596.                 return 1;
  597.             }
  598.         }
  599.  
  600.         if (strcmp("/exit", cmdtext, true) == 0)
  601.         {
  602.             if(IsPlayerInRangeOfPoint(playerid, 10, 2233.8032, 1712.2303, 1011.7632))
  603.             {
  604.                 SetPlayerPos(playerid, 2022.8788, 1007.5472, 10.8203);
  605.                 SetPlayerInterior(playerid, 0);
  606.                 return 1;
  607.             }
  608.             if(IsPlayerInRangeOfPoint(playerid, 10, 2016.2699, 1017.7790, 996.8750))
  609.             {
  610.                 SetPlayerPos(playerid, 2184.4238, 1114.5066, 12.6484);
  611.                 SetPlayerInterior(playerid, 0);
  612.                 return 1;
  613.             }
  614.         }
  615.  
  616.         if (strcmp("/pizza", cmdtext, true) == 0)
  617.         {
  618.  
  619.             if(gJob[playerid] == 0)
  620.             {
  621.                 gJob[playerid] = 1;
  622.                 SendClientMessage(playerid, -1, "Vous �tes un pizzaboy !");
  623.                 playerskin = GetPlayerSkin(playerid);
  624.                 SetPlayerSkin(playerid, 155);
  625.                 return 1;
  626.             }
  627.             else if(gJob[playerid] == 1)
  628.             {
  629.                 if(dutypizza == true)
  630.                 {
  631.                     DisablePlayerCheckpoint(playerid);
  632.                     SendClientMessage(playerid, -1, "Vous quittez votre job, et donc votre service.");
  633.                     RemovePlayerFromVehicle(playerid);
  634.                     gJob[playerid] = 0;
  635.                     checkpoint = 0;
  636.                     dutypizza = false;
  637.                     SetPlayerSkin(playerid, playerskin);
  638.                 }
  639.                 else
  640.                 {
  641.                     gJob[playerid] = 0;
  642.                     SendClientMessage(playerid, -1, "Vous quittez votre job !");
  643.                     SetPlayerSkin(playerid, playerskin);
  644.                 }
  645.                 return 1;
  646.             }
  647.         }
  648.  
  649.         if(strcmp("/service", cmdtext, true) == 0)
  650.         {
  651.             if(gJob[playerid] == 1)
  652.                 {
  653.                     if(IsPlayerInVehicle(playerid, 5) || IsPlayerInVehicle(playerid, 6))
  654.                     {
  655.                             if(dutypizza == false)
  656.                             {
  657.                                 SendClientMessage(playerid, -1, "Vous commencez votre travail de pizzaboy !");
  658.                                 dutypizza = true;
  659.                                 SetPlayerCheckpoint(playerid, 2049.6658,1048.8999,10.2641, 5);
  660.                                 return 1;
  661.                             }
  662.                             if(dutypizza == true)
  663.                             {
  664.                                 DisablePlayerCheckpoint(playerid);
  665.                                 SendClientMessage(playerid, -1, "Vous decidez d'arreter votre service de pizzaboy.");
  666.                                 dutypizza = false;
  667.                                 checkpoint = 0;
  668.                                 return 1;
  669.                             }
  670.                     }
  671.                 }
  672.         }
  673.  
  674.         if(strcmp("/vehid", cmdtext, true) == 0)
  675.         {
  676.                 if(IsPlayerInAnyVehicle(playerid))
  677.                 {
  678.                     new vehstring[128];
  679.                     new vehid = GetPlayerVehicleID(playerid);
  680.                     format(vehstring, sizeof(vehstring), "L'ID du v�hicule est: %d", vehid);
  681.                     SendClientMessage(playerid, -1, vehstring);
  682.                     return 1;
  683.                 }
  684.                 else return SendClientMessage(playerid, -1, "Vous devez �tre dans un v�hicule.");
  685.         }
  686.  
  687.         if(strcmp("/me", cmdtext, true, 3) == 0)
  688.         {
  689.             new str[128];
  690.             new tmp[128];
  691.             new idx;
  692.             tmp = strtok(cmdtext[3], idx);
  693.  
  694.             if(!strlen(tmp))
  695.             {
  696.                 SendClientMessage(playerid, -1, "** [Utilisation]: /me [action]");
  697.                 return 1;
  698.             }
  699.  
  700.             GetPlayerName(playerid, str, sizeof(str));
  701.             format(str, sizeof(str), "%s %s", str, cmdtext[4]);
  702.             SendClientMessageToAll(0xFF00CC, str);
  703.             return 1;
  704.         }
  705.  
  706.         if(strcmp("/kick", cmdtext, true, 5) == 0)
  707.         {
  708.                 new temp[128];
  709.                 new giveplayerid;
  710.                 new giveplayer[MAX_PLAYER_NAME];
  711.                 new player[MAX_PLAYER_NAME];
  712.                 new str[128];
  713.                 new idx;
  714.                 temp = strtok(cmdtext[5], idx);
  715.  
  716.                 if(!strlen(temp))
  717.                         {
  718.                                 SendClientMessage(playerid, -1, "** [Utilisation]: /kick [playerid/PartOfName]");
  719.                                 return 1;
  720.                         }
  721.  
  722.  
  723.                 if(IsPlayerpAdmin(playerid))
  724.                 {
  725.                     giveplayerid = ReturnUser(temp);
  726.                     GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
  727.                     GetPlayerName(playerid, player, sizeof(giveplayer));
  728.                     if(IsPlayerConnected(giveplayerid))
  729.                     {
  730.                         format(str, sizeof(str), "L'admin %s a kick� le joueur %s", player, giveplayer);
  731.                         Kickmessage(str, giveplayerid);
  732.                         return 1;
  733.                     }
  734.                     else SendClientMessage(playerid, -1, "Le joueur n'est pas connect�/n'existe pas");
  735.                     return 1;
  736.                 }
  737.                 else SendClientMessage(playerid, -1, "Vous n'�tes pas admin.");
  738.                 return 1;
  739.     }
  740.  
  741.         if(strcmp("/ban", cmdtext, true, 4) == 0)
  742.         {
  743.             new temp[128];
  744.             new giveplayerid;
  745.             new idx;
  746.             temp = strtok(cmdtext[4], idx);
  747.      
  748.             if(!strlen(temp))
  749.             {
  750.                 SendClientMessage(playerid, -1, "** [Utilisation]: /ban [playerid/PartOfName]");
  751.                 return 1;
  752.             }
  753.      
  754.      
  755.             if(IsPlayerpAdmin(playerid))
  756.             {
  757.                 giveplayerid = ReturnUser(temp);
  758.                 if(IsPlayerConnected(giveplayerid))
  759.                 {
  760.                     SendClientMessage(playerid, -1, "Vous avez banni un joueur.");
  761.                     Kick(giveplayerid);
  762.                     return 1;
  763.                 }
  764.                 else return SendClientMessage(playerid, -1, "Le joueur n'est pas connect�/n'existe pas");
  765.             }
  766.             else SendClientMessage(playerid, -1, "Vous n'�tes pas admin.");
  767.             return 1;
  768.         }
  769.  
  770.         if(strcmp("/jail", cmdtext, true, 5) == 0)
  771.         {
  772.             new tmp[128];
  773.             new idx;
  774.             new giveplayerid;
  775.             tmp = strtok(cmdtext[5], idx);
  776.      
  777.             if(!strlen(tmp))
  778.             {
  779.                 SendClientMessage(playerid, -1, tmp);
  780.                 SendClientMessage(playerid, -1, "[UTILISATION] /jail [ID]");
  781.                 return 1;
  782.             }
  783.      
  784.             if(IsPlayerpAdmin(playerid))
  785.             {
  786.                 giveplayerid = ReturnUser(tmp);
  787.                 if(IsPlayerConnected(giveplayerid))
  788.                 {
  789.                     SetPlayerPos(giveplayerid, 271.9677,1857.2141,8.7578);
  790.                     SendClientMessage(playerid, -1, "Vous avez �t� mis en jail !");
  791.                     TogglePlayerControllable(giveplayerid, 0);
  792.                     isjail = true;
  793.                     return 1;
  794.                 }
  795.             }
  796.             else SendClientMessage(playerid, -1, "Vous n'�tes pas admin");
  797.             return 1;
  798.         }
  799.  
  800.         if(strcmp("/unjail", cmdtext, true, 7) == 0)
  801.         {
  802.             new tmp[128];
  803.             new idx;
  804.             new giveplayerid;
  805.             tmp = strtok(cmdtext[7], idx);
  806.      
  807.             if(!strlen(tmp))
  808.             {
  809.                 SendClientMessage(playerid, -1, "[UTILISATION] /unjail [ID]");
  810.                 return 1;
  811.             }
  812.      
  813.             if(IsPlayerpAdmin(playerid))
  814.             {
  815.                 giveplayerid = ReturnUser(tmp);
  816.                 SendClientMessage(playerid, -1, tmp);
  817.                 if(IsPlayerConnected(giveplayerid))
  818.                 {
  819.                     RespawnPlayer(playerid);
  820.                     SendClientMessage(playerid, -1, "Vous n'�tes plus en jail !");
  821.                     isjail = false;
  822.                     return 1;
  823.                 }
  824.             }
  825.             else SendClientMessage(playerid, -1, "Vous n'�tes pas admin");
  826.             return 1;
  827.         }
  828.  
  829.         return 1;
  830. }
  831.  
  832. public OnPlayerEnterCheckpoint(playerid)
  833. {
  834.         if(dutypizza == true)
  835. {
  836.         switch(checkpoint)
  837.         {
  838.         case 0:
  839.         {
  840.             checkpoint++;
  841.             SetPlayerCheckpoint(playerid, 2044.0392,1088.6627,10.2698, 5);
  842.         }
  843.         case 1:
  844.         {
  845.             checkpoint++;
  846.             SetPlayerCheckpoint(playerid, 1935.0835,1093.9230,10.2698, 5);
  847.         }
  848.      case 2:
  849.         {
  850.             checkpoint++;
  851.             SetPlayerCheckpoint(playerid, 1867.5822,1030.6537,10.2698, 5);
  852.         }
  853.      case 3:
  854.         {
  855.             checkpoint++;
  856.             SetPlayerCheckpoint(playerid, 1900.1396,936.5504,10.3215, 5);
  857.         }
  858.      case 4:
  859.         {
  860.             checkpoint++;
  861.             SetPlayerCheckpoint(playerid, 1958.9297,950.7454,10.4170, 5);
  862.         }
  863.      case 5:
  864.         {
  865.             SendClientMessage(playerid, TEAM_COSA_COLOR, "Bravo, tu as terminé ta livraison !");
  866.             checkpoint = 0;
  867.             dutypizza = false;
  868.             DisablePlayerCheckpoint(playerid);
  869.             GivePlayerMoney(playerid, 150000);
  870.         }
  871.  
  872. }
  873. }
  874.  
  875.         return 1;
  876. }
  877.  
  878. public OnPlayerLeaveCheckpoint(playerid)
  879. {
  880.         return 1;
  881. }
  882.  
  883. public OnPlayerEnterRaceCheckpoint(playerid)
  884. {
  885.         return 1;
  886. }
  887.  
  888. public OnPlayerLeaveRaceCheckpoint(playerid)
  889. {
  890.         return 1;
  891. }
  892.  
  893. public OnRconCommand(cmd[])
  894. {
  895.         return 1;
  896. }
  897.  
  898. public OnPlayerRequestSpawn(playerid)
  899. {
  900.         return 1;
  901. }
  902.  
  903. public OnObjectMoved(objectid)
  904. {
  905.         return 1;
  906. }
  907.  
  908. public OnPlayerObjectMoved(playerid, objectid)
  909. {
  910.         return 1;
  911. }
  912.  
  913. public OnPlayerPickUpPickup(playerid, pickupid)
  914. {
  915.         if(pickupid == pickupYakuza)
  916.         {
  917.             GameTextForPlayer(playerid, "~r~ /enter ~y~ pour entrer dans le spawn Yakuza", 60, 1);
  918.         }
  919.         else if(pickupid == pickupCosa)
  920.         {
  921.             GameTextForPlayer(playerid, "~r~ /enter ~y~ pour entrer dans le spawn Cosa", 60, 1);
  922.         }
  923.         else if(pickupid == pickuparmurerieCosa)
  924.         {
  925.             GameTextForPlayer(playerid, "~r~ /armurerie ~y~ pour acheter des armes", 60, 1);
  926.         }
  927.         else if(pickupid == pickuparmurerieYaku)
  928.         {
  929.             GameTextForPlayer(playerid, "~r~ /armurerie ~y~ pour acheter des armes", 60, 1);
  930.         }
  931.         return 1;
  932. }
  933.  
  934. public OnVehicleMod(playerid, vehicleid, componentid)
  935. {
  936.         return 1;
  937. }
  938.  
  939. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  940. {
  941.         return 1;
  942. }
  943.  
  944. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  945. {
  946.         return 1;
  947. }
  948.  
  949. public OnPlayerSelectedMenuRow(playerid, row)
  950. {
  951.     CurrentMenu = GetPlayerMenu(playerid);
  952.     if(CurrentMenu == ArmeMenu)
  953.     {
  954.         switch(row)
  955.         {
  956.             case 0: //Eagle
  957.             {
  958.                 if(GetPlayerMoney(playerid) > 1500)
  959.                 {
  960.                     GivePlayerMoney(playerid, -1500);
  961.                     GivePlayerWeapon(playerid, 24, 50);
  962.                 }
  963.                 else
  964.                 {
  965.                     SendClientMessage(playerid, -1, "Vous n'avez pas assez d'argent pour acheter cette arme !");
  966.                 }
  967.                 TogglePlayerControllable(playerid, 1);
  968.             }
  969.             case 1: //AK 47
  970.             {
  971.                 if(GetPlayerMoney(playerid) > 3000)
  972.                 {
  973.                     GivePlayerMoney(playerid, -3000);
  974.                     GivePlayerWeapon(playerid, 30, 500);
  975.                 }
  976.                 else
  977.                 {
  978.                     SendClientMessage(playerid, -1, "Vous n'avez pas assez d'argent pour acheter cette arme !");
  979.                 }
  980.                 TogglePlayerControllable(playerid, 1);
  981.             }
  982.             case 2: //Shotgun
  983.             {
  984.                 if(GetPlayerMoney(playerid) > 3000)
  985.                 {
  986.                     GivePlayerMoney(playerid, -3000);
  987.                     GivePlayerWeapon(playerid, 25, 50);
  988.                 }
  989.                 else
  990.                 {
  991.                     SendClientMessage(playerid, -1, "Vous n'avez pas assez d'argent pour acheter cette arme !");
  992.                 }
  993.                 TogglePlayerControllable(playerid, 1);
  994.             }
  995.             case 3: //Spas 12
  996.             {
  997.                 if(GetPlayerMoney(playerid) > 7000)
  998.                 {
  999.                     GivePlayerMoney(playerid, -7000);
  1000.                     GivePlayerWeapon(playerid, 27, 150);
  1001.                 }
  1002.                 else
  1003.                 {
  1004.                     SendClientMessage(playerid, -1, "Vous n'avez pas assez d'argent pour acheter cette arme !");
  1005.                 }
  1006.                 TogglePlayerControllable(playerid, 1);
  1007.             }
  1008.             case 4: //Sniper Rifle
  1009.             {
  1010.                 if(GetPlayerMoney(playerid) > 15000)
  1011.                 {
  1012.                     GivePlayerMoney(playerid, -15000);
  1013.                     GivePlayerWeapon(playerid, 34, 50);
  1014.                 }
  1015.                 else
  1016.                 {
  1017.                     SendClientMessage(playerid, -1, "Vous n'avez pas assez d'argent pour acheter cette arme !");
  1018.                 }
  1019.                 TogglePlayerControllable(playerid, 1);
  1020.             }
  1021.             case 5: //RPG
  1022.             {
  1023.                 if(GetPlayerMoney(playerid) > 55000)
  1024.                 {
  1025.                     GivePlayerMoney(playerid, -55000);
  1026.                     GivePlayerWeapon(playerid, 35, 50);
  1027.                 }
  1028.                 else
  1029.                 {
  1030.                     SendClientMessage(playerid, -1, "Vous n'avez pas assez d'argent pour acheter cette arme !");
  1031.                 }
  1032.                 TogglePlayerControllable(playerid, 1);
  1033.             }
  1034.         }
  1035.     }
  1036.     return 1;
  1037. }
  1038.  
  1039. public OnPlayerExitedMenu(playerid)
  1040. {
  1041.     return 1;
  1042. }
  1043.  
  1044. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  1045. {
  1046.         return 1;
  1047. }
  1048.  
  1049. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  1050. {
  1051.         return 1;
  1052. }
  1053.  
  1054. public OnRconLoginAttempt(ip[], password[], success)
  1055. {
  1056.         return 1;
  1057. }
  1058.  
  1059. public OnPlayerUpdate(playerid)
  1060. {
  1061.         return 1;
  1062. }
  1063.  
  1064. public OnPlayerStreamIn(playerid, forplayerid)
  1065. {
  1066.         return 1;
  1067. }
  1068.  
  1069. public OnPlayerStreamOut(playerid, forplayerid)
  1070. {
  1071.         return 1;
  1072. }
  1073.  
  1074. public OnVehicleStreamIn(vehicleid, forplayerid)
  1075. {
  1076.         return 1;
  1077. }
  1078.  
  1079. public OnVehicleStreamOut(vehicleid, forplayerid)
  1080. {
  1081.         return 1;
  1082. }
  1083.  
  1084. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  1085. {
  1086.         switch(dialogid)
  1087.         {
  1088.             case DIALOG_REGISTER:
  1089.             {
  1090.                 if(!response) return Kick(playerid);
  1091.                 if(response)
  1092.                 {
  1093.                     if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, ""COL_WHITE"Enregistrement",""COL_RED"Il faut inserer un mot de passe !\n"COL_WHITE"Entrez votre password ci dessous pour enregistrer votre compte","Valider","Quitter");
  1094.                     new INI:File = INI_Open(UserPath(playerid));
  1095.                     INI_SetTag(File,"data");
  1096.                     INI_WriteInt(File,"Password",udb_hash(inputtext));
  1097.                     INI_WriteInt(File,"Cash",0);
  1098.                     INI_WriteInt(File,"Admin",0);
  1099.                     INI_WriteInt(File,"Kills",0);
  1100.                     INI_WriteInt(File,"Deaths",0);
  1101.                     INI_Close(File);
  1102.                     SaveAccount(playerid);
  1103.                    
  1104.                     ShowPlayerDialog(playerid, DIALOG_SUCCESS_1, DIALOG_STYLE_MSGBOX,""COL_WHITE"Validé !",""COL_GREEN"Bienvenue ! Reconnectez vous pour sauvegarder vos stats","Ok","");
  1105.                 }
  1106.             }
  1107.             case DIALOG_LOGIN:
  1108.             {
  1109.                 if(!response) return Kick(playerid);
  1110.                 if(response)
  1111.                 {
  1112.                     if(udb_hash(inputtext) == PlayerInfo[playerid][pMdp] )
  1113.                     {
  1114.                         INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
  1115.                         GivePlayerMoney(playerid, PlayerInfo[playerid][pArgent]);
  1116.                         ShowPlayerDialog(playerid, DIALOG_SUCCESS_2, DIALOG_STYLE_MSGBOX,""COL_WHITE"Validé!",""COL_GREEN"Connexion réussie ! Bon jeu !","Ok","");
  1117.                         if(PlayerInfo[playerid][pAdmin] == 1)
  1118.                         {
  1119.                             new playername[MAX_PLAYER_NAME];
  1120.                             new str[124];
  1121.                             GetPlayerName(playerid, playername, sizeof(playername));
  1122.                             format(str, sizeof(str), "L'administrateur %s vient de se connecter !", playername);
  1123.                             SendClientMessageToAll(COLOR_ADMIN, str);
  1124.                         }
  1125.                     }
  1126.                     else
  1127.                     {
  1128.                             ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,""COL_WHITE"Login",""COL_RED"Vous avez entré un mot de passe incorrect.\n"COL_WHITE"Entre votre mot de passe ci dessous pour vous connecter.","Login","Quitter");
  1129.                     }
  1130.                     return 1;
  1131.                 }
  1132.  
  1133.             }
  1134.  
  1135.         }
  1136.         return 1;
  1137. }
  1138.  
  1139. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  1140. {
  1141.         return 1;
  1142. }
  1143.  
  1144. public OnPlayerStateChange(playerid, newstate, oldstate)
  1145. {
  1146.     if(newstate == PLAYER_STATE_DRIVER) // Player entered a vehicle as a driver
  1147.     {
  1148.         if(GetPlayerVehicleID(playerid) == 5 || GetPlayerVehicleID(playerid) == 6)
  1149.         {
  1150.             if(gJob[playerid] == 0)
  1151.             {
  1152.                 RemovePlayerFromVehicle(playerid);
  1153.                 SendClientMessage(playerid, COLOR_RED, "Vous n'êtes pas pizza boy !");
  1154.             }
  1155.             else return SendClientMessage(playerid, COLOR_RED, "Tapez /service pour commencer votre service pizza boy");
  1156.         }
  1157.         if(IsPlayerInAnyVehicle(playerid))
  1158.         {
  1159.             new str[124], Float:CarHP;
  1160.             GetVehicleHealth(GetPlayerVehicleID(playerid), CarHP);
  1161.             format(str, sizeof(str), "Etat: %f", CarHP);
  1162.             ShowTextDrawMessage(playerid, HPCar, str);
  1163.             TextDrawShowForPlayer(playerid, HPCar);
  1164.         }
  1165.     }
  1166.  
  1167.     if(newstate == PLAYER_STATE_ONFOOT)
  1168.     {
  1169.         TextDrawHideForPlayer(playerid, HPCar);
  1170.     }
  1171.     return 1;
  1172. }
  1173.  
  1174. forward SaveAccount(playerid);
  1175. public SaveAccount(playerid)
  1176. {
  1177.     if(IsPlayerConnected(playerid))
  1178.     {
  1179.             new string3[32];
  1180.             //new valeur[32];
  1181.             new playername3[MAX_PLAYER_NAME];
  1182.             GetPlayerName(playerid, playername3, sizeof(playername3));
  1183.             format(string3, sizeof(string3), "Users/%s.ini", playername3);
  1184.             new File: hFile = fopen(string3, io_write);
  1185.             if (hFile)
  1186.             {
  1187.                 new var[32];
  1188.                 format(var, 32, "Mdp=%s\n", PlayerInfo[playerid][pMdp]);fwrite(hFile, var);
  1189.                 format(var, 32, "Argent=%d\n",PlayerInfo[playerid][pArgent]);fwrite(hFile, var);
  1190.                 format(var, 30, "Admin=%d\n",PlayerInfo[playerid][pAdmin]);fwrite(hFile, var);
  1191.                 format(var, 30, "Meurtres=%d\n",PlayerInfo[playerid][pKills]);fwrite(hFile, var);
  1192.                 format(var, 30, "Morts=%d\n",PlayerInfo[playerid][pDeaths]);fwrite(hFile, var);
  1193.                 fclose(hFile);
  1194.                 //SpawnPlayer(playerid);
  1195.             }
  1196.     }
  1197.     return 1;
  1198. }
  1199.  
  1200. forward LoadUser_data(playerid,name[],value[]);
  1201. public LoadUser_data(playerid,name[],value[])
  1202. {
  1203.     INI_Int("Mdp",PlayerInfo[playerid][pMdp]);
  1204.     INI_Int("Argent",PlayerInfo[playerid][pArgent]);
  1205.     INI_Int("Admin",PlayerInfo[playerid][pAdmin]);
  1206.     INI_Int("Meurtres",PlayerInfo[playerid][pKills]);
  1207.     INI_Int("Morts",PlayerInfo[playerid][pDeaths]);
  1208.     return 1;
  1209. }
  1210.  
  1211.  
  1212. stock UserPath(playerid)
  1213. {
  1214.     new string[128],playername[MAX_PLAYER_NAME];
  1215.     GetPlayerName(playerid,playername,sizeof(playername));
  1216.     format(string,sizeof(string),PATH,playername);
  1217.     return string;
  1218. }
  1219.  
  1220.  
  1221. stock udb_hash(buf[]) {
  1222.     new length=strlen(buf);
  1223.     new s1 = 1;
  1224.     new s2 = 0;
  1225.     new n;
  1226.     for (n=0; n<length; n++)
  1227.     {
  1228.        s1 = (s1 + buf[n]) % 65521;
  1229.        s2 = (s2 + s1)     % 65521;
  1230.     }
  1231.     return (s2 << 16) + s1;
  1232. }
  1233.  
  1234. stock IsPlayerNearVehicle(playerid, vehicleid)
  1235. {
  1236.         new Float:vehx, Float: vehy, Float: vehz;
  1237.         GetVehiclePos(vehicleid, vehx, vehy, vehz);
  1238.         if(IsPlayerInRangeOfPoint(playerid, 3.5, vehx, vehy, vehz)) return true;
  1239.         return false;
  1240. }
  1241.  
  1242. stock SendMessageForNearbyPlayer(playerid, text[])
  1243. {
  1244.     new Float:posX, Float:posY, Float:posZ;
  1245.     GetPlayerPos(playerid, posX, posY, posZ);
  1246.     for (new p = 0; p<MAX_PLAYERS; p++)
  1247.     {
  1248.         if (IsPlayerConnected(p))
  1249.         {
  1250.             if(GetPlayerDistanceFromPoint(p, posX, posY, posZ) <= 5)
  1251.             {
  1252.                 SendClientMessage(p, COLOR_WHITE, text);
  1253.                 continue;
  1254.             }
  1255.             else if(GetPlayerDistanceFromPoint(p, posX, posY, posZ) <= 6)
  1256.             {
  1257.                 SendClientMessage(p, COLOR_GRAY, text);
  1258.                 continue;
  1259.             }
  1260.             else if(GetPlayerDistanceFromPoint(p, posX, posY, posZ) <= 9)
  1261.             {
  1262.                 SendClientMessage(p, COLOR_DARKGRAY, text);
  1263.                 continue;
  1264.             }
  1265.         }
  1266.     }
  1267.     return 1;
  1268. }
  1269.  
  1270. stock SendAdminMessageForNearbyplayer(playerid, text[])
  1271. {
  1272.     new Float:posX, Float:posY, Float:posZ;
  1273.     GetPlayerPos(playerid, posX, posY, posZ);
  1274.     for (new p = 0; p<MAX_PLAYERS; p++)
  1275.     {
  1276.         if (IsPlayerConnected(p))
  1277.         {
  1278.             if(IsPlayerInRangeOfPoint(p, 6, posX, posY, posZ))
  1279.             {
  1280.                 SendClientMessage(p, COLOR_RED, text);
  1281.             }
  1282.         }
  1283.     }
  1284. }
  1285.  
  1286. stock IsPlayerpAdmin(playerid)
  1287. {
  1288.     if(PlayerInfo[playerid][pAdmin] == 1) return true;
  1289.     return false;
  1290. }
  1291.  
  1292. stock ShowTextDrawMessage(playerid, Text:textdrawID, message[])
  1293. {
  1294.     TextDrawHideForPlayer(playerid, textdrawID);
  1295.     TextDrawSetString(textdrawID, message);
  1296.     TextDrawShowForPlayer(playerid, textdrawID);
  1297.  
  1298.     return 1;
  1299. }
Advertisement
Add Comment
Please, Sign In to add comment