Удаляем диван с карты совместными усилиями.

T

Tolyan

Есть Диван, для того чтоб получить его индекс я действовал так (2 способа):
1)
PHP:
~~~~~~~~~~~~~~~~~~~~~
public bool:wS_Filter(ent, mask, any:client)
    return client != ent;
~~~~~~~~~~~~~~~~~~~~~
   new Float:origin[3], Float:angles[3];
    GetClientEyePosition(client, origin); 
    GetClientEyeAngles(client, angles);
    TR_TraceRayFilter(origin, angles, MASK_SOLID, RayType_Infinite, wS_Filter, client);
   
    if (!TR_DidHit())
        return false;

    new ent = TR_GetEntityIndex(); //ПО ИДЕЕ ИНДЕКС ДИВАНА ДОЛЖЕН БЫТЬ в ent, но ent = -1
2)
PHP:
int ent = GetClientAimTarget (client, false); //ПО ИДЕЕ ИНДЕКС ДИВАНА ДОЛЖЕН БЫТЬ в ent, но ent = -1

Как получить этот долбанный индекс этого проклятого дивана чтоб потом его удалить с карты.. мучаюсь уже больше суток... неужели это такая сверх сложная задача? или все же я тупой?)

Если можно этот диван удалить (физически чтоб освободилось entity) каким-либо другим способом то предлагайте тоже, но важно его удалить так чтоб никакие другие компоненты карты не пострадали.

Из обсуждений узнал от RIKO - "с недавних пор бывают серверные ентити. Про них сервер не отправляет инфу клиентам. Их индексы отрицательные, найти их можно только через
FindEntityByClassname"

PHP:
new index = -1; 
while ((index = FindEntityByClassname(index, "ЧТО ТУТ ПИСАТЬ?? КАК ПОНЯТЬ ЧТО ИЗ СЕБЯ ПРЕДСТАВЛЯЕТ КОНКРЕТНО ЭТОТ ДИВАН?")) > 0) 
{ 
     PrintToServer("Найден индекс: %d", index); 
}

Очень прошу умы форума не оставлять меня на едине в решении этой задачи. Спасибо.


upload_2018-3-24_23-12-21.png
 

Grey83

не пишу плагины с весны 2022
Сообщения
8,558
Реакции
5,055
попробуй этот плагин: Grey83/SourceMod-plugins
он будет писать в чат при копировании пропа информацию о нём
правда индекс и модель не покажет, но это легко добавить
 

fl0wer

Участник
Сообщения
19
Реакции
3
Какой-нибудь prop_dynamic[_physic]
Попробуй в сфере около себя найти.
 
Сверху Снизу