HLMOD.HU Forrás Megtekintés - www.hlmod.hu
  1. #include <sourcemod>
  2. #include <sdktools>
  3. #define MAX_WEAPONS 37
  4.  
  5. public Plugin:myinfo = {
  6. name = "Fegyver lehívás",
  7. author = "Nexd",
  8. version = "1.0",
  9. url = "http://hlmod.hu/"
  10. };
  11.  
  12. new const String:g_weapons[MAX_WEAPONS][] = {
  13. "weapon_ak47", "weapon_aug", "weapon_bizon", "weapon_deagle", "weapon_decoy", "weapon_elite", "weapon_famas", "weapon_fiveseven", "weapon_flashbang",
  14. "weapon_g3sg1", "weapon_galilar", "weapon_glock", "weapon_hegrenade", "weapon_hkp2000", "weapon_incgrenade", "weapon_knife", "weapon_m249", "weapon_m4a1",
  15. "weapon_mac10", "weapon_mag7", "weapon_molotov", "weapon_mp7", "weapon_mp9", "weapon_negev", "weapon_nova", "weapon_p250", "weapon_p90", "weapon_sawedoff",
  16. "weapon_scar20", "weapon_sg556", "weapon_smokegrenade", "weapon_ssg08", "weapon_taser", "weapon_tec9", "weapon_ump45", "weapon_xm1014", "weapon_awp"
  17. };
  18.  
  19. public OnPluginStart()
  20. {
  21. RegAdminCmd("sm_fegyver", smWeapon, ADMFLAG_BAN, "- <célpont> <fegyverneve>");
  22. RegAdminCmd("sm_fegyverek", smWeaponList, ADMFLAG_BAN, "- fegyver lista");
  23. }
  24.  
  25. public Action:smWeapon(id, args)
  26. {
  27. if(args < 2)
  28. {
  29. ReplyToCommand(id, "[SM] Használat: !fegyver <célpont> <fegyverneve>");
  30. return Plugin_Handled;
  31. }
  32.  
  33. decl String:sArg[256];
  34. decl String:sTempArg[32];
  35. decl String:sWeaponName[32];
  36. decl String:sWeaponNameTemp[32];
  37. decl iL;
  38. decl iNL;
  39.  
  40. GetCmdArgString(sArg, sizeof(sArg));
  41. iL = BreakString(sArg, sTempArg, sizeof(sTempArg));
  42.  
  43. if((iNL = BreakString(sArg[iL], sWeaponName, sizeof(sWeaponName))) != -1)
  44. iL += iNL;
  45.  
  46. new i;
  47. new iValid = 0;
  48.  
  49. if(StrContains(sWeaponName, "weapon_") == -1)
  50. {
  51. FormatEx(sWeaponNameTemp, 31, "weapon_");
  52. StrCat(sWeaponNameTemp, 31, sWeaponName);
  53.  
  54. strcopy(sWeaponName, 31, sWeaponNameTemp);
  55. }
  56.  
  57. for(i = 0; i < MAX_WEAPONS; ++i)
  58. {
  59. if(StrEqual(sWeaponName, g_weapons[i]))
  60. {
  61. iValid = 1;
  62. break;
  63. }
  64. }
  65.  
  66. if(!iValid)
  67. {
  68. ReplyToCommand(id, "[SM] A fegyver neve (%s) érvénytelen", sWeaponName);
  69. return Plugin_Handled;
  70. }
  71.  
  72. decl String:sTargetName[MAX_TARGET_LENGTH];
  73. decl sTargetList[1];
  74. decl bool:bTN_IsML;
  75.  
  76. new iTarget = -1;
  77.  
  78. if(ProcessTargetString(sTempArg, id, sTargetList, 1, COMMAND_FILTER_ALIVE|COMMAND_FILTER_NO_MULTI, sTargetName, sizeof(sTargetName), bTN_IsML) > 0)
  79. iTarget = sTargetList[0];
  80.  
  81. if(iTarget != -1 && !IsFakeClient(iTarget))
  82. GivePlayerItem(iTarget, sWeaponName);
  83.  
  84. return Plugin_Handled;
  85. }
  86.  
  87. public Action:smWeaponList(id, args)
  88. {
  89. new i;
  90. for(i = 0; i < MAX_WEAPONS; ++i)
  91. ReplyToCommand(id, "%s", g_weapons[i]);
  92.  
  93. ReplyToCommand(id, "");
  94. ReplyToCommand(id, "* Nem kell odaírnod a weapon_ előtagot");
  95.  
  96. return Plugin_Handled;
  97. }