Offline |
|
Csatlakozott: 2012.05.14. 15:23 Hozzászólások: 51
Megköszönt másnak: 10 alkalommal Megköszönték neki: 1 alkalommal
|
Valaki tudna segíteni? szeretném ebbe a fegyvermenübe #include <amxmodx> #include <fun> #include <hamsandwich> #include <cstrike> #include <fakemeta> #if defined _colorchat_included #endinput #endif #define _colorchat_included /* ColorChat Support */ #define NORMAL DontChange #define GREEN DontChange #define RED Red #define BLUE Blue #define GREY Grey #define ColorChat client_print_color #define MAX_TRANSLATION_LENGTH 2048 #pragma tabsize 0 enum { DontChange = 0, Grey = -1, Red = -2, Blue = -3 }; #define print_team_default DontChange #define print_team_grey Grey #define print_team_red Red #define print_team_blue Blue stock client_print_color(id, sender, const fmt[], any:...) { // check if id is different from 0 if (id && !is_user_connected(id)) { return 0; } if (sender < Blue || sender > 32) { sender = DontChange; } else if (sender < DontChange) { sender = -sender + 32; // align indexes to the TeamInfo ones } static const szTeamName[][] = { "", "TERRORIST", "CT" }; new szMessage[191]; new iParams = numargs(); // Specific player code if (id) { if (iParams == 3) { copy(szMessage, charsmax(szMessage), fmt); // copy so message length doesn't exceed critical 192 value } else { vformat(szMessage, charsmax(szMessage), fmt, 4); } if (sender > (32 - Grey)) { if (sender > (32 - Blue)) { sender = id; } else { _CC_TeamInfo(id, sender, szTeamName[sender - (32 - Grey)]); } } _CC_SayText(id, sender, szMessage); } // Send message to all players else { // Figure out if at least 1 player is connected // so we don't execute useless useless code if not new iPlayers[32], iNum; get_players(iPlayers, iNum, "ch"); if (!iNum) { return 0; } new iMlNumber, i, j; new Array:aStoreML = ArrayCreate(); if (iParams >= 5) // ML can be used { for (j = 3; j < iParams; j++) { // retrieve original param value and check if it's LANG_PLAYER value if (getarg(j) == LANG_PLAYER) { i = 0; // as LANG_PLAYER == -1, check if next parm string is a registered language translation while ((szMessage[i] = getarg(j + 1, i++))) {} if (GetLangTransKey(szMessage) != TransKey_Bad) { // Store that arg as LANG_PLAYER so we can alter it later ArrayPushCell(aStoreML, j++); // Update ML array saire so we'll know 1st if ML is used, // 2nd how many args we have to alterate iMlNumber++; } } } } // If arraysize == 0, ML is not used // we can only send 1 MSG_ALL message if sender != 0 if (!iMlNumber) { if (iParams == 3) { copy(szMessage, charsmax(szMessage), fmt); } else { vformat(szMessage, charsmax(szMessage), fmt, 4); } if (0 < sender < (32 - Blue)) // if 0 is passed, need to loop { if (sender > (32 - Grey)) { _CC_TeamInfo(0, sender, szTeamName[sender - (32 - Grey)]); } _CC_SayText(0, sender, szMessage); return 1; } } if (sender > (32 - Blue)) { sender = 0; // use receiver index } for (--iNum; iNum >= 0; iNum--) { id = iPlayers[iNum]; if (iMlNumber) { for (j = 0; j < iMlNumber; j++) { // Set all LANG_PLAYER args to player index ( = id ) // so we can format the text for that specific player setarg(ArrayGetCell(aStoreML, j), _, id); } // format string for specific player vformat(szMessage, charsmax(szMessage), fmt, 4); } if (sender > (32 - Grey)) { _CC_TeamInfo(id, sender, szTeamName[sender - (32 - Grey)]); } _CC_SayText(id, sender, szMessage); } ArrayDestroy(aStoreML); } return 1; } stock _CC_TeamInfo(iReceiver, iSender, szTeam[]) { static iTeamInfo = 0; if (!iTeamInfo) { iTeamInfo = get_user_msgid("TeamInfo"); } message_begin(iReceiver ? MSG_ONE : MSG_ALL, iTeamInfo, _, iReceiver); write_byte(iSender); write_string(szTeam); message_end(); } stock _CC_SayText(iReceiver, iSender, szMessage[]) { static iSayText = 0; if (!iSayText) { iSayText = get_user_msgid("SayText"); } // Prevent sending format and localization strings via chat for (new i = 0; i < 192; i++) { if (szMessage[i] == 0) break; if (szMessage[i] == '%' || szMessage[i] == '#') szMessage[i] = ' '; } message_begin(iReceiver ? MSG_ONE : MSG_ALL, iSayText, _, iReceiver); write_byte(iSender ? iSender : iReceiver); if (szMessage[0] > 4) { write_byte(1); szMessage[192 - 2 - 1] = 0; // Two write_byte + string terminator write_string(szMessage); } else { szMessage[192 - 1 - 1] = 0; // One write_byte + string terminator write_string(szMessage); } message_end(); } new _translation_szBuffer[MAX_TRANSLATION_LENGTH]; stock register_dictionary_colored(const filename[]) { if (!register_dictionary(filename)) { return 0; } new szFileName[256]; get_localinfo("amxx_datadir", szFileName, charsmax(szFileName)); format(szFileName, charsmax(szFileName), "%s/lang/%s", szFileName, filename); new fp = fopen(szFileName, "rt"); if (!fp) { log_amx("Failed to open %s", szFileName); return 0; } new szLang[3], szKey[64], TransKey:iKey; while (!feof(fp)) { fgets(fp, _translation_szBuffer, charsmax(_translation_szBuffer)); trim(_translation_szBuffer); if (_translation_szBuffer[0] == '[') { strtok(_translation_szBuffer[1], szLang, charsmax(szLang), _translation_szBuffer, 1, ']'); } else if (_translation_szBuffer[0]) { strbreak(_translation_szBuffer, szKey, charsmax(szKey), _translation_szBuffer, charsmax(_translation_szBuffer)); iKey = GetLangTransKey(szKey); if (iKey != TransKey_Bad) { replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "!g", "^4"); replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "!t", "^3"); replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "!n", "^1"); replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^4", "^4"); replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^3", "^3"); replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^1", "^1"); replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^n", "^n"); replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^t", "^t"); AddTranslation(szLang, iKey, _translation_szBuffer[2]); } } } fclose(fp); return 1; } const NETOLTS = ((1<<CSW_HEGRENADE)|(1<<CSW_SMOKEGRENADE)|(1<<CSW_FLASHBANG)|(1<<CSW_KNIFE)|(1<<CSW_C4)) new const g_MaxAmmo[] = { 0, 52, //CSW_P228 0, 90, //CSW_SCOUT 0, //CSW_HEGRENADE 32, //CSW_XM1014 0, //CSW_C4 100,//CSW_MAC10 90, //CSW_AUG 0, //CSW_SMOKEGRENADE 120,//CSW_ELITE 100,//CSW_FIVESEVEN 100,//CSW_UMP45 90, //CSW_SG550 90, //CSW_GALIL 90, //CSW_FAMAS 100,//CSW_USP 120,//CSW_GLOCK18 30, //CSW_AWP 120,//CSW_MP5NAVY 200,//CSW_M249 32, //CSW_M3 90, //CSW_M4A1 120,//CSW_TMP 90, //CSW_G3SG1 0, //CSW_FLASHBANG 35, //CSW_DEAGLE 90, //CSW_SG552 90, //CSW_AK47 0, //CSW_KNIFE 100//CSW_P90 } new bool:valasztott[33] = false new orokloszer new gWPCT new gWPTE public plugin_init() { register_plugin("FegyverMenu", "1.0", "RsN"); RegisterHam(Ham_Spawn, "player", "egyszer",1) register_clcmd("say /fegyo", "egyszer") register_event("HLTV", "end", "a", "1=0", "2=0"); register_event("CurWeapon" , "Event_CurWeapon" , "be" , "1=1" ); orokloszer = register_cvar("fm_orokloszer","1") } public Event_CurWeapon(id) { if(get_pcvar_num(orokloszer) == 1) { if(is_user_alive(id)) { new fegyver = read_data(2) if( !( NETOLTS & (1<<fegyver) ) ) { cs_set_user_bpammo(id, fegyver, g_MaxAmmo[fegyver]); } } } } public client_putinserver(id) { valasztott[id] = false } public end() { gWPCT = 0; gWPTE = 0; for (new i = 1; i <= get_maxplayers(); i++) { if (is_user_connected(i) && !is_user_bot(i)) { valasztott[i] = false } } } public egyszer(id) { strip_user_weapons(id); if(is_user_alive(id) && !is_user_bot(id) && !user_has_weapon(id, CSW_C4) && valasztott[id] == false) { cs_set_user_money(id, 0); give_item(id, "weapon_knife"); FegyverMenu(id); } else if(is_user_alive(id) && !is_user_bot(id) && user_has_weapon(id, CSW_C4) && valasztott[id] == false) { cs_set_user_money(id, 0); give_item(id, "weapon_knife"); give_item(id, "weapon_c4"); cs_set_user_plant(id, 1, 1); ColorChat(id, GREEN, "^x04[^x03HG - Fegyvermenü^x04] Nalad van a ^x03Bomba !") ; FegyverMenu(id); } else if(is_user_alive(id) && !is_user_bot(id) && valasztott[id] == true) { ColorChat(id, GREEN, "^x04[^x03HG - Fegyvermenü^x04] - Te mar valasztottal ebben a ^x03kör^x04ben fegyvert !!"); } } public FegyverMenu(id) { new menu = menu_create("\rHunGaming|| OD2 by \ySound.cfg^n\wFegyverMenü", "FegyverMenu_mh"); menu_additem(menu, "\yM4a1", "0", 0); // case 0 menu_additem(menu, "\yAk47", "1", 0); // case 1 menu_additem(menu, "\yAWP", "2", 0); // case 2 menu_additem(menu, "\yFamas", "3", 0); // case 3 menu_additem(menu, "\yM249", "4", 0); // case 4 menu_additem(menu, "\yShotgun r(M3)", "5", 0); // case 5 menu_additem(menu, "\yShotgun r(Xm1014)", "6", 0); // case 6 menu_additem(menu, "\yScout", "7", 0); // case 7 menu_additem(menu, "\yMp5navy", "8", 0); // case 8 menu_additem(menu, "\yGalil", "9", 0); // case 9 menu_additem(menu, "\yAug", "10", 0); // case 10 menu_additem(menu, "\ySG552", "11", 0); // case 11 menu_additem(menu, "\yP90", "12", 0); // case 12 menu_additem(menu, "\yTMP", "13", 0); // case 13 menu_additem(menu, "\yUMP45", "14", 0); // case 14 menu_additem(menu, "\yMac10", "15", 0); // case 15 menu_setprop(menu, MPROP_EXIT, MEXIT_ALL); menu_setprop(menu, MPROP_BACKNAME, "Vissza"); menu_setprop(menu, MPROP_NEXTNAME, "Előre"); menu_setprop(menu, MPROP_EXITNAME, "Kilép"); menu_display(id, menu, 0); } public FegyverMenu_mh(id, menu, item) { if( item == MENU_EXIT ) { menu_destroy(menu); return PLUGIN_HANDLED; } new data[6], szName[64]; new access, callback; menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback); new key = str_to_num(data); switch(key) { case 0: { give_item(id, "weapon_m4a1"); give_item(id, "ammo_556nato"); give_item(id, "ammo_556nato"); give_item(id, "ammo_556nato"); give_item(id, "weapon_knife"); give_item(id, "item_assaultsuit") give_item(id, "weapon_deagle"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id, "weapon_hegrenade"); give_item(id, "weapon_flashbang"); give_item(id, "weapon_smokegrenade"); cs_set_user_bpammo(id, CSW_HEGRENADE, 1); cs_set_user_bpammo(id, CSW_FLASHBANG, 2); cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 3) ColorChat(id, GREEN, "^x04[^x03HG - Fegyvermenü^x04] - Kaptál egy^x03 M4A1 ^x04fegyvercsomagot!"); } case 1: { give_item(id, "weapon_ak47"); give_item(id, "ammo_762nato"); give_item(id, "ammo_762nato"); give_item(id, "ammo_762nato"); give_item(id, "weapon_knife"); give_item(id, "item_assaultsuit") give_item(id, "weapon_deagle"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id, "weapon_hegrenade"); give_item(id, "weapon_flashbang"); give_item(id, "weapon_smokegrenade"); cs_set_user_bpammo(id, CSW_HEGRENADE, 1); cs_set_user_bpammo(id, CSW_FLASHBANG, 2); cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 3) ColorChat(id, GREEN, "^x04[^x03HG - Fegyvermenü^x04] - Kaptál egy^x03 AK47 ^x04fegyvercsomagot!"); } case 2: { new CsTeams:userTeam = cs_get_user_team(id); if(userTeam == CS_TEAM_CT) { if(gWPCT < 2) { give_item(id, "weapon_knife"); give_item(id, "weapon_awp"); give_item(id, "weapon_deagle"); give_item(id, "ammo_50ae"); give_item(id, "ammo_50ae"); give_item(id, "ammo_50ae"); give_item(id, "ammo_338magnum"); give_item(id, "ammo_338magnum"); give_item(id, "ammo_338magnum"); give_item(id, "weapon_hegrenade"); give_item(id, "weapon_flashbang"); give_item(id, "weapon_smokegrenade"); cs_set_user_bpammo(id, CSW_HEGRENADE, 1); cs_set_user_bpammo(id, CSW_FLASHBANG, 2); cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 3) ColorChat(id, GREEN, "^x04[^x03HG - Fegyvermenü^x04] - Kaptál egy^x03 AWP ^x04fegyvercsomagot!"); gWPCT++ } else { ColorChat(id, GREEN, "^x04[^x03HG - Fegyvermenü^x04]^x03Nincs WP!"); FegyverMenu(id); } } if(userTeam == CS_TEAM_T) { if(gWPTE < 2) { give_item(id, "weapon_knife"); give_item(id, "weapon_awp"); give_item(id, "weapon_deagle"); give_item(id, "ammo_50ae"); give_item(id, "ammo_50ae"); give_item(id, "ammo_50ae"); give_item(id, "ammo_338magnum"); give_item(id, "ammo_338magnum"); give_item(id, "ammo_338magnum"); give_item(id, "weapon_hegrenade"); give_item(id, "weapon_flashbang"); give_item(id, "weapon_smoke"); cs_set_user_bpammo(id, CSW_HEGRENADE, 1) cs_set_user_bpammo(id, CSW_FLASHBANG, 2) cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 3) ColorChat(id, GREEN, "^x04[^x03HG - Fegyvermenü^x04] - Kaptál egy^x03 AWP ^x04fegyvercsomagot!"); gWPTE++ } else { ColorChat(id, GREEN, "^x04[^x03HG - Fegyvermenü^x04]^x03Nincs WP!"); FegyverMenu(id); } } } case 3: { give_item(id, "weapon_famas"); give_item(id, "ammo_556nato"); give_item(id, "ammo_556nato"); give_item(id, "ammo_556nato"); give_item(id, "ammo_556nato"); give_item(id, "weapon_knife"); give_item(id, "item_assaultsuit") give_item(id, "weapon_deagle"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id, "weapon_hegrenade"); give_item(id, "weapon_flashbang"); give_item(id, "weapon_smokegrenade"); cs_set_user_bpammo(id, CSW_HEGRENADE, 1); cs_set_user_bpammo(id, CSW_FLASHBANG, 2); cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 3) ColorChat(id, GREEN, "^x04[^x03HG - Fegyvermenü^x04] - Kaptál egy^x03 FAMAS ^x04fegyvercsomagot!"); } case 4: { give_item(id, "weapon_m249"); give_item(id, "ammo_556nato"); give_item(id, "ammo_556nato"); give_item(id, "weapon_knife"); give_item(id, "item_assaultsuit") give_item(id, "weapon_deagle"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id, "weapon_hegrenade"); give_item(id, "weapon_flashbang"); give_item(id, "weapon_smokegrenade"); cs_set_user_bpammo(id, CSW_HEGRENADE, 1); cs_set_user_bpammo(id, CSW_FLASHBANG, 2); cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 3) ColorChat(id, GREEN, "^x04[^x03HG - Fegyvermenü^x04] - Kaptál egy^x03 M249 ^x04fegyvercsomagot!"); } case 5: { give_item(id, "weapon_m3"); give_item(id, "ammo_buckshot"); give_item(id, "ammo_buckshot"); give_item(id, "ammo_buckshot"); give_item(id, "weapon_knife"); give_item(id, "item_assaultsuit") give_item(id, "weapon_deagle"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id, "weapon_hegrenade"); give_item(id, "weapon_flashbang"); give_item(id, "weapon_smokegrenade"); cs_set_user_bpammo(id, CSW_HEGRENADE, 1); cs_set_user_bpammo(id, CSW_FLASHBANG, 2); cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 3) ColorChat(id, GREEN, "^x04[^x03HG - Fegyvermenü^x04] - Kaptál egy^x03 M3 ^x04fegyvercsomagot!"); } case 6: { give_item(id, "weapon_xm1014"); give_item(id, "ammo_buckshot"); give_item(id, "ammo_buckshot"); give_item(id, "ammo_buckshot"); give_item(id, "ammo_buckshot"); give_item(id, "weapon_knife"); give_item(id, "item_assaultsuit") give_item(id, "weapon_deagle"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id, "weapon_hegrenade"); give_item(id, "weapon_flashbang"); give_item(id, "weapon_smokegrenade"); cs_set_user_bpammo(id, CSW_HEGRENADE, 1); cs_set_user_bpammo(id, CSW_FLASHBANG, 2); cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 3) ColorChat(id, GREEN, "^x04[^x03HG - Fegyvermenü^x04] - Kaptál egy^x03 XM1014 ^x04fegyvercsomagot!"); } case 7: { give_item(id, "weapon_scout"); give_item(id, "ammo_762nato"); give_item(id, "ammo_762nato"); give_item(id, "ammo_762nato"); give_item(id, "ammo_762nato"); give_item(id, "ammo_762nato"); give_item(id, "ammo_762nato"); give_item(id, "ammo_762nato"); give_item(id, "ammo_762nato"); give_item(id, "ammo_762nato"); give_item(id, "weapon_knife"); give_item(id, "item_assaultsuit") give_item(id, "weapon_deagle"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id, "weapon_hegrenade"); give_item(id, "weapon_flashbang"); give_item(id, "weapon_smokegrenade"); cs_set_user_bpammo(id, CSW_HEGRENADE, 1); cs_set_user_bpammo(id, CSW_FLASHBANG, 2); cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 3) ColorChat(id, GREEN, "^x04[^x03HG - Fegyvermenü^x04] - Kaptál egy^x03 SCOUT ^x04fegyvercsomagot!"); } case 8: { give_item(id, "weapon_mp5navy"); give_item(id, "ammo_9mm"); give_item(id, "ammo_9mm"); give_item(id, "ammo_9mm"); give_item(id, "ammo_9mm"); give_item(id, "weapon_knife"); give_item(id, "item_assaultsuit") give_item(id, "weapon_deagle"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id, "weapon_hegrenade"); give_item(id, "weapon_flashbang"); give_item(id, "weapon_smokegrenade"); cs_set_user_bpammo(id, CSW_HEGRENADE, 3); cs_set_user_bpammo(id, CSW_FLASHBANG, 2); cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 2) ColorChat(id, GREEN, "^x04[^x03HG - Fegyvermenü^x04] - Kaptál egy^x03 MP5 ^x04fegyvercsomagot!"); } case 9: { give_item(id, "weapon_galil"); give_item(id, "ammo_556nato"); give_item(id, "ammo_556nato"); give_item(id, "ammo_556nato"); give_item(id, "weapon_knife"); give_item(id, "item_assaultsuit") give_item(id, "weapon_deagle"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id, "weapon_hegrenade"); give_item(id, "weapon_flashbang"); give_item(id, "weapon_smokegrenade"); cs_set_user_bpammo(id, CSW_HEGRENADE, 3); cs_set_user_bpammo(id, CSW_FLASHBANG, 2); cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 2) ColorChat(id, GREEN, "^x04[^x03HG - Fegyvermenü^x04] - Kaptál egy^x03 GALIL ^x04fegyvercsomagot!"); } case 10: { give_item(id, "weapon_aug"); give_item(id, "ammo_556nato"); give_item(id, "ammo_556nato"); give_item(id, "ammo_556nato"); give_item(id, "weapon_knife"); give_item(id, "item_assaultsuit") give_item(id, "weapon_deagle"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id, "weapon_hegrenade"); give_item(id, "weapon_flashbang"); give_item(id, "weapon_smokegrenade"); cs_set_user_bpammo(id, CSW_HEGRENADE, 3); cs_set_user_bpammo(id, CSW_FLASHBANG, 2); cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 2) ColorChat(id, GREEN, "^x04[^x03HG - Fegyvermenü^x04] - Kaptál egy^x03 AUG ^x04fegyvercsomagot!"); } case 11: { give_item(id, "weapon_sg552"); give_item(id, "ammo_556nato"); give_item(id, "ammo_556nato"); give_item(id, "ammo_556nato"); give_item(id, "weapon_knife"); give_item(id, "item_assaultsuit") give_item(id, "weapon_deagle"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id, "weapon_hegrenade"); give_item(id, "weapon_flashbang"); give_item(id, "weapon_smokegrenade"); cs_set_user_bpammo(id, CSW_HEGRENADE, 3); cs_set_user_bpammo(id, CSW_FLASHBANG, 2); cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 2) ColorChat(id, GREEN, "^x04[^x03HG - Fegyvermenü^x04] - Kaptál egy^x03 SG552 ^x04fegyvercsomagot!"); } case 12: { give_item(id, "weapon_p90"); give_item(id, "ammo_57mm"); give_item(id, "ammo_57mm"); give_item(id, "weapon_knife"); give_item(id, "item_assaultsuit") give_item(id, "weapon_deagle"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id, "weapon_hegrenade"); give_item(id, "weapon_flashbang"); give_item(id, "weapon_smokegrenade"); cs_set_user_bpammo(id, CSW_HEGRENADE, 3); cs_set_user_bpammo(id, CSW_FLASHBANG, 2); cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 2) ColorChat(id, GREEN, "^x04[^x03HG - Fegyvermenü^x04] - Kaptál egy^x03 P90 ^x04fegyvercsomagot!"); } case 13: { give_item(id, "weapon_tmp"); give_item(id, "ammo_9mm"); give_item(id, "ammo_9mm"); give_item(id, "ammo_9mm"); give_item(id, "ammo_9mm"); give_item(id, "weapon_knife"); give_item(id, "item_assaultsuit") give_item(id, "weapon_deagle"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id, "weapon_hegrenade"); give_item(id, "weapon_flashbang"); give_item(id, "weapon_smokegrenade"); cs_set_user_bpammo(id, CSW_HEGRENADE, 3); cs_set_user_bpammo(id, CSW_FLASHBANG, 2); cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 2) ColorChat(id, GREEN, "^x04[^x03HG - Fegyvermenü^x04] - Kaptál egy^x03 TMP ^x04fegyvercsomagot!"); } case 14: { give_item(id, "weapon_ump45"); give_item(id, "ammo_45acp"); give_item(id, "ammo_45acp"); give_item(id, "ammo_45acp"); give_item(id, "ammo_45acp"); give_item(id, "weapon_knife"); give_item(id, "item_assaultsuit") give_item(id, "weapon_deagle"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id, "weapon_hegrenade"); give_item(id, "weapon_flashbang"); give_item(id, "weapon_smokegrenade"); cs_set_user_bpammo(id, CSW_HEGRENADE, 3); cs_set_user_bpammo(id, CSW_FLASHBANG, 2); cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 2) ColorChat(id, GREEN, "^x04[^x03HG - Fegyvermenü^x04] - Kaptál egy^x03 UMP45 ^x04fegyvercsomagot!"); } case 15: { give_item(id, "weapon_mac10"); give_item(id, "ammo_45acp"); give_item(id, "ammo_45acp"); give_item(id, "ammo_45acp"); give_item(id, "ammo_45acp"); give_item(id, "weapon_knife"); give_item(id, "item_assaultsuit") give_item(id, "weapon_deagle"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id,"ammo_50ae"); give_item(id, "weapon_hegrenade"); give_item(id, "weapon_flashbang"); give_item(id, "weapon_smokegrenade"); cs_set_user_bpammo(id, CSW_HEGRENADE, 3); cs_set_user_bpammo(id, CSW_FLASHBANG, 2); cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 2) ColorChat(id, GREEN, "^x04[^x03HG - Fegyvermenü^x04] - Kaptál egy^x03 MAC10 ^x04fegyvercsomagot!"); } } return PLUGIN_HANDLED; } stock ham_give_weapon(id,weapon[]) { if(!equal(weapon,"weapon_",7)) return 0; new wEnt = engfunc(EngFunc_CreateNamedEntity,engfunc(EngFunc_AllocString,weapon)); if(!pev_valid(wEnt)) return 0; set_pev(wEnt,pev_spawnflags,SF_NORESPAWN); dllfunc(DLLFunc_Spawn,wEnt); if(!ExecuteHamB(Ham_AddPlayerItem,id,wEnt)) { if(pev_valid(wEnt)) set_pev(wEnt,pev_flags,pev(wEnt,pev_flags) | FL_KILLME); return 0; } ExecuteHamB(Ham_Item_AttachToPlayer,wEnt,id) return 1; } stock ham_strip_weapon(id,weapon[]) { if(!equal(weapon,"weapon_",7)) return 0; new wId = get_weaponid(weapon); if(!wId) return 0; new wEnt; while((wEnt = engfunc(EngFunc_FindEntityByString,wEnt,"classname",weapon)) && pev(wEnt,pev_owner) != id) {} if(!wEnt) return 0; if(get_user_weapon(id) == wId) ExecuteHamB(Ham_Weapon_RetireWeapon,wEnt); if(!ExecuteHamB(Ham_RemovePlayerItem,id,wEnt)) return 0; ExecuteHamB(Ham_Item_Kill,wEnt); set_pev(id,pev_weapons,pev(id,pev_weapons) & ~(1<<wId)); return 1; } stock print_color(const id, const input[], any:...) { new count = 1, players[32] static msg[191] vformat(msg, 190, input, 3) replace_all(msg, 190, "!g", "^4") replace_all(msg, 190, "!y", "^1") replace_all(msg, 190, "!t", "^3") replace_all(msg, 190, "? "á") replace_all(msg, 190, "? "é") replace_all(msg, 190, "? "í") replace_all(msg, 190, "??"ó") replace_all(msg, 190, "??"ö") replace_all(msg, 190, "??"ő") replace_all(msg, 190, "??"ú") replace_all(msg, 190, "??"ü") replace_all(msg, 190, "??"ű") replace_all(msg, 190, "b, "Á") replace_all(msg, 190, "?, "É") replace_all(msg, 190, "?, "Í") replace_all(msg, 190, "?, "Ó") replace_all(msg, 190, "?, "Ö") replace_all(msg, 190, "?, "Ő") replace_all(msg, 190, "?, "Ú") replace_all(msg, 190, "?, "Ü") replace_all(msg, 190, "?, "Ű") if (id) players[0] = id; else get_players(players, count, "ch") { for (new i = 0; i < count; i++) { if (is_user_connected(players[i])) { message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]) write_byte(players[i]) write_string(msg) message_end() } } } return PLUGIN_HANDLED }
beleírni a ebből a fegyver menüből az AWP számlálót (172-178 sor táján) #include <amxmodx> #include <engine> #include <fakemeta> #include <cstrike> #include <dhudmessage> #include <fun> #include <hamsandwich> #define PLUGIN "FegyverMenu+Mapszavaztato" #define VERSION "1.0" #define AUTHOR "DeRoiD" new mp[33], puska = 0, ujra, bool:kpkor, mp2, korok, mp3, maxspeed, counterszam, terrorszam new bool:verseny new top1, top2, top3 new oles[33] new maxoles public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_clcmd("say /timeleft", "ido") register_clcmd("say timeleft", "ido") register_clcmd("say /top", "hud") register_event("DeathMsg","death","a") register_clcmd("verseny_inditasa", "verseny_inditasa") RegisterHam(Ham_Spawn, "player", "inditas", 1) register_logevent("ujkor", 2, "1=Round_Start") register_logevent("kornull", 2, "0=World triggered", "1&Restart_Round_") register_logevent("kornull", 2, "0=World triggered", "1=Game_Commencing") register_logevent("korveg", 2, "0=World triggered", "1=Round_End") ujra = get_cvar_pointer("sv_restart") register_event("CurWeapon", "Event_Change_Weapon", "be", "1=1") maxspeed = get_cvar_pointer("sv_maxspeed") lol() } public ido(id) print_color(id, "!g[Információ]!y Még!t %d!y kör van hátra!", 35-korok) public ujkor(id) { if(verseny) return PLUGIN_HANDLED if(kpkor == false) { puska = 0 korok++ if(korok < 35) { print_color(id, "!g[Információ]!y Játékosok!t %d!y/!g32!y | IP: !t37.221.210.30:27018!y | Kör: !t%d!y/!g35 !y | !twww.fb.com/subb.server", get_playersnum(), korok) set_dhudmessage(42, 127, 255, -1.0, 0.20, 0, 6.0, 12.0) show_dhudmessage(id, "%d kör van hátra!", 35-korok) } else { mp3 = 5 atvalt() set_pcvar_num(maxspeed, 0) } } return PLUGIN_HANDLED } public atvalt() { set_hudmessage(42, 127, 255, -1.0, 0.20, 0, 6.0, 1.1) show_hudmessage(0, "%d másodperc mĂşlva pálya váltás!", mp3) if(mp3 > 0) { client_cmd(0, "spk buttons/lightswitch2.wav") mp3-- set_task(1.0, "atvalt") } else { server_cmd("changelevel ^"de_dust2_snow^"") } } public Event_Change_Weapon(id) { new fgy = get_user_weapon(id) if(kpkor == true && fgy != CSW_DEAGLE) { engclient_cmd(id, "weapon_deagle") } } public lol() { //set_pcvar_num(ujra, 1) kpkor = true mp2 = 45 set_task(1.0, "szam") } public szam(id) { client_print(0, print_center, "%d másodpercig bemelegĂtĹ‘ kör!", mp2) if(mp2 > 0) { mp2-- set_task(1.0, "szam") } else { kpkor = false set_pcvar_num(ujra, 1) } } public korveg() { counterszam = 0 terrorszam = 0 puska = 0 } public kornull() korok = 0 public inditas(id) { if(!is_user_alive(id)) return PLUGIN_HANDLED if(korok < 35) { if(kpkor == false) { if(user_has_weapon(id, CSW_C4)) { strip_user_weapons(id) give_item(id, "weapon_knife") give_item(id, "weapon_c4") } else { strip_user_weapons(id) give_item(id, "weapon_knife") } give_item(id, "item_kevlar") give_item(id, "weapon_hegrenade") give_item(id, "weapon_flashbang") give_item(id, "weapon_deagle") cs_set_user_bpammo(id, CSW_DEAGLE, 35) if(cs_get_user_team(id) == CS_TEAM_CT) cs_set_user_defuse(id, 1) remove_task(id) mp[id] = 15 fegyvermenu(id) set_task(1.0, "vissza", id) cs_set_user_money(id, 0) } else { strip_user_weapons(id) cs_set_user_money(id, 0) give_item(id, "weapon_deagle") cs_set_user_bpammo(id, CSW_DEAGLE, 35) } } return PLUGIN_HANDLED } public vissza(id) { if(mp[id] > 0) { mp[id] -= 1 set_task(1.0,"fegyvermenu", id) set_task(1.0, "vissza", id) } else { remove_task(id) print_color(id, "!g[Információ]!y Sajnos lejárt az idő, nem választottál semmit!") show_menu(id, 0, "^n", 1) } } public fegyvermenu(id) { new players[32] get_players(players,terrorszam,"e","TERRORIST") get_players(players,counterszam,"e","CT") new cim[121], limit[121] format(cim, charsmax(cim), "\r.:[S]u\wB[B]a\y$$]:.\w FegyvermenĂĽ \r- \y[\wMásodperc: \r%d\y]",mp[id]) if(terrorszam >= 4 && counterszam >= 4 && puska <= 3) format(limit, charsmax(limit), "AWP \dĂ–sszesen %d darab maradt", 4-puska) else if(terrorszam < 4 && counterszam < 4 || counterszam < 4 || terrorszam < 4) format(limit, charsmax(limit), "AWP \d4v4-tĹ‘l van. (%dv%d)", terrorszam, counterszam) else if(puska >= 4) format(limit, charsmax(limit), "AWP \dElfogyott") new menu = menu_create(cim, "fegyvermenu_h" ) menu_additem(menu,"Marverick \dM4A1","1",0) menu_additem(menu,"Alexander Kalasnyikov \dAK47","2",0) menu_additem(menu,limit,"3",0) menu_additem(menu,"St. Étienne \dFAMAS","4",0) menu_additem(menu,"SMG \dMP5 NAVY","5",0) menu_additem(menu,"Shotgun \dM3","6",0) menu_additem(menu,"Távcsöves puska \dSCOUT","7",0) menu_setprop(menu, MPROP_EXITNAME, "KilĂ©pĂ©s") menu_setprop(menu, MPROP_EXIT, MEXIT_ALL) menu_display(id, menu, 0) } public fegyvermenu_h(id, menu, item) { if( item == MENU_EXIT ) { menu_destroy(menu); return PLUGIN_HANDLED; } new data[9], szName[64]; new access, callback; menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback); new key = str_to_num(data); switch(key) { case 1:{ remove_task(id) show_menu(id, 0, "^n", 1) give_item(id, "weapon_m4a1") cs_set_user_bpammo(id, CSW_M4A1, 90) print_color(id, "!g[Információ]!y Te az!t M4A1-t!y választottad!") } case 2:{ remove_task(id) show_menu(id, 0, "^n", 1) give_item(id, "weapon_ak47") cs_set_user_bpammo(id, CSW_AK47, 90) print_color(id, "!g[Információ]!y Te az!t AK47-t!y választottad!") } case 3:{ new players[32] get_players(players,terrorszam,"e","TERRORIST") get_players(players,counterszam,"e","CT") if(terrorszam >= 4 && counterszam >= 4 && puska < 4){ remove_task(id) show_menu(id, 0, "^n", 1) puska++ give_item(id, "weapon_awp") cs_set_user_bpammo(id, CSW_AWP, 90) print_color(id, "!g[Információ]!y Te az!t AWP-t!y választottad!") } else if(terrorszam < 4 && counterszam < 4) print_color(id, "!g[Információ]!y Az AWP-t csak!t 4v4!y-től tudod használni!") else if(puska >= 4) print_color(id, "!g[Információ]!y Sajnálom az!t AWP!y elfogyott!") } case 4:{ remove_task(id) show_menu(id, 0, "^n", 1) give_item(id, "weapon_famas") cs_set_user_bpammo(id, CSW_M4A1, 90) print_color(id, "!g[Információ]!y Te a!t FAMAS-t!y választottad!") } case 5:{ remove_task(id) show_menu(id, 0, "^n", 1) give_item(id, "weapon_mp5navy") cs_set_user_bpammo(id, CSW_MP5NAVY, 120) print_color(id, "!g[Információ]!y Te az!t MP5-t!y választottad!") } case 6:{ remove_task(id) show_menu(id, 0, "^n", 1) give_item(id, "weapon_m3") cs_set_user_bpammo(id, CSW_M3, 50) print_color(id, "!g[Információ]!y Te az!t M3-t!y választottad!") } case 7:{ remove_task(id) show_menu(id, 0, "^n", 1) give_item(id, "weapon_scout") cs_set_user_bpammo(id, CSW_SCOUT, 90) print_color(id, "!g[Információ]!y Te az!t SCOUT-t!y választottad!") } } menu_destroy(menu) return PLUGIN_HANDLED } stock print_color(const id, const input[], any:...) { new count = 1, players[32] static msg[191] vformat(msg, 190, input, 3) replace_all(msg, 190, "!g", "^4") replace_all(msg, 190, "!y", "^1") replace_all(msg, 190, "!t", "^3") replace_all(msg, 190, "á", "á") replace_all(msg, 190, "é", "Ă©") replace_all(msg, 190, "í", "Ă") replace_all(msg, 190, "ó", "Ăł") replace_all(msg, 190, "ö", "ö") replace_all(msg, 190, "ő", "Ĺ‘") replace_all(msg, 190, "ú", "Ăş") replace_all(msg, 190, "ü", "ĂĽ") replace_all(msg, 190, "ű", "ű") replace_all(msg, 190, "Á", "Ă") replace_all(msg, 190, "É", "É") replace_all(msg, 190, "Í", "ĂŤ") replace_all(msg, 190, "Ó", "Ă“") replace_all(msg, 190, "Ö", "Ă–") replace_all(msg, 190, "Ő", "Ĺ") replace_all(msg, 190, "Ú", "Ăš") replace_all(msg, 190, "Ü", "Ăś") replace_all(msg, 190, "Ű", "Ĺ°") if (id) players[0] = id; else get_players(players, count, "ch") { for (new i = 0; i < count; i++) { if (is_user_connected(players[i])) { message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]) write_byte(players[i]) write_string(msg) message_end() } } } return PLUGIN_HANDLED } public death(){ new killer = read_data(1) new victim = read_data(2) if(killer == victim) { return PLUGIN_HANDLED } oles[killer]++ if(oles[killer] >= maxoles && verseny) { new kname[32] get_user_name(killer, kname, charsmax(kname)) set_dhudmessage(0, 255, 0, -1.0, 0.25, 0, 6.0, 12.0) show_dhudmessage(0, "%s nyert!", kname) } return PLUGIN_HANDLED } public verseny_inditasa(id) { if(get_user_flags(id) & ADMIN_IMMUNITY){ if(!verseny) { verseny = true maxoles = 50 } } } public hud() { new ps[32], num get_players(ps, num, "c") SortCustom1D(ps, num, "sort_bestplayer") top1 = ps[0] top2 = ps[1] top3 = ps[2] new top1neve[33], top2neve[32], top3neve[32] get_user_name(top1, top1neve, charsmax(top1neve)) get_user_name(top2, top2neve, charsmax(top2neve)) get_user_name(top3, top3neve, charsmax(top3neve)) for(new i; i < num; i++) { if(verseny){ set_dhudmessage(10, 10, 250, 0.03, 0.26, 0, 6.0, 5.0) show_dhudmessage(i, "1. %s - %d^n2. %s - %d^n3. %s - %d",top1neve, oles[top1], top2neve, oles[top2], top3neve, oles[top3]) } } } public sort_bestplayer(id1, id2) { if(oles[id1] > oles[id2]) return -1; else if(oles[id1] < oles[id2]) return 1; return 0; }
+++jahh megy plusz valaki megnézné mért lehet körönként többször a paranccsal használni a menüt?? (pedig körönként 1x szeretném) +++ Aki legalább megcsinálja nekem megy a zöld:)
|
|