Добро пожаловать на форум, Гость, это ваша панель
  • Страница 1 из 1
  • 1
Форум Perfect Soft » Моды и AMX Скриптинг CS 1.6 » AMX Скриптинг CS 1.6 (вопрос | ответ) » Помогите исправить плагин vip
Помогите исправить плагин vip
werewolf
Дата: Воскресенье, 14.10.2012, 17:16 | Сообщение # 1
офлайн

  • Сообщения: 5
  • Награды: 0
  • Замечания:
 
Всем доброго времени суток. Суть моей проблемы в том что у плагина есть квары которые поваляют брать предметы определенное количество раз за раунд и количество отображается в меню, но даже если в меню количество раз уже исчерпано предмет все равно можно брать.
Code
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
#include <hamsandwich>
#include <colorchat>
   
#define PLUGIN "VIP Menu"
#define VERSION "0.3"
#define AUTHOR "qeee"

#define FLAG ADMIN_KICK

const KEYSMENU = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4|MENU_KEY_5|MENU_KEY_6|MENU_KEY_7|MENU_KEY_8|MENU_KEY_9|MENU_KEY_0
const KEYSMENU2 = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4|MENU_KEY_5|MENU_KEY_6|MENU_KEY_7|MENU_KEY_8|MENU_KEY_9|MENU_KEY_0

new name[32]

new colrespawn[33]
new colgrav[33]
new colspeed[33]
new coldeagle[33]
new colhp[33]
new colarmor[33]
new colhe[33]
new colflash[33]
new colscout[33]
new colmoney[33]

new gColcolrespawn
new gColcolgrav
new gColcolspeed
new gColcoldeagle
new gColcolhp
new gColcolarmor
new gColcolhe
new gColcolflash
new gColcolscout
new gColcolmoney
   
public plugin_init()
   
   
{
         register_plugin(PLUGIN, VERSION, AUTHOR)
         register_clcmd("vips_menu", "vip_menu_one");
         register_event("HLTV", "EventRoundStart", "a", "1=0", "2=0")
         register_menu("Menu 1", KEYSMENU, "funck")  
         register_menu("Menu 2", KEYSMENU2, "funck2")
   //Pcvars
         gColcolrespawn = register_cvar("vip_colrespawn", "3")
         gColcolgrav = register_cvar("vip_colgrav", "4")
         gColcolspeed = register_cvar("vip_colspeed", "4")
         gColcoldeagle = register_cvar("vip_coldeagle", "4")
         gColcolhp = register_cvar("vip_colhp", "3")
         gColcolarmor = register_cvar("vip_colarmor", "3")
         gColcolhe = register_cvar("vip_colhe", "5")
         gColcolflash = register_cvar("vip_colflash", "5")
         gColcolscout = register_cvar("vip_colscout", "2")
         gColcolmoney = register_cvar("vip_colmoney", "3")
}

public EventRoundStart()
{
for(new id = 1; id <= get_maxplayers(); id++)
{
colrespawn[id] = get_pcvar_num(gColcolrespawn)
colgrav[id] = get_pcvar_num(gColcolgrav)
colspeed[id] = get_pcvar_num(gColcolspeed)
coldeagle[id] = get_pcvar_num(gColcoldeagle)
colhp[id] = get_pcvar_num(gColcolhp)
colarmor[id] = get_pcvar_num(gColcolarmor)
colhe[id] = get_pcvar_num(gColcolhe)
colflash[id] = get_pcvar_num(gColcolflash)
colscout[id] = get_pcvar_num(gColcolscout)
colmoney[id] = get_pcvar_num(gColcolmoney)
}
}

public vip_menu_two(id)
{
         static menu2[650], iLen2
         iLen2 = 0
         
         iLen2 = formatex(menu2[iLen2], charsmax(menu2) - iLen2, "\yVIP меню^n^n");
         iLen2 += formatex(menu2[iLen2], charsmax(menu2) - iLen2, "\r1. \wВзять \yщит^n");
    
         if(colscout[id] == 0){
         iLen2 += formatex(menu2[iLen2], charsmax(menu2) - iLen2, "\r2. \dВзять \yScout \r(\dещё \y%d \dраз\r)^n", colscout[id]);
         }else if(colscout[id] > 0){
         iLen2 += formatex(menu2[iLen2], charsmax(menu2) - iLen2, "\r2. \wВзять \yScout \r(\dещё \y%d \dраз\r)^n", colscout[id]);
         }
    
         if(colmoney[id] == 0){
         iLen2 += formatex(menu2[iLen2], charsmax(menu2) - iLen2, "\r3. \dВзять \y5000$ \r(\dещё \y%d \dраз\r)^n", colmoney[id]);
         }else if(colmoney[id] > 0){
         iLen2 += formatex(menu2[iLen2], charsmax(menu2) - iLen2, "\r3. \wВзять \y5000$ \r(\dещё \y%d \dраз\r)^n", colmoney[id]);
         }
    
         if(colflash[id] == 0){
         iLen2 += formatex(menu2[iLen2], charsmax(menu2) - iLen2, "\r4. \dГраната \yFlash \r(\dещё \y%d \dраз\r)^n^n", colflash[id]);
         }else if(colflash[id] > 0){
         iLen2 += formatex(menu2[iLen2], charsmax(menu2) - iLen2, "\r4. \wГраната \yFlash \r(\dещё \y%d \dраз\r)^n^n", colflash[id]);
         }
         iLen2 += formatex(menu2[iLen2], charsmax(menu2) - iLen2, "\r0. \wНазад");
         show_menu(id, KEYSMENU2, menu2, -1, "Menu 2");
         return PLUGIN_HANDLED
}
public funck2(id, key)
{
         get_user_name(id, name ,31)
         switch(key)
         {
   case 0 :
         {
         give_item(id, "weapon_shield")
         ColorChat(0, BLUE, "[VIP]^1 VIP РёРіСЂРѕРє ^4%s^1, РІР·СЏР» щит.", name)
         }
    
         case 1 :
         {
         give_item(id, "weapon_scout")
         cs_set_user_bpammo( id, CSW_SCOUT, 240 );
         ColorChat(0, BLUE, "[VIP]^1 VIP РёРіСЂРѕРє ^4%s^1, РІР·СЏР» Scout.", name)
         colscout[id]--
         }
    
   case 2 :
         {
         cs_set_user_money(id, cs_get_user_money(id) + 5000)
         ColorChat(0, BLUE, "[VIP]^1 VIP РёРіСЂРѕРє ^4%s^1, РІР·СЏР» 5000$.", name)
         colmoney[id]--
         }
    
   case 3 :
         {
         give_item(id, "weapon_flashbang")
         ColorChat(0, BLUE, "[VIP]^1 VIP РёРіСЂРѕРє ^4%s^1, РІР·СЏР» flash гранату", name)
         colflash[id]--
         }
    
     case 9: vip_menu_one(id)
         }
         return PLUGIN_HANDLED
}

public vip_menu_one(id)
{
if(get_user_flags(id) & FLAG){
  static menu[650], iLen
  iLen = 0
         
  iLen = formatex(menu[iLen], charsmax(menu) - iLen, "\yVIP меню^n^n");
   
  iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r1. \wДать \yГравитацию^n^n");
  if(colrespawn[id] == 0){
  iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r2. \dВозродиться \r(\dещё \y%d \dраз\r)^n", colrespawn[id]);
  }else if(colrespawn[id] > 0){
  iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r2. \wВозродиться \r(\dещё \y%d \dраз\r)^n", colrespawn[id]);
  }
  if(colgrav[id] == 0){
  iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r3. \dГравитация \r(\dещё \y%d \dраз\r)^n", colgrav[id]);
  }else if(colgrav[id] > 0){
  iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r3. \wГравитация \r(\dещё \y%d \dраз\r)^n", colgrav[id]);
  }
   
  if(colspeed[id] == 0){
  iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r4. \dУскорение \r(\dещё \y%d \dраз\r)^n", colspeed[id]);
  }else if(colspeed[id] > 0){
  iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r4. \wУскорение \r(\dещё \y%d \dраз\r)^n", colspeed[id]);
  }
   
  if(coldeagle[id] == 0){
  iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r5. \dДигл \r(\dещё \y%d \dраз\r)^n", coldeagle[id]);
  }else if(coldeagle[id] > 0){
  iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r5. \wДигл \r(\dещё \y%d \dраз\r)^n", coldeagle[id]);
  }
   
  if(colhp[id] == 0){
  iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r6. \dР—РґРѕСЂРѕРІСЊРµ \y100 \r(\dещё \y%d \dраз\r)^n", colhp[id]);
  }else if(colhp[id] > 0){
  iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r6. \wР—РґРѕСЂРѕРІСЊРµ \y100 \r(\dещё \y%d \dраз\r)^n", colhp[id]);
  }
   
  if(colarmor[id] == 0){
  iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r7. \dБроня \y100 \r(\dещё \y%d \dраз\r)^n", colarmor[id]);
  }else if(colarmor[id] > 0){
  iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r7. \wБроня \y100 \r(\dещё \y%d \dраз\r)^n", colarmor[id]);
  }
   
  if(colhe[id] == 0){
  iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r8. \dВзрывная \yграната \r(\dещё \y%d \dраз\r)^n^n", colhe[id]);
  }else if(colhe[id] > 0){
  iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r8. \wВзрывная \yграната \r(\dещё \y%d \dраз\r)^n^n", colhe[id]);
  }
  iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r9. \wДалее^n");
  iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r0. \wВыход^n");
  show_menu(id, KEYSMENU, menu, -1, "Menu 1");
  return PLUGIN_HANDLED
  }
ColorChat(id, BLUE, "[VIP] ^1У тебя нету прав для входа в меню.")
return PLUGIN_HANDLED
}
   
public funck(id, key)
{
  get_user_name(id, name ,31)
  switch(key)
  {
   case 0: vip_plgravmenu(id)
    
   case 1 :
         {
         ExecuteHam(Ham_CS_RoundRespawn, id)
         ColorChat(0, BLUE, "[VIP]^1 VIP РёРіСЂРѕРє ^4%s^1, возродился.", name)
         colrespawn[id]--
         }
   
         case 2 :
         {
         set_user_gravity(id, 0.4)         
         ColorChat(0, BLUE, "[VIP]^1 VIP РёРіСЂРѕРє ^4%s^1, РІР·СЏР» гравити.", name)
         colgrav[id]--
         }
   
         case 3 :
         {
         set_user_maxspeed(id, 400.0)
         ColorChat(0, BLUE, "[VIP]^1 VIP РёРіСЂРѕРє ^4%s^1, РІР·СЏР» ускорение.", name)
         colspeed[id]--
         }
   
         case 4 :
         {
         give_item(id, "weapon_deagle")
         ColorChat(0, BLUE, "[VIP]^1 VIP РёРіСЂРѕРє ^4%s^1, РІР·СЏР» РґРёРіР».", name)
         coldeagle[id]--
         }
         
         case 5 :
         {
         set_user_health(id, 100)
         ColorChat(0, BLUE, "[VIP]^1 VIP РёРіСЂРѕРє ^4%s^1, РІР·СЏР» 100С…Рї", name)
         colhp[id]--
         }
   
         case 6 :
         {
         set_user_armor(id, 100)
         ColorChat(0, BLUE, "[VIP]^1 VIP РёРіСЂРѕРє ^4%s^1, РёРІР·СЏР» 100 Р±СЂРѕРЅРё", name)
         colarmor[id]--
         }
                 
         case 7 :
         {
         give_item(id, "weapon_hegrenade")
         ColorChat(0, BLUE, "[VIP]^1 VIP РёРіСЂРѕРє ^4%s^1, РІР·СЏР» взрывную гранату", name)
         colhe[id]--
         }
                 
    
   case 8: vip_menu_two(id)
  }
  return PLUGIN_HANDLED
}
public vip_plgravmenu(id)
{
      if(get_user_flags(id) & ADMIN_LEVEL_H)
      {
  new menu = menu_create( "\rМеню Гравитации", "menu_gravity" )
  new players[32], pnum, tempid
  new szName[32], szTempid[10]
  cs_get_user_team(id)

  get_players(players, pnum)

  for(new i; i<pnum; i++)
  {
  cs_get_user_team(players[i])
    
  tempid = players[i]

  if(!is_user_alive(tempid))
  {  
  }
  else if(get_user_gravity(tempid) > 0.35)
  {
  get_user_name(tempid, szName, 31)
  num_to_str(tempid, szTempid, 9)

  menu_additem(menu, szName, szTempid, 0)
  }
  }
  menu_setprop( menu, MPROP_NEXTNAME, "Дальше")
  menu_setprop( menu, MPROP_BACKNAME, "Назад")
  menu_setprop( menu, MPROP_EXITNAME, "Выход")     
  //menu_setprop( menu, MPROP_PERPAGE, 0)
  menu_display(id, menu, 0)
  }
      return PLUGIN_HANDLED
}

public menu_gravity(id, menu, item)
{
  if(item == MENU_EXIT)
  {
   menu_destroy(menu)
   return PLUGIN_HANDLED
  }

  new data[6], iName[64], playername[33], playername2[33]
  new access, callback
  menu_item_getinfo(menu, item, access, data,5, iName, 63, callback)

  new tempid = str_to_num(data)
  cs_get_user_team(tempid)
   
  get_user_name(id, playername, 32)
  get_user_name(tempid, playername2, 32)

  set_user_gravity(tempid, 0.5)
         ColorChat(0,GREEN,"[РђРґРјРёРЅРєР°] ^1Администратор ^4%s ^1дал грвитацию:^4%s^3!", playername, playername2)

  menu_destroy(menu)
  return PLUGIN_HANDLED
}
/*================================================================================
public vip_menu(id)
{
          
         new menu = menu_create("\yVIP меню","menu")
    
         if(colrespawn[id] == 0){
         menu_additem(menu, "\dВозрадится \r(\dещё \y%d \dраз\r)", "1", 0, colrespawn[id])
         }else if(colrespawn[id] > 0){
         menu_additem(menu, "\wВозрадится \r(\dещё \y%d \dраз\r)", "1", 0, colrespawn[id])
         }
    
         if(colgrav[id] == 0){
         menu_additem(menu, "\dГравитация \r(\dещё \y%d \dраз\r)", "2", 0, colgrav[id])
         }else if(colgrav[id] > 0){
   menu_additem(menu, "\wГравитация \r(\dещё \y%d \dраз\r)", "2", 0, colgrav[id])
         }
    
         if(colspeed[id] == 0){
         menu_additem(menu, "\dУскорение \r(\dещё \y%d \dраз\r)", "3", 0, colspeed[id])
   }else if(colspeed[id] > 0){
   menu_additem(menu, "\wУскорение \r(\dещё \y%d \dраз\r)", "3", 0, colspeed[id])
         }
    
         if(coldeagle[id] == 0){
         menu_additem(menu, "\dДигл \r(\dещё \y%d \dраз\r)", "4", 0, coldeagle[id])
   }else if(coldeagle[id] > 0){
   menu_additem(menu, "\wДигл \r(\dещё \y%d \dраз\r)", "4", 0, coldeagle[id])
         }
    
         if(colhp[id] == 0){
         menu_additem(menu, "\dР—РґРѕСЂРѕРІСЊРµ \y100\r(\dHP\r) \r(\dещё \y%d \dраз\r)", "5", 0, colhp[id])
   }else if(colhp[id] > 0){
         menu_additem(menu, "\wР—РґРѕСЂРѕРІСЊРµ \y100\r(\dHP\r) \r(\dещё \y%d \dраз\r)", "5", 0, colhp[id])
         }
    
         if(colarmor[id] == 0){
         menu_additem(menu, "\dБроня \y100\r(\dAP\r) \r(\dещё \y%d \dраз\r)", "6", 0, colarmor[id])
   }else if(colarmor[id] > 0){
   menu_additem(menu, "\wБроня \y100\r(\dAP\r) \r(\dещё \y%d \dраз\r)", "6", 0, colarmor[id])
         }
    
         if(colhe[id] == 0){
         menu_additem(menu, "\dВзрывная \yграната \r(\dещё \y%d \dраз\r)", "7", 0, colhe[id])
   }else if(colhe[id] > 0){
   menu_additem(menu, "\wВзрывная \yграната \r(\dещё \y%d \dраз\r)", "7", 0, colhe[id])
         }
    
         if(colflash[id] == 0){
         menu_additem(menu, "\dГраната \yFlash \r(\dещё \y%d \dраз\r)", "8", 0, colflash[id])
   }else if(colflash[id] > 0){
   menu_additem(menu, "\wГраната \yFlash \r(\dещё \y%d \dраз\r)", "8", 0, colflash[id])
         }
    
         menu_additem(menu, "\wВзять \yщит", "9", 0)
    
         if(colscout[id] == 0){
         menu_additem(menu, "\dВзять \yScout \r(\dещё \y%d \dраз\r)", "10", 0, colscout[id])
   }else if(colscout[id] > 0){
   menu_additem(menu, "\wВзять \yScout \r(\dещё \y%d \dраз\r)", "10", 0, colscout[id])
         }
    
         if(colmoney[id] == 0){
         menu_additem(menu, "\dВзять \y5000$ \r(\dещё \y%d \dраз\r)", "11", 0, colmoney[id])
         }else if(colmoney[id] > 0){
   menu_additem(menu, "\wВзять \y5000$ \r(\dещё \y%d \dраз\r)", "11", 0, colmoney[id])
         }
    
         menu_setprop( menu , MPROP_NEXTNAME, "Далее")
         menu_setprop( menu , MPROP_BACKNAME, "Назад")
         menu_setprop( menu , MPROP_EXITNAME, "Выход")
         menu_setprop( menu , MPROP_EXIT, MEXIT_ALL)
   
         menu_setprop(menu, MPROP_PERPAGE, 7)
   
         menu_display(id, menu, 0)
          
}

public menu(id,menu,item)
{
     if(item==MENU_EXIT)
     {
     menu_destroy(menu)
     return PLUGIN_HANDLED
     }
     new data[6], iName[64]
     new access, callback
     menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);
     new key = str_to_num(data)
   
     switch(key)
     {
   
         case 1 :
         {
         get_user_name(id, name ,31)
         ExecuteHam(Ham_CS_RoundRespawn, id)
         ColorChat(0, BLUE, "[VIP]^1 VIP РёРіСЂРѕРє ^4%s^1, возродился.", name)
         colrespawn[id]--
         }
   
         case 2 :
         {
         set_user_gravity(id, 0.4)         
         ColorChat(0, BLUE, "[VIP]^1 VIP РёРіСЂРѕРє ^4%s^1, РІР·СЏР» гравити.", name)
         colgrav[id]--
         }
   
         case 3 :
         {
         set_user_maxspeed(id, 400.0)
         ColorChat(0, BLUE, "[VIP]^1 VIP РёРіСЂРѕРє ^4%s^1, РІР·СЏР» ускорение.", name)
         colspeed[id]--
         }
   
         case 4 :
         {
         give_item(id, "weapon_deagle")
         ColorChat(0, BLUE, "[VIP]^1 VIP РёРіСЂРѕРє ^4%s^1, РІР·СЏР» РґРёРіР».", name)
         coldeagle[id]--
         }
         
         case 5 :
         {
         set_user_health(id, 100)
         ColorChat(0, BLUE, "[VIP]^1 VIP РёРіСЂРѕРє ^4%s^1, РІР·СЏР» 100С…Рї", name)
         colhp[id]--
         }
   
         case 6 :
         {
         set_user_armor(id, 100)
         ColorChat(0, BLUE, "[VIP]^1 VIP РёРіСЂРѕРє ^4%s^1, РёРІР·СЏР» 100 Р±СЂРѕРЅРё", name)
         colarmor[id]--
         }
                 
         case 7 :
         {
         give_item(id, "weapon_hegrenade")
         ColorChat(0, BLUE, "[VIP]^1 VIP РёРіСЂРѕРє ^4%s^1, РІР·СЏР» взрывную гранату", name)
         colhe[id]--
         }
                 
                 
         case 8 :
         {
         give_item(id, "weapon_flashbang")
         ColorChat(0, BLUE, "[VIP]^1 VIP РёРіСЂРѕРє ^4%s^1, РІР·СЏР» flash гранату", name)
         colflash[id]--
         }
         
         case 9 :
         {
         give_item(id, "weapon_shield")
         ColorChat(0, BLUE, "[VIP]^1 VIP РёРіСЂРѕРє ^4%s^1, РІР·СЏР» щит.", name)
         }
    
         case 10 :
         {
         give_item(id, "weapon_scout")
         cs_set_user_bpammo( id, CSW_SCOUT, 240 );
         ColorChat(0, BLUE, "[VIP]^1 VIP РёРіСЂРѕРє ^4%s^1, РІР·СЏР» Scout.", name)
         colscout[id]--
         }
    
   case 11 :
         {
         cs_set_user_money(id, cs_get_user_money(id) + 5000)
         ColorChat(0, BLUE, "[VIP]^1 VIP РёРіСЂРѕРє ^4%s^1, РІР·СЏР» 5000$.", name)
         colmoney[id]--
         }
    
         }
     return PLUGIN_HANDLED
}
* =================================================================================*/
 
Contra63
Дата: Воскресенье, 14.10.2012, 19:05 | Сообщение # 2
офлайн

  • Сообщения: 830
  • Награды: 7
  • Замечания:
 
Code
register_cvar("vip_use_hp_in_round","3");
register_event("HLTV", "startround", "a", "1=0", "2=0");


Code
public startround() {
  new players[32], numplayers;
  get_players( players, numplayers );
  for (new i = 0; i < numplayers; i++ )
  {
   new id = players[i];
    
   g_F_counter[id] = 0;
  }
}


Code
  case 1:
   {
    if(g_F_counter[id] < get_cvar_num("vip_use_hp_in_round"))
    {  
     new name[17]
     get_user_name(id, name, 18);
     set_user_health(id, 150);
     ColorChat(id, GREEN, "%s %L",g_Client, LANG_PLAYER,"HP_VIP");
     g_F_counter[id]++
     return PLUGIN_HANDLED
     }else{
     ColorChat(id, GREEN, "%s %L",g_Client, LANG_PLAYER,"HP_USE_OFF_VIP",get_cvar_num("vip_use_hp_in_round"));  
     client_cmd(id, "say /vipmenu");
     return PLUGIN_HANDLED;
    }
   }


 
werewolf
Дата: Воскресенье, 14.10.2012, 19:50 | Сообщение # 3
офлайн

  • Сообщения: 5
  • Награды: 0
  • Замечания:
 
А можно по подробнее что куда, а то я в этом плохо соображаю
 
Contra63
Дата: Воскресенье, 14.10.2012, 21:11 | Сообщение # 4
офлайн

  • Сообщения: 830
  • Награды: 7
  • Замечания:
 
werewolf, Skype: Contra63rus за пару сотен сделаю.

 
Форум Perfect Soft » Моды и AMX Скриптинг CS 1.6 » AMX Скриптинг CS 1.6 (вопрос | ответ) » Помогите исправить плагин vip
  • Страница 1 из 1
  • 1
Поиск: