Skocz do zawartości

Nowy szablon forum

mygo.pl

Stworzyliśmy dla Was nowy wygląd forum. Z pewnością znajdziesz rzeczy, które wg Ciebie mogą zostać zmienione - wspomnij o tym w specjalnym wątku.

Czytaj więcej

Jak założyć własną sieć

serwerów CS

Zastanawiasz się nad prowadzeniem własnej sieci serwerów? Przeczytaj podstawowe informacje, na które należy zwrócić uwagę, przy takim projekcie.

Czytaj więcej

Tworzymy spis sieci

dodaj swoją

Dodaj sieć do której należysz, pozwoli to na promocję i budowę ogólnopolskiej bazy sieci CS.

Czytaj więcej

RSSHelp adding custom icons for custom weapons


MYGO.pl
 Udostępnij

Rekomendowane odpowiedzi

  • RSSy
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

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
 Udostępnij

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...