⭐🚀 TkyNET | Blacklist ve Profesyonel DDoS Korumalı TeamSpeak 3 Sunucuları 🚀⭐
Sponsor Görsel
🇹🇷 TR Lokasyon | 🛡️ Gelişmiş DDoS Koruması | ⚡ Düşük Ping | 🎧 Kesintisiz TS3 | Hostlar
Sponsor Görsel 2
SponsorSponsor

Konu

#1
Arkadaşlar para ile skin alabildiğimiz geliştirmeye açık temel bir menü var mı ?

yok ise zamanınızı almazsa yardımcı olabilirmisiniz

Kod:
#pragma semicolon 1

#include <amxmodx>
#include <reapi>
#include <nvault>

native rutbe_kill_cek(id);

new akswitch[MAX_CLIENTS+1],m4switch[MAX_CLIENTS+1], g_vault;

new const tag[]="TeamTR";

new const akmodel[][][]={
    {"Default [RUTBESIZ]","models/red_glow_skin/v_ak47_csgotm1.mdl",0},
    {"Silver [SILVER ELITE MASTER]","models/red_glow_skin/v_ak47_silver1.mdl",500},
    {"Nova [GOLD NOVA MASTER]","models/red_glow_skin/v_ak47_nova.mdl",1500},
    {"Distinguished [DISTINGUISHED MASTER]","models/red_glow_skin/v_ak47_distungied.mdl",3000},
    {"GLOBAL [Legendary Eagle]","models/red_glow_skin/v_ak47_global2.mdl",5000}
};
new const m4model[][][]={
    {"Default [RUTBESIZ]","models/red_glow_skin/v_m4a4_csgotm3.mdl",0},
    {"LVER [SILVER ELITE MASTER]","models/red_glow_skin/v_m4a4_silver.mdl",500},
    {"Nova [GOLD NOVA MASTER]","models/red_glow_skin/v_m4a4_nova.mdl",1500},
    {"Distinguished [DISTINGUISHED MASTER]","models/red_glow_skin/v_m4a4_distungied.mdl",3000},
    {"GLOBAL [GLOBAL ELITE]","models/red_glow_skin/v_m4a4_global2.mdl",5000}
};

public plugin_init(){
    register_plugin("Skin Menu","0.1","bilalgecer47");
   
    new const menuclcmd[][]={
        "say /skin","say /skinmenu"
    };
    register_clcmd("nightvision","@mainmenu");
    for(new i;i<sizeof(menuclcmd);i++){
        register_clcmd(menuclcmd[i],"@mainmenu");
    }
    RegisterHookChain(RG_CBasePlayerWeapon_DefaultDeploy, "@CBasePlayerWeapon_DefaultDeploy_Pre", .post = false);
}
public plugin_precache() {
    for(new i = 0; i < sizeof(akmodel); i++) {
        precache_model(akmodel[i][1]);
    }
    for(new i = 0; i < sizeof(m4model); i++) {
        precache_model(m4model[i][1]);
    }
}
public plugin_cfg() {
    g_vault = nvault_open("Skins");

    if(g_vault == INVALID_HANDLE) {
        set_fail_state("Unknown nvault for Skins");
    }
}
public plugin_end() {
    nvault_close(g_vault);
}
public client_authorized(id, const authid[]) {
    akswitch[id] = nvault_get(g_vault, fmt("%s-[AkSkin]", authid));
    m4switch[id] = nvault_get(g_vault, fmt("%s-[M4Skin]", authid));
}
public client_disconnected(id) {
    SaveVault(id);
}
public SaveVault(id) {
    new authid[MAX_AUTHID_LENGTH], data[MAX_AUTHID_LENGTH+10], seconddata[MAX_AUTHID_LENGTH+10];
    get_user_authid(id, authid, charsmax(authid));

    num_to_str(akswitch[id], data, charsmax(data));
    num_to_str(m4switch[id], seconddata, charsmax(seconddata));

    nvault_set(g_vault, fmt("%s-[AkSkin]", authid), data);
    nvault_set(g_vault, fmt("%s-[M4Skin]", authid), seconddata);
}
@CBasePlayerWeapon_DefaultDeploy_Pre(const pEntity, szViewModel[], szWeaponModel[], iAnim, szAnimExt[], skiplocal) {
    new pPlayer = get_member(pEntity, m_pPlayer);
    new sWeapon = get_member(pEntity, m_iId);
   
    switch(sWeapon) {
        case WEAPON_AK47: {
            SetHookChainArg(2, ATYPE_STRING, akmodel[akswitch[pPlayer]][1]);
        }
        case WEAPON_M4A1: {
            SetHookChainArg(2, ATYPE_STRING, m4model[m4switch[pPlayer]][1]);
        }
    }
}
@mainmenu(const id){
    new menu = menu_create(fmt("\r%s \w| \ySkin Menu", tag), "@mainmenu_handler");
   
    menu_additem(menu, fmt("\r%s \w| \yM4A4 Models", tag));
    menu_additem(menu, fmt("\r%s \w| \yAK-47 Models", tag));
   
    menu_setprop(menu, MPROP_EXITNAME, fmt("\d%s \w| \yExit", tag));
    menu_setprop(menu,MPROP_NUMBER_COLOR,"\d");
    menu_display(id, menu);   
}
@mainmenu_handler(const id, const menu, const item) {
    if(item == MENU_EXIT) {
        menu_destroy(menu);
        return PLUGIN_HANDLED;
    }
    switch(item) {
        case 0: {
            @m4modelmenu(id);
        }
        case 1: {
            @ak47modelmenu(id);
        }
    }
    menu_destroy(menu);
    return PLUGIN_HANDLED;
}

@m4modelmenu(const id){
    new menu = menu_create(fmt("\r%s \w| \yM4 - A1;A4 Menu", tag), "@m4modelmenu_handler");
   
    for(new i = 0; i < sizeof(m4model); i++) {
        menu_additem(menu, fmt("\r%s \w| \y%s", tag, m4model[i][0]));
    }
    menu_setprop(menu, MPROP_EXITNAME, fmt("\d%s \w| \yExit", tag));
    menu_setprop(menu,MPROP_NUMBER_COLOR,"\d");
    menu_display(id, menu);
}
@m4modelmenu_handler(const id, const menu, const item) {
    if(item == MENU_EXIT) {
        menu_destroy(menu);
        return PLUGIN_HANDLED;
    }
    new rank;rank = rutbe_kill_cek(id);
    if(rank >= m4model[item][2][0]){
        m4switch[id]=item;
        SaveVault(id);
        if(get_user_weapon(id) == CSW_M4A1) set_entvar(id, var_viewmodel, m4model[m4switch[id]][1]);

        client_print_color(id,id,"^3[^4%s^3] ^4%s Modeli ^3Basarili bir sekilde aktiflestirildi !",tag,m4model[m4switch[id]][0]);
        @m4modelmenu(id);
    }
    else{
        client_print_color(id,id,"^3[^4%s^3] Bu Model icin yeterli ^4Ranka ^3sahip de�ilsin !",tag);
        @m4modelmenu(id);
    }
    menu_destroy(menu);return PLUGIN_HANDLED;
}
@ak47modelmenu(const id){
    new menu = menu_create(fmt("\r%s \w| \yAk-47 Menu", tag), "@ak47modelmenu_handler");
   
    for(new i = 0; i < sizeof(akmodel); i++) {
        menu_additem(menu, fmt("\r%s \w| \y%s", tag, akmodel[i][0]));
    }
    menu_setprop(menu, MPROP_EXITNAME, fmt("\d%s \w| \yExit", tag));
    menu_setprop(menu,MPROP_NUMBER_COLOR,"\d");
    menu_display(id, menu);
}
@ak47modelmenu_handler(const id, const menu, const item) {
    if(item == MENU_EXIT) {
        menu_destroy(menu);
        return PLUGIN_HANDLED;
    }
    new rank;rank = rutbe_kill_cek(id);
    if(rank >= akmodel[item][2][0]){
        akswitch[id]=item;
        SaveVault(id);
        if(get_user_weapon(id) == CSW_AK47) set_entvar(id, var_viewmodel, akmodel[akswitch[id]][1]);

        client_print_color(id,id,"^3[^4%s^3] ^4%s Modeli ^3Basarili bir sekilde aktiflestirildi !",tag,akmodel[akswitch[id]][0]);
        @ak47modelmenu(id);
    }
    else{
        client_print_color(id,id,"^3[^4%s^3] Bu Model icin yeterli ^4Ranka ^3sahip de�ilsin !",tag);
        @ak47modelmenu(id);
    }
    menu_destroy(menu);return PLUGIN_HANDLED;
}

Bu tarzda temel seviyede ancak rank ile skin alma değilde para ile alınan bir eklentiye ihtiyacım var.
Son Düzenleme: 03-04-2024, 14:32, Düzenleyen: Tester.
#2
Konunuz çözüldüyse çözüldü olarak bildirin
亗 TEŞKİLAT-I MAHSUSA 亗

DNS :  pro.timailesi.com / ts1.timailesi.com

b3v4zbt
#3
İstek konusu, @BAIZIMING adlı kullanıcı tarafından 4 gün içinde çözülmüştür.
İsteği çözdüğü için BAIZIMING Adlı kullanıcıya 1 rep puanı ve 1 yardım etme puanı otomatik olarak verilmiştir.
BAIZIMING Adlı kullanıcı sizin dışınızda toplam 54 kişiye yardım etmiştir.

Herhangi bir konuda hata olduğunu düşünüyorsanız destek sistemi üzerinden iletişim kurabilirsiniz.

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da
Task