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

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

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

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

2 страниц V   1 2

Лучший игрок раунда

Статус пользователя Bloo
сообщение 4.6.2015, 9:24
Сообщение #21


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

Altaj, с этим я к сожалению не смогу помочь. Подождите тех кто шарит.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Fintok
сообщение 4.6.2015, 14:10
Сообщение #22


Стаж: 16 лет

Сообщений: 756
Благодарностей: 294
Полезность: 638

Altaj, добавь в код следуя примеру замены.
Где вы откапываете эти куски нерабочего кода? На форуме же есть куча других рабочих вариантов
Скрытый текст
Код:
#include <colorchat>
--->
Код:
#include <colorchat>

#define is_user_valid_connected(%1) (1 <= %1 <= g_iMaxPlayers && is_user_connect(%1))



Код:
new nMoney
--->
Код:
new nMoney

new g_iMaxPlayers


Код:
nMoney   = register_cvar("nkiller_money", "1000")
--->
Код:
nMoney   = register_cvar("nkiller_money", "1000")

g_iMaxPlayers = get_maxplayers()


Код:
public hook_TakeDamage(Victim, inflictor, Attacker, Float:damage, damagebits)
{
--->
Код:
public hook_TakeDamage(Victim, inflictor, Attacker, Float:damage, damagebits)
{
if(Victim == Attacker || !is_user_valid_connected(Attacker))
return HAM_IGNORED
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Altaj
сообщение 4.6.2015, 14:18
Сообщение #23


Стаж: 12 лет
Город: Барнаул

Сообщений: 456
Благодарностей: 442
Полезность: 565

Fintok, Заменил. Не компилируется.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 4.6.2015, 14:24
Сообщение #24


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

Altaj, видимо опечатался, пробуй так
Код:
#include <amxmodx>
#include <cstrike>
#include <hamsandwich>
#include <fakemeta>
#include <colorchat>

#define is_user_valid_connected(%1) (1 <= %1 <= g_iMaxPlayers && is_user_connected(%1))

enum _:score
{
frags,
Float:dmg,
hs
}

new niceP[33][score]

new nMoney
new g_iMaxPlayers

public plugin_init()
{
register_plugin("Nice Gamer", "1.0", "Got Milk?")

RegisterHam(Ham_TakeDamage, "player", "hook_TakeDamage")
register_event("DeathMsg", "Event_DeathMessage", "a")
register_logevent("event_round_end", 2, "1=Round_End")
register_event("HLTV", "event_round_start", "a", "1=0", "2=0")
nMoney = register_cvar("nkiller_money", "1000")
g_iMaxPlayers = get_maxplayers()
}

public event_round_end ()
{
new Players[32], num, tmpf, Float:tmpd, tmpid
get_players( Players, num )

for( new i; i < 32; i++)
{
if ( niceP[i][frags] > tmpf )
{
tmpid = i
tmpf = niceP[i][frags]
tmpd = niceP[i][dmg]
}
else if ( niceP[i][frags] == tmpf && niceP[i][dmg] > tmpd)
{
tmpid = i
tmpf = niceP[i][frags]
tmpd = niceP[i][dmg]
}
}

if ( tmpf > 0 )
{
new name[32];
get_user_name(tmpid, name, 31);

client_print_color(0, DontChange, "^1Лучшим игроком раунда стал ^4%s.", name )
client_print_color(0, DontChange, "^1Убив ^4%d ^1игроков и нанеся ^4%d ^1урон.", tmpf, floatround(tmpd, floatround_round))

cs_set_user_money( tmpid, cs_get_user_money(tmpid) + get_pcvar_num(nMoney) )
client_print_color( tmpid, DontChange, "^x3%s^x1 вы получили^x4 %d^x1 $ за то, что были лучшим в раунде.", name, get_pcvar_num(nMoney) )
}
}

public hook_TakeDamage(Victim, inflictor, Attacker, Float:damage, damagebits)
{
if(Victim == Attacker || !is_user_valid_connected(Attacker))
return HAM_IGNORED
if( inflictor == Attacker )
niceP[Attacker][dmg] += damage
else
{
static classname[32]
pev (inflictor, pev_classname, classname, 31)
if( equal (classname, "grenade") )
niceP[Attacker][dmg] += damage
}

if ( get_pdata_int(Victim, 75, 5) == HIT_HEAD )
niceP[Attacker][hs]++

return HAM_IGNORED
}

public Event_DeathMessage()
niceP[read_data(1)][frags]++

public event_round_start ( )
for (new i; i < 32; i++)
for ( new j; j < 3; j++)
niceP[i][j] = 0

public client_disconnect(id)
for ( new j; j < 3; j++)
niceP[id][j] = 0
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Safety1st
сообщение 4.6.2015, 14:29
Сообщение #25
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Fintok, is_user_valid_connected() - лишнее. Достаточно оригинальной нативы)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Fintok
сообщение 4.6.2015, 14:34
Сообщение #26


Стаж: 16 лет

Сообщений: 756
Благодарностей: 294
Полезность: 638

Safety1st, в некоторых случаях бывает требуется
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 4.6.2015, 15:56
Сообщение #27
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Конечно!
Забыл дописать 'в данном плагине' smile.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
Статус пользователя Fintok
сообщение 4.6.2015, 16:51
Сообщение #28


Стаж: 16 лет

Сообщений: 756
Благодарностей: 294
Полезность: 638

Safety1st, хуже не станет crazy.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Altaj
сообщение 10.6.2015, 16:49
Сообщение #29


Стаж: 12 лет
Город: Барнаул

Сообщений: 456
Благодарностей: 442
Полезность: 565

Скрытый текст
Цитата(Bloo @ 4.6.2015, 14:24) *
Altaj, видимо опечатался, пробуй так
Код:
#include <amxmodx>
#include <cstrike>
#include <hamsandwich>
#include <fakemeta>
#include <colorchat>

#define is_user_valid_connected(%1) (1 <= %1 <= g_iMaxPlayers && is_user_connected(%1))

enum _:score
{
frags,
Float:dmg,
hs
}

new niceP[33][score]

new nMoney
new g_iMaxPlayers

public plugin_init()
{
register_plugin("Nice Gamer", "1.0", "Got Milk?")

RegisterHam(Ham_TakeDamage, "player", "hook_TakeDamage")
register_event("DeathMsg", "Event_DeathMessage", "a")
register_logevent("event_round_end", 2, "1=Round_End")
register_event("HLTV", "event_round_start", "a", "1=0", "2=0")
nMoney = register_cvar("nkiller_money", "1000")
g_iMaxPlayers = get_maxplayers()
}

public event_round_end ()
{
new Players[32], num, tmpf, Float:tmpd, tmpid
get_players( Players, num )

for( new i; i < 32; i++)
{
if ( niceP[i][frags] > tmpf )
{
tmpid = i
tmpf = niceP[i][frags]
tmpd = niceP[i][dmg]
}
else if ( niceP[i][frags] == tmpf && niceP[i][dmg] > tmpd)
{
tmpid = i
tmpf = niceP[i][frags]
tmpd = niceP[i][dmg]
}
}

if ( tmpf > 0 )
{
new name[32];
get_user_name(tmpid, name, 31);

client_print_color(0, DontChange, "^1Лучшим игроком раунда стал ^4%s.", name )
client_print_color(0, DontChange, "^1Убив ^4%d ^1игроков и нанеся ^4%d ^1урон.", tmpf, floatround(tmpd, floatround_round))

cs_set_user_money( tmpid, cs_get_user_money(tmpid) + get_pcvar_num(nMoney) )
client_print_color( tmpid, DontChange, "^x3%s^x1 вы получили^x4 %d^x1 $ за то, что были лучшим в раунде.", name, get_pcvar_num(nMoney) )
}
}

public hook_TakeDamage(Victim, inflictor, Attacker, Float:damage, damagebits)
{
if(Victim == Attacker || !is_user_valid_connected(Attacker))
return HAM_IGNORED
if( inflictor == Attacker )
niceP[Attacker][dmg] += damage
else
{
static classname[32]
pev (inflictor, pev_classname, classname, 31)
if( equal (classname, "grenade") )
niceP[Attacker][dmg] += damage
}

if ( get_pdata_int(Victim, 75, 5) == HIT_HEAD )
niceP[Attacker][hs]++

return HAM_IGNORED
}

public Event_DeathMessage()
niceP[read_data(1)][frags]++

public event_round_start ( )
for (new i; i < 32; i++)
for ( new j; j < 3; j++)
niceP[i][j] = 0

public client_disconnect(id)
for ( new j; j < 3; j++)
niceP[id][j] = 0


Плагин подсчитывает неверный урон. Показывает в несколько раз больше. Статистика StatsX. Помогите подправить.

Отредактировал: Altaj, - 11.6.2015, 9:54
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
2 страниц V   1 2
 
Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: