RSSy MYGO.pl Opublikowano Październik 8, 2023 o 21:33 RSSy Udostępnij Opublikowano Październik 8, 2023 o 21:33 Hello, can someone help me add custom icons for custom weapons ? I try the revolver first... I started something here : Code: #include <amxmodx> #define PLUGIN "Weapon Icon" #define VERSION "1.2" #define AUTHOR "hoboman313/Zenix" #define MAX_PLAYERS 32 new iconstatus, pcv_iloc new user_icons[MAX_PLAYERS + 1][16] public plugin_natives() { register_native("GiveUserRevolver", "NativeGiveUserRevolver", false); register_native("IsUserHasRevolver", "NativeIsUserHasRevolver", false); } public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR); register_event("CurWeapon", "update_icon", "be", "1=1"); register_event("AmmoX", "draw_icon", "be"); register_event("DeathMsg", "event_death", "a"); pcv_iloc = register_cvar("amx_weapon_location", "1"); check_icon_loc(); precache_model("sprites/revolver.spr"); } public update_icon(id) { remove_weapon_icon(id); check_icon_loc(); if (get_pcvar_num(pcv_iloc) == 0 || is_user_bot(id)) return; static sprite[16], iwpn, clip, ammo; iwpn = get_user_weapon(id, clip, ammo); if (iwpn == CSW_CUSTOM_REVOLVER || iwpn == CSW_CUSTOM1) { sprite = "revolver.spr"; } else { switch (iwpn) { case CSW_P228: sprite = "d_p228"; break; case CSW_SCOUT: sprite = "d_scout"; break; case CSW_HEGRENADE: sprite = "d_grenade"; break; case CSW_XM1014: sprite = "d_xm1014"; break; case CSW_MAC10: sprite = "d_mac10"; break; case CSW_AUG: sprite = "d_aug"; break; case CSW_SMOKEGRENADE: sprite = "d_flashbang"; break; case CSW_ELITE: sprite = "d_elite"; break; case CSW_FIVESEVEN: sprite = "d_fiveseven"; break; case CSW_UMP45: sprite = "d_ump45"; break; case CSW_SG550: sprite = "d_sg550"; break; case CSW_GALIL: sprite = "d_galil"; break; case CSW_FAMAS: sprite = "d_famas"; break; case CSW_USP: sprite = "d_usp"; break; case CSW_MP5NAVY: sprite = "d_mp5navy"; break; case CSW_M249: sprite = "d_m249"; break; case CSW_M3: sprite = "d_m3"; break; case CSW_M4A1: sprite = "d_m4a1"; break; case CSW_TMP: sprite = "d_tmp"; break; case CSW_G3SG1: sprite = "d_g3sg1"; break; case CSW_FLASHBANG: sprite = "d_flashbang"; break; case CSW_DEAGLE: sprite = "d_deagle"; break; case CSW_SG552: sprite = "d_sg552"; break; case CSW_AK47: sprite = "d_ak47"; break; case CSW_KNIFE: sprite = "d_knife"; break; case CSW_P90: sprite = "d_p90"; break; case CSW_GLOCK18: sprite = "d_glock18"; break; case CSW_AWP: sprite = "d_awp"; break; default: break; } } user_icons[id] = sprite; draw_icon(id); } public draw_icon(id) { static iwpn, clip, ammo, icon_color[3]; iwpn = get_user_weapon(id, clip, ammo); if ((ammo == 0 && clip == 0)) icon_color = {255, 0, 0}; else if (ammo == 0 && iwpn != CSW_KNIFE) icon_color = {255, 160, 0}; else icon_color = {0, 160, 0}; message_begin(MSG_ONE, iconstatus, {0, 0, 0}, id); write_byte(1); // статус (0=скрий, 1=покажи, 2=флаш) write_string(user_icons[id]); write_byte(icon_color[0]); // червено write_byte(icon_color[1]); // зелено write_byte(icon_color[2]); // синьо message_end(); } public remove_weapon_icon(id) { message_begin(MSG_ONE, iconstatus, {0, 0, 0}, id); write_byte(0); write_string(user_icons[id]); message_end(); } public event_death() { new id = read_data(2); if (!is_user_bot(id)) remove_weapon_icon(id); } public check_icon_loc() { new value = get_pcvar_num(pcv_iloc); if (value == 1) iconstatus = get_user_msgid("StatusIcon"); else if (value == 2) iconstatus = get_user_msgid("Scenario"); else iconstatus = 0; return PLUGIN_CONTINUE; } Przeczytaj cały wpis Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi