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

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

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

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

Помощь с плагином VIP Vip_account3

, Помощь с плагином VIP Vip_account3
Статус пользователя debars
сообщение 5.4.2012, 12:06
Сообщение #1


Стаж: 14 лет

Сообщений: 18
Благодарностей: 2
Полезность: 0

Здрасти, помогите с плагином

В логах, пишет вот такую вот ошибку ( Run time error 10 (plugin "Vip_account3.amxx") (native "cs_get_user_team") - debug not enabled! )

В plagins.ini напротив плагина поставил "debug" сейчас пишет вот что..

L 04/05/2012 - 01:41:51: [CSTRIKE] Invalid player 3
L 04/05/2012 - 01:41:51: [AMXX] Displaying debug trace (plugin "Vip_account3.amxx")
L 04/05/2012 - 01:41:51: [AMXX] Run time error 10: native error (native "cs_get_user_team")
L 04/05/2012 - 01:41:51: [AMXX] [0] Vip_account3.sma::fwHamPlayerSpawnPost (line 50)

------------------------------------------------------------------------------------------------------------------

Пробивал, изменить

вот этот код
new CsTeams:userTeam = cs_get_user_team(id)
if (userTeam == CS_TEAM_T) {
cs_set_user_model(id, "vips_1")
}
else if(userTeam == CS_TEAM_CT) {
cs_set_user_model(id, "vips_2")
}
else {
cs_reset_user_model(id)


на

вот этот
new Team = get_user_team(id)
if( Team == 1 )
{
cs_set_user_model(id, "admin_te")
}
else if( Team == 2 )
{
cs_set_user_model(id, "admin_ct")
}
else
{
cs_reset_user_model(id)


После начал писать вот такую вот ошибку "cs_reset_user_model"

после добавил вот этот код

Вотон
dllfunc( DLLFunc_ClientUserInfoChanged, id, engfunc( EngFunc_GetInfoKeyBuffer, id ) )
}
}

return PLUGIN_CONTINUE
}

stock fm_set_user_model( id, const model[] )
{
return engfunc( EngFunc_SetClientKeyValue, id, engfunc( EngFunc_GetInfoKeyBuffer, id ), "model", model )
}


и опять же ругается

Может его в самый конец добавить ?
-------------------------------------------------------------------------------------------------------------------

sma исходник
#define DAMAGE_RECIEVED
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <hamsandwich>
#include <fun>
#define VIP_ACC ADMIN_LEVEL_H
#define DAMAGE_RECIEVED

new round_number
new vip_damage

new g_HudSync
new g_HudSync2

public plugin_init()
{
register_plugin("VIP accounts", "1.05", "SamThugg");
register_event("HLTV", "event_round_start", "a", "1=0", "2=0");
register_event( "Damage", "eventDamage", "b", "2!0", "3=0", "4!0" );
register_event("ResetHUD", "ResetHUD", "be")
RegisterHam(Ham_Spawn, "player", "fwHamPlayerSpawnPost", 1);
vip_damage = register_cvar( "vip_damage", "1" );

register_clcmd("say /admin", "adminka");
register_clcmd("say /vip","ShowMotd");
register_clcmd("say /dgl", "dgl");
register_clcmd("say /m4a1", "m4a1");
register_clcmd("say /ak47", "ak47");
register_clcmd("say /awp", "awp");

g_HudSync = CreateHudSyncObj()

#if defined DAMAGE_RECIEVED
g_HudSync2 = CreateHudSyncObj()
#endif
}

public plugin_precache()
{
precache_model("models/player/vips_1/vips_1.mdl")
precache_model("models/player/vips_2/vips_2.mdl")
return PLUGIN_CONTINUE
}

public fwHamPlayerSpawnPost(id)
{
if (get_user_flags(id) & VIP_ACC)
{
new CsTeams:userTeam = cs_get_user_team(id)
if (userTeam == CS_TEAM_T) {
cs_set_user_model(id, "vips_1")
}
else if(userTeam == CS_TEAM_CT) {
cs_set_user_model(id, "vips_2")
}
else {
cs_reset_user_model(id)
}
}

return PLUGIN_CONTINUE
}

public client_putinserver(id)
{
set_task(0.5, "vip_connect", id);
}

public vip_connect(id)
if (get_user_flags(id)&VIP_ACC)
{
new name[32];
get_user_name(id, name, 31);
ChatColor(0, "РќР° севрер Р·Р°С?ел !gVIP- !g%s", name)
client_cmd(0, "spk misc/cvip.wav")
client_print(0,print_chat, "Введите /admin и /vip чтобы узнать как получить админ права или VIP привелегии!")

}

public adminka(id)
{
show_motd(id, "adminka.txt")
}

public ResetHUD(id)
{
set_task(0.5, "VIP", id + 6910)
}
public VIP(TaskID)
{
new id = TaskID - 6910

if ( get_user_flags ( id ) & VIP_ACC)
{
message_begin(MSG_ALL, get_user_msgid("ScoreAttrib"))
write_byte(id)
write_byte(4)
message_end()
give_item(id,"weapon_hegrenade")
give_item(id,"weapon_hegrenade")
give_item(id,"weapon_flashbang")
give_item(id,"weapon_flashbang")
give_item(id,"weapon_smokegrenade")
give_item(id,"item_assaultsuit")
}

return PLUGIN_HANDLED
}

public ShowMotd(id)
{
show_motd(id, "vip.txt")
}

public event_round_start ( )
round_number++

public dgl ( id )
{

if ( ! ( get_user_flags ( id ) & VIP_ACC ) )
{
ChatColor ( id , "!g[VIP]!y Только для !team[VIP] !y!" );
return PLUGIN_HANDLED;
}


if ( ! is_user_alive ( id ) )
{
ChatColor(id, "!g[VIP]!y Ты!team [Мертв] !y!");
return PLUGIN_HANDLED;
}


give_item( id, "weapon_deagle" )
cs_set_user_bpammo( id , CSW_DEAGLE, 90 )

return PLUGIN_CONTINUE;
}


public m4a1 ( id )

{

if ( ! ( get_user_flags ( id ) & VIP_ACC ) )
{
ChatColor ( id , "!g[VIP]!y Только для !team[VIP] !y!" );
return PLUGIN_HANDLED;
}


if ( ! is_user_alive ( id ) )
{
ChatColor(id, "!g[VIP]!y Ты!team [Мертв] !y!");
return PLUGIN_HANDLED;
}

if ( round_number <= 3 )
{
ChatColor ( id , "!g[VIP]!y Доступно со 2 раунда !y!" );
return PLUGIN_HANDLED;
}


give_item( id, "weapon_m4a1" )
cs_set_user_bpammo( id , CSW_M4A1, 90 )

return PLUGIN_CONTINUE;
}

public ak47 ( id )
{

if ( ! ( get_user_flags ( id ) & VIP_ACC ) )
{
ChatColor ( id , "!g[VIP]!y Только для !team[VIP] !y!" );
return PLUGIN_HANDLED;
}


if ( ! is_user_alive ( id ) )
{
ChatColor(id, "!g[VIP]!y Ты!team [Мертв] !y!");
return PLUGIN_HANDLED;
}

if ( round_number <= 3 )
{
ChatColor ( id , "!g[VIP]!y Доступно с 2 раунда !y!" );
return PLUGIN_HANDLED;
}

give_item( id, "weapon_ak47" )
cs_set_user_bpammo( id , CSW_AK47, 90 )


return PLUGIN_CONTINUE;
}

public awp ( id )
{

if ( ! ( get_user_flags ( id ) & VIP_ACC ) )
{
ChatColor ( id , "!g[VIP]!y Только для !team[VIP] !y!" );
return PLUGIN_HANDLED;
}


if ( ! is_user_alive ( id ) )
{
ChatColor(id, "!g[VIP]!y Ты!team [Мертв] !y!");
return PLUGIN_HANDLED;
}

if ( round_number <= 4 )
{
ChatColor ( id , "!g[VIP]!y Доступно с 3 раунда !y!" );
return PLUGIN_HANDLED;
}


give_item( id, "weapon_awp" )
cs_set_user_bpammo( id , CSW_AWP, 30 )


return PLUGIN_CONTINUE;
}

stock ChatColor(const id, const input[], any:...)
{
new count = 1, players[32]
static msg[191]
vformat(msg, 190, input, 3)

replace_all(msg, 190, "!g", "^4") // Green Color
replace_all(msg, 190, "!y", "^1") // Default Color
replace_all(msg, 190, "!team", "^3") // Team Color
replace_all(msg, 190, "!team2", "^0") // Team2 Color

if (id) players[0] = id; else get_players(players, count, "ch")
{
for (new i = 0; i < count; i++)
{
if (is_user_connected(players[i]))
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
write_byte(players[i]);
write_string(msg);
message_end();
}
}
}
}

public eventDamage(id)
{
if(get_pcvar_num(vip_damage)){
new attacker = get_user_attacker(id)
new damage = read_data(2)

if (is_user_connected(attacker) && get_user_flags(attacker) & VIP_ACC)
{
set_hudmessage(0, 100, 200, 0.45, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1)
ShowSyncHudMsg(attacker, g_HudSync, "%i", damage)
}
else if (is_user_connected(attacker) && get_user_flags(id) & VIP_ACC)
{
set_hudmessage(255, 0, 0, -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1)
ShowSyncHudMsg(id, g_HudSync2, "%i", damage)
}
}

}


Отредактировал: debars, - 5.4.2012, 12:14
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя qwerty9614
сообщение 5.4.2012, 12:42
Сообщение #2
Стаж: 14 лет

Сообщений: 34
Благодарностей: 2
Полезность: < 0

Сохранять надо в utf8
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
cs-portal
сообщение 5.4.2012, 13:25
Сообщение #3
Стаж: 16 лет

Сообщений: 8181
Благодарностей: 2709
Полезность: 0

Цитата(qwerty9614 @ 5.4.2012, 13:42) *
Сохранять надо в utf8


лолшто


для использования cs_set и reset user model должны быть проверки на if_user_alive в начале функции

в исходнике должен понятное дело быть #include <cstrike>
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя debars
сообщение 5.4.2012, 18:11
Сообщение #4


Стаж: 14 лет

Сообщений: 18
Благодарностей: 2
Полезность: 0

Цитата(cs-portal @ 5.4.2012, 14:25) *
лолшто


для использования cs_set и reset user model должны быть проверки на if_user_alive в начале функции

в исходнике должен понятное дело быть #include <cstrike>


Стоит, там выше есть исходник sma
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Orty_Hart
сообщение 5.4.2012, 18:30
Сообщение #5
Стаж: 14 лет

Сообщений: 1399
Благодарностей: 408
Полезность: 725

debars,
вверху нашел ошибку...

замени:

Цитата
public fwHamPlayerSpawnPost(id)
{
if (get_user_flags(id) & VIP_ACC)
{....


на

Цитата
public fwHamPlayerSpawnPost(id)
{
if (is_user_connected(id) && is_user_alive(id) && get_user_flags(id) & VIP_ACC)
{....


проверяем: игрок в сети? и игрок живой? (чтоб делать дальше....) и игрок имеет флаг VIP_ACC?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
vip-servera
сообщение 6.4.2012, 10:15
Сообщение #6
Стаж: 15 лет

Сообщений: 211
Благодарностей: 11
Полезность: 0

Го*но код если честно плагинг вообше не очем лучше сделать другой какой нибуд свой
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Orty_Hart
сообщение 6.4.2012, 11:12
Сообщение #7
Стаж: 14 лет

Сообщений: 1399
Благодарностей: 408
Полезность: 725

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