hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.03.29. 16:28



Jelenlévő felhasználók

Jelenleg 348 felhasználó van jelen :: 0 regisztrált, 0 rejtett és 348 vendég

A legtöbb felhasználó (1565 fő) 2020.11.21. 11:26-kor tartózkodott itt.

Regisztrált felhasználók: nincs regisztrált felhasználó az elmúlt 5 percben aktív felhasználók alapján

Utoljára aktív
Ahhoz hogy lásd ki volt utoljára aktív, be kell jelentkezned.



Az oldal teljeskörű
használatához regisztrálj.

Regisztráció

Kereső


Új téma nyitása  Hozzászólás a témához  [ 3 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: Fegyvermenü hiba javítása
HozzászólásElküldve: 2019.01.12. 12:35 
Offline
Senior Tag

Csatlakozott: 2015.11.20. 17:59
Hozzászólások: 270
Megköszönt másnak: 33 alkalommal
Megköszönték neki: 2 alkalommal
Sziasztok!

Valaki esetleg megnézi nekem hogy miért nem hozza létre a pályatilto_ini fájt? Köszi előre is!


Csatolmányok:
fegyvermenujavitott_palyatiltoval.sma [19.93 KiB]
Letöltve 55 alkalommal.

_________________
Kép
Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Fegyvermenü hiba javítása
HozzászólásElküldve: 2019.01.12. 20:15 
Offline
Félisten
Avatar

Csatlakozott: 2016.03.06. 14:20
Hozzászólások: 964
Megköszönt másnak: 102 alkalommal
Megköszönték neki: 134 alkalommal
matkoimre írta:
Sziasztok!

Valaki esetleg megnézi nekem hogy miért nem hozza létre a pályatilto_ini fájt? Köszi előre is!


Talán?

  1. #include < amxmodx >
  2. #include < amxmisc >
  3. #include < fun >
  4. #include < fakemeta >
  5. #include < cstrike >
  6. #include < hamsandwich >
  7.  
  8. #pragma semicolon       1
  9.  
  10. #define VERSION         "0.0.1"
  11.  
  12. #define Max_Players     32
  13.  
  14. #define OFFSET_PRIMARYWEAPON    116
  15. #define OFFSET_C4_SLOT      372
  16.  
  17. #define Weapon_Menu_Name    "Fegyverek"
  18. #define Pistol_Menu_Name    "Pisztolyok"
  19.  
  20. #define Next_Button     "KövetkezĹ‘"
  21. #define Back_Button     "Vissza"
  22. #define Exit_Button     "KilĂ©pĂ©s"
  23.  
  24. #define Money_Hud       ( 1 << 5 )
  25.  
  26. new g_iWPCT;
  27. new g_iWPTE;
  28.  
  29. new pCvarMaxCTWps;
  30. new pCvarMaxTEWps;
  31.  
  32. new pCvarWPBlock;
  33.  
  34. new pCvarFlash;
  35. new pCvarHe;
  36. new pCvarSmoke;
  37.  
  38. new pCvarKevlar;
  39. new pCvarDefuser;
  40.  
  41. new pCvarPrefix;
  42. new pCvarMoney;
  43. new pCvarBlockBuy;
  44. new pCvarUnAmmo;
  45.  
  46. new const g_szMessages [ ] [ ] =
  47. {
  48. "",
  49. "Csapatonként csak két ember AWP-zhet!",
  50. "^3%s^1 WP^4 csak^1 4v4-től használható!",
  51. "A vásárlás letíltva!",
  52. "Te már választottál fegyvert!"
  53. };
  54.  
  55. new const g_szWeaponMenuNames [ ] [ ] =  {
  56.  
  57. "M4A1",
  58. "AK47",
  59. "AWP",
  60. "M249",
  61. "AUG",
  62. "Famas",
  63. "Galil",
  64. "MP5",
  65. "XM1014",
  66. "M3",
  67. "Scout"
  68. };
  69.  
  70. new const g_szWeaponsName [ ] [ ] = {
  71.  
  72. "weapon_m4a1",
  73. "weapon_ak47",
  74. "weapon_awp",
  75. "weapon_m249",
  76. "weapon_aug",
  77. "weapon_famas",
  78. "weapon_galil",
  79. "weapon_mp5navy",
  80. "weapon_xm1014",
  81. "weapon_m3",
  82. "weapon_scout"
  83. };
  84.  
  85. new const g_szPistolsMenuNames [ ] [ ] =  {
  86.  
  87. "Deagle",
  88. "USP",
  89. "Glock18"
  90. };
  91.  
  92. new const g_szPistolsName [ ] [ ] = {
  93.  
  94. "weapon_deagle",
  95. "weapon_usp",
  96. "weapon_glock18"
  97. };
  98.  
  99.  
  100. new const g_szPistolName [ ] = "weapon_deagle";
  101.  
  102. const DoNotReload = ( ( 1 << CSW_HEGRENADE ) | ( 1 << CSW_SMOKEGRENADE ) | ( 1 << CSW_FLASHBANG ) | ( 1 << CSW_KNIFE ) | ( 1 << CSW_C4 ) );
  103. new const maxAmmo[ 31 ] = {
  104.  
  105. 0,
  106. 52,
  107. 0,
  108. 90,
  109. 1,
  110. 32,
  111. 1,
  112. 100,
  113. 90,
  114. 1,
  115. 120,
  116. 100,
  117. 100,
  118. 90,
  119. 90,
  120. 90,
  121. 100,
  122. 120,
  123. 30,
  124. 120,
  125. 200,
  126. 32,
  127. 90,
  128. 120,
  129. 90,
  130. 2,
  131. 35,
  132. 90,
  133. 90,
  134. 0,
  135. 100
  136. };
  137.  
  138. new g_szBuyCommands[  ][  ] =
  139. {
  140. "usp", "glock", "deagle", "p228", "elites", "fn57", "m3", "xm1014", "mp5", "tmp", "p90", "mac10", "ump45", "ak47",
  141. "galil", "famas", "sg552", "m4a1", "aug", "scout", "awp", "g3sg1", "sg550", "m249", "vest", "vesthelm", "flash", "hegren",
  142. "sgren", "defuser", "nvgs", "shield", "primammo", "secammo", "km45", "9x19mm", "nighthawk", "228compact", "12gauge",
  143. "autoshotgun", "smg", "mp", "c90", "cv47", "defender", "clarion", "krieg552", "bullpup", "magnum", "d3au1", "krieg550",
  144. "buyammo1", "buyammo2"
  145. };
  146.  
  147. new const g_szMenuCommands[  ] [  ] =
  148. {
  149. "fegyo",
  150. "say fegyo",
  151. "say_team fegyo",
  152.  
  153. "fegyver",
  154. "say fegyver",
  155. "say_team fegyver",
  156.  
  157. "say /fegyo",
  158. "say_team /fegyo",
  159.  
  160. "say /fegyver",
  161. "say_team /fegyver"
  162.  
  163. };
  164.  
  165. new g_szChatPrefix[ 64 ];
  166. new g_msgHideWeapon;
  167. new g_bHasWeapon[ Max_Players ];
  168.  
  169. public plugin_init ( ) {
  170.  
  171. register_plugin( "Advanced Weapon Menu", VERSION, "#YouCantStopMe" );
  172.  
  173. RegisterHam( Ham_Spawn, "player", "func_OpenWeaponMenu", 1 );
  174.  
  175. pCvarMaxCTWps   = register_cvar( "awm_max_ct_awp",  "2" ); // Ct-nél 2 AWP-s lehet.
  176. pCvarMaxTEWps   = register_cvar( "awm_max_te_awp",  "2" ); // Terroristáknál 2 AWP-s lehet.
  177.  
  178. pCvarWPBlock    = register_cvar( "awm_allow_wp_player",     "4" ); // Ha mindkét csapatban van 4-4 játékos akkor engedi az AWP-t
  179.  
  180. pCvarFlash  = register_cvar( "awm_give_flash",  "2" ); // Itt tudod beállítani ,hogy adjon-e füst gránátot. ( 0 = Nem ad ) Alap: 2 Flash gránát
  181. pCvarHe     = register_cvar( "awm_give_he",         "1" ); // Itt tudod beállítani ,hogy adjon-e füst gránátot. ( 0 = Nem ad ) Alap: 1 Robanó gránát
  182. pCvarSmoke  = register_cvar( "awm_give_smoke",  "0" ); // Itt tudod beállítani ,hogy adjon-e füst gránátot. ( 0 = Nem ad )
  183.  
  184. pCvarKevlar = register_cvar( "awm_give_kevlar", "2" ); // Itt tudod beállítani ,hogy adjon-e kevlárt. ( 0 = Nem Ad ) Alap: 2 ( Kevlár + Sisak )
  185. pCvarDefuser    = register_cvar( "awm_give_defuser",    "1" ); // Itt tudod beállítani ,hogy adjon-e defusert. ( 0 = Nem Ad )
  186.  
  187. pCvarUnAmmo = register_cvar( "awm_unlimited_ammo",  "1" ); // Itt tudod beállítani ,hogy elfoggyon-e a tár vagy ne. Alap: 1 ( Tehát nem fogy el a tár )
  188.  
  189. pCvarBlockBuy   = register_cvar( "awm_block_buy",   "1" ); // Itt tudod beállítani ,hogy tiltsa-e a vásárlást vagy ne. Alap 1 ( Tehát tiltva van ) ( 0 = Nincs tiltva )
  190. pCvarMoney  = register_cvar( "awm_set_money",   "0" ); // Itt tudod beállítani ,hogy mennyi pénze legyen a játékosoknak. ( 0 = Nincs , eltűnik a hudról is ) Alap: 0
  191. pCvarPrefix     = register_cvar( "awm_prefix",      "[.:DarK DemonS:.]" ); // Itt tudod beállítani, hogy mi legyen a Fegyvermenü prefix-je.
  192.  
  193. g_msgHideWeapon = get_user_msgid( "HideWeapon" );
  194.  
  195. for( new i = 0; i < sizeof( g_szBuyCommands ); i++ )
  196. register_clcmd( g_szBuyCommands[ i ], "cmd_BlockBuy" );
  197.  
  198. for( new i = 0; i < sizeof( g_szMenuCommands ); i++ )
  199. register_clcmd( g_szMenuCommands[ i ], "cmd_ShowWeaponMenu" );
  200.  
  201. register_event( "ResetHUD", "onResetHUD", "b" );
  202. register_event( "CurWeapon", "eCurWeapon", "be", "1=1" );
  203.  
  204. register_message( g_msgHideWeapon, "msgHideWeapon" );
  205.  
  206. register_logevent( "eRoundEnd", 2, "1=Round_End" );
  207.  
  208. loading_maps();
  209. }
  210. public loading_maps()
  211. {  
  212. new fajl[64],linedata[1024],currentmap[64],mapnev[32];
  213. get_mapname(currentmap,charsmax(currentmap));
  214. formatex(fajl, charsmax(fajl), "addons/amxmodx/configs/fegyvermenu_tiltas.ini");
  215.  
  216. if (!file_exists("addons/amxmodx/configs/fegyvermenu_tiltas.ini")) {
  217.     new len,buffer[512];
  218.     len += formatex(buffer[len], charsmax(buffer),";Csak  be azoknak a mapoknak a nevę´ amelyiken ne m󫶤jň® ˇ fegyvermen𮠐l:^n");
  219.     len += formatex(buffer[len], charsmax(buffer)-len,";^"awp_india^"^n");
  220.    
  221.     new file = fopen("addons/amxmodx/configs/fegyvermenu_tiltas.ini", "at");
  222.    
  223.     fprintf(file, buffer);
  224.     fclose(file);
  225.     return;
  226. }
  227.  
  228. new file = fopen(fajl, "rt");
  229.  
  230. while (file && !feof(file))
  231. {
  232.     // Read one line at a time
  233.     fgets(file, linedata, charsmax(linedata));
  234.     replace(linedata, charsmax(linedata), "^n", "");//ݲes sorokat eltđ®´Ąti
  235.    
  236.     parse(linedata,mapnev,31);
  237.     if(equali(currentmap,mapnev))
  238.     {
  239.         log_amx("A plugin '%s' mapon nem fut. (configs/fegyvermenu_tiltas.ini)",currentmap);
  240.         pause("ad");
  241.         return;
  242.     }
  243. }
  244. if (file) fclose(file);
  245. }
  246. public client_connect( iClient ) {
  247.  
  248. g_bHasWeapon[ iClient ] = false;
  249. }
  250.  
  251. public client_disconnect( iClient ) {
  252.  
  253. g_bHasWeapon[ iClient ] = false;
  254. }
  255.  
  256. public cmd_ShowWeaponMenu( iClient ) {
  257.  
  258. switch( g_bHasWeapon[ iClient ] ) {
  259.    
  260.     case true:
  261.     {
  262.         get_pcvar_string( pCvarPrefix, g_szChatPrefix, charsmax( g_szChatPrefix ) );
  263.         ColorChat( iClient, "^3%s %s" , g_szChatPrefix, g_szMessages[ 4 ] );
  264.        
  265.         return PLUGIN_HANDLED;
  266.     }
  267.     case false:     func_OpenWeaponMenu( iClient );
  268.     }
  269.     return PLUGIN_HANDLED;
  270. }
  271.  
  272. public cmd_BlockBuy( iClient ) {
  273.    
  274.     if( !get_pcvar_num( pCvarBlockBuy ) )
  275.         return PLUGIN_CONTINUE;
  276.    
  277.     get_pcvar_string( pCvarPrefix, g_szChatPrefix, charsmax( g_szChatPrefix ) );
  278.     ColorChat( iClient,  "^3%s %s" , g_szChatPrefix, g_szMessages[ 3 ] );
  279.     return PLUGIN_HANDLED;
  280. }
  281.  
  282. public eCurWeapon( iClient ) {
  283.    
  284.     if( get_pcvar_num( pCvarUnAmmo ) ) {
  285.        
  286.         if( is_user_alive( iClient ) ) {
  287.            
  288.             new weapon = read_data( 2 );
  289.             if( !( DoNotReload & ( 1 << weapon ) ) ) {
  290.                
  291.                 cs_set_user_bpammo( iClient, weapon, maxAmmo[ weapon ] );
  292.             }
  293.         }
  294.     }
  295. }
  296.  
  297. public onResetHUD( iClient ) {
  298.    
  299.     if( !get_pcvar_num( pCvarMoney ) ) {
  300.        
  301.         message_begin( MSG_ONE, g_msgHideWeapon, _, iClient );
  302.         write_byte( Money_Hud );
  303.         message_end( );
  304.     }
  305. }
  306.  
  307. public msgHideWeapon( ) {
  308.    
  309.     if( !get_pcvar_num( pCvarMoney ) ) {
  310.        
  311.         set_msg_arg_int( 1, ARG_BYTE, get_msg_arg_int( 1 ) | Money_Hud );
  312.     }
  313. }
  314.  
  315. public eRoundEnd ( ) {
  316.    
  317.     g_iWPCT = 0;
  318.     g_iWPTE = 0;
  319. }
  320.  
  321. public func_OpenWeaponMenu ( iClient ) {
  322.    
  323.     if( !is_user_alive( iClient ) )
  324.         return;
  325.    
  326.     cs_set_user_money( iClient, get_pcvar_num( pCvarMoney ) );
  327.    
  328.     get_pcvar_string( pCvarPrefix, g_szChatPrefix, charsmax( g_szChatPrefix ) );
  329.    
  330.     g_bHasWeapon[ iClient ] = false;
  331.    
  332.     new szMenuTitle[ 121 ];
  333.     new szMenuItem[ 121 ];
  334.    
  335.     format( szMenuTitle, charsmax( szMenuTitle ), "\r%s^n\w%s", g_szChatPrefix, Weapon_Menu_Name );
  336.    
  337.     StripUserWeapons( iClient );
  338.     new menu = menu_create( szMenuTitle, "func_OpenWeaponMenu_handler" );
  339.    
  340.     for( new i = 0; i < sizeof( g_szWeaponMenuNames ); i++ ) {
  341.        
  342.         if( i != 2 ) {
  343.            
  344.             format( szMenuItem, charsmax( szMenuItem ), "\w%s", g_szWeaponMenuNames[ i ] );
  345.         }
  346.         else {
  347.             switch( get_user_team( iClient ) )
  348.             {
  349.                 case 1: format( szMenuItem, charsmax( szMenuItem ), "\w%s \y[ElsĹ‘ %d embernek]", g_szWeaponMenuNames[ i ], get_pcvar_num( pCvarMaxTEWps ) );
  350.                     case 2: format( szMenuItem, charsmax( szMenuItem ), "\w%s \y[ElsĹ‘ %d embernek]", g_szWeaponMenuNames[ i ], get_pcvar_num( pCvarMaxCTWps ) );
  351.                     default: continue;
  352.             }
  353.         }
  354.        
  355.         menu_additem( menu, szMenuItem, _, 0 );
  356.     }
  357.    
  358.     menu_setprop( menu, MPROP_EXIT, MEXIT_ALL );
  359.     menu_setprop( menu, MPROP_BACKNAME, Back_Button );
  360.     menu_setprop( menu, MPROP_NEXTNAME, Next_Button );
  361.     menu_setprop( menu, MPROP_EXITNAME, Exit_Button );
  362.     menu_display( iClient, menu );
  363. }
  364.  
  365. public func_OpenWeaponMenu_handler( iClient, iMenu, iItem ) {
  366.    
  367.     if( iItem == MENU_EXIT ) {
  368.        
  369.         StripUserWeapons( iClient );
  370.         g_bHasWeapon[ iClient ] = false;
  371.         menu_destroy( iMenu );
  372.         return PLUGIN_HANDLED;
  373.     }
  374.    
  375.     new data[ 6 ], szName[ 64 ];
  376.     new access, callback;
  377.     menu_item_getinfo( iMenu, iItem, access, data, charsmax( data ), szName, charsmax( szName ), callback );
  378.    
  379.     get_pcvar_string( pCvarPrefix, g_szChatPrefix, charsmax( g_szChatPrefix ) );
  380.    
  381.     if( iItem != 2 ) {
  382.        
  383.         give_item( iClient, g_szWeaponsName[ iItem ] );
  384.        
  385.         ColorChat( iClient,  "^3%s^1 Te az ^4%s^1-t választottad!", g_szChatPrefix ,g_szWeaponMenuNames[ iItem ] );
  386.     }
  387.     else {
  388.        
  389.         new iTeams[ CsTeams ];
  390.         GetPlayerCount( iTeams );
  391.        
  392.         if( iTeams[ CS_TEAM_T ] < get_pcvar_num( pCvarWPBlock )
  393.         || iTeams[ CS_TEAM_CT ] < get_pcvar_num( pCvarWPBlock ) ) {
  394.            
  395.             ColorChat( iClient,  g_szMessages[ 2 ], g_szChatPrefix );
  396.             func_OpenWeaponMenu( iClient );
  397.            
  398.             return PLUGIN_HANDLED;
  399.         }
  400.        
  401.         new CsTeams:userTeam = cs_get_user_team( iClient );
  402.         if( userTeam == CS_TEAM_CT ) {
  403.            
  404.             if( g_iWPCT < get_pcvar_num( pCvarMaxCTWps ) ) {
  405.                
  406.                 give_item( iClient, g_szWeaponsName[ iItem ] );
  407.                 give_item( iClient, g_szPistolName );
  408.                
  409.                 ColorChat( iClient,  "^3%s^1 Te az ^4%s^1-t választottad!", g_szChatPrefix, g_szWeaponMenuNames[ iItem ] );
  410.                 g_iWPCT++;
  411.             }
  412.             else {
  413.                
  414.                 client_print( iClient, print_center, g_szMessages[ 1 ] );
  415.                 func_OpenWeaponMenu ( iClient );
  416.                
  417.                 return PLUGIN_HANDLED;
  418.             }
  419.         }
  420.        
  421.         if( userTeam == CS_TEAM_T ) {
  422.            
  423.             if( g_iWPTE < get_pcvar_num( pCvarMaxTEWps ) ) {
  424.                
  425.                
  426.                 give_item( iClient, g_szWeaponsName[ iItem ] );
  427.                 give_item( iClient, g_szPistolName );
  428.                
  429.                 ColorChat( iClient,  "^3%s^1 Te az ^4%s^1-t választottad!", g_szChatPrefix, g_szWeaponMenuNames[ iItem ] );
  430.                 g_iWPTE++;
  431.             }
  432.             else {
  433.                
  434.                 client_print( iClient, print_center, g_szMessages[ 1 ] );
  435.                 func_OpenWeaponMenu( iClient );
  436.                
  437.                 return PLUGIN_HANDLED;
  438.             }
  439.         }
  440.     }
  441.     func_OpenPistolMenu( iClient );
  442.    
  443.     menu_destroy( iMenu );
  444.     return PLUGIN_HANDLED;
  445. }
  446. public func_OpenPistolMenu ( iClient ) {
  447.    
  448.     if( !is_user_alive( iClient ) )
  449.         return;
  450.    
  451.     cs_set_user_money( iClient, get_pcvar_num( pCvarMoney ) );
  452.    
  453.     get_pcvar_string( pCvarPrefix, g_szChatPrefix, charsmax( g_szChatPrefix ) );
  454.    
  455.     new szMenuTitle[ 121 ];
  456.     new szMenuItem[ 121 ];
  457.    
  458.     format( szMenuTitle, charsmax( szMenuTitle ), "\r%s^n\w%s", g_szChatPrefix, Pistol_Menu_Name );
  459.    
  460.     new menu = menu_create( szMenuTitle, "func_OpenPistolMenu_handler" );
  461.    
  462.     for( new i = 0; i < sizeof( g_szPistolsMenuNames ); i++ ) {
  463.        
  464.         format( szMenuItem, charsmax( szMenuItem ), "\w%s", g_szPistolsMenuNames[ i ] );
  465.         menu_additem( menu, szMenuItem, _, 0 );
  466.     }
  467.    
  468.     menu_setprop( menu, MPROP_EXIT, MEXIT_ALL );
  469.     menu_setprop( menu, MPROP_BACKNAME, Back_Button );
  470.     menu_setprop( menu, MPROP_NEXTNAME, Next_Button );
  471.     menu_setprop( menu, MPROP_EXITNAME, Exit_Button );
  472.     menu_display( iClient, menu );
  473. }
  474.  
  475. public func_OpenPistolMenu_handler( iClient, iMenu, iItem ) {
  476.    
  477.     if( iItem == MENU_EXIT ) {
  478.        
  479.         StripUserWeapons( iClient );
  480.         g_bHasWeapon[ iClient ] = false;
  481.         menu_destroy( iMenu );
  482.         return PLUGIN_HANDLED;
  483.     }
  484.    
  485.     new data[ 6 ], szName[ 64 ];
  486.     new access, callback;
  487.     menu_item_getinfo( iMenu, iItem, access, data, charsmax( data ), szName, charsmax( szName ), callback );
  488.     get_pcvar_string( pCvarPrefix, g_szChatPrefix, charsmax( g_szChatPrefix ) );
  489.    
  490.     give_item( iClient, g_szPistolsName[ iItem ] );
  491.     give_item( iClient, "weapon_knife" );
  492.    
  493.     give_player_stuff( iClient );
  494.    
  495.     ColorChat( iClient,  "^3%s^1 Te az ^4%s^1-t választottad!", g_szChatPrefix ,g_szPistolsMenuNames[ iItem ] );
  496.    
  497.     menu_destroy( iMenu );
  498.     return PLUGIN_HANDLED;
  499. }
  500.  
  501. GetPlayerCount( iTeamPlayers[ CsTeams ] ) {
  502.    
  503.     new iPlayers[ 32 ] , iPlayerCount;
  504.    
  505.     get_players( iPlayers , iPlayerCount );
  506.    
  507.     for ( new i = 0 ; i < iPlayerCount ; i++ )
  508.         iTeamPlayers[ cs_get_user_team( iPlayers[ i ] ) ]++;
  509. }  
  510.  
  511. stock give_player_stuff( iClient ) {
  512.    
  513.     if( get_pcvar_num( pCvarFlash ) ) {
  514.        
  515.         give_item( iClient, "weapon_flashbang" );
  516.         cs_set_user_bpammo( iClient, CSW_FLASHBANG, get_pcvar_num( pCvarFlash ) );
  517.     }
  518.    
  519.     if( get_pcvar_num( pCvarHe ) ) {
  520.        
  521.         give_item( iClient, "weapon_hegrenade" );
  522.         cs_set_user_bpammo( iClient, CSW_HEGRENADE, get_pcvar_num( pCvarHe ) );
  523.     }
  524.    
  525.     if( get_pcvar_num( pCvarSmoke ) ) {
  526.        
  527.         give_item( iClient, "weapon_smokegrenade" );
  528.         cs_set_user_bpammo( iClient, CSW_SMOKEGRENADE, get_pcvar_num( pCvarSmoke ) );
  529.     }
  530.    
  531.     if( get_pcvar_num( pCvarKevlar ) ) {
  532.        
  533.         switch( get_pcvar_num( pCvarKevlar ) ) {
  534.            
  535.             case 1: give_item( iClient, "item_kevlar" );
  536.                 case 2: give_item( iClient, "item_assaultsuit" );
  537.                 default: return PLUGIN_CONTINUE;
  538.         }
  539.     }
  540.    
  541.     if( get_pcvar_num( pCvarDefuser ) ) {
  542.        
  543.         give_item( iClient, "item_thighpack" );
  544.     }
  545.    
  546.     if( !get_pcvar_num( pCvarUnAmmo ) ) {
  547.        
  548.         new weapons[ 32 ];
  549.         new weaponsnum;
  550.         get_user_weapons( iClient, weapons, weaponsnum );
  551.         for( new i = 0; i < weaponsnum; i++ )
  552.             if( is_user_alive( iClient ) )
  553.             if( maxAmmo[ weapons[ i ] ] > 0 )
  554.             cs_set_user_bpammo( iClient, weapons[ i ], maxAmmo[ weapons[ i ] ] );
  555.     }
  556.    
  557.     g_bHasWeapon[ iClient ] = true;
  558.     return PLUGIN_CONTINUE;
  559. }
  560.  
  561. stock ColorChat( iClient, const input[], any:...)
  562. {
  563.     new count = 1, players[ 32 ];
  564.     static msg[ 191 ];
  565.     vformat( msg, 190, input, 3 );
  566.    
  567.     replace_all( msg, 190, "^x01" , "^1");
  568.     replace_all( msg, 190, "^x03" , "^3");
  569.     replace_all( msg, 190, "^x04" , "^4");
  570.    
  571.     if ( iClient )  players[ 0 ] = iClient; else get_players( players , count , "ch" );
  572. {
  573.     for ( new i = 0; i < count; i++ )
  574.     {
  575.         if ( is_user_connected( players[ i ] ) )
  576.         {
  577.             message_begin( MSG_ONE_UNRELIABLE , get_user_msgid( "SayText" ), _, players[ i ] );
  578.             write_byte( players[ i ] );
  579.             write_string( msg );
  580.             message_end(  );
  581.         }
  582.     }
  583. }
  584. }  
  585.  
  586.  
  587. //Stolen from CSDM Weapon Menu
  588. stock StripUserWeapons( iClient ) {
  589.  
  590. new iC4Ent = get_pdata_cbase( iClient, OFFSET_C4_SLOT );
  591.  
  592. if( iC4Ent > 0 ) {
  593.    
  594.     set_pdata_cbase( iClient, OFFSET_C4_SLOT, FM_NULLENT );
  595. }
  596.  
  597. strip_user_weapons( iClient );
  598. set_pdata_int( iClient, OFFSET_PRIMARYWEAPON, 0 );
  599.  
  600. if( iC4Ent > 0 )  {
  601.    
  602.     set_pev( iClient, pev_weapons, pev( iClient, pev_weapons ) | ( 1 << CSW_C4 ) );
  603.     set_pdata_cbase( iClient, OFFSET_C4_SLOT, iC4Ent );
  604.    
  605.     cs_set_user_bpammo( iClient, CSW_C4, 1 );
  606.     cs_set_user_plant( iClient, 1 );
  607. }
  608.  
  609. return PLUGIN_HANDLED;
  610. }

_________________
 ! Moderátori megjegyzés (kiki):
Kérlek csekkold az aláírásra vonatkozó szabályokat!


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Fegyvermenü hiba javítása
HozzászólásElküldve: 2019.01.13. 13:04 
Offline
Senior Tag

Csatlakozott: 2015.11.20. 17:59
Hozzászólások: 270
Megköszönt másnak: 33 alkalommal
Megköszönték neki: 2 alkalommal
The Peace írta:
matkoimre írta:
Sziasztok!

Valaki esetleg megnézi nekem hogy miért nem hozza létre a pályatilto_ini fájt? Köszi előre is!


Talán?


  1. #include < amxmodx >
  2. #include < amxmisc >
  3. #include < fun >
  4. #include < fakemeta >
  5. #include < cstrike >
  6. #include < hamsandwich >
  7.  
  8. #pragma semicolon       1
  9.  
  10. #define VERSION         "0.0.1"
  11.  
  12. #define Max_Players     32
  13.  
  14. #define OFFSET_PRIMARYWEAPON    116
  15. #define OFFSET_C4_SLOT      372
  16.  
  17. #define Weapon_Menu_Name    "Fegyverek"
  18. #define Pistol_Menu_Name    "Pisztolyok"
  19.  
  20. #define Next_Button     "KövetkezĹ‘"
  21. #define Back_Button     "Vissza"
  22. #define Exit_Button     "KilĂ©pĂ©s"
  23.  
  24. #define Money_Hud       ( 1 << 5 )
  25.  
  26. new g_iWPCT;
  27. new g_iWPTE;
  28.  
  29. new pCvarMaxCTWps;
  30. new pCvarMaxTEWps;
  31.  
  32. new pCvarWPBlock;
  33.  
  34. new pCvarFlash;
  35. new pCvarHe;
  36. new pCvarSmoke;
  37.  
  38. new pCvarKevlar;
  39. new pCvarDefuser;
  40.  
  41. new pCvarPrefix;
  42. new pCvarMoney;
  43. new pCvarBlockBuy;
  44. new pCvarUnAmmo;
  45.  
  46. new const g_szMessages [ ] [ ] =
  47. {
  48. "",
  49. "Csapatonként csak két ember AWP-zhet!",
  50. "^3%s^1 WP^4 csak^1 4v4-től használható!",
  51. "A vásárlás letíltva!",
  52. "Te már választottál fegyvert!"
  53. };
  54.  
  55. new const g_szWeaponMenuNames [ ] [ ] =  {
  56.  
  57. "M4A1",
  58. "AK47",
  59. "AWP",
  60. "M249",
  61. "AUG",
  62. "Famas",
  63. "Galil",
  64. "MP5",
  65. "XM1014",
  66. "M3",
  67. "Scout"
  68. };
  69.  
  70. new const g_szWeaponsName [ ] [ ] = {
  71.  
  72. "weapon_m4a1",
  73. "weapon_ak47",
  74. "weapon_awp",
  75. "weapon_m249",
  76. "weapon_aug",
  77. "weapon_famas",
  78. "weapon_galil",
  79. "weapon_mp5navy",
  80. "weapon_xm1014",
  81. "weapon_m3",
  82. "weapon_scout"
  83. };
  84.  
  85. new const g_szPistolsMenuNames [ ] [ ] =  {
  86.  
  87. "Deagle",
  88. "USP",
  89. "Glock18"
  90. };
  91.  
  92. new const g_szPistolsName [ ] [ ] = {
  93.  
  94. "weapon_deagle",
  95. "weapon_usp",
  96. "weapon_glock18"
  97. };
  98.  
  99.  
  100. new const g_szPistolName [ ] = "weapon_deagle";
  101.  
  102. const DoNotReload = ( ( 1 << CSW_HEGRENADE ) | ( 1 << CSW_SMOKEGRENADE ) | ( 1 << CSW_FLASHBANG ) | ( 1 << CSW_KNIFE ) | ( 1 << CSW_C4 ) );
  103. new const maxAmmo[ 31 ] = {
  104.  
  105. 0,
  106. 52,
  107. 0,
  108. 90,
  109. 1,
  110. 32,
  111. 1,
  112. 100,
  113. 90,
  114. 1,
  115. 120,
  116. 100,
  117. 100,
  118. 90,
  119. 90,
  120. 90,
  121. 100,
  122. 120,
  123. 30,
  124. 120,
  125. 200,
  126. 32,
  127. 90,
  128. 120,
  129. 90,
  130. 2,
  131. 35,
  132. 90,
  133. 90,
  134. 0,
  135. 100
  136. };
  137.  
  138. new g_szBuyCommands[  ][  ] =
  139. {
  140. "usp", "glock", "deagle", "p228", "elites", "fn57", "m3", "xm1014", "mp5", "tmp", "p90", "mac10", "ump45", "ak47",
  141. "galil", "famas", "sg552", "m4a1", "aug", "scout", "awp", "g3sg1", "sg550", "m249", "vest", "vesthelm", "flash", "hegren",
  142. "sgren", "defuser", "nvgs", "shield", "primammo", "secammo", "km45", "9x19mm", "nighthawk", "228compact", "12gauge",
  143. "autoshotgun", "smg", "mp", "c90", "cv47", "defender", "clarion", "krieg552", "bullpup", "magnum", "d3au1", "krieg550",
  144. "buyammo1", "buyammo2"
  145. };
  146.  
  147. new const g_szMenuCommands[  ] [  ] =
  148. {
  149. "fegyo",
  150. "say fegyo",
  151. "say_team fegyo",
  152.  
  153. "fegyver",
  154. "say fegyver",
  155. "say_team fegyver",
  156.  
  157. "say /fegyo",
  158. "say_team /fegyo",
  159.  
  160. "say /fegyver",
  161. "say_team /fegyver"
  162.  
  163. };
  164.  
  165. new g_szChatPrefix[ 64 ];
  166. new g_msgHideWeapon;
  167. new g_bHasWeapon[ Max_Players ];
  168.  
  169. public plugin_init ( ) {
  170.  
  171. register_plugin( "Advanced Weapon Menu", VERSION, "#YouCantStopMe" );
  172.  
  173. RegisterHam( Ham_Spawn, "player", "func_OpenWeaponMenu", 1 );
  174.  
  175. pCvarMaxCTWps   = register_cvar( "awm_max_ct_awp",  "2" ); // Ct-nél 2 AWP-s lehet.
  176. pCvarMaxTEWps   = register_cvar( "awm_max_te_awp",  "2" ); // Terroristáknál 2 AWP-s lehet.
  177.  
  178. pCvarWPBlock    = register_cvar( "awm_allow_wp_player",     "4" ); // Ha mindkét csapatban van 4-4 játékos akkor engedi az AWP-t
  179.  
  180. pCvarFlash  = register_cvar( "awm_give_flash",  "2" ); // Itt tudod beállítani ,hogy adjon-e füst gránátot. ( 0 = Nem ad ) Alap: 2 Flash gránát
  181. pCvarHe     = register_cvar( "awm_give_he",         "1" ); // Itt tudod beállítani ,hogy adjon-e füst gránátot. ( 0 = Nem ad ) Alap: 1 Robanó gránát
  182. pCvarSmoke  = register_cvar( "awm_give_smoke",  "0" ); // Itt tudod beállítani ,hogy adjon-e füst gránátot. ( 0 = Nem ad )
  183.  
  184. pCvarKevlar = register_cvar( "awm_give_kevlar", "2" ); // Itt tudod beállítani ,hogy adjon-e kevlárt. ( 0 = Nem Ad ) Alap: 2 ( Kevlár + Sisak )
  185. pCvarDefuser    = register_cvar( "awm_give_defuser",    "1" ); // Itt tudod beállítani ,hogy adjon-e defusert. ( 0 = Nem Ad )
  186.  
  187. pCvarUnAmmo = register_cvar( "awm_unlimited_ammo",  "1" ); // Itt tudod beállítani ,hogy elfoggyon-e a tár vagy ne. Alap: 1 ( Tehát nem fogy el a tár )
  188.  
  189. pCvarBlockBuy   = register_cvar( "awm_block_buy",   "1" ); // Itt tudod beállítani ,hogy tiltsa-e a vásárlást vagy ne. Alap 1 ( Tehát tiltva van ) ( 0 = Nincs tiltva )
  190. pCvarMoney  = register_cvar( "awm_set_money",   "0" ); // Itt tudod beállítani ,hogy mennyi pénze legyen a játékosoknak. ( 0 = Nincs , eltűnik a hudról is ) Alap: 0
  191. pCvarPrefix     = register_cvar( "awm_prefix",      "[.:DarK DemonS:.]" ); // Itt tudod beállítani, hogy mi legyen a Fegyvermenü prefix-je.
  192.  
  193. g_msgHideWeapon = get_user_msgid( "HideWeapon" );
  194.  
  195. for( new i = 0; i < sizeof( g_szBuyCommands ); i++ )
  196. register_clcmd( g_szBuyCommands[ i ], "cmd_BlockBuy" );
  197.  
  198. for( new i = 0; i < sizeof( g_szMenuCommands ); i++ )
  199. register_clcmd( g_szMenuCommands[ i ], "cmd_ShowWeaponMenu" );
  200.  
  201. register_event( "ResetHUD", "onResetHUD", "b" );
  202. register_event( "CurWeapon", "eCurWeapon", "be", "1=1" );
  203.  
  204. register_message( g_msgHideWeapon, "msgHideWeapon" );
  205.  
  206. register_logevent( "eRoundEnd", 2, "1=Round_End" );
  207.  
  208. loading_maps();
  209. }
  210. public loading_maps()
  211. {  
  212. new fajl[64],linedata[1024],currentmap[64],mapnev[32];
  213. get_mapname(currentmap,charsmax(currentmap));
  214. formatex(fajl, charsmax(fajl), "addons/amxmodx/configs/fegyvermenu_tiltas.ini");
  215.  
  216. if (!file_exists("addons/amxmodx/configs/fegyvermenu_tiltas.ini")) {
  217.     new len,buffer[512];
  218.     len += formatex(buffer[len], charsmax(buffer),";Csak  be azoknak a mapoknak a nevę´ amelyiken ne m󫶤jň® ˇ fegyvermen𮠐l:^n");
  219.     len += formatex(buffer[len], charsmax(buffer)-len,";^"awp_india^"^n");
  220.    
  221.     new file = fopen("addons/amxmodx/configs/fegyvermenu_tiltas.ini", "at");
  222.    
  223.     fprintf(file, buffer);
  224.     fclose(file);
  225.     return;
  226. }
  227.  
  228. new file = fopen(fajl, "rt");
  229.  
  230. while (file && !feof(file))
  231. {
  232.     // Read one line at a time
  233.     fgets(file, linedata, charsmax(linedata));
  234.     replace(linedata, charsmax(linedata), "^n", "");//ݲes sorokat eltđ®´Ąti
  235.    
  236.     parse(linedata,mapnev,31);
  237.     if(equali(currentmap,mapnev))
  238.     {
  239.         log_amx("A plugin '%s' mapon nem fut. (configs/fegyvermenu_tiltas.ini)",currentmap);
  240.         pause("ad");
  241.         return;
  242.     }
  243. }
  244. if (file) fclose(file);
  245. }
  246. public client_connect( iClient ) {
  247.  
  248. g_bHasWeapon[ iClient ] = false;
  249. }
  250.  
  251. public client_disconnect( iClient ) {
  252.  
  253. g_bHasWeapon[ iClient ] = false;
  254. }
  255.  
  256. public cmd_ShowWeaponMenu( iClient ) {
  257.  
  258. switch( g_bHasWeapon[ iClient ] ) {
  259.    
  260.     case true:
  261.     {
  262.         get_pcvar_string( pCvarPrefix, g_szChatPrefix, charsmax( g_szChatPrefix ) );
  263.         ColorChat( iClient, "^3%s %s" , g_szChatPrefix, g_szMessages[ 4 ] );
  264.        
  265.         return PLUGIN_HANDLED;
  266.     }
  267.     case false:     func_OpenWeaponMenu( iClient );
  268.     }
  269.     return PLUGIN_HANDLED;
  270. }
  271.  
  272. public cmd_BlockBuy( iClient ) {
  273.    
  274.     if( !get_pcvar_num( pCvarBlockBuy ) )
  275.         return PLUGIN_CONTINUE;
  276.    
  277.     get_pcvar_string( pCvarPrefix, g_szChatPrefix, charsmax( g_szChatPrefix ) );
  278.     ColorChat( iClient,  "^3%s %s" , g_szChatPrefix, g_szMessages[ 3 ] );
  279.     return PLUGIN_HANDLED;
  280. }
  281.  
  282. public eCurWeapon( iClient ) {
  283.    
  284.     if( get_pcvar_num( pCvarUnAmmo ) ) {
  285.        
  286.         if( is_user_alive( iClient ) ) {
  287.            
  288.             new weapon = read_data( 2 );
  289.             if( !( DoNotReload & ( 1 << weapon ) ) ) {
  290.                
  291.                 cs_set_user_bpammo( iClient, weapon, maxAmmo[ weapon ] );
  292.             }
  293.         }
  294.     }
  295. }
  296.  
  297. public onResetHUD( iClient ) {
  298.    
  299.     if( !get_pcvar_num( pCvarMoney ) ) {
  300.        
  301.         message_begin( MSG_ONE, g_msgHideWeapon, _, iClient );
  302.         write_byte( Money_Hud );
  303.         message_end( );
  304.     }
  305. }
  306.  
  307. public msgHideWeapon( ) {
  308.    
  309.     if( !get_pcvar_num( pCvarMoney ) ) {
  310.        
  311.         set_msg_arg_int( 1, ARG_BYTE, get_msg_arg_int( 1 ) | Money_Hud );
  312.     }
  313. }
  314.  
  315. public eRoundEnd ( ) {
  316.    
  317.     g_iWPCT = 0;
  318.     g_iWPTE = 0;
  319. }
  320.  
  321. public func_OpenWeaponMenu ( iClient ) {
  322.    
  323.     if( !is_user_alive( iClient ) )
  324.         return;
  325.    
  326.     cs_set_user_money( iClient, get_pcvar_num( pCvarMoney ) );
  327.    
  328.     get_pcvar_string( pCvarPrefix, g_szChatPrefix, charsmax( g_szChatPrefix ) );
  329.    
  330.     g_bHasWeapon[ iClient ] = false;
  331.    
  332.     new szMenuTitle[ 121 ];
  333.     new szMenuItem[ 121 ];
  334.    
  335.     format( szMenuTitle, charsmax( szMenuTitle ), "\r%s^n\w%s", g_szChatPrefix, Weapon_Menu_Name );
  336.    
  337.     StripUserWeapons( iClient );
  338.     new menu = menu_create( szMenuTitle, "func_OpenWeaponMenu_handler" );
  339.    
  340.     for( new i = 0; i < sizeof( g_szWeaponMenuNames ); i++ ) {
  341.        
  342.         if( i != 2 ) {
  343.            
  344.             format( szMenuItem, charsmax( szMenuItem ), "\w%s", g_szWeaponMenuNames[ i ] );
  345.         }
  346.         else {
  347.             switch( get_user_team( iClient ) )
  348.             {
  349.                 case 1: format( szMenuItem, charsmax( szMenuItem ), "\w%s \y[ElsĹ‘ %d embernek]", g_szWeaponMenuNames[ i ], get_pcvar_num( pCvarMaxTEWps ) );
  350.                     case 2: format( szMenuItem, charsmax( szMenuItem ), "\w%s \y[ElsĹ‘ %d embernek]", g_szWeaponMenuNames[ i ], get_pcvar_num( pCvarMaxCTWps ) );
  351.                     default: continue;
  352.             }
  353.         }
  354.        
  355.         menu_additem( menu, szMenuItem, _, 0 );
  356.     }
  357.    
  358.     menu_setprop( menu, MPROP_EXIT, MEXIT_ALL );
  359.     menu_setprop( menu, MPROP_BACKNAME, Back_Button );
  360.     menu_setprop( menu, MPROP_NEXTNAME, Next_Button );
  361.     menu_setprop( menu, MPROP_EXITNAME, Exit_Button );
  362.     menu_display( iClient, menu );
  363. }
  364.  
  365. public func_OpenWeaponMenu_handler( iClient, iMenu, iItem ) {
  366.    
  367.     if( iItem == MENU_EXIT ) {
  368.        
  369.         StripUserWeapons( iClient );
  370.         g_bHasWeapon[ iClient ] = false;
  371.         menu_destroy( iMenu );
  372.         return PLUGIN_HANDLED;
  373.     }
  374.    
  375.     new data[ 6 ], szName[ 64 ];
  376.     new access, callback;
  377.     menu_item_getinfo( iMenu, iItem, access, data, charsmax( data ), szName, charsmax( szName ), callback );
  378.    
  379.     get_pcvar_string( pCvarPrefix, g_szChatPrefix, charsmax( g_szChatPrefix ) );
  380.    
  381.     if( iItem != 2 ) {
  382.        
  383.         give_item( iClient, g_szWeaponsName[ iItem ] );
  384.        
  385.         ColorChat( iClient,  "^3%s^1 Te az ^4%s^1-t választottad!", g_szChatPrefix ,g_szWeaponMenuNames[ iItem ] );
  386.     }
  387.     else {
  388.        
  389.         new iTeams[ CsTeams ];
  390.         GetPlayerCount( iTeams );
  391.        
  392.         if( iTeams[ CS_TEAM_T ] < get_pcvar_num( pCvarWPBlock )
  393.         || iTeams[ CS_TEAM_CT ] < get_pcvar_num( pCvarWPBlock ) ) {
  394.            
  395.             ColorChat( iClient,  g_szMessages[ 2 ], g_szChatPrefix );
  396.             func_OpenWeaponMenu( iClient );
  397.            
  398.             return PLUGIN_HANDLED;
  399.         }
  400.        
  401.         new CsTeams:userTeam = cs_get_user_team( iClient );
  402.         if( userTeam == CS_TEAM_CT ) {
  403.            
  404.             if( g_iWPCT < get_pcvar_num( pCvarMaxCTWps ) ) {
  405.                
  406.                 give_item( iClient, g_szWeaponsName[ iItem ] );
  407.                 give_item( iClient, g_szPistolName );
  408.                
  409.                 ColorChat( iClient,  "^3%s^1 Te az ^4%s^1-t választottad!", g_szChatPrefix, g_szWeaponMenuNames[ iItem ] );
  410.                 g_iWPCT++;
  411.             }
  412.             else {
  413.                
  414.                 client_print( iClient, print_center, g_szMessages[ 1 ] );
  415.                 func_OpenWeaponMenu ( iClient );
  416.                
  417.                 return PLUGIN_HANDLED;
  418.             }
  419.         }
  420.        
  421.         if( userTeam == CS_TEAM_T ) {
  422.            
  423.             if( g_iWPTE < get_pcvar_num( pCvarMaxTEWps ) ) {
  424.                
  425.                
  426.                 give_item( iClient, g_szWeaponsName[ iItem ] );
  427.                 give_item( iClient, g_szPistolName );
  428.                
  429.                 ColorChat( iClient,  "^3%s^1 Te az ^4%s^1-t választottad!", g_szChatPrefix, g_szWeaponMenuNames[ iItem ] );
  430.                 g_iWPTE++;
  431.             }
  432.             else {
  433.                
  434.                 client_print( iClient, print_center, g_szMessages[ 1 ] );
  435.                 func_OpenWeaponMenu( iClient );
  436.                
  437.                 return PLUGIN_HANDLED;
  438.             }
  439.         }
  440.     }
  441.     func_OpenPistolMenu( iClient );
  442.    
  443.     menu_destroy( iMenu );
  444.     return PLUGIN_HANDLED;
  445. }
  446. public func_OpenPistolMenu ( iClient ) {
  447.    
  448.     if( !is_user_alive( iClient ) )
  449.         return;
  450.    
  451.     cs_set_user_money( iClient, get_pcvar_num( pCvarMoney ) );
  452.    
  453.     get_pcvar_string( pCvarPrefix, g_szChatPrefix, charsmax( g_szChatPrefix ) );
  454.    
  455.     new szMenuTitle[ 121 ];
  456.     new szMenuItem[ 121 ];
  457.    
  458.     format( szMenuTitle, charsmax( szMenuTitle ), "\r%s^n\w%s", g_szChatPrefix, Pistol_Menu_Name );
  459.    
  460.     new menu = menu_create( szMenuTitle, "func_OpenPistolMenu_handler" );
  461.    
  462.     for( new i = 0; i < sizeof( g_szPistolsMenuNames ); i++ ) {
  463.        
  464.         format( szMenuItem, charsmax( szMenuItem ), "\w%s", g_szPistolsMenuNames[ i ] );
  465.         menu_additem( menu, szMenuItem, _, 0 );
  466.     }
  467.    
  468.     menu_setprop( menu, MPROP_EXIT, MEXIT_ALL );
  469.     menu_setprop( menu, MPROP_BACKNAME, Back_Button );
  470.     menu_setprop( menu, MPROP_NEXTNAME, Next_Button );
  471.     menu_setprop( menu, MPROP_EXITNAME, Exit_Button );
  472.     menu_display( iClient, menu );
  473. }
  474.  
  475. public func_OpenPistolMenu_handler( iClient, iMenu, iItem ) {
  476.    
  477.     if( iItem == MENU_EXIT ) {
  478.        
  479.         StripUserWeapons( iClient );
  480.         g_bHasWeapon[ iClient ] = false;
  481.         menu_destroy( iMenu );
  482.         return PLUGIN_HANDLED;
  483.     }
  484.    
  485.     new data[ 6 ], szName[ 64 ];
  486.     new access, callback;
  487.     menu_item_getinfo( iMenu, iItem, access, data, charsmax( data ), szName, charsmax( szName ), callback );
  488.     get_pcvar_string( pCvarPrefix, g_szChatPrefix, charsmax( g_szChatPrefix ) );
  489.    
  490.     give_item( iClient, g_szPistolsName[ iItem ] );
  491.     give_item( iClient, "weapon_knife" );
  492.    
  493.     give_player_stuff( iClient );
  494.    
  495.     ColorChat( iClient,  "^3%s^1 Te az ^4%s^1-t választottad!", g_szChatPrefix ,g_szPistolsMenuNames[ iItem ] );
  496.    
  497.     menu_destroy( iMenu );
  498.     return PLUGIN_HANDLED;
  499. }
  500.  
  501. GetPlayerCount( iTeamPlayers[ CsTeams ] ) {
  502.    
  503.     new iPlayers[ 32 ] , iPlayerCount;
  504.    
  505.     get_players( iPlayers , iPlayerCount );
  506.    
  507.     for ( new i = 0 ; i < iPlayerCount ; i++ )
  508.         iTeamPlayers[ cs_get_user_team( iPlayers[ i ] ) ]++;
  509. }  
  510.  
  511. stock give_player_stuff( iClient ) {
  512.    
  513.     if( get_pcvar_num( pCvarFlash ) ) {
  514.        
  515.         give_item( iClient, "weapon_flashbang" );
  516.         cs_set_user_bpammo( iClient, CSW_FLASHBANG, get_pcvar_num( pCvarFlash ) );
  517.     }
  518.    
  519.     if( get_pcvar_num( pCvarHe ) ) {
  520.        
  521.         give_item( iClient, "weapon_hegrenade" );
  522.         cs_set_user_bpammo( iClient, CSW_HEGRENADE, get_pcvar_num( pCvarHe ) );
  523.     }
  524.    
  525.     if( get_pcvar_num( pCvarSmoke ) ) {
  526.        
  527.         give_item( iClient, "weapon_smokegrenade" );
  528.         cs_set_user_bpammo( iClient, CSW_SMOKEGRENADE, get_pcvar_num( pCvarSmoke ) );
  529.     }
  530.    
  531.     if( get_pcvar_num( pCvarKevlar ) ) {
  532.        
  533.         switch( get_pcvar_num( pCvarKevlar ) ) {
  534.            
  535.             case 1: give_item( iClient, "item_kevlar" );
  536.                 case 2: give_item( iClient, "item_assaultsuit" );
  537.                 default: return PLUGIN_CONTINUE;
  538.         }
  539.     }
  540.    
  541.     if( get_pcvar_num( pCvarDefuser ) ) {
  542.        
  543.         give_item( iClient, "item_thighpack" );
  544.     }
  545.    
  546.     if( !get_pcvar_num( pCvarUnAmmo ) ) {
  547.        
  548.         new weapons[ 32 ];
  549.         new weaponsnum;
  550.         get_user_weapons( iClient, weapons, weaponsnum );
  551.         for( new i = 0; i < weaponsnum; i++ )
  552.             if( is_user_alive( iClient ) )
  553.             if( maxAmmo[ weapons[ i ] ] > 0 )
  554.             cs_set_user_bpammo( iClient, weapons[ i ], maxAmmo[ weapons[ i ] ] );
  555.     }
  556.    
  557.     g_bHasWeapon[ iClient ] = true;
  558.     return PLUGIN_CONTINUE;
  559. }
  560.  
  561. stock ColorChat( iClient, const input[], any:...)
  562. {
  563.     new count = 1, players[ 32 ];
  564.     static msg[ 191 ];
  565.     vformat( msg, 190, input, 3 );
  566.    
  567.     replace_all( msg, 190, "^x01" , "^1");
  568.     replace_all( msg, 190, "^x03" , "^3");
  569.     replace_all( msg, 190, "^x04" , "^4");
  570.    
  571.     if ( iClient )  players[ 0 ] = iClient; else get_players( players , count , "ch" );
  572. {
  573.     for ( new i = 0; i < count; i++ )
  574.     {
  575.         if ( is_user_connected( players[ i ] ) )
  576.         {
  577.             message_begin( MSG_ONE_UNRELIABLE , get_user_msgid( "SayText" ), _, players[ i ] );
  578.             write_byte( players[ i ] );
  579.             write_string( msg );
  580.             message_end(  );
  581.         }
  582.     }
  583. }
  584. }  
  585.  
  586.  
  587. //Stolen from CSDM Weapon Menu
  588. stock StripUserWeapons( iClient ) {
  589.  
  590. new iC4Ent = get_pdata_cbase( iClient, OFFSET_C4_SLOT );
  591.  
  592. if( iC4Ent > 0 ) {
  593.    
  594.     set_pdata_cbase( iClient, OFFSET_C4_SLOT, FM_NULLENT );
  595. }
  596.  
  597. strip_user_weapons( iClient );
  598. set_pdata_int( iClient, OFFSET_PRIMARYWEAPON, 0 );
  599.  
  600. if( iC4Ent > 0 )  {
  601.    
  602.     set_pev( iClient, pev_weapons, pev( iClient, pev_weapons ) | ( 1 << CSW_C4 ) );
  603.     set_pdata_cbase( iClient, OFFSET_C4_SLOT, iC4Ent );
  604.    
  605.     cs_set_user_bpammo( iClient, CSW_C4, 1 );
  606.     cs_set_user_plant( iClient, 1 );
  607. }
  608.  
  609. return PLUGIN_HANDLED;
  610. }



ezeket a hibákat dobálja :(

[AMXX] Run time error 10 (plugin "fegyvermenujavitott_tiltoval.amxx") (native "strip_user_weapons") - debug not enabled!
L 01/17/2019 - 20:40:30: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).


Csatolmányok:
fegyvermenujavitott_tiltoval.sma [19.33 KiB]
Letöltve 24 alkalommal.

_________________
Kép
Hozzászólás jelentése
Vissza a tetejére
   
Hozzászólások megjelenítése:  Rendezés  
Új téma nyitása  Hozzászólás a témához  [ 3 hozzászólás ] 


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 1 vendég


Nyithatsz új témákat ebben a fórumban.
Válaszolhatsz egy témára ebben a fórumban.
Nem szerkesztheted a hozzászólásaidat ebben a fórumban.
Nem törölheted a hozzászólásaidat ebben a fórumban.
Nem küldhetsz csatolmányokat ebben a fórumban.

Keresés:
Ugrás:  
Powered by phpBB® Forum Software © phpBB Limited
Magyar fordítás © Magyar phpBB Közösség
Portal: Kiss Portal Extension © Michael O'Toole