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

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

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

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

kill-distance

, убийство расстояние
nastia777
сообщение 17.8.2014, 21:25
Сообщение #1
Стаж: 13 лет

Сообщений: 606
Благодарностей: 485
Полезность: 510

Код:
/
*AMXX Kill Distance

Author: Nightscream
Help: Kleenex
Version: 0.3
===============================================
Description:
If Someone kills an enemy/teammate
it will give a hud message to see from
how far you killed him in meters

made on request
http://www.amxmodx.org/forums/viewtopic.php?t=15208
===============================================
Cvars:
distance_meter 0 = Feet
1 = Meter

ditance_all 0 = shows text only to killer
1= shows text to everyone
===============================================
Tested on:
Listen server | condition-zero | Windows XP Home | amxx 1.55
===============================================
Changelog:
0.1 - Release for amxx
0.2 - Added Distance in Feet
0.3 - Added distance_all cvar so text can be showed to everyone/killer
===============================================
suggestions are always welcome
*/

#include <amxmodx>
#include <amxmisc>

#define PLUGINNAME "Kill Distance"
#define VERSION "0.3"
#define AUTHOR "Nightscream"

new Float:modMeter = 32.00
new Float:modFeet = 35.00

public plugin_init() {
register_plugin( PLUGINNAME, VERSION, AUTHOR )

register_event( "DeathMsg", "Event_Death", "a" )

register_cvar( "distance_meter", "1" )
register_cvar( "distance_all", "1" )
}

public Event_Death(id) {
new iVictimID = read_data(2)
new iWeapon, iAttackerID = get_user_attacker( iVictimID, iWeapon )

if( !is_user_connected( iVictimID ) ) return PLUGIN_CONTINUE

if( !is_user_connected( iAttackerID ) || iVictimID == iAttackerID ) return PLUGIN_CONTINUE

new name[33]
new name2[33]
get_user_name( iAttackerID, name, 32 )
get_user_name( iVictimID, name2, 32 )

new origin1[3]
new origin2[3]
get_user_origin( iAttackerID, origin1 )
get_user_origin( iVictimID, origin2 )

new distance = get_distance(origin1,origin2)
if ( get_cvar_num( "distance_meter" ) == 0 ) {
if ( get_cvar_num( "distance_all" ) == 1 ) {
set_hudmessage( 0, 100, 0, 0.06, 0.8, 0, 6.0, 12.0, 0.5, 0.5, 162 );
show_hudmessage( id, "%Вас убили %с^nfrom расстояние %d футов",name, name2,floatround( distance/modFeet ) )
}
if ( get_cvar_num( "distance_all" ) == 0 ) {
set_hudmessage( 0, 100, 0, 0.06, 0.8, 0, 6.0, 12.0, 0.5, 0.5, 162 );
show_hudmessage( iAttackerID, "Вы убили %с^nfrom расстояние %d футов", name2,floatround( distance/modFeet ) )
}
}
if ( get_cvar_num("distance_meter") == 1 ) {
if ( get_cvar_num( "distance_all" ) == 1 ) {
set_hudmessage(0, 100, 0, 0.06, 0.8, 0, 6.0, 12.0, 0.5, 0.5, 162);
show_hudmessage( id, "%Вас убили %с^nfrom расстояние %d метров",name, name2,floatround( distance/modMeter ) )
}
if ( get_cvar_num( "distance_all" ) == 0 ) {
set_hudmessage(0, 100, 0, 0.06, 0.8, 0, 6.0, 12.0, 0.5, 0.5, 162);
show_hudmessage( iAttackerID, "Вы убили %с^nfrom расстояние %d метров", name2,floatround( distance/modMeter ) )
}
}

return PLUGIN_CONTINUE
}


ставлю плагин на сервер всех выкидывает с ошибкой
Host_Error: UserMsg: Not Present on Client 58

как можно исправить эту ошибку ?

Отредактировал: nastia777, - 17.8.2014, 21:27
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Legenda
сообщение 17.8.2014, 21:28
Сообщение #2


Иконка группы

Стаж: 16 лет

Сообщений: 3619
Благодарностей: 1706
Полезность: 1010

Меценат Меценат

пересохрани текст и файл в кодировке utf-8 без bom
а потом локально компилируй
лучше заменить
get_cvar_num на get_pcvar_num

конструкция из if это конечно знатный бред
в данном случаи нужно использовать case
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
nastia777
сообщение 17.8.2014, 21:29
Сообщение #3
Стаж: 13 лет

Сообщений: 606
Благодарностей: 485
Полезность: 510

Цитата(Legenda @ 17.8.2014, 21:28) *
пересохрани текст и файл в кодировке utf-8 без bom
а потом локально компилируй


так и сделала !
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Legenda
сообщение 17.8.2014, 21:36
Сообщение #4


Иконка группы

Стаж: 16 лет

Сообщений: 3619
Благодарностей: 1706
Полезность: 1010

Меценат Меценат

Цитата(nastia777 @ 17.8.2014, 23:29) *
так и сделала !

если действительно так сделала - значит проблема в другом плагине, а не в этом...
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
nastia777
сообщение 17.8.2014, 21:39
Сообщение #5
Стаж: 13 лет

Сообщений: 606
Благодарностей: 485
Полезность: 510

может просто конфликт так как при его отключение все нормально работает !
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Legenda
сообщение 17.8.2014, 21:47
Сообщение #6


Иконка группы

Стаж: 16 лет

Сообщений: 3619
Благодарностей: 1706
Полезность: 1010

Меценат Меценат

Цитата(nastia777 @ 17.8.2014, 23:39) *
может просто конфликт так как при его отключение все нормально работает !

distance_meter чему равен? если 0
возможно проблема

show_hudmessage( id, "%Вас убили %с^nfrom расстояние %d футов",name, name2,floatround( distance/modFeet ) )
show_hudmessage( id, "%Вас убили %с^nfrom расстояние %d метров",name, name2,floatround( distance/modMeter ) )

id - это не понятно кто
вообще это *** плагин с кучей ошибок

кстати замени
Код:
register_event( "DeathMsg",  "Event_Death",  "a" )

на
Код:
register_event("DeathMsg", "Event_Death", "a", "1>0")


а

Код:
       if( !is_user_connected( iVictimID ) ) return PLUGIN_CONTINUE

if( !is_user_connected( iAttackerID ) || iVictimID == iAttackerID ) return PLUGIN_CONTINUE


на
Код:
 if( !is_user_connected( iVictimID ) || !is_user_connected( iAttackerID )) return PLUGIN_CONTINUE
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
nastia777
сообщение 17.8.2014, 21:50
Сообщение #7
Стаж: 13 лет

Сообщений: 606
Благодарностей: 485
Полезность: 510

Цитата(Legenda @ 17.8.2014, 21:47) *
distance_meter чему равен? если 0
возможно проблема

show_hudmessage( id, "%Вас убили %с^nfrom расстояние %d футов",name, name2,floatround( distance/modFeet ) )
show_hudmessage( id, "%Вас убили %с^nfrom расстояние %d метров",name, name2,floatround( distance/modMeter ) )

id - это не понятно кто
вообще это *** плагин с кучей ошибок

кстати замени
Код:
register_event( "DeathMsg",  "Event_Death",  "a" )

на
Код:
register_event("DeathMsg", "Event_Death", "a", "1>0")


а

Код:
       if( !is_user_connected( iVictimID ) ) return PLUGIN_CONTINUE

if( !is_user_connected( iAttackerID ) || iVictimID == iAttackerID ) return PLUGIN_CONTINUE


на
Код:
 if( !is_user_connected( iVictimID ) || !is_user_connected( iAttackerID )) return PLUGIN_CONTINUE



буду побывать )
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Legenda
сообщение 17.8.2014, 21:51
Сообщение #8


Иконка группы

Стаж: 16 лет

Сообщений: 3619
Благодарностей: 1706
Полезность: 1010

Меценат Меценат

используй

Код:

/**
* Modified by Safety1st
* last update 3/6/2014
*
* Changes:
* - HUD->client_print
* - removed all cvars
* - some optimizations
* - distance is reported as float
*/

/*
AMXX Kill Distance

Author: Nightscream
Help: Kleenex
Version: 0.3
===============================================
Description:
If Someone kills an enemy/teammate
it will give a hud message to see from
how far you killed him in meters

made on request
http://www.amxmodx.org/forums/viewtopic.php?t=15208

===============================================
Changelog:
0.1 - Release for amxx
0.2 - Added Distance in Feet
0.3 - Added distance_all cvar so text can be showed to everyone/killer
===============================================
suggestions are always welcome
*/

#include <amxmodx>

#define PLUGINNAME "Kill Distance (mod)"
#define VERSION "0.3f"
#define AUTHOR "Nightscream"

const Float:modMeter = 39.00

public plugin_init() {
register_plugin( PLUGINNAME, VERSION, AUTHOR )

register_event( "DeathMsg", "Event_Death", "a" )
}

public Event_Death(id) {
new iAttackerID = read_data(1)
new iVictimID = read_data(2)

if( !is_user_connected( iAttackerID ) || iVictimID == iAttackerID )
return

new nameA[33], nameV[33]
get_user_name( iAttackerID, nameA, 32 )
get_user_name( iVictimID, nameV, 32 )

new originA[3], originV[3]
get_user_origin( iAttackerID, originA )
get_user_origin( iVictimID, originV )

new Float:distance = get_distance(originA, originV) / modMeter

client_print( iAttackerID, print_chat, "Вы убили %s с расстояния %.2f метров", nameV, distance )
client_print( iVictimID, print_chat, "Вас убил %s с расстояния %.2f метров", nameA, distance )
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 17.8.2014, 22:07
Сообщение #9
Стаж: 14 лет
Город: Moscow

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

Legenda, правильнее давать ссылку на источник.


Кстати:
Цитата(Safety1st @ 21.3.2014, 7:06) *
Одну из ошибок
Код
Host_Error: UserMsg: Not Present on Client 57
либо
Код
Host_Error: UserMsg: Not Present on Client 58
вызывает отсутствие у клиента поддержки функции query_client_cvar(). Какую точно - не помню. Её используют некоторые плагины, обычно - различные плагины защиты. Но ошибка в таком случае должна быть не у всех, а только у старых клиентов, на 47-м протоколе. Решение - определить проблемный плагин и убрать/изменить/заменить его.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Legenda
сообщение 17.8.2014, 22:29
Сообщение #10


Иконка группы

Стаж: 16 лет

Сообщений: 3619
Благодарностей: 1706
Полезность: 1010

Меценат Меценат

Код
Modified by Safety1st

ссылки нет)
ибо локальной плагин взят их папка исходников)
как то туда затесался)

и кстати, не только query_client_cvar, насколько мне известно... но подробно не изучал)
а вообще массовую известность эта ошибка получали при выходе
Reallite HLGuard Anti-Cheat
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 17.8.2014, 22:45
Сообщение #11
Стаж: 14 лет
Город: Moscow

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

Цитата(Legenda @ 18.8.2014, 0:29) *
ссылки нет)
ибо локальной плагин взят их папка исходников)
как то туда затесался)

На этот случай я при сохранении себе вставляю подобные комментарии:
Код
/**
*    Отловить урон в спину
*
*    KORD_12.7
*      http://amx-x.ru/viewtopic.php?f=8&p=62852#p62852
*/
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
nastia777
сообщение 17.8.2014, 22:45
Сообщение #12
Стаж: 13 лет

Сообщений: 606
Благодарностей: 485
Полезность: 510

всем спасибо )
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: