Разрывные пули.
|
|
BarD
|
Дата: Четверг, 31.12.2015, 17:21:43 | Сообщение # 16 |
|
Сообщений: 943
Репутация: 137 [ +/- ]
|
|
tonline_kms65, хочешь решение всех проблем? Попробуй в оффсет env_explosion m_hInflictor запихать аттакера, как ты с клиентом в m_hOwnerEntity сделал. И без всей этой фигни обойдешься. Чисто одним энтити. С наступающим!
Сообщение отредактировал BarD - Четверг, 31.12.2015, 17:22:28 |
|
| |
tonline_kms65
|
Дата: Пятница, 01.01.2016, 01:30:54 | Сообщение # 17 |
|
Сообщений: 215
Репутация: 3 [ +/- ]
|
|
Цитата BarD ( ) tonline_kms65, хочешь решение всех проблем? Попробуй в оффсет env_explosion m_hInflictor запихать аттакера, как ты с клиентом в m_hOwnerEntity сделал. И без всей этой фигни обойдешься. Чисто одним энтити. С наступающим!
Спасибо за поздравление. Тебя тоже с Новым годом! Попробую. Посмотреть бы значение всех оффсетов.
Prop_Send - это я так понимаю это куда записываются данные Prop_Data - это откуда данные считываются
SetEntPropEnt Устанавливает индекс лица в собственности хозяйствующего субъекта. или по другому - записывает владельца(того у кого в руках на этот момент эта энтитька) в проп энтити самой энтити(env_exposoin). Во них.. я намудрил. -----------------------------------------------------------> Syntax: SetEntPropEnt(entity, PropType:type, const String:prop[], other, element=0);
Использование: entity Entity/edict index. type Property type. prop Property name. other Entity index to set, or -1 to unset. element Element # (starting from 0) if property is an array. --------------------------------------------------------------------------------------->
SetEntPropEnt(ExplosionIndex, Prop_Send, "m_hOwnerEntity", i_Index); Это мой пример, я если честно, кое как понимаю как это работает. И даже если владельца энтитьки можно записать в data (он один и без ущерба), то как записать нескольких жертв в тот же проп? Их же не запишешь в простую строку. Значит нужно писать в массив. Для этого нужно вначале создать массив. Короче. Вот здесь я и впухаю. Вот это я и хочу понять. Как это все работает. Пока только методом тыка все приходится делать.
Вот это бы понять.
Сообщение отредактировал tonline_kms65 - Пятница, 01.01.2016, 02:27:40 |
|
| |
BarD
|
Дата: Пятница, 01.01.2016, 05:06:51 | Сообщение # 18 |
|
Сообщений: 943
Репутация: 137 [ +/- ]
|
|
SetEntPropEnt(ExplosionIndex, Prop_Send, "m_hOwnerEntity", индекс аттакера); SetEntPropEnt(ExplosionIndex, Prop_Send, "m_hInflictor", индекс аттакера); Делай это при создании энтити. Все, что тебе нужно. И не надо этих бесконечных операций вычислительных. Должно работать.
|
|
| |
tonline_kms65
|
Дата: Пятница, 01.01.2016, 06:11:30 | Сообщение # 19 |
|
Сообщений: 215
Репутация: 3 [ +/- ]
|
|
Цитата BarD ( ) SetEntPropEnt(ExplosionIndex, Prop_Send, "m_hOwnerEntity", индекс аттакера); SetEntPropEnt(ExplosionIndex, Prop_Send, "m_hInflictor", индекс аттакера); Делай это при создании энтити. Все, что тебе нужно. И не надо этих бесконечных операций вычислительных. Должно работать.
L 01/01/2016 - 14:05:19: [SM] Blaming plugin: Exploding_bullets.smx L 01/01/2016 - 14:05:19: [SM] Call stack trace: L 01/01/2016 - 14:05:19: [SM] [0] SetEntPropEnt L 01/01/2016 - 14:05:19: [SM] [1] Line 149, C:\Program Files\Valve\cstrike\addons\sourcemod\scripting\Exploding_bullets.sp::Event_BulletImpact() L 01/01/2016 - 14:05:19: [SM] Exception reported: Property "m_hInflictor " not found (entity 460/hegrenade) ну или так 614/env_explosion) L 01/01/2016 - 14:12:32: [SM] Blaming plugin: Exploding_bullets.smx L 01/01/2016 - 14:12:32: [SM] Call stack trace: L 01/01/2016 - 14:12:32: [SM] [0] SetEntPropEnt L 01/01/2016 - 14:12:32: [SM] [1] Line 149, C:\Program Files\Valve\cstrike\addons\sourcemod\scripting\Exploding_bullets.sp::Event_BulletImpact() L 01/01/2016 - 14:14:15: [SM] Exception reported: Property "m_hInflictor " not found (entity 1379/env_explosi
Нет такого свойства m_hInflictor Через 2 минуты сервак падает. Не все так просто.
entity 1379 Я кстати не пойму почему происходит увеличение энтитек. Только заметил. Из за этого и сервак падает. Или это счет ошибок.
Я понял. Энтитьку я убиваю далеко после ошибки. А сразу после ошибки дальнейший код то не работает.
/*--------------------------------------------------------------------------------*/ Не в тему немного, зато понятно. Кто знает как диффузки (от CSSDM) которых на земле валяется куча удалить попроще? Какой нибудь код бы, что бы не возиться с этим.
Предполагаю 2 варианта: 1. В цикле (думаю плохой вариант, сервак будет грузить) 2. При смерти игрока
new ent_диффузз = FindEntityByClassname( MaxClients + 1, "item_defuser" ); У диффузок "kill" есть. Так что можно убить. AcceptEntityInput(ent_диффузз , "Kill");
Наверно лучший вариант будет 2. Диффузки после смерти игрока появляются. Я не пойму почему Баллопан не доделал этот момент. Вроде все этитьки убивает а вот диффузы оставил почему то.
Сообщение отредактировал tonline_kms65 - Пятница, 01.01.2016, 07:07:31 |
|
| |
BarD
|
Дата: Пятница, 01.01.2016, 08:21:04 | Сообщение # 20 |
|
Сообщений: 943
Репутация: 137 [ +/- ]
|
|
Цитата tonline_kms65 ( ) Нет такого свойства m_hInflictor Странно. В datamaps есть.
|
|
| |
tonline_kms65
|
Дата: Пятница, 01.01.2016, 10:11:53 | Сообщение # 21 |
|
Сообщений: 215
Репутация: 3 [ +/- ]
|
|
Цитата BarD ( ) В datamaps есть.
Дай хоть посмотрю где это.
|
|
| |
BarD
|
Дата: Пятница, 01.01.2016, 10:46:30 | Сообщение # 22 |
|
Сообщений: 943
Репутация: 137 [ +/- ]
|
|
tonline_kms65, http://world-source.ru/datamaps.txt
|
|
| |
tonline_kms65
|
Дата: Пятница, 01.01.2016, 14:38:06 | Сообщение # 23 |
|
Сообщений: 215
Репутация: 3 [ +/- ]
|
|
Цитата BarD ( ) http://world-source.ru/datamaps.txt О. Спасибо за информацию.
Цитата BarD ( ) Странно. В datamaps есть. Попробовал заменить Prop_Send на Prop_Data (пишем в массив самой энтитьки)
SetEntPropEnt(ExplosionIndex, Prop_Data, "m_hInflictor", i_Index); SetEntPropEnt(ExplosionIndex, Prop_Data, "m_hOwnerEntity", i_Index); SetEntPropEnt(ExplosionIndex, Prop_Data, "m_hEntityIgnore", i_Index); // Предотвращение саморазрушения
Все стало ОК. Появилась в худе информация об оружии убийства. Короче стало намного лучше. Надо потестировать сервак. Пока оставлю так как есть. Завтра на работу - уже будет не до этого.
Обновленный плагин v1.0.9
Гости не могут скачивать файлы
|
Сообщение отредактировал tonline_kms65 - Воскресенье, 03.01.2016, 18:51:57 |
|
| |
sourcegod
|
Дата: Суббота, 02.01.2016, 18:32:02 | Сообщение # 24 |
|
Сообщений: 69
Репутация: 0 [ +/- ]
|
|
tonline_kms65, Ты исходник то выложишь или нет?
|
|
| |