buna benzer birşey yapmıştım daha önceden.https://www.webailesi.com/konu-reapi-gelismis-rank-sistemi-13325
Kod:
#pragma semicolon 1
#include <amxmodx>
#include <reapi>
#include <ars>
new const tag[]="TeamTR";
new const serverip[] = "TeamTR";
new const ts3ip[] = "Ts3.TeamTRGaming.Com";
new const bicakmodel[][][]={
{"Default","models/bilalgecer47/v_knife2.mdl"},
{"Ursus Knife","models/bilalgecer47/v_ursus_crimson.mdl"},
{"M9 Bayonet","models/bilalgecer47/v_m9_doppler.mdl"},
{"Karambit","models/bilalgecer47/v_karambit_auto.mdl"},
{"Kelebek","models/bilalgecer47/v_butterfly_marble.mdl"},
{"Flip Knife","models/bilalgecer47/v_flip_lore.mdl"}
};
new const akmodel[][][]={
{"Default [Silver I]","models/bilalgecer47/v_ak47.mdl",ARS_SILVER_I},
{"Elite Build [Gold Nova I]","models/bilalgecer47/v_ak47_elite.mdl",ARS_GOLD_NOVA_I},
{"Blue Laminate [Master Guardian I]","models/bilalgecer47/v_ak47_bluelaminate.mdl",ARS_MASTER_GUARDIAN_I},
{"Blood Sport [Legendary Eagle]","models/bilalgecer47/v_ak47_bloodsport.mdl",ARS_LEGENDARY_EAGLE}
};
new const m4model[][][]={
{"Default [Silver I]","models/bilalgecer47/v_m4a1.mdl",ARS_SILVER_I},
{"Icarus Fell [Gold Nova I]","models/bilalgecer47/v_m4a1_icarusfell.mdl",ARS_GOLD_NOVA_I},
{"Desolate Space [Master Guardian I]","models/bilalgecer47/v_m4a4_desolate.mdl",ARS_MASTER_GUARDIAN_I},
{"Buzz Kill [Legendary Eagle]","models/bilalgecer47/v_m4a4_buzzkill.mdl",ARS_LEGENDARY_EAGLE}
};
new const awpmodel[][][]={
{"Default [Silver I]","models/bilalgecer47/v_Awp.mdl",ARS_SILVER_I},
{"Boom [Gold Nova I]","models/bilalgecer47/v_awp_boom.mdl",ARS_GOLD_NOVA_I},
{"Electric [Master Guardian I]","models/bilalgecer47/v_awp_electric.mdl",ARS_MASTER_GUARDIAN_I},
{"Dragon Lore [Legendary Eagle]","models/bilalgecer47/v_awp_dragonlore.mdl",ARS_LEGENDARY_EAGLE}
};
new const deaglemodel[][][]={
{"Default [Silver I]","models/bilalgecer47/v_deagle.mdl",ARS_SILVER_I},
{"Bronz Deco [Gold Nova I]","models/bilalgecer47/v_deagle_bronzedeco.mdl",ARS_GOLD_NOVA_I},
{"Hyptonic [Master Guardian I]","models/bilalgecer47/v_deagle_hypnotic.mdl",ARS_MASTER_GUARDIAN_I},
{"Kumicho Dragon [Legendary Eagle]","models/bilalgecer47/v_deagle_kumicho.mdl",ARS_LEGENDARY_EAGLE}
};
new akswitch[MAX_CLIENTS+1],m4switch[MAX_CLIENTS+1],awpswitch[MAX_CLIENTS+1],deagleswitch[MAX_CLIENTS+1],
gorunum[MAX_CLIENTS+1];
new mapname[MAX_MAPNAME_LENGTH];
public plugin_init(){
register_plugin("Cs:Go Menu","0.1","bilalgecer47");
new const menuclcmd[][]={
"say /csgo","say /csg","say /csgomenu","say /jbmenu","say /bbmenu"
};
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);
rh_get_mapname(mapname, charsmax(mapname));
}
public plugin_precache() {
for(new i = 0; i < sizeof(bicakmodel); i++) {
precache_model(bicakmodel[i][1]);
}
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]);
}
for(new i = 0; i < sizeof(awpmodel); i++) {
precache_model(awpmodel[i][1]);
}
for(new i = 0; i < sizeof(deaglemodel); i++) {
precache_model(deaglemodel[i][1]);
}
}
@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_KNIFE: {
SetHookChainArg(2, ATYPE_STRING, bicakmodel[gorunum[pPlayer]][1]);
}
case WEAPON_AK47: {
SetHookChainArg(2, ATYPE_STRING, akmodel[akswitch[pPlayer]][1]);
}
case WEAPON_M4A1: {
SetHookChainArg(2, ATYPE_STRING, m4model[m4switch[pPlayer]][1]);
}
case WEAPON_AWP: {
SetHookChainArg(2, ATYPE_STRING, awpmodel[awpswitch[pPlayer]][1]);
}
case WEAPON_DEAGLE: {
SetHookChainArg(2, ATYPE_STRING, deaglemodel[deagleswitch[pPlayer]][1]);
}
}
}
@mainmenu(const id){
new menu = menu_create(fmt("\r%s \w| \yCs:Go Menu^n\dServer Ip : %s^nTs3 Ip : %s", tag,serverip,ts3ip), "@mainmenu_handler");
menu_additem(menu, fmt("\r%s \w| \yWeapon Model Menu", tag));
menu_additem(menu, fmt("\r%s \w| \yKnife Model Menu", tag));
menu_additem(menu, fmt("\r%s \w| \yCrossHair Menu", tag));
menu_additem(menu, fmt("\r%s \w| \yConnect To Ts3", tag));
menu_additem(menu, fmt("\r%s \w| \yInfo Menu", 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: {
@weaponmenus(id);
}
case 1: {
@knifemenus(id);
}
case 2: {
client_cmd(id,"say /crosshair");
}
case 3: {
client_cmd(id,"say /ts3");
}
case 4: {
}
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}
@weaponmenus(const id){
new menu = menu_create(fmt("\r%s \w| \yWeapon Model Menu", tag), "@weaponmenus_handler");
menu_additem(menu, fmt("\r%s \w| \yAk-47 Models", tag));
menu_additem(menu, fmt("\r%s \w| \yM4-A1S,A4 Models", tag));
menu_additem(menu, fmt("\r%s \w| \yAWP Models", tag));
menu_additem(menu, fmt("\r%s \w| \yDeagle Models", tag));
menu_setprop(menu, MPROP_EXITNAME, fmt("\d%s \w| \yExit", tag));
menu_setprop(menu,MPROP_NUMBER_COLOR,"\d");
menu_display(id, menu);
}
@weaponmenus_handler(const id, const menu, const item) {
if(item == MENU_EXIT) {
menu_destroy(menu);
return PLUGIN_HANDLED;
}
switch(item) {
case 0: {
@ak47modelmenu(id);
}
case 1: {
@m4modelmenu(id);
}
case 2: {
@awpmodelmenu(id);
}
case 3: {
@deaglemodelmenu(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 = ars_get_user_rank(id);
if(rank >= akmodel[item][2][0]){
akswitch[id]=item;
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;
}
@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 = ars_get_user_rank(id);
if(rank >= m4model[item][2][0]){
m4switch[id]=item;
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;
}
@awpmodelmenu(const id){
new menu = menu_create(fmt("\r%s \w| \yAWP Menu", tag), "@awpmodelmenu_handler");
for(new i = 0; i < sizeof(awpmodel); i++) {
menu_additem(menu, fmt("\r%s \w| \y%s", tag, awpmodel[i][0]));
}
menu_setprop(menu, MPROP_EXITNAME, fmt("\d%s \w| \yExit", tag));
menu_setprop(menu,MPROP_NUMBER_COLOR,"\d");
menu_display(id, menu);
}
@awpmodelmenu_handler(const id, const menu, const item) {
if(item == MENU_EXIT) {
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new rank;rank = ars_get_user_rank(id);
if(rank >= awpmodel[item][2][0]){
awpswitch[id]=item;
client_print_color(id,id,"^3[^4%s^3] ^4%s Modeli ^3Basarili bir sekilde aktiflestirildi !",tag,awpmodel[awpswitch[id]][0]);
@awpmodelmenu(id);
}
else{
client_print_color(id,id,"^3[^4%s^3] Bu Model icin yeterli ^4Ranka ^3sahip değilsin !",tag);
@awpmodelmenu(id);
}
menu_destroy(menu);return PLUGIN_HANDLED;
}
@deaglemodelmenu(const id){
new menu = menu_create(fmt("\r%s \w| \yDeagle Menu", tag), "@deaglemodelmenu_handler");
for(new i = 0; i < sizeof(deaglemodel); i++) {
menu_additem(menu, fmt("\r%s \w| \y%s", tag, deaglemodel[i][0]));
}
menu_setprop(menu, MPROP_EXITNAME, fmt("\d%s \w| \yExit", tag));
menu_setprop(menu,MPROP_NUMBER_COLOR,"\d");
menu_display(id, menu);
}
@deaglemodelmenu_handler(const id, const menu, const item) {
if(item == MENU_EXIT) {
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new rank;rank = ars_get_user_rank(id);
if(rank >= deaglemodel[item][2][0]){
deagleswitch[id]=item;
client_print_color(id,id,"^3[^4%s^3] ^4%s Modeli ^3Basarili bir sekilde aktiflestirildi !",tag,deaglemodel[deagleswitch[id]][0]);
@deaglemodelmenu(id);
}
else{
client_print_color(id,id,"^3[^4%s^3] Bu Model icin yeterli ^4Ranka ^3sahip değilsin !",tag);
@deaglemodelmenu(id);
}
menu_destroy(menu);return PLUGIN_HANDLED;
}
@knifemenus(const id){
new menu = menu_create(("\r%s \w| \yKnife Menu", tag), "@knifemenus_handler");
for(new i = 0; i < sizeof(bicakmodel); i++) {
menu_additem(menu, fmt("\r%s \w| \y%s", tag, bicakmodel[i][0]));
}
menu_setprop(menu, MPROP_EXITNAME,fmt( "\d%s \w| \yExit", tag));
menu_setprop(menu,MPROP_NUMBER_COLOR,"\d");
menu_display(id, menu);
}
@knifemenus_handler(const id, const menu, const item) {
if(item == MENU_EXIT) {
menu_destroy(menu);
return PLUGIN_HANDLED;
}
gorunum[id]=item;
rg_remove_item(id,"weapon_knife");rg_give_item(id,"weapon_knife",GT_REPLACE);
client_print_color(id,id,"^3[^4%s^3] ^4%s Modeli ^3Basarili bir sekilde aktiflestirildi !",tag,bicakmodel[gorunum[id]][0]);
@knifemenus(id);
menu_destroy(menu);return PLUGIN_HANDLED;
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1055\\ f0\\ fs16 \n\\ par }
*/