Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

Now Vip Menu

, 1 раз за 5 раундов
Статус пользователя TuRBoDiZz
сообщение 28.1.2013, 14:52
Сообщение #1
Стаж: 13 лет

Сообщений: 142
Благодарностей: 6
Полезность: 44

Народ вообщем не могу доделать плагин, хочу сделать что бы дигл можно было брать всего 1 раз за раунд, а он берется бесконечно.
Как можно ограничить?

Отредактировал: TuRBoDiZz, - 30.1.2013, 0:24
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Nickk
сообщение 31.1.2013, 20:13
Сообщение #2
Стаж: 13 лет

Сообщений: 438
Благодарностей: 120
Полезность: 523

Раз исходник не даете, то, наверное, сами можете сделать.
Создаете в начале плагина :
Код
new bool:used_deagle[33]


В plugin_init(){:
Код
register_event("HLTV", "round", "a", "1=0", "2=0")


Там, где идет выдача, добавляете :
Код
if(!used_deagle[id])
{
code...
used_deagle[id] = true
}


Дальше:
Код
public round()
{
used_deagle[33] = false
}


Отредактировал: Nickk, - 31.1.2013, 20:53
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Andrei
сообщение 31.1.2013, 20:38
Сообщение #3


Стаж: 15 лет

Сообщений: 1335
Благодарностей: 693
Полезность: 740

Код
public round()
{
user_deagle[33] = false
}


-->

Код
public round( )
{
    arrayset( user_deagle, 0, 33 );
}


Отредактировал: Bos93, - 31.1.2013, 20:38
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя TuRBoDiZz
сообщение 1.2.2013, 13:18
Сообщение #4
Стаж: 13 лет

Сообщений: 142
Благодарностей: 6
Полезность: 44

Цитата(Nickk @ 31.1.2013, 21:13) *
Раз исходник не даете, то, наверное, сами можете сделать.
Создаете в начале плагина :
Код
new bool:used_deagle[33]


В plugin_init(){:
Код
register_event("HLTV", "round", "a", "1=0", "2=0")


Там, где идет выдача, добавляете :
Код
if(!used_deagle[id])
{
code...
used_deagle[id] = true
}


Дальше:
Код
public round()
{
used_deagle[33] = false
}



Странно, но не помогло..Может я делаю что то не так? Вот исходник:
Исходник
#include <amxmodx>
#include <fun>
#include <cstrike>
#include <engine>
#include <amxmisc>
#include <hamsandwich>

#define PLUGNAME "Now Vip_Menu"
#define VERSION "5.0"
#define AUTHOR "TuRBo_DiZz"

new bool:has_used[33]
new bool:has_use[33]
new bool:has_us[33]
new bool:used_deagle[33]
new bool:gravity[33]
new bool:speed[33]

public plugin_init()
{
register_plugin(PLUGNAME, VERSION, AUTHOR)
register_clcmd( "say /nowvip", "vipnow_menu" )
register_clcmd( "now_vip", "vipnow_menu" )
register_logevent("event_new_round", 2, "1=Round_Start")
register_event("ResetHUD", "admin_con", "be")

register_event("HLTV", "round", "a", "1=0", "2=0")

register_event( "CurWeapon", "speed_weapon", "be", "1=1" )
RegisterHam(Ham_Spawn, "player", "player_spawn", 1)

register_event("ResetHUD", "VipModel", "b")
return PLUGIN_CONTINUE
}

public VipModel(id, level, cid)
{
if (get_user_flags(id) & ADMIN_LEVEL_H)
{
new CsTeams:userTeam = cs_get_user_team(id)
if(userTeam == CS_TEAM_CT)
{
cs_set_user_model(id, "vip")
}
else
{
cs_reset_user_model(id)
}
}
return PLUGIN_CONTINUE
}

public admin_con(id)
{
set_task(0.5, "admin_vip", id + 6910)
}
public player_spawn(id)
{
gravity[id] = false
speed[id] = false
}

public admin_vip(TaskID)
{
new id = TaskID - 6910

if (get_user_flags(id) & ADMIN_LEVEL_G)
{
message_begin(MSG_ALL, get_user_msgid("ScoreAttrib"))
write_byte(id)
write_byte(4)
message_end()
}
return PLUGIN_HANDLED
}

public vipnow_menu(id)\
{
if(get_user_flags(id) & ADMIN_LEVEL_G)
{
new vipnow_menu = menu_create( "\rУлучшенное \yВип \wМеню", "vip_now" )
menu_additem( vipnow_menu, "\yВзять \r16000$ \w(1 раз за раунд)", "1", 0 )
menu_additem( vipnow_menu, "\yЖизни 100HP \w(1 раз за раунд)", "2", 0 )
menu_additem( vipnow_menu, "\yУлучшенная Гравитация", "3", 0 )
menu_additem( vipnow_menu, "\yУлучшенная Скорость", "4", 0 )
menu_additem( vipnow_menu, "\yDiser Eagle 1 патрон \w(1 раз за раунд)", "5", 0 )
menu_additem( vipnow_menu, "\yВоскресится \w(1 раз за раунд)", "6", 0 )

menu_setprop( vipnow_menu, MPROP_EXIT, MEXIT_ALL )
menu_display( id, vipnow_menu, 0 )
}
else
{
client_print(id, print_chat, "[NoWVip] По поводу Вип, Супер Вип и Админки писать в скайп: Valera_mel")
}
}

public vip_now( 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:
{
if(!has_used[id])
{
cs_set_user_money(id, 16000)
has_used[id] = true
}
else
{
client_print(id, print_chat, "[NoWVip] Деньги можно брать только один раз за раунд!!!")
}
}
case 2:
{
if(!has_us[id])
{
if( is_user_alive( id ) )
{
set_user_health( id, 100 )
has_us[id] = true
}
else
{
client_print(id, print_chat, "[NoWVip] Жизни можно брать только один раз за раунд!!!")
}
}
}
case 3:
{
if( is_user_alive( id ) )
{
set_user_gravity( id, 0.4 )
gravity[id] = true
}
}
case 4:
{
if( is_user_alive( id ) )
{
set_user_maxspeed(id, 570.0)
speed[id] = true
}
}
case 5:
{
if(!used_deagle[id])
{
if(is_user_alive(id) )
{
new id = give_item(id, "weapon_deagle")
cs_set_weapon_ammo(id, 1)
used_deagle[id] = true
}
else
{
client_print(id, print_chat, "[NoWVip] Дигл можно брать только один раз за 5 раундов!!!")
}
}
}
case 6:
{
if(!has_use[id])
{
ExecuteHamB(Ham_CS_RoundRespawn, id)
has_use[id] = true
}
else
{
client_print(id, print_chat, "[NoWVip] Воскрешаться можно только один раз за раунд!!!")
}
}
}
menu_destroy( menu )
return PLUGIN_HANDLED
}

public speed_weapon(id)
{
if(speed[id])
set_user_maxspeed(id, 570.0)
}

public event_new_round()
{
arrayset(has_used, false, 33)
arrayset(has_use, false, 33)
arrayset(has_us, false, 33)
arrayset(used_deagle, 0, 33 )
}


Отредактировал: TuRBoDiZz, - 1.2.2013, 13:20
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Nickk
сообщение 1.2.2013, 14:56
Сообщение #5
Стаж: 13 лет

Сообщений: 438
Благодарностей: 120
Полезность: 523

Скобку не там закрыли, по этому else будет срабатывать, когда игрок мертв)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Andrei
сообщение 1.2.2013, 15:03
Сообщение #6


Стаж: 15 лет

Сообщений: 1335
Благодарностей: 693
Полезность: 740

Цитата
Странно, но не помогло..Может я делаю что то не так?


Странно,увидеть мой пост и всё равно писать ересь. Я понимаю,что ты ничерта не понимаеш,но спросить можно было бы,почему я исправил его код?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: