Advertisement
S4T3K

s_damages

Apr 25th, 2014
199
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 26.44 KB | None | 0 0
  1. #include <a_samp>
  2. #include <s_useful>
  3. #include <zcmd>
  4. #include <Thread>
  5. #include <streamer>
  6.  
  7. new PlayerText:Damages[MAX_PLAYERS][11];
  8. new t_updt, texte[144];
  9.  
  10.  
  11. /**********************
  12. Parties du corps
  13. **********************/
  14.  
  15.  
  16. #define TORSE 3
  17. #define GROIN 4
  18. #define BRAS_GAUCHE 5
  19. #define BRAS_DROIT 6
  20. #define JAMBE_GAUCHE 7
  21. #define JAMBE_DROITE 8
  22. #define TETE 9
  23.  
  24.  
  25. /*********************
  26. Dégâts personnalisables
  27. Note : Ils ne sont pas pris en compte pour :
  28. • Tirs dans la tête
  29. • Tirs dans le groin
  30. **********************/
  31.  
  32. #define D_0 5.0 // Poing
  33. #define D_1 7.0 // Poing américain
  34. #define D_2 10.0 // Club de golf
  35. #define D_3 8.0 // Matraque
  36. #define D_4 12.0 // Couteau
  37. #define D_5 8.0 // Batte de base-ball
  38. #define D_6 8.5 // Pelle
  39. #define D_7 6.0 // Queue de billard
  40. #define D_8 15.0 // Katana
  41. #define D_9 15.0 // Tronçonneuse
  42. #define D_10 6.0 // Dildo double
  43. #define D_11 6.0 // Dildo
  44. #define D_12 6.0 // Vibro
  45. #define D_13 6.0 // Vibro argent
  46. #define D_14 6.0 // Fleurs
  47. #define D_15 7.0 // Canne
  48. #define D_16 70.0 // Grenade
  49. #define D_17 15.0 // Grenade fumigène (à check)
  50. #define D_18 40.0 // Molotov
  51. #define D_22 20.0 // Colt
  52. #define D_23 17.0 // Silencieux
  53. #define D_24 47.0 // Desert Eagle
  54. #define D_25 30.0 // Pompe
  55. #define D_26 27.0 // Canon scié
  56. #define D_27 30.0 // Spas
  57. #define D_28 20.0 // Uzi
  58. #define D_29 23.0 // MP5
  59. #define D_30 25.0 // AK-47
  60. #define D_31 27.5 // M4A1
  61. #define D_32 20.0 // Tec-9
  62. #define D_33 75.0 // Fusil de campagne (Trad by Kilou)
  63. #define D_34 100.0 // Sniper rifle
  64. #define D_35 150.0 // RPG-7
  65. #define D_36 175.0 // Heat Steaker RPG
  66. #define D_37 35.0 // Lance flammes
  67. #define D_38 40.0 // Minigun
  68. #define D_39 150.0 // C4
  69. #define D_41 15.0 // Bombe à tag
  70. #define D_42 17.0 // Extincteur
  71.  
  72.  
  73. #define MAX_ARME_SOL 3000
  74. #define COULEUR_ACTION 0xB462F6F6
  75. #define PRESSED(%0) \
  76.     (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
  77.  
  78.  
  79. new parme[MAX_PLAYERS];
  80. new armes[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 41, 42, 16, 18, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39};
  81. new armes_feu[] = {16, 18, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39};
  82. new armes_blanches[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 41, 42};
  83. new pistolet[] = {22, 23, 24};
  84. new explosifs[] = {16, 17, 18, 34, 35, 36, 37, 39};
  85. new auto[] = {27, 28, 29, 30, 31, 32, 38};
  86. new shotgun[] = {27, 28, 29};
  87. new armes_lourdes[] = {8, 9, 25, 26, 27, 30, 31, 33, 34, 35, 36, 37, 38};
  88.  
  89. #pragma unused armes, armes_blanches, auto, explosifs, pistolet, shotgun
  90.  
  91. new armesNom[] =
  92. {
  93.     "poing", "poing américain", "club de golf", "matraque", "couteau", "batte de base-ball", "queue de billard", "katana", "tronçonneuse", "double dildo", "dildo", "vibromasseur",
  94.     "vibromasseur en argent", "fleurs", "canne", "grenades", "grenades fumigène", "cocktails molotov", "", "", "", "colt .45", "colt .45 silencieux", "desert eagle", "fusil à pompe",
  95.     "fusil à canon scié", "spas 12", "micro UZI", "MP5", "AK-47", "M4A1", "TEC-9", "fusil de chasse", "fusil de sniper", "lance roquettes", "lance roquette téléguidé", "lance-flammes",
  96.     "minigun", "pain de C4", "détonateur", "bombe à tag", "extincteur", "appareil photo"
  97. };
  98.  
  99. new armesModel[] =
  100. {
  101.     15969, 331, 333, 334, 335, 336, 337, 338, 339, 341, 321, 322, 323, 324, 325, 326, 342, 343, 344, 15969, 15969, 15969, 346, 347, 348, 349, 350, 351, 352, 353, 355, 356, 372, 357, 358, 359,
  102.     360, 361, 362, 363, 364, 365, 366
  103. };
  104.  
  105.  
  106. static arme_sol;
  107.  
  108. enum winfo
  109. {
  110.     Float:x,
  111.     Float:y,
  112.     Float:z,
  113.     vw,
  114.     int,
  115.     arme,
  116.     muni,
  117.     objet,
  118.     Text3D:label,
  119. };
  120.  
  121. new wInfo[MAX_ARME_SOL][winfo];
  122.  
  123. forward cacherDegats(playerid, did);
  124. forward UpdateSkin(playerid);
  125. forward OnPlayerWeaponChange(playerid, oldw, neww);
  126.  
  127. public OnFilterScriptInit()
  128. {
  129.     t_updt = CreateThread("UpdateSkin");
  130.     return printf(">> s_damages chargé !");
  131. }
  132.  
  133. public OnFilterScriptExit()
  134. {
  135.     DechargerTD();
  136.     DestroyAllWeaponOnGround();
  137.     DestroyThread(t_updt);
  138.     return printf(">> s_damages déchargé !");
  139. }
  140.  
  141. public OnPlayerConnect(playerid)
  142. {
  143.     ChargerTD(playerid);
  144.     SetDisabled
  145.     return 1;
  146. }
  147.  
  148. public OnPlayerUpdate(playerid)
  149. {
  150.     new armee;
  151.     armee = GetPlayerWeapon(playerid);
  152.     if(parme[playerid] != armee) OnPlayerWeaponChange(playerid, parme[playerid], armee);
  153.     parme[playerid] = armee;
  154.     return 1;
  155. }
  156.  
  157. public OnPlayerDeath(playerid, killerid, reason)
  158. {
  159.     DeletePVar(playerid, "BrasBlesser");
  160.     DeletePVar(playerid, "JambeBlesser");
  161.     ResetPlayerWeapons(playerid);
  162.     return 1;
  163. }
  164.  
  165. public OnPlayerWeaponChange(playerid, oldw, neww)
  166. {
  167.     for(new w = 0; w < sizeof(armes_lourdes); w++)
  168.     {
  169.         if(neww == armes_lourdes[w] && GetPVarInt(playerid, "BrasBlesser") != 0)
  170.         {
  171.             for(new model = 0; model < sizeof(armesModel); model++)
  172.             {
  173.                 if(neww == model) DropWeapon(playerid, neww, GetPlayerAmmo(playerid), armesModel[model]);
  174.             }
  175.             return SendErrorMessage(playerid, "Vous ne pouvez pas porter d'arme lourde avec un bras blessé !");
  176.         }
  177.     }
  178.     return 1;
  179. }
  180.  
  181. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  182. {
  183.     if(PRESSED(KEY_SPRINT) && GetPVarInt(playerid, "JambeBlesser") != 0)
  184.     {
  185.         new attempt = random(5);
  186.         switch(attempt)
  187.         {
  188.             case 3:
  189.             {
  190.                 ApplyAnimation(playerid, "PARACHUTE", "FALL_skyDive_DIE", 4.1, 0, 1, 1, 1, 5000);
  191.                 SendClientMessage(playerid, 0xD15401FF, "[ANIM]{FFFFFF} Tu as tenté de courrir avec une jambe blessée et tu es tombé. Utilise /selever pour te relever !");
  192.                 new dgun = random(5);
  193.                 switch(dgun)
  194.                 {
  195.                     case 2:
  196.                     {
  197.                         for(new model = 0; model < sizeof(armesModel); model++)
  198.                         {
  199.                             if(GetPlayerWeapon(playerid) != 0 && GetPlayerWeapon(playerid) == model) DropWeapon(playerid, GetPlayerWeapon(playerid), GetPlayerAmmo(playerid), armesModel[model]);
  200.                         }
  201.                     }
  202.                 }
  203.             }
  204.             default: ClearAnimations(playerid);
  205.         }
  206.     }
  207.     return 1;
  208. }
  209.  
  210.  
  211. public OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid, bodypart)
  212. {
  213.     switch(weaponid)
  214.     {
  215.         case 0: amount = D_0;
  216.         case 1: amount = D_1;
  217.         case 2: amount = D_2;
  218.         case 3: amount = D_3;
  219.         case 4: amount = D_4;
  220.         case 5: amount = D_5;
  221.         case 6: amount = D_6;
  222.         case 7: amount = D_7;
  223.         case 8: amount = D_8;
  224.         case 9: amount = D_9;
  225.         case 10: amount = D_10;
  226.         case 11: amount = D_11;
  227.         case 12: amount = D_12;
  228.         case 13: amount = D_13;
  229.         case 14: amount = D_14;
  230.         case 15: amount = D_15;
  231.         case 16: amount = D_16;
  232.         case 17: amount = D_17;
  233.         case 18: amount = D_18;
  234.         case 22: amount = D_22;
  235.         case 23: amount = D_23;
  236.         case 24: amount = D_24;
  237.         case 25: amount = D_25;
  238.         case 26: amount = D_26;
  239.         case 27: amount = D_27;
  240.         case 28: amount = D_28;
  241.         case 29: amount = D_29;
  242.         case 30: amount = D_30;
  243.         case 31: amount = D_31;
  244.         case 32: amount = D_32;
  245.         case 33: amount = D_33;
  246.         case 34: amount = D_34;
  247.         case 35: amount = D_35;
  248.         case 36: amount = D_36;
  249.         case 37: amount = D_37;
  250.         case 38: amount = D_38;
  251.         case 39: amount = D_39;
  252.         case 41: amount = D_41;
  253.         case 42: amount = D_42;
  254.     }
  255.    
  256.     switch(bodypart)
  257.     {
  258.         case 3: // Torse
  259.         {
  260.             PlayerTextDrawShow(playerid, Damages[playerid][5]);
  261.             SetTimerEx("cacherDegats", 3000, false, "ii", playerid, 5);
  262.             return 1;
  263.         }
  264.         case 4: // Groin
  265.         {
  266.             PlayerTextDrawShow(playerid, Damages[playerid][6]);
  267.             SetTimerEx("cacherDegats", 3000, false, "ii", playerid, 6);
  268.             for(new a = 0; a < sizeof(armes_feu); a++)
  269.             {
  270.                 if(armes_feu[a] == weaponid) SetPlayerHealth(playerid, 0.0);
  271.             }
  272.             return 1;
  273.         }
  274.         case 5: // Bras gauche
  275.         {
  276.             PlayerTextDrawShow(playerid, Damages[playerid][8]);
  277.             SetTimerEx("cacherDegats", 3000, false, "ii", playerid, 8);
  278.             for(new a = 0; a < sizeof(armes_feu); a++)
  279.             {
  280.                 if(armes_feu[a] == weaponid)
  281.                 {
  282.                     if(GetPlayerWeapon(playerid) != 0 ||  GetPlayerWeapon(playerid) != 44 || GetPlayerWeapon(playerid) != 45 || GetPlayerWeapon(playerid) != 46)
  283.                     {
  284.                         SetPVarInt(playerid, "BrasBlesser", 1);
  285.                         for(new model = 0; model < sizeof(armesModel); model++)
  286.                         {
  287.                             if(weaponid == model) DropWeapon(playerid, weaponid, GetPlayerAmmo(playerid), armesModel[model]);
  288.                         }
  289.                         format(texte, sizeof(texte), "* %s laisse tomber son %s au sol à la suite d'un tir dans le bras.", GetName(playerid), GetWName(weaponid));
  290.                         ProxDetector(10.0, playerid, texte, COULEUR_ACTION);
  291.                     }
  292.                 }
  293.             }
  294.             return 1;
  295.         }
  296.         case 6: // Bras droit
  297.         {
  298.             PlayerTextDrawShow(playerid, Damages[playerid][7]);
  299.             SetTimerEx("cacherDegats", 3000, false, "ii", playerid, 7);
  300.             for(new a = 0; a < sizeof(armes_feu); a++)
  301.             {
  302.                 if(armes_feu[a] == weaponid)
  303.                 {
  304.                     if(GetPlayerWeapon(playerid) != 0 ||  GetPlayerWeapon(playerid) != 44 || GetPlayerWeapon(playerid) != 45 || GetPlayerWeapon(playerid) != 46)
  305.                     {
  306.                         SetPVarInt(playerid, "BrasBlesser", 1);
  307.                         for(new model = 0; model < sizeof(armesModel); model++)
  308.                         {
  309.                             if(armesModel[model] == weaponid) DropWeapon(playerid, weaponid, GetPlayerAmmo(playerid), armesModel[model]);
  310.                         }
  311.                         format(texte, sizeof(texte), "* %s laisse tomber son %s au sol à la suite d'un tir dans le bras.", GetName(playerid), GetWName(GetPlayerWeapon(playerid)));
  312.                         ProxDetector(10.0, playerid, texte, COULEUR_ACTION);
  313.                     }
  314.                 }
  315.                 return 1;
  316.             }
  317.         }
  318.         case 7: // Jambe gauche
  319.         {
  320.             PlayerTextDrawShow(playerid, Damages[playerid][10]);
  321.             SetTimerEx("cacherDegats", 3000, false, "ii", playerid, 10);
  322.             for(new a = 0; a < sizeof(armes_feu); a++)
  323.             {
  324.                 if(armes_feu[a] == weaponid)
  325.                 {
  326.                     ApplyAnimation(playerid, "PARACHUTE", "FALL_skyDive_DIE", 4.1, 0, 1, 1, 1, 5000);
  327.                     SetPVarInt(playerid, "JambeBlesser", 1);
  328.                     format(texte, sizeof(texte), "* %s tombe suite à la balle reçue dans sa jambe !", GetName(playerid));
  329.                     ProxDetector(10.0, playerid, texte, COULEUR_ACTION);
  330.                 }
  331.                 return 1;
  332.             }
  333.         }
  334.         case 8:
  335.         {
  336.             PlayerTextDrawShow(playerid, Damages[playerid][9]);
  337.             SetTimerEx("cacherDegats", 3000, false, "ii", playerid, 9);
  338.             for(new a = 0; a < sizeof(armes_feu); a++)
  339.             {
  340.                 if(armes_feu[a] == weaponid)
  341.                 {
  342.                     ApplyAnimation(playerid, "PARACHUTE", "FALL_skyDive_DIE", 4.1, 0, 1, 1, 1, 5000);
  343.                     SetPVarInt(playerid, "JambeBlesser", 1);
  344.                     format(texte, sizeof(texte), "* %s tombe suite à la balle reçue dans sa jambe !", GetName(playerid));
  345.                     ProxDetector(10.0, playerid, texte, COULEUR_ACTION);
  346.                 }
  347.             }
  348.         }
  349.         case 9:
  350.         {
  351.             PlayerTextDrawShow(playerid, Damages[playerid][5]);
  352.             SetTimerEx("cacherDegats", 3000, false, "ii", playerid, 4);
  353.             for(new a = 0; a < sizeof(armes_feu); a++)
  354.             {
  355.                 if(armes_feu[a] == weaponid) SetPlayerHealth(playerid, 0.0);
  356.             }
  357.             return 1;
  358.         }
  359.     }
  360.     return 1;
  361. }
  362.  
  363. CMD:voirmodel(playerid, params[])
  364. {
  365.     #pragma unused params
  366.     if(GetPVarInt(playerid, "Model") != 0)
  367.     {
  368.         CacherModel(playerid);
  369.         return 1;
  370.     }
  371.     else
  372.     {
  373.         SetPVarInt(playerid, "Model", 1);
  374.         MontrerModel(playerid);
  375.         return 1;
  376.     }
  377. }
  378.  
  379. CMD:rarme(playerid, params[])
  380. {
  381.     #pragma unused params
  382.     if(GetPVarInt(playerid, "BrasBlesser") != 0) return SendErrorMessage(playerid, "Tu ne peux pas ramasser une arme avec une balle dans le bras !");
  383.     else
  384.     {
  385.         for(new w = 0; w < sizeof(wInfo); w++)
  386.         {
  387.             if(IsPlayerInRangeOfPoint(playerid, 2.0, wInfo[w][x], wInfo[w][y], wInfo[w][z]) && GetPlayerVirtualWorld(playerid) == wInfo[w][vw] && GetPlayerInterior(playerid) == wInfo[w][int])
  388.             {
  389.                 GivePlayerWeapon(playerid, wInfo[w][arme], wInfo[w][muni]);
  390.                 DestroyDynamicObject(wInfo[w][objet]);
  391.                 arme_sol--;
  392.             }
  393.         }
  394.     }
  395.     return 1;
  396. }
  397.  
  398. CMD:selever(playerid, params[])
  399. {
  400.     #pragma unused params
  401.     if(GetPVarInt(playerid, "JambeBlesser") != 1) return SendErrorMessage(playerid, "Tu n'es pas au sol !");
  402.     else
  403.     {
  404.         DeletePVar(playerid, "JambeBlesser");
  405.         ClearAnimations(playerid);
  406.         return SendClientMessage(playerid, -1, "{D15401}[ANIM]{FFFFFF} Tu t'es levé mais tu ne peux plus courrir ! Une de tes jambes est gravement blessée !");
  407.     }
  408. }
  409.  
  410.  
  411. public UpdateSkin(playerid)
  412. {
  413.     PlayerTextDrawSetPreviewModel(playerid, Damages[playerid][3], GetPlayerSkin(playerid));
  414.     SleepThread(1000);
  415.     return 1;
  416. }
  417.  
  418. public cacherDegats(playerid, did)
  419. {
  420.     return PlayerTextDrawHide(playerid, Damages[playerid][did]);
  421. }
  422.  
  423. GetWName(weaponid)
  424. {
  425.     for(new a = 0; a < sizeof(armesNom); a++)
  426.     {
  427.         if(a == weaponid) return armesNom[a];
  428.     }
  429.     return 0;
  430. }
  431.  
  432. DropWeapon(playerid, weaponid, munit, model)
  433. {
  434.     if(arme_sol + 1 > MAX_ARME_SOL) return 0;
  435.     new w;
  436.     for(w = 0; w < sizeof(wInfo); w++)
  437.     {
  438.         if(!IsValidDynamicObject(wInfo[w][objet])) break;
  439.     }
  440.     new Float:p[3];
  441.     GetPlayerPos(playerid, p[0], p[1], p[2]);
  442.     wInfo[w][x] = p[0];
  443.     wInfo[w][y] = p[1];
  444.     wInfo[w][z] = p[2];
  445.     wInfo[w][vw] = GetPlayerVirtualWorld(playerid);
  446.     wInfo[w][int] = GetPlayerInterior(playerid);
  447.     wInfo[w][arme] = weaponid;
  448.     wInfo[w][muni] = munit;
  449.     format(texte, sizeof(texte), "[%s - %d munitions]", GetWName(weaponid), munit);
  450.     wInfo[w][label] = CreateDynamic3DTextLabel(texte, 0x33CCFFFF, p[0], p[1], floatadd(p[2], 0.5), 10.0, GetPlayerVirtualWorld(playerid), 0, GetPlayerInterior(playerid));
  451.     wInfo[w][objet] = CreateDynamicObject(model, p[0], p[1], p[2], 0.0, 0.0, 0.0, GetPlayerVirtualWorld(playerid), GetPlayerInterior(playerid));
  452.     RemovePlayerWeapon(playerid, weaponid);
  453.     arme_sol++;
  454.     return 1;
  455. }
  456.  
  457. ChargerTD(playerid)
  458. {
  459.     Damages[playerid][0] = CreatePlayerTextDraw(playerid, 509.000000, 233.000000, "                            ");
  460.     PlayerTextDrawBackgroundColor(playerid, Damages[playerid][0], 0);
  461.     PlayerTextDrawFont(playerid, Damages[playerid][0], 1);
  462.     PlayerTextDrawLetterSize(playerid, Damages[playerid][0], 0.500000, 22.500001);
  463.     PlayerTextDrawColor(playerid, Damages[playerid][0], -1);
  464.     PlayerTextDrawSetOutline(playerid, Damages[playerid][0], 0);
  465.     PlayerTextDrawSetProportional(playerid, Damages[playerid][0], 1);
  466.     PlayerTextDrawSetShadow(playerid, Damages[playerid][0], 1);
  467.     PlayerTextDrawUseBox(playerid, Damages[playerid][0], 1);
  468.     PlayerTextDrawBoxColor(playerid, Damages[playerid][0], 52);
  469.     PlayerTextDrawTextSize(playerid, Damages[playerid][0], 632.000000, 31.000000);
  470.     PlayerTextDrawSetSelectable(playerid, Damages[playerid][0], 0);
  471.    
  472.     Damages[playerid][1] = CreatePlayerTextDraw(playerid, 509.000000, 230.000000, "                    ");
  473.     PlayerTextDrawBackgroundColor(playerid, Damages[playerid][1], 255);
  474.     PlayerTextDrawFont(playerid, Damages[playerid][1], 1);
  475.     PlayerTextDrawLetterSize(playerid, Damages[playerid][1], 0.500000, 0.000000);
  476.     PlayerTextDrawColor(playerid, Damages[playerid][1], -1);
  477.     PlayerTextDrawSetOutline(playerid, Damages[playerid][1], 0);
  478.     PlayerTextDrawSetProportional(playerid, Damages[playerid][1], 1);
  479.     PlayerTextDrawSetShadow(playerid, Damages[playerid][1], 1);
  480.     PlayerTextDrawUseBox(playerid, Damages[playerid][1], 1);
  481.     PlayerTextDrawBoxColor(playerid, Damages[playerid][1], 255);
  482.     PlayerTextDrawTextSize(playerid, Damages[playerid][1], 632.000000, 0.000000);
  483.     PlayerTextDrawSetSelectable(playerid, Damages[playerid][1], 0);
  484.    
  485.     Damages[playerid][2] = CreatePlayerTextDraw(playerid, 509.000000, 438.000000, "                    ");
  486.     PlayerTextDrawBackgroundColor(playerid, Damages[playerid][2], 0);
  487.     PlayerTextDrawFont(playerid, Damages[playerid][2], 1);
  488.     PlayerTextDrawLetterSize(playerid, Damages[playerid][2], 0.500000, 0.000000);
  489.     PlayerTextDrawColor(playerid, Damages[playerid][2], -1);
  490.     PlayerTextDrawSetOutline(playerid, Damages[playerid][2], 0);
  491.     PlayerTextDrawSetProportional(playerid, Damages[playerid][2], 1);
  492.     PlayerTextDrawSetShadow(playerid, Damages[playerid][2], 1);
  493.     PlayerTextDrawUseBox(playerid, Damages[playerid][2], 1);
  494.     PlayerTextDrawBoxColor(playerid, Damages[playerid][2], 255);
  495.     PlayerTextDrawTextSize(playerid, Damages[playerid][2], 632.000000, 0.000000);
  496.     PlayerTextDrawSetSelectable(playerid, Damages[playerid][2], 0);
  497.    
  498.     Damages[playerid][3] = CreatePlayerTextDraw(playerid, 490.000000, 241.000000, "Skin");
  499.     PlayerTextDrawBackgroundColor(playerid, Damages[playerid][3], 0);
  500.     PlayerTextDrawFont(playerid, Damages[playerid][3], TEXT_DRAW_FONT_MODEL_PREVIEW);
  501.     PlayerTextDrawLetterSize(playerid, Damages[playerid][3], 0.500000, 1.000000);
  502.     PlayerTextDrawColor(playerid, Damages[playerid][3], -1);
  503.     PlayerTextDrawSetOutline(playerid, Damages[playerid][3], 0);
  504.     PlayerTextDrawSetProportional(playerid, Damages[playerid][3], 1);
  505.     PlayerTextDrawSetShadow(playerid, Damages[playerid][3], 1);
  506.     PlayerTextDrawUseBox(playerid, Damages[playerid][3], 1);
  507.     PlayerTextDrawBoxColor(playerid, Damages[playerid][3], 255);
  508.     PlayerTextDrawTextSize(playerid, Damages[playerid][3], 160.000000, 191.000000);
  509.     PlayerTextDrawSetPreviewModel(playerid, Damages[playerid][3], 171); // Mon skin habituel sur samp :o
  510.     PlayerTextDrawSetPreviewRot(playerid, Damages[playerid][3], 0.000000, 0.000000, 0.000000, 0.899999);
  511.     PlayerTextDrawSetSelectable(playerid, Damages[playerid][3], 0);
  512.    
  513.     Damages[playerid][4] = CreatePlayerTextDraw(playerid, 560.000000, 250.000000, "                                     "); // Tête
  514.     PlayerTextDrawBackgroundColor(playerid, Damages[playerid][4], 255);
  515.     PlayerTextDrawFont(playerid, Damages[playerid][4], 1);
  516.     PlayerTextDrawLetterSize(playerid, Damages[playerid][4], 0.490000, 0.200000);
  517.     PlayerTextDrawColor(playerid, Damages[playerid][4], -239);
  518.     PlayerTextDrawSetOutline(playerid, Damages[playerid][4], 0);
  519.     PlayerTextDrawSetProportional(playerid, Damages[playerid][4], 1);
  520.     PlayerTextDrawSetShadow(playerid, Damages[playerid][4], 1);
  521.     PlayerTextDrawUseBox(playerid, Damages[playerid][4], 1);
  522.     PlayerTextDrawBoxColor(playerid, Damages[playerid][4], -16777164);
  523.     PlayerTextDrawTextSize(playerid, Damages[playerid][4], 581.000000, 0.000000);
  524.     PlayerTextDrawSetSelectable(playerid, Damages[playerid][4], 0);
  525.    
  526.     Damages[playerid][5] = CreatePlayerTextDraw(playerid, 558.000000, 279.000000, "                                     "); // Torse
  527.     PlayerTextDrawBackgroundColor(playerid, Damages[playerid][5], 255);
  528.     PlayerTextDrawFont(playerid, Damages[playerid][5], 1);
  529.     PlayerTextDrawLetterSize(playerid, Damages[playerid][5], 0.490000, 0.500000);
  530.     PlayerTextDrawColor(playerid, Damages[playerid][5], -239);
  531.     PlayerTextDrawSetOutline(playerid, Damages[playerid][5], 0);
  532.     PlayerTextDrawSetProportional(playerid, Damages[playerid][5], 1);
  533.     PlayerTextDrawSetShadow(playerid, Damages[playerid][5], 1);
  534.     PlayerTextDrawUseBox(playerid, Damages[playerid][5], 1);
  535.     PlayerTextDrawBoxColor(playerid, Damages[playerid][5], -16777164);
  536.     PlayerTextDrawTextSize(playerid, Damages[playerid][5], 585.000000, 0.000000);
  537.     PlayerTextDrawSetSelectable(playerid, Damages[playerid][5], 0);
  538.    
  539.     Damages[playerid][6] = CreatePlayerTextDraw(playerid, 565.000000, 332.000000, "                                     "); // Groin
  540.     PlayerTextDrawBackgroundColor(playerid, Damages[playerid][6], 255);
  541.     PlayerTextDrawFont(playerid, Damages[playerid][6], 1);
  542.     PlayerTextDrawLetterSize(playerid, Damages[playerid][6], 0.490000, 0.100000);
  543.     PlayerTextDrawColor(playerid, Damages[playerid][6], -239);
  544.     PlayerTextDrawSetOutline(playerid, Damages[playerid][6], 0);
  545.     PlayerTextDrawSetProportional(playerid, Damages[playerid][6], 1);
  546.     PlayerTextDrawSetShadow(playerid, Damages[playerid][6], 1);
  547.     PlayerTextDrawUseBox(playerid, Damages[playerid][6], 1);
  548.     PlayerTextDrawBoxColor(playerid, Damages[playerid][6], -16777164);
  549.     PlayerTextDrawTextSize(playerid, Damages[playerid][6], 578.000000, -2.000000);
  550.     PlayerTextDrawSetSelectable(playerid, Damages[playerid][6], 0);
  551.    
  552.     Damages[playerid][7] = CreatePlayerTextDraw(playerid, 541.000000, 280.000000, "                                     "); // Bras droit
  553.     PlayerTextDrawBackgroundColor(playerid, Damages[playerid][7], 255);
  554.     PlayerTextDrawFont(playerid, Damages[playerid][7], 1);
  555.     PlayerTextDrawLetterSize(playerid, Damages[playerid][7], 0.390000, 0.600001);
  556.     PlayerTextDrawColor(playerid, Damages[playerid][7], -239);
  557.     PlayerTextDrawSetOutline(playerid, Damages[playerid][7], 0);
  558.     PlayerTextDrawSetProportional(playerid, Damages[playerid][7], 1);
  559.     PlayerTextDrawSetShadow(playerid, Damages[playerid][7], 1);
  560.     PlayerTextDrawUseBox(playerid, Damages[playerid][7], 1);
  561.     PlayerTextDrawBoxColor(playerid, Damages[playerid][7], -16777164);
  562.     PlayerTextDrawTextSize(playerid, Damages[playerid][7], 555.000000, 0.000000);
  563.     PlayerTextDrawSetSelectable(playerid, Damages[playerid][7], 0);
  564.    
  565.     Damages[playerid][8] = CreatePlayerTextDraw(playerid, 589.000000, 280.000000, "                                     "); // Bras gauche
  566.     PlayerTextDrawBackgroundColor(playerid, Damages[playerid][8], 255);
  567.     PlayerTextDrawFont(playerid, Damages[playerid][8], 1);
  568.     PlayerTextDrawLetterSize(playerid, Damages[playerid][8], 0.390000, 0.600001);
  569.     PlayerTextDrawColor(playerid, Damages[playerid][8], -239);
  570.     PlayerTextDrawSetOutline(playerid, Damages[playerid][8], 0);
  571.     PlayerTextDrawSetProportional(playerid, Damages[playerid][8], 1);
  572.     PlayerTextDrawSetShadow(playerid, Damages[playerid][8], 1);
  573.     PlayerTextDrawUseBox(playerid, Damages[playerid][8], 1);
  574.     PlayerTextDrawBoxColor(playerid, Damages[playerid][8], -16777164);
  575.     PlayerTextDrawTextSize(playerid, Damages[playerid][8], 601.000000, 0.000000);
  576.     PlayerTextDrawSetSelectable(playerid, Damages[playerid][8], 0);
  577.    
  578.     Damages[playerid][9] = CreatePlayerTextDraw(playerid, 553.000000, 357.000000, "                                     "); // Jambe droite
  579.     PlayerTextDrawBackgroundColor(playerid, Damages[playerid][9], 255);
  580.     PlayerTextDrawFont(playerid, Damages[playerid][9], 1);
  581.     PlayerTextDrawLetterSize(playerid, Damages[playerid][9], 0.390000, 0.700001);
  582.     PlayerTextDrawColor(playerid, Damages[playerid][9], -239);
  583.     PlayerTextDrawSetOutline(playerid, Damages[playerid][9], 0);
  584.     PlayerTextDrawSetProportional(playerid, Damages[playerid][9], 1);
  585.     PlayerTextDrawSetShadow(playerid, Damages[playerid][9], 1);
  586.     PlayerTextDrawUseBox(playerid, Damages[playerid][9], 1);
  587.     PlayerTextDrawBoxColor(playerid, Damages[playerid][9], -16777164);
  588.     PlayerTextDrawTextSize(playerid, Damages[playerid][9], 570.000000, 0.000000);
  589.     PlayerTextDrawSetSelectable(playerid, Damages[playerid][9], 0);
  590.    
  591.     Damages[playerid][10] = CreatePlayerTextDraw(playerid, 575.000000, 357.000000, "                                     "); // Jambe gauche
  592.     PlayerTextDrawBackgroundColor(playerid, Damages[playerid][10], 255);
  593.     PlayerTextDrawFont(playerid, Damages[playerid][10], 1);
  594.     PlayerTextDrawLetterSize(playerid, Damages[playerid][10], 0.320000, 1.200001);
  595.     PlayerTextDrawColor(playerid, Damages[playerid][10], -239);
  596.     PlayerTextDrawSetOutline(playerid, Damages[playerid][10], 0);
  597.     PlayerTextDrawSetProportional(playerid, Damages[playerid][10], 1);
  598.     PlayerTextDrawSetShadow(playerid, Damages[playerid][10], 1);
  599.     PlayerTextDrawUseBox(playerid, Damages[playerid][10], 1);
  600.     PlayerTextDrawBoxColor(playerid, Damages[playerid][10], -16777164);
  601.     PlayerTextDrawTextSize(playerid, Damages[playerid][10], 596.000000, -1.000000);
  602.     PlayerTextDrawSetSelectable(playerid, Damages[playerid][10], 0);
  603.     return 1;
  604. }
  605.  
  606. DechargerTD()
  607. {
  608.     for(new p = 0; p < MAX_PLAYERS; p++)
  609.     {
  610.         if(!IsPlayerConnected(p)) continue;
  611.         for(new tdw = 0; tdw < 11; tdw++)
  612.         {
  613.             PlayerTextDrawDestroy(p, Damages[p][tdw]);
  614.         }
  615.     }
  616.     return 1;
  617. }
  618.  
  619. DestroyAllWeaponOnGround()
  620. {
  621.     for(new a = 0; a < sizeof(wInfo); a++)
  622.     {
  623.         if(IsValidDynamicObject(wInfo[a][objet])) DestroyDynamicObject(wInfo[a][objet]);
  624.     }
  625.     return 1;
  626. }
  627.  
  628. CacherModel(playerid)
  629. {
  630.     for(new td = 0; td < 11; td++)
  631.     {
  632.         PlayerTextDrawHide(playerid, Damages[playerid][td]);
  633.     }
  634.     return 1;
  635. }
  636.  
  637. MontrerModel(playerid)
  638. {
  639.     for(new td = 0; td < 4; td++)
  640.     {
  641.         PlayerTextDrawShow(playerid, Damages[playerid][td]);
  642.     }
  643. }
  644.  
  645. RemovePlayerWeapon(playerid, weaponid)
  646. {
  647.     new armeSlot[12] = 0;
  648.     new muniArme[12] = 0;
  649.     for(new s = 0; s < 12; s++)
  650.     {
  651.         new tArme, tMuni;
  652.         GetPlayerWeaponData(playerid, s, tArme, tMuni);
  653.        
  654.         if(tArme != weaponid && tMuni != 0)
  655.         {
  656.             GetPlayerWeaponData(playerid, s, armeSlot[s], muniArme[s]);
  657.         }
  658.     }
  659.    
  660.     ResetPlayerWeapons(playerid);
  661.     for(new s = 0; s != 12; s++)
  662.     {
  663.         if(muniArme[s] != 0)
  664.         {
  665.             GivePlayerWeapon(playerid, armeSlot[s], muniArme[s]);
  666.         }
  667.     }
  668.     return 1;
  669. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement