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

RSSSaving System For VIP Custom Extra By OciXCrom


MYGO.pl
 Udostępnij

Rekomendowane odpowiedzi

  • RSSy
Hi Modders,
I downloaded a OciXCrom's VIP Custom Extra and that is very nice plugin.
I want saving system in VIP Menu.

Two Things i want in the VIP Menu.
1) I used VIP Menu and then i want an option (Save Settings) so if i select save settings so at next spawn i will have same items that i select previously.

2) I want that there should be each amount of use of vip menu for each admin grade (i want just and example about setting separate amount of uses for each grade and i will do myself)

Here's the code:
Code:
#include <amxmodx> #include <amxmisc> #include <cstrike> #include <fun> #include <hamsandwich> #define PLUGIN_NAME "VIP Extras" #define PLUGIN_VERSION "2.2.1" #define PLUGIN_AUTHOR "OciXCrom" #define Ham_Player_ResetMaxSpeed Ham_Item_PreFrame #define MAX_PLAYERS 32 new g_HasSpeed[MAX_PLAYERS+1]; #define MODELS_PATH "models/player" #define SOUND_MENU "items/gunpickup2.wav" new flag_vip, flag_skin, wait, maxhealth, maxmoney, menu_enabled, menu_maxuses, menu_spawn new get_health, get_armor, health_amount, armor_amount, get_deagle, he_amount, flash_amount, smoke_amount, get_transparency, transparency_amount new get_m4a1, get_ak47, get_awp, get_g3sg1, get_sg550, menu_m4a1, menu_ak47, menu_awp, menu_g3sg1, menu_sg550 new menu_health, menu_armor, menu_deagle, menu_transparency, menu_speed, menu_gravity, menu_moredamage new get_skin_t, get_skin_ct, skin_name_t, skin_name_ct, get_speed, speed_amount, get_gravity, gravity_amount, get_moredamage, moredamage_multiplier new killbonus_health_normal, killbonus_health_headshot, killbonus_money_normal, killbonus_money_headshot new skin_t[32], skin_ct[32], menu_uses[33] new bool:user_moredamage[33] new bool:skin_t_active new bool:skin_ct_active new const szPrefix[] = "^1[^4VIP Extras^1]" enum Color {     NORMAL = 1, // clients scr_concolor cvar color     GREEN, // Green Color     TEAM_COLOR, // Red, grey, blue     GREY, // grey     RED, // Red     BLUE, // Blue } new TeamName[][] = {     "",     "TERRORIST",     "CT",     "SPECTATOR" } // Max Usage For Other Admin Grades. new g_iUse[33] const MAX_ADMIN_USES = 5 public plugin_init() {     register_plugin(PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR)     register_cvar("CustomVIPExtras", PLUGIN_VERSION, FCVAR_SERVER|FCVAR_SPONLY|FCVAR_UNLOGGED)         RegisterHam(Ham_Spawn, "player", "player_spawn", 1)     RegisterHam(Ham_TakeDamage, "player", "player_damage")     register_event("DeathMsg", "player_killed", "a")     register_event("CurWeapon", "change_weapon", "be", "1=1")         register_clcmd("say /vm", "vip_menu")     register_clcmd("say_team /vm", "vip_menu")     register_clcmd("say /vipmenu", "vip_menu")     register_clcmd("say_team /vipmenu", "vip_menu")     register_clcmd("drop", "vip_menu")         wait = register_cvar("ve_wait", "0.5")     flag_vip = register_cvar("ve_vipflag", "b")     flag_skin = register_cvar("ve_skinflag", "b")     menu_enabled = register_cvar("ve_menu_enabled", "1")     menu_maxuses = register_cvar("ve_menu_maxuses", "4")     menu_spawn = register_cvar("ve_menu_spawn", "1")         get_health = register_cvar("ve_get_health", "1")     get_armor = register_cvar("ve_get_armor", "1")     get_deagle = register_cvar("ve_get_deagle", "1")     get_transparency = register_cvar("ve_get_transparency", "25")     get_speed = register_cvar("ve_get_speed", "250")     get_gravity = register_cvar("ve_get_gravity", "0.7")     get_m4a1 = register_cvar("ve_get_m4a1", "0")     get_ak47 = register_cvar("ve_get_ak47", "0")     get_awp = register_cvar("ve_get_awp", "0")     get_g3sg1 = register_cvar("ve_get_g3sg1", "0")     get_sg550 = register_cvar("ve_get_sg550", "0")     get_moredamage = register_cvar("ve_get_moredamage", "0")         menu_health = register_cvar("ve_menu_health", "1")     menu_armor = register_cvar("ve_menu_armor", "1")     menu_deagle = register_cvar("ve_menu_deagle", "1")     menu_transparency = register_cvar("ve_menu_transparency", "1")     menu_speed = register_cvar("ve_menu_speed", "1")     menu_gravity = register_cvar("ve_menu_gravity", "1")     menu_m4a1 = register_cvar("ve_menu_m4a1", "0")     menu_ak47 = register_cvar("ve_menu_ak47", "0")     menu_awp = register_cvar("ve_menu_awp", "0")     menu_g3sg1 = register_cvar("ve_menu_g3sg1", "1")     menu_sg550 = register_cvar("ve_menu_sg550", "1")     menu_moredamage = register_cvar("ve_menu_moredamage", "1")         health_amount = register_cvar("ve_health_amount", "100")     armor_amount = register_cvar("ve_armor_amount", "100")     he_amount = register_cvar("ve_he_amount", "1")     flash_amount = register_cvar("ve_flash_amount", "0")     smoke_amount = register_cvar("ve_smoke_amount", "1")     transparency_amount = register_cvar("ve_transparency_amount", "75")     speed_amount = register_cvar("ve_speed_amount", "350.0")     gravity_amount = register_cvar("ve_gravity_amount", "0.5")     moredamage_multiplier = register_cvar("ve_moredamage_multiplier", "2")         killbonus_health_normal = register_cvar("ve_killbonus_health_normal", "10")     killbonus_health_headshot = register_cvar("ve_killbonus_health_headshot", "15")     killbonus_money_normal = register_cvar("ve_killbonus_money_normal", "700")     killbonus_money_headshot = register_cvar("ve_killbonus_money_headshot", "1000")     maxhealth = register_cvar("ve_max_health", "500")     maxmoney = register_cvar("ve_max_money", "1000000")          set_cvar_num("sv_maxspeed", get_pcvar_num(speed_amount))         //Ham     RegisterHam(Ham_Player_ResetMaxSpeed, "player", "Player_ResetMaxSpeed", 1) } public change_weapon(id)     if(user_has_flag(id, flag_vip) && get_pcvar_num(get_speed) == 1) set_user_maxspeed(id, get_pcvar_float(speed_amount)) public player_spawn(id) {     if(is_user_alive(id))     {         menu_uses[id] = 0         user_moredamage[id] = false         cs_reset_user_model(id)         set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderNormal, 0)                 if(get_pcvar_num(menu_enabled) > 0 && get_pcvar_num(menu_spawn) == 1)             vip_menu(id)     }         set_task(get_pcvar_float(wait), "vip_set", id) } public vip_set(id) {     if(!is_user_alive(id))         return         if(user_has_flag(id, flag_skin))     {         switch(get_user_team(id))         {             case 1: if(skin_t_active) cs_set_user_model(id, skin_t)             case 2: if(skin_ct_active) cs_set_user_model(id, skin_ct)         }     }         if(get_pcvar_num(menu_enabled) == 1)         return         if(user_has_flag(id, flag_vip))     {         if(get_pcvar_num(get_health) == 1)             vip_equip(id, 0)                     if(get_pcvar_num(get_armor) == 1)             vip_equip(id, 1)                 if(get_pcvar_num(get_deagle) == 1)             vip_equip(id, 2)                     new he = get_pcvar_num(he_amount)         new flash = get_pcvar_num(flash_amount)         new smoke = get_pcvar_num(smoke_amount)                 if(he > 0)             vip_equip(id, 3)                     if(flash > 0)             vip_equip(id, 4)                 if(smoke > 0)             vip_equip(id, 5)                 if(get_pcvar_num(get_transparency) == 1)             vip_equip(id, 6)                 if(get_pcvar_num(get_speed) == 1)             vip_equip(id, 7)                     if(get_pcvar_num(get_gravity) == 1)             vip_equip(id, 8)                 if(get_pcvar_num(get_m4a1) == 1)             vip_equip(id, 9)                 if(get_pcvar_num(get_ak47) == 1)             vip_equip(id, 10)                     if(get_pcvar_num(get_awp) == 1)             vip_equip(id, 11)                     if(get_pcvar_num(get_g3sg1) == 1)             vip_equip(id, 12)                 if(get_pcvar_num(get_sg550) == 1)             vip_equip(id, 13)                 if(get_pcvar_num(get_moredamage) == 1)             vip_equip(id, 14)     } } public vip_equip(id, item) {     switch(item)     {         case 0: set_user_health(id, get_user_health(id) + get_pcvar_num(health_amount))         case 1: set_user_armor(id, get_pcvar_num(armor_amount))         case 2:         {             give_item(id, "weapon_deagle")             cs_set_user_bpammo(id, CSW_DEAGLE, 35)         }         case 3:         {             give_item(id, "weapon_hegrenade")             cs_set_user_bpammo(id, CSW_HEGRENADE, get_pcvar_num(he_amount))         }         case 4:         {             give_item(id, "weapon_flashbang")             cs_set_user_bpammo(id, CSW_FLASHBANG, get_pcvar_num(flash_amount))         }         case 5:         {             give_item(id, "weapon_smokegrenade")             cs_set_user_bpammo(id, CSW_SMOKEGRENADE, get_pcvar_num(smoke_amount))         }         case 6: set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, get_pcvar_num(transparency_amount))         case 7: g_HasSpeed[id] = true; //set_user_maxspeed(id, get_pcvar_float(speed_amount))         case 8: set_user_gravity(id, get_pcvar_float(gravity_amount))         case 9:         {             give_item(id, "weapon_m4a1")             cs_set_user_bpammo(id, CSW_M4A1, 90)         }         case 10:         {             give_item(id, "weapon_ak47")             cs_set_user_bpammo(id, CSW_AK47, 90)         }         case 11:         {             give_item(id, "weapon_awp")             cs_set_user_bpammo(id, CSW_AWP, 30)         }         case 12:         {             give_item(id, "weapon_g3sg1")             cs_set_user_bpammo(id, CSW_G3SG1, 90)         }         case 13:         {             give_item(id, "weapon_sg550")             cs_set_user_bpammo(id, CSW_SG550, 90)         }         case 14:             user_moredamage[id] = true     } } public vip_menu(id) {     if(get_pcvar_num(menu_enabled) == 0)     {         ColorChat(id, TEAM_COLOR, "%s ^3The ^4VIP Menu ^3Is Currently ^4Disabled^3.", szPrefix)         return PLUGIN_HANDLED     }         if(!user_has_flag(id, flag_vip))     {         ColorChat(id, TEAM_COLOR, "%s ^3You Have ^4No Access ^3To This Command.", szPrefix)         return PLUGIN_HANDLED     }         if(!is_user_alive(id))     {         ColorChat(id, TEAM_COLOR, "%s ^3You Need To Be ^3Alive!", szPrefix)         return PLUGIN_HANDLED     }         if(menu_uses[id] == get_pcvar_num(menu_maxuses))     {         ColorChat(id, TEAM_COLOR, "%s ^3You Can Use The Menu Only ^4%i ^3Time(s).", szPrefix, get_pcvar_num(menu_maxuses))         return PLUGIN_HANDLED     }         new title[100], item[50]     formatex(title, charsmax(title), "\yCSDM VIP Menu^n\dBy \rOciXCrom")         new vipmenu = menu_create(title, "vipmenu_handler")         if(get_pcvar_num(menu_health) == 1)     {         formatex(item, charsmax(item), "Health Points \y(+%i)", get_pcvar_num(health_amount))         menu_additem(vipmenu, item, "0", 0)     }         if(get_pcvar_num(menu_armor) == 1)     {         formatex(item, charsmax(item), "Armor Points \y(+%i)", get_pcvar_num(armor_amount))         menu_additem(vipmenu, item, "1", 0)     }         if(get_pcvar_num(menu_deagle) == 1)     {         formatex(item, charsmax(item), "Deagle \y(Full Ammo)")         menu_additem(vipmenu, item, "2", 0)     }         if(get_pcvar_num(he_amount) > 0)     {         formatex(item, charsmax(item), "He Grenade \y(%ix)", get_pcvar_num(he_amount))         menu_additem(vipmenu, item, "3", 0)     }         if(get_pcvar_num(flash_amount) > 0)     {         formatex(item, charsmax(item), "Flash Grenade \y(%ix)", get_pcvar_num(flash_amount))         menu_additem(vipmenu, item, "4", 0)     }         if(get_pcvar_num(smoke_amount) > 0)     {         formatex(item, charsmax(item), "Smoke Grenade \y(%ix)", get_pcvar_num(smoke_amount))         menu_additem(vipmenu, item, "5", 0)     }         if(get_pcvar_num(menu_transparency) == 1)     {         formatex(item, charsmax(item), "Transparency \y(%i%)", get_pcvar_num(transparency_amount))         menu_additem(vipmenu, item, "6", 0)     }         if(get_pcvar_num(menu_speed) == 1)     {         formatex(item, charsmax(item), "Faster Speed \y(%i)", get_pcvar_num(speed_amount))         menu_additem(vipmenu, item, "7", 0)     }         if(get_pcvar_num(menu_gravity) == 1)     {         formatex(item, charsmax(item), "Low Gravity \y(%f)", get_pcvar_float(gravity_amount))         menu_additem(vipmenu, item, "8", 0)     }         if(get_pcvar_num(menu_m4a1) == 1)     {         formatex(item, charsmax(item), "M4A1 \y(Full Ammo)")         menu_additem(vipmenu, item, "9", 0)     }         if(get_pcvar_num(menu_ak47) == 1)     {         formatex(item, charsmax(item), "AK47 \y(Full Ammo)")         menu_additem(vipmenu, item, "10", 0)     }         if(get_pcvar_num(menu_awp) == 1)     {         formatex(item, charsmax(item), "AWP \y(Sniper)")         menu_additem(vipmenu, item, "11", 0)     }         if(get_pcvar_num(menu_g3sg1) == 1)     {         formatex(item, charsmax(item), "G3SG1 \y(Automatic Sniper)")         menu_additem(vipmenu, item, "12", 0)     }         if(get_pcvar_num(menu_sg550) == 1)     {         formatex(item, charsmax(item), "SG550 \y(Automatic Sniper)")         menu_additem(vipmenu, item, "13", 0)     }         if(get_pcvar_num(menu_moredamage) == 1)     {         formatex(item, charsmax(item), "More Damage \y(%ix)", get_pcvar_num(moredamage_multiplier))         menu_additem(vipmenu, item, "14", 0)     }         menu_setprop(vipmenu, MPROP_EXITNAME, "\rClose the Menu")     menu_setprop(vipmenu, MPROP_BACKNAME, "\rGo to the \yPrevious \rPage")     menu_setprop(vipmenu, MPROP_NEXTNAME, "\rGo to the \yNext \rPage")     menu_setprop(vipmenu, MPROP_EXIT, MEXIT_ALL)         menu_display(id, vipmenu, 0)     return PLUGIN_HANDLED } public vipmenu_handler(id, vipmenu, item) {     if(item == MENU_EXIT)     {         menu_destroy(vipmenu)         return PLUGIN_HANDLED     }         new data[6], iName[64], access, callback     menu_item_getinfo(vipmenu, item, access, data, charsmax(data), iName, charsmax(iName), callback)     new key = str_to_num(data)     vip_equip(id, key)     menu_uses[id]++         ColorChat(id, TEAM_COLOR, "%s ^3You Have Successfully Used The ^4VIP Menu ^1(^4%i^1/^4%i^1)", szPrefix, menu_uses[id], get_pcvar_num(menu_maxuses))     emit_sound(id, CHAN_ITEM, SOUND_MENU, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)         menu_destroy(vipmenu)     return PLUGIN_HANDLED } public player_killed() {     new attacker = read_data(1)     new victim = read_data(2)         if(!is_user_connected(attacker) || !is_user_connected(victim) || attacker == victim || !user_has_flag(attacker, flag_vip))         return         new headshot = read_data(3)         new health = get_user_health(attacker)     new money = cs_get_user_money(attacker)         new reward_health = headshot ? get_pcvar_num(killbonus_health_headshot) : get_pcvar_num(killbonus_health_normal)     new reward_money = headshot ? get_pcvar_num(killbonus_money_headshot) : get_pcvar_num(killbonus_money_normal)         new health_max = get_pcvar_num(maxhealth)     new money_max = get_pcvar_num(maxmoney)         set_user_health(attacker, health + reward_health)     cs_set_user_money(attacker, money + reward_money)         if(get_user_health(attacker) > health_max) set_user_health(attacker, health_max)     if(cs_get_user_money(attacker) > money_max) cs_set_user_money(attacker, money_max) } public player_damage(victim, inflictor, attacker, Float:damage, damage_bits) {     if(is_user_connected(attacker))         if(user_moredamage[attacker] && attacker != victim)             SetHamParamFloat(4, damage * get_pcvar_float(moredamage_multiplier)) } public plugin_precache() {     get_skin_t = register_cvar("ve_get_skin_t", "0")     get_skin_ct = register_cvar("ve_get_skin_ct", "0")         skin_name_t = register_cvar("ve_skin_name_t", "vip")     skin_name_ct = register_cvar("ve_skin_name_ct", "smith")     skin_t_active = (get_pcvar_num(get_skin_t) == 1) ? true : false     skin_ct_active = (get_pcvar_num(get_skin_ct) == 1) ? true : false         if(skin_t_active)     {         new skin1[50]         get_pcvar_string(skin_name_t, skin_t, charsmax(skin_t))         formatex(skin1, charsmax(skin1), "%s/%s/%s.mdl", MODELS_PATH, skin_t, skin_t)         precache_model(skin1)     }         if(skin_ct_active)     {         new skin2[50]         get_pcvar_string(skin_name_ct, skin_ct, charsmax(skin_ct))         formatex(skin2, charsmax(skin2), "%s/%s/%s.mdl", MODELS_PATH, skin_ct, skin_ct)         precache_model(skin2)     }         precache_sound(SOUND_MENU) } stock user_has_flag(id, cvar) {     new flags[32]     get_flags(get_user_flags(id), flags, charsmax(flags))         new vip_flag[2]     get_pcvar_string(cvar, vip_flag, charsmax(vip_flag))         return (contain(flags, vip_flag) != -1) ? true : false } /* ======================================================================================================= */ /* Tasks, Funtions & Stocks */ /* ======================================================================================================= */ // Speed public Player_ResetMaxSpeed( id ) {     if ( is_user_alive ( id ) )     {         if ( get_user_maxspeed(id) != -1.0 )         {             if ( g_HasSpeed[id] )             {                 set_user_maxspeed(id, get_pcvar_float(speed_amount));             }         }     } } ColorChat(id, Color:type, const msg[], {Float,Sql,Result,_}:...) {     if( !get_playersnum() ) return;         new message[256];     switch(type)     {         case NORMAL: // clients scr_concolor cvar color         {             message[0] = 0x01;         }         case GREEN: // Green         {             message[0] = 0x04;         }         default: // White, Red, Blue         {             message[0] = 0x03;         }     }     vformat(message[1], 251, msg, 4);     replace_all(message, 191, "!n", "^x01")     replace_all(message, 191, "!t", "^x03")     replace_all(message, 191, "!g", "^x04")         // Make sure message is not longer than 192 character. Will crash the server.     message[192] = '^0';     new team, ColorChange, index, MSG_Type;         if(id)     {         MSG_Type = MSG_ONE;         index = id;     } else {         index = FindPlayer();         MSG_Type = MSG_ALL;     }         team = get_user_team(index);     ColorChange = ColorSelection(index, MSG_Type, type);     ShowColorMessage(index, MSG_Type, message);             if(ColorChange)     {         Team_Info(index, MSG_Type, TeamName[team]);     } } ShowColorMessage(id, type, message[]) {     static bool:saytext_used;     static get_user_msgid_saytext;     if(!saytext_used)     {         get_user_msgid_saytext = get_user_msgid("SayText");         saytext_used = true;     }     message_begin(type, get_user_msgid_saytext, _, id);     write_byte(id)        write_string(message);     message_end()} Team_Info(id, type, team[]) {     static bool:teaminfo_used;     static get_user_msgid_teaminfo;     if(!teaminfo_used)     {         get_user_msgid_teaminfo = get_user_msgid("TeamInfo");         teaminfo_used = true;     }     message_begin(type, get_user_msgid_teaminfo, _, id);     write_byte(id);     write_string(team);     message_end();     return 1; } ColorSelection(index, type, Color:Type) {     switch(Type)     {         case RED:         {             return Team_Info(index, type, TeamName[1]);         }         case BLUE:         {             return Team_Info(index, type, TeamName[2]);         }         case GREY:         {             return Team_Info(index, type, TeamName[0]);         }     }     return 0; } FindPlayer() {     new i = -1;     while(i <= get_maxplayers())     {         if(is_user_connected(++i))             return i;     }     return -1; }

Thank You

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ę...