Kod: Tümünü seç
#include <amxmodx>
#include <amxmisc>
#include <reapi>
#include <nvault>
new const tag[]="Forum.CSD" ;
new const tmodels[][][]={
{ "Csgo_T", 0 },
{ "Cj", 98 },
{ "Tommy", 96 }
};
new const ctmodels[][][]={
{ "Csgo_CT", 0 },
{ "Cj", 98 },
{ "Tommy", 96 }
};
new models[MAX_CLIENTS+1],para[MAX_CLIENTS+1],satinaldi[MAX_CLIENTS+1][11],g_aktif[MAX_CLIENTS+1][sizeof(tmodels)], cvar;
public plugin_init()
{
register_plugin("Karaktermenu","0.1","bilalgecer47");
new const menuclcmd[][]={
"say /karakter","say /karakterler","say /karaktermenu","say /skin" // menuye giris cmdleri
}
for(new i;i<sizeof(menuclcmd);i++){
register_clcmd(menuclcmd[i],"@anamenu");
}
register_clcmd("radio3","@anamenu");
register_clcmd("say /anamenu","@anamenu");
register_clcmd("say /param","@ShowMoney");
register_concmd("amx_paraver","@paraver");
RegisterHookChain(RG_CBasePlayer_Spawn,"@RG_CBasePlayer_Spawn_Post",1);
RegisterHookChain(RG_CBasePlayer_Killed, "@CBasePlayer_Killed", 1);
bind_pcvar_num(create_cvar("amx_killfiyat", "100"), cvar);
}
@ShowMoney(const id)
{
client_print_color(id,id, "^4Mevcut Paran ^1: ^4[^3%d^4]", para[id]);
}
// Bilal Gecer'den alıntıdır.
@paraver(id)
{
if(get_user_flags(id) & ADMIN_RCON)
{
new kisi[MAX_NAME_LENGTH],packs[10];
read_argv(1,kisi,charsmax(kisi));
read_argv(2,packs,charsmax(packs));
new index = cmd_target(id,kisi,0);
if(!is_str_num(packs))
{
client_print_color(id,id,"^3Sadece ^4Sayi ^3yaziniz !");
return PLUGIN_HANDLED;
}
else{
para[index]+= str_to_num(packs);
client_print_color(0,0,"^4%n ^3isimli admin ^4%n ^3isimli oyuncudan ^1%i ^3para verdi.",id,index,str_to_num(packs));
}
}
return PLUGIN_HANDLED;
}
@RG_CBasePlayer_Spawn_Post(const pPlayer) {
if(!is_user_alive(pPlayer)) {
return;
}
new TeamName:iTeam = get_member(pPlayer, m_iTeam);
switch(iTeam) {
case TEAM_TERRORIST: {
rg_set_user_model(pPlayer, fmt("%s", tmodels[models[pPlayer]][0]));
}
case TEAM_CT: {
rg_set_user_model(pPlayer, fmt("%s", ctmodels[models[pPlayer]][0]));
}
}
}
@CBasePlayer_Killed(const this, pevAttacker, iGib) {
if(!is_user_connected(pevAttacker) || this == pevAttacker) {
return;
}
para[pevAttacker] += cvar;
}
public plugin_precache()
{
for(new i;i<sizeof(tmodels);i++) {
precache_model(fmt("models/player/%s/%s.mdl", tmodels[i][0], tmodels[i][0]));
}
for(new i;i<sizeof(ctmodels);i++) {
precache_model(fmt("models/player/%s/%s.mdl", ctmodels[i][0], ctmodels[i][0]));
}
}
@anamenu(id) {
new bool:isTerrorist = bool:(get_member(id, m_iTeam) == TEAM_TERRORIST);
new menu = menu_create(fmt("\r%s \w| \y%s Ozel Model Menu^nMevcut Paran : %d", tag, isTerrorist ? "T" : "CT", para[id]), isTerrorist ? "@tmodel_handler" : "@ctmodel_handler");
if(isTerrorist) {
for(new i = 0; i < sizeof(tmodels); i++) {
menu_additem(menu, fmt("\r%s \r| \y%s %s \r%s", tag, tmodels[i][0], satinaldi[id][i] ? "[Satin Alinmis]":fmt("[%d TL]", tmodels[i][1]), g_aktif[id][i] ? "{Aktif}":""), fmt("%d", i));
}
}
else {
for(new i = 0; i < sizeof(ctmodels); i++) {
menu_additem(menu, fmt("\r%s \r| \y%s %s \r%s", tag, ctmodels[i][0], satinaldi[id][i] ? "[Satin Alinmis]":fmt("[%d TL]", ctmodels[i][1]), g_aktif[id][i] ? "{Aktif}":""), fmt("%d", i));
}
}
menu_additem(menu, fmt("\r%s \r| \yModel Sifirla", tag), "333");
menu_setprop(menu, MPROP_EXITNAME, "\yCikis");
menu_setprop(menu, MPROP_NUMBER_COLOR, "\w");
menu_display(id, menu);
return PLUGIN_HANDLED;
}
@tmodel_handler(const id,const menu,const item) {
if( item == MENU_EXIT )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new data[6];menu_item_getinfo(menu,item,_,data,charsmax(data));
new key = str_to_num(data);
models[id] = key;
switch(key)
{
case 333:
{
rg_reset_user_model(id)
for(new i = 0; i < sizeof(tmodels); i++)
{
g_aktif[id][i] = 0;
}
client_print_color(id,id, "^1Modeli ^3Sifirladin.")
}
default:
{
if(para[id] < tmodels[key][1][0])
{
client_print_color(id,id, "^1Paraniz ^4yeterli ^3degil.")
return PLUGIN_HANDLED;
}
if(satinaldi[id][key])
{
client_print_color(id,id, "^1%s Adli ^3Modeli ^4Aktif Ettin.", tmodels[models[id]][0])
for(new i = 0; i < sizeof(tmodels); i++)
{
g_aktif[id][i] = 0;
}
g_aktif[id][key] = 1;
rg_set_user_model(id, fmt("%s", tmodels[models[id]][0]));
return PLUGIN_HANDLED;
}
satinaldi[id][key]++
para[id] -= tmodels[key][1][0]
for(new i = 0; i < sizeof(tmodels); i++)
{
g_aktif[id][i] = 0;
}
g_aktif[id][key] = 1;
client_print_color(id,id, "^1Menuden ^4%s ^3Modelini Satin Aldin.",tmodels[models[id]][0])
rg_set_user_model(id, fmt("%s", tmodels[models[id]][0]));
}
}
menu_destroy(menu); return PLUGIN_HANDLED;
}
@ctmodel_handler(const id,const menu,const item) {
if( item == MENU_EXIT )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new data[6];menu_item_getinfo(menu,item,_,data,charsmax(data));
new key = str_to_num(data);
models[id] = key;
switch(key)
{
case 333:
{
rg_reset_user_model(id)
for(new i = 0; i < sizeof(ctmodels); i++)
{
g_aktif[id][i] = 0;
}
client_print_color(id,id, "^1Modeli ^3Sifirladin.")
}
default:
{
if(para[id] < ctmodels[key][1][0])
{
client_print_color(id,id, "^1Paraniz ^4yeterli ^3degil.")
return PLUGIN_HANDLED;
}
if(satinaldi[id][key])
{
client_print_color(id,id, "^1%s Adli ^3Modeli ^4Aktif Ettin.", ctmodels[models[id]][0])
for(new i = 0; i < sizeof(ctmodels); i++)
{
g_aktif[id][i] = 0;
}
g_aktif[id][key] = 1;
rg_set_user_model(id, fmt("%s", ctmodels[models[id]][0]));
return PLUGIN_HANDLED;
}
satinaldi[id][key]++
para[id] -= ctmodels[key][1][0]
for(new i = 0; i < sizeof(ctmodels); i++)
{
g_aktif[id][i] = 0;
}
g_aktif[id][key] = 1;
client_print_color(id,id, "^1Menuden ^4%s ^3Modelini Satin Aldin.",ctmodels[models[id]][0])
rg_set_user_model(id, fmt("%s", ctmodels[models[id]][0]));
}
}
menu_destroy(menu); return PLUGIN_HANDLED;
}
/* nvault (PurposeLess) */
new g_vault;
public plugin_cfg() {
g_vault = nvault_open("KarakterMenu");
if(g_vault == INVALID_HANDLE) {
set_fail_state("Unknown nvault for KarakterMenu");
}
}
public plugin_end() {
nvault_close(g_vault);
}
public client_authorized(pPlayer, const authid[]) {
models[pPlayer] = nvault_get(g_vault, fmt("%s_model", authid));
para[pPlayer] = nvault_get(g_vault, fmt("%s_para", authid));
satinaldi[pPlayer][0] = nvault_get(g_vault, fmt("%s_sa0", authid));
satinaldi[pPlayer][1] = nvault_get(g_vault, fmt("%s_sa1", authid));
satinaldi[pPlayer][2] = nvault_get(g_vault, fmt("%s_sa2", authid));
satinaldi[pPlayer][3] = nvault_get(g_vault, fmt("%s_sa3", authid));
satinaldi[pPlayer][4] = nvault_get(g_vault, fmt("%s_sa4", authid));
}
public client_disconnected(pPlayer) {
new authid[MAX_AUTHID_LENGTH], data[MAX_AUTHID_LENGTH+10];
get_user_authid(pPlayer, authid, charsmax(authid));
num_to_str(models[pPlayer], data, charsmax(data));
nvault_pset(g_vault, fmt("%s_model", authid), data);
num_to_str(para[pPlayer], data, charsmax(data));
nvault_pset(g_vault, fmt("%s_para", authid), data);
for(new i = 0; i <= 10; i++)
{
num_to_str(satinaldi[pPlayer][i], data, charsmax(data));
nvault_pset(g_vault, fmt("%s_sa%i", authid, i), data);
}
}