hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.04.30. 11:20



Jelenlévő felhasználók

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

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

Regisztrált felhasználók: Bing [Bot] 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  [ 12 hozzászólás ]  Oldal 1 2 Következő
Szerző Üzenet
HozzászólásElküldve: 2018.10.15. 20:20 
Offline
Fanatikus
Avatar

Csatlakozott: 2018.02.06. 14:07
Hozzászólások: 182
Megköszönt másnak: 19 alkalommal
Megköszönték neki: 12 alkalommal
Sziasztok az lenne a kérdésem hogy az exodus Global Offensive 4.0 fegyver váltás animáció lassu esetleg hol lehetne álitani hogy gyorsabban váltsa átt a fegyvert válaszokat elöre is köszönöm :)

_________________
Kép


Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2018.10.16. 13:59 
Offline
Fórum Moderátor
Avatar

Csatlakozott: 2014.05.01. 13:18
Hozzászólások: 627
Megköszönt másnak: 61 alkalommal
Megköszönték neki: 104 alkalommal
Az animáció sebességét nem tudod módosítani Pluginon keresztül. Olyat tudsz, hogy egy-egy funkció hamarabb elérhető lesz. Pld, Deploy után 2.0 másodperc helyett redukálhatod azt az időt ami az elővétel utáni első lövés sebességét adja meg. Szerintem neked nem erre van szükséged, csak megemlítettem. :)


Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2018.10.16. 14:08 
Offline
Fanatikus
Avatar

Csatlakozott: 2018.02.06. 14:07
Hozzászólások: 182
Megköszönt másnak: 19 alkalommal
Megköszönték neki: 12 alkalommal
Hát nem egészen de jo tanács köszönöm szépen :)

és azt meglehetne oldani hogy kivegyem a fegyvermenut a modbol ? mert akkor külsö fegyvermenut használnék mert szeretnék awp mapot is berakni de ugye nincs bene olyan lehetöség hogy wp mapon ne hoza elö a fegyvermenut !

_________________
Kép


Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2018.10.16. 17:59 
Offline
Fórum Moderátor
Avatar

Csatlakozott: 2014.05.01. 13:18
Hozzászólások: 627
Megköszönt másnak: 61 alkalommal
Megköszönték neki: 104 alkalommal
Egyszerűbb, ha a jelnlegibe írod bele egy adott pálya/pályák elelnőrzését a megnyitás előtt.


Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2018.10.16. 18:50 
Offline
Fanatikus
Avatar

Csatlakozott: 2018.02.06. 14:07
Hozzászólások: 182
Megköszönt másnak: 19 alkalommal
Megköszönték neki: 12 alkalommal
Értem és azt hogy irjam bele ? pll awp_inda 35hp_2 stb mapon ne lépjen érvénybe ?

_________________
Kép


Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2018.10.17. 17:02 
Offline
Fórum Moderátor
Avatar

Csatlakozott: 2012.07.02. 17:41
Hozzászólások: 1641
Megköszönt másnak: 121 alkalommal
Megköszönték neki: 247 alkalommal
ROL_MESTER írta:
Értem és azt hogy irjam bele ? pll awp_inda 35hp_2 stb mapon ne lépjen érvénybe ?

Itt egy példa: Dooz @ [Reapi] Fegyvermenü pályatiltóval

_________________
Kép


Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2018.10.30. 11:01 
Offline
Fanatikus
Avatar

Csatlakozott: 2018.02.06. 14:07
Hozzászólások: 182
Megköszönt másnak: 19 alkalommal
Megköszönték neki: 12 alkalommal
Enek a menu részét lehet szinesiteni ugy értem hogy mikor ki hoza a fegyvermenu pll : M4a1 és én ezt a részét szeretném szinezni :)?

  1. /*
  2.             Extended Weapon Menu
  3.                 v1.4 by mforce
  4.        
  5.         Changes:
  6.        
  7.         v1.1 - Multilang added, strip_user_weapons fixed, "hardcoded" things fixed,
  8.         unnecessary cvar removed, using Safety1st method for money block, ColorChat included.
  9.        
  10.         v1.2 - AMXX 1.8.3 support fixed, minimal improvements (less cvar hook)
  11.         v1.21 - Multilang fix.
  12.         v1.3 - Plugin pause removed. Added files for modify weapon menu items.
  13.         v1.4 - Added give and drop by Safety1st, menu builds by Vaqtincha's plugin.
  14.     */
  15.      
  16.      
  17.     #include <amxmodx>
  18.     #include <reapi>
  19.      
  20.     new const PLUGIN[] = "[ReApi] Extended Weapon Menu";
  21.     new const VERSION[] = "1.4";
  22.     new const AUTHOR[] = "mforce";
  23.    
  24.     new const Maps[][] = {     
  25.      "de_dust2",
  26.      "fy_snow"
  27.     }
  28.      
  29.     new const PREFIX[] = "^4[EWM]";
  30.      
  31.     #if AMXX_VERSION_NUM < 183
  32.     #include <colorchat>
  33.     const MAX_PLAYERS = 32;
  34.     #endif
  35.     const HUD_HIDE_MONEY = 1<<5;
  36.      
  37.     new Array:g_Primary_MenuItems, Array:g_Secondary_MenuItems;
  38.     new g_iPrim_TotalItems, g_iSec_TotalItems;
  39.     new g_iPrim_EquipMenuID, g_iSec_EquipMenuID;
  40.     enum _:weapinfo {weap_name[32], bpammo};
  41.     enum _:PCVARS {AwpMinPlayers, MaxAwps, PistolMenu, MaxHeg, MaxFlash, MaxSmoke}
  42.     enum _:TEAMS {TE, CT};
  43.     enum _:MAXGRENADES {HE, FLASH, SMOKE};
  44.     enum _:AWPCVARS {MinPlayers, MaxAwp};
  45.     new g_Cvars[PCVARS], bool:g_AllowAWP, g_Awps[TEAMS], bool:g_Used[MAX_PLAYERS+1], g_Grenades[MAXGRENADES], g_AWPCvarHook[AWPCVARS];
  46.     new GunMenuOff;
  47.      
  48.     new const g_szWeaponNames[CSW_P90+1][] = {
  49.         "","weapon_p228","weapon_shield","weapon_scout","weapon_hegrenade","weapon_xm1014","weapon_c4",
  50.         "weapon_mac10","weapon_aug","weapon_smokegrenade","weapon_elite","weapon_fiveseven","weapon_ump45",
  51.         "weapon_sg550","weapon_galil","weapon_famas","weapon_usp","weapon_glock18","weapon_awp",
  52.         "weapon_mp5navy","weapon_m249","weapon_m3","weapon_m4a1","weapon_tmp","weapon_g3sg1",
  53.         "weapon_flashbang","weapon_deagle","weapon_sg552","weapon_ak47","weapon_knife","weapon_p90"
  54.     }
  55.      
  56.     public plugin_init() {
  57.         register_plugin(PLUGIN, VERSION, AUTHOR);
  58.         register_dictionary("extended_weapon_menu.txt");
  59.         g_Cvars[AwpMinPlayers] = register_cvar("ewm_awpminplayers", "4")
  60.         g_Cvars[MaxAwps] = register_cvar("ewm_maxawp", "3")
  61.         g_Cvars[PistolMenu] = register_cvar("ewm_pistolmenu", "0")
  62.         g_Cvars[MaxHeg] = register_cvar("ewm_maxheg", "1")
  63.         g_Cvars[MaxFlash] = register_cvar("ewm_maxflash", "2")
  64.         g_Cvars[MaxSmoke] = register_cvar("ewm_maxsmoke", "1")
  65.         RegisterHookChain(RG_CBasePlayer_Spawn, "weapmenu", true);
  66.         register_event("HLTV", "Event_NewRound", "a", "1=0", "2=0");
  67.        
  68.         new const commands[][] = {"say /gun", "say /guns", "say /weap", "say_team /gun", "say_team /guns", "say_team /weap"};
  69.         for(new i; i < sizeof(commands); i++) {
  70.             register_clcmd(commands[i], "weapmenu");
  71.         }
  72.        
  73.         new Map[32];
  74.         get_mapname(Map, charsmax(Map));
  75.  
  76.         for(new i; i < sizeof(Maps); i++){
  77.             if(equal(Map,Maps[i])){
  78.                 GunMenuOff = 1;
  79.                 break;
  80.             }
  81.         }
  82.        
  83.         set_member_game(m_bMapHasBuyZone, false);
  84.         register_event("ResetHUD", "Event_ResetHUD", "b")
  85.         register_event("HideWeapon", "Event_HideWeapon", "b")
  86.         set_msg_block(get_user_msgid("Money"), BLOCK_SET)
  87.        
  88.         g_Primary_MenuItems = ArrayCreate(weapinfo);
  89.         g_Secondary_MenuItems = ArrayCreate(weapinfo);
  90.     }
  91.      
  92.     public plugin_cfg() {
  93.         new sBuffer[256], sFile[128], sData[2][32], pFile;
  94.         get_localinfo("amxx_configsdir", sFile, charsmax(sFile));
  95.         add(sFile, charsmax(sFile), "/ewm_weapons.ini");
  96.      
  97.         pFile = fopen(sFile, "rt");
  98.         if(!pFile) set_fail_state("Error reading weapon menu items config file.");
  99.        
  100.         new Trie:tCheckWeaponName = TrieCreate();
  101.         new Trie:tCheckAddedItems = TrieCreate()
  102.        
  103.         for(new i = 0; i< sizeof(g_szWeaponNames); i++)
  104.             TrieSetCell(tCheckWeaponName, g_szWeaponNames[i], 1);
  105.        
  106.         new bSection, menudata[weapinfo];
  107.        
  108.         while(!feof(pFile)) {
  109.             fgets(pFile, sBuffer, charsmax(sBuffer)); trim(sBuffer);
  110.             if(!sBuffer[0] || sBuffer[0] == ';' || sBuffer[0] == '#') continue;
  111.            
  112.             if(sBuffer[0] == '[') {
  113.                 if(equali(sBuffer, "[weapons]")) bSection = 1;
  114.                 else if(equali(sBuffer, "[pistols]")) bSection = 2;
  115.                 else bSection = 0;
  116.                
  117.                 continue;
  118.             }
  119.      
  120.             if(parse(sBuffer, sData[0], charsmax(sData[]), sData[1], charsmax(sData[]))) {
  121.                 format(sData[0], charsmax(sData[]), "weapon_%s", sData[0]);
  122.                 strtolower(sData[0]);
  123.                
  124.                 if(!sData[0][0] || !TrieKeyExists(tCheckWeaponName, sData[0])) {
  125.                     server_print("WARNING: Invalid weapon name ^"%s^" will be skipped!", sData[0]);
  126.                     continue;
  127.                 }
  128.                 if(TrieKeyExists(tCheckAddedItems, sData[0])) {
  129.                     server_print("WARNING: Item ^"%s^" is already added!", sData[0]);
  130.                     continue;
  131.                 }
  132.                
  133.                 copy(menudata[weap_name], charsmax(menudata[weap_name]), sData[0]);
  134.                 menudata[bpammo] = str_to_num(sData[1]);
  135.                 TrieSetCell(tCheckAddedItems, sData[0], 1);
  136.                
  137.                 if(bSection == 1) {
  138.                     ArrayPushArray(g_Primary_MenuItems, menudata);
  139.                     g_iPrim_TotalItems++
  140.                 }
  141.                 else if(bSection == 2) {
  142.                     ArrayPushArray(g_Secondary_MenuItems, menudata);
  143.                     g_iSec_TotalItems++
  144.                 }
  145.             }
  146.         }
  147.        
  148.         fclose(pFile);
  149.         TrieDestroy(tCheckWeaponName);
  150.         TrieDestroy(tCheckAddedItems);
  151.        
  152.         if(!g_iPrim_TotalItems || !g_iSec_TotalItems) set_fail_state("Error! The menu doesn't contain any weapons.");
  153.        
  154.         build_menu();
  155.     }
  156.      
  157.     build_menu() {
  158.         g_iPrim_EquipMenuID = menu_create(PLUGIN, "Prim_WeaponMenuHandler")
  159.         g_iSec_EquipMenuID = menu_create(PLUGIN, "Sec_WeaponMenuHandler")
  160.         // menu_setprop(g_iPrim_EquipMenuID, MPROP_NUMBER_COLOR, "\r")
  161.      
  162.         new szMenuText[64], menudata[weapinfo], szNum[3], i;
  163.        
  164.         for(i = 0; i < g_iPrim_TotalItems; i++) {
  165.             ArrayGetArray(g_Primary_MenuItems, i, menudata)
  166.             strtoupper(menudata[weap_name]);
  167.             formatex(szMenuText, charsmax(szMenuText), "%s", menudata[weap_name][7]);
  168.             num_to_str(i, szNum, charsmax(szNum))
  169.             menu_additem(g_iPrim_EquipMenuID, szMenuText, szNum, 0)
  170.         }
  171.        
  172.         for(i = 0; i < g_iSec_TotalItems; i++) {
  173.             ArrayGetArray(g_Secondary_MenuItems, i, menudata)
  174.             strtoupper(menudata[weap_name]);
  175.             formatex(szMenuText, charsmax(szMenuText), "%s", menudata[weap_name][7]);
  176.             num_to_str(i, szNum, charsmax(szNum))
  177.             menu_additem(g_iSec_EquipMenuID, szMenuText, szNum, 0)
  178.         }
  179.        
  180.         menu_setprop(g_iPrim_EquipMenuID, MPROP_EXIT, MEXIT_ALL);
  181.         menu_setprop(g_iSec_EquipMenuID, MPROP_EXIT, MEXIT_ALL);
  182.         formatex(szMenuText, charsmax(szMenuText), "%L", LANG_SERVER, "EWM_MENU_BACK");
  183.         menu_setprop(g_iPrim_EquipMenuID, MPROP_BACKNAME, szMenuText);
  184.         menu_setprop(g_iSec_EquipMenuID, MPROP_BACKNAME, szMenuText);
  185.         formatex(szMenuText, charsmax(szMenuText), "%L", LANG_SERVER, "EWM_MENU_NEXT");
  186.         menu_setprop(g_iPrim_EquipMenuID, MPROP_NEXTNAME, szMenuText);
  187.         menu_setprop(g_iSec_EquipMenuID, MPROP_NEXTNAME, szMenuText);
  188.         formatex(szMenuText, charsmax(szMenuText), "%L", LANG_SERVER, "EWM_MENU_EXIT");
  189.         menu_setprop(g_iPrim_EquipMenuID, MPROP_EXITNAME, szMenuText);
  190.         menu_setprop(g_iSec_EquipMenuID, MPROP_EXITNAME, szMenuText);
  191.     }
  192.      
  193.     public Prim_WeaponMenuHandler(id, iMenu, iItem) {
  194.         if(iItem == MENU_EXIT) return PLUGIN_HANDLED;
  195.      
  196.         new szNum[3], iAccess, cb;
  197.         menu_item_getinfo(iMenu, iItem, iAccess, szNum, charsmax(szNum), _, _, cb);
  198.      
  199.         new iItemIndex = str_to_num(szNum);
  200.         new menudata[weapinfo];
  201.        
  202.         ArrayGetArray(g_Primary_MenuItems, iItemIndex, menudata);
  203.        
  204.         if(equal(menudata[weap_name], "weapon_awp")) {
  205.             if(!g_AllowAWP) {
  206.                 client_print_color(id, print_team_default, "%s^1 %L", PREFIX, LANG_SERVER, "EWM_AWP_ALLOWFROM", g_AWPCvarHook[MinPlayers], g_AWPCvarHook[MinPlayers]);
  207.                 weapmenu(id);
  208.                 return PLUGIN_HANDLED;
  209.             }
  210.             else if(g_AWPCvarHook[MaxAwp]) {
  211.                 switch(get_member(id, m_iTeam)) {
  212.                     case TEAM_TERRORIST: {
  213.                         if(g_Awps[TE] < g_AWPCvarHook[MaxAwp]) g_Awps[TE]++;
  214.                         else {
  215.                             client_print_color(id, print_team_default, "%s^1 %L", PREFIX, LANG_SERVER, "EWM_AWP_TOOMANY", g_AWPCvarHook[MaxAwp]);
  216.                             weapmenu(id);
  217.                             return PLUGIN_HANDLED;
  218.                         }
  219.                     }
  220.                     case TEAM_CT: {
  221.                         if(g_Awps[CT] < g_AWPCvarHook[MaxAwp]) g_Awps[CT]++;
  222.                         else {
  223.                             client_print_color(id, print_team_default, "%s^1 %L", PREFIX, LANG_SERVER, "EWM_AWP_TOOMANY", g_AWPCvarHook[MaxAwp]);
  224.                             weapmenu(id);
  225.                             return PLUGIN_HANDLED;
  226.                         }
  227.                     }
  228.                 }
  229.             }
  230.         }
  231.        
  232.         if(get_pcvar_num(g_Cvars[PistolMenu]) == 1) {
  233.             menu_display(id, g_iSec_EquipMenuID, 0);
  234.         }
  235.         else {
  236.             rg_give_item(id, "weapon_deagle", GT_REPLACE);
  237.             rg_set_user_bpammo(id, WEAPON_DEAGLE, 35);
  238.         }
  239.        
  240.         add_weapon(id, menudata[weap_name], menudata[bpammo]);
  241.         rg_set_user_armor(id, 100, ARMOR_VESTHELM);
  242.         give_grenades(id);
  243.         strtoupper(menudata[weap_name]);
  244.         client_print_color(id, print_team_default, "%s^1 %L", PREFIX, LANG_SERVER, "EWM_CHOOSED", menudata[weap_name][7]);
  245.         g_Used[id] = true;
  246.      
  247.         return PLUGIN_HANDLED;
  248.     }
  249.      
  250.     stock add_weapon(id, const weapname[], bp_ammo) {
  251.         rg_give_item(id, weapname, GT_REPLACE);
  252.         new weaponid = rg_get_weapon_info(weapname, WI_ID);
  253.         rg_set_user_bpammo(id, WeaponIdType:weaponid, bp_ammo);
  254.     }
  255.      
  256.     public Sec_WeaponMenuHandler(id, iMenu, iItem) {
  257.         if(iItem == MENU_EXIT) return PLUGIN_HANDLED;
  258.      
  259.         new szNum[3], iAccess, cb;
  260.         menu_item_getinfo(iMenu, iItem, iAccess, szNum, charsmax(szNum), _, _, cb);
  261.      
  262.         new iItemIndex = str_to_num(szNum);
  263.         new menudata[weapinfo];
  264.        
  265.         ArrayGetArray(g_Secondary_MenuItems, iItemIndex, menudata);
  266.        
  267.         add_weapon(id, menudata[weap_name], menudata[bpammo]);
  268.        
  269.         return PLUGIN_HANDLED;
  270.     }
  271.      
  272.     public Event_NewRound() {
  273.         arrayset(g_Used, false, sizeof(g_Used));
  274.         arrayset(g_Awps, 0, sizeof(g_Awps));
  275.         g_AWPCvarHook[MinPlayers] = get_pcvar_num(g_Cvars[AwpMinPlayers]);
  276.         g_AllowAWP = (get_member_game(m_iNumTerrorist) >= g_AWPCvarHook[MinPlayers] && get_member_game(m_iNumCT) >= g_AWPCvarHook[MinPlayers]) ? true : false;
  277.         g_Grenades[HE] = get_pcvar_num(g_Cvars[MaxHeg]);
  278.         g_Grenades[FLASH] = get_pcvar_num(g_Cvars[MaxFlash]);
  279.         g_Grenades[SMOKE] = get_pcvar_num(g_Cvars[MaxSmoke]);
  280.         g_AWPCvarHook[MaxAwp] = get_pcvar_num(g_Cvars[MaxAwps]);
  281.     }
  282.      
  283.     public weapmenu(id) {
  284.         if (!is_user_alive(id) || g_Used[id] || GunMenuOff) return;
  285.        
  286.         menu_display(id, g_iPrim_EquipMenuID, 0);
  287.     }
  288.      
  289.     give_grenades(id) {
  290.         if(g_Grenades[HE])
  291.             add_weapon(id, "weapon_hegrenade", g_Grenades[HE]);
  292.      
  293.         if(g_Grenades[FLASH])
  294.             add_weapon(id, "weapon_flashbang", g_Grenades[FLASH]);
  295.      
  296.         if(g_Grenades[SMOKE])
  297.             add_weapon(id, "weapon_smokegrenade", g_Grenades[SMOKE]);
  298.     }
  299.      
  300.     public Event_ResetHUD(id) {
  301.         set_member(id, m_iClientHideHUD, 0)
  302.         set_member(id, m_iHideHUD, HUD_HIDE_MONEY)
  303.     }
  304.      
  305.     public Event_HideWeapon(id) {
  306.         // for compatibility with other plugins using that message; ZP for example
  307.         new iFlags = read_data(1)
  308.         if(~iFlags & HUD_HIDE_MONEY) {
  309.             set_member(id, m_iClientHideHUD, 0)
  310.             set_member(id, m_iHideHUD, iFlags|HUD_HIDE_MONEY)
  311.         }
  312.     }
  313.      
  314.     public plugin_end() {
  315.         ArrayDestroy(g_Primary_MenuItems);
  316.         ArrayDestroy(g_Secondary_MenuItems);
  317.     }

_________________
Kép


Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2018.10.30. 11:16 
Offline
Tud valamit
Avatar

Csatlakozott: 2017.11.11. 23:38
Hozzászólások: 116
Megköszönt másnak: 29 alkalommal
Megköszönték neki: 11 alkalommal
Szia.



Igen, lehet színezni.

_________________
Kép

:)


Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2018.10.30. 12:53 
Offline
Fanatikus
Avatar

Csatlakozott: 2018.02.06. 14:07
Hozzászólások: 182
Megköszönt másnak: 19 alkalommal
Megköszönték neki: 12 alkalommal
köszönöm!

_________________
Kép


Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2018.10.30. 12:53 
Offline
Fanatikus
Avatar

Csatlakozott: 2018.02.06. 14:07
Hozzászólások: 182
Megköszönt másnak: 19 alkalommal
Megköszönték neki: 12 alkalommal
köszönöm!

_________________
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  [ 12 hozzászólás ]  Oldal 1 2 Következő


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 44 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