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

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

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

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

Организовать запрет установку модели в плотную к текстуре (стене и т.д)

Статус пользователя HAPKOMAH
сообщение 22.2.2020, 0:26
Сообщение #1


Стаж: 6 лет 4 месяца

Сообщений: 21
Благодарностей: 5
Полезность: 181

Доброй ночи! Подскажите как осуществить запрет установку модели вплотную к стене или углам карты и желательно отключить запрет на установку по вертикали ну т.е под ноги себе опускаешь прицел и ставишь ..... т.к если поставить ее в плотную то она уходит под землю )) не знаю понятно выразился или нет )) делаю так:
Код
        new Float:flPlayerOrigin[ 3 ]; //координаты игрока
    entity_get_vector(id, EV_VEC_origin, flPlayerOrigin);
        new Float:vTraceDirection[3];
    new Float:vNewOrigin[3];
    new Float:vTraceEnd[3];
    new Float:vTraceResult[3];
    new Float:vNormal[3];

       velocity_by_aim(id, 64, vTraceDirection);
    vTraceEnd[0] = vTraceDirection[0] + flPlayerOrigin[0];
    vTraceEnd[1] = vTraceDirection[1] + flPlayerOrigin[1];
    vTraceEnd[2] = vTraceDirection[2] + flPlayerOrigin[2];
    trace_line(id, flPlayerOrigin, vTraceEnd, vTraceResult);
    vNewOrigin[0] = vTraceResult[0];
    vNewOrigin[1] = vTraceResult[1];
    vNewOrigin[2] = vTraceResult[2];

    if(trace_normal(id, flPlayerOrigin, vTraceEnd, vNormal) == 1)
    {
        //Уперлись, не хватает места
        return PLUGIN_HANDLED;
    }

Код нашел в каком-то плагине... адаптировал под себя .....
Как бы все работает, но:
1. Если подойти в плотную к углу и направить прицел вверх на всю ... то запрет не сработает ...
2. Если ставить объект на покатой поверхности, даже если далеко от стен то срабатывает запрет ...
3. Срабатывает запрет на установку себе под ноги ... нужно прицел все время поднимать вверх ..
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя $@NyA
сообщение 22.2.2020, 12:52
Сообщение #2


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

Стаж: 18 лет

Сообщений: 987
Благодарностей: 529
Полезность: 1050

Посмотри здесь - может чёт и выбирешь себе ( Установка модели только на потолок )
Код:
public create_barnacle(id)
{
if (g_barnacleCount[id] > 0)
{
new origin[3], Float:fOrigin[3]
get_user_origin(id, origin, 3)
IVecFVec(origin, fOrigin)

fOrigin[2] -= 2.0
new const Float:direction[4][3] = {{5.0, 0.0, 0.0}, {-5.0, 0.0, 0.0}, {0.0, 5.0, 0.0}, {0.0, -5.0, 0.0}}
new Float:temp[3]
xs_vec_copy(fOrigin, temp)
new i
for (i = 0; i < 4; i++)
{
xs_vec_add(fOrigin, direction[i], temp)
if (engfunc(EngFunc_PointContents, temp) != -1)
break
}

if (i != 4)
client_print(id, print_center, "Эту Ловушку нужно ставить на потолок !")
else
{
fOrigin[2] += 2.0
new ent = engfunc(EngFunc_CreateNamedEntity,engfunc(EngFunc_AllocStr
ing,"info_target"))

set_pev(ent,pev_classname, barnacle_class)
engfunc(EngFunc_SetModel, ent, "models/zp_trap/zp_trap2.mdl")

set_pev(ent, pev_iuser1, id)

set_pev(ent, pev_mins, Float:{-16.0,-16.0, -36.0})
set_pev(ent, pev_maxs, Float:{16.0,16.0,0.0})
set_pev(ent, pev_size, Float:{-16.0,-16.0, -36.0,16.0,16.0,0.0})
engfunc(EngFunc_SetSize, ent, Float:{-16.0,-16.0,-36.0}, Float:{16.0,16.0,0.0})

set_pev(ent, pev_solid, SOLID_BBOX)
set_pev(ent, pev_movetype, MOVETYPE_FLY)

set_pev(ent, pev_health, get_pcvar_float(g_CvarHP) + HEALTH_OFFSET)
set_pev(ent, pev_takedamage, 1.0)

set_pev(ent, pev_dmg, 1.0)

set_pev(ent, pev_maxspeed, 20.0)

set_pev(ent,pev_flags, FL_MONSTER|FL_MONSTERCLIP)

set_pev(ent, pev_origin, fOrigin)

set_pev(ent, pev_animtime, 10.0)
set_pev(ent, pev_framerate, 0.5)
set_pev(ent, pev_sequence, idle3)
set_pev(ent, pev_gaitsequence, idle3)

set_pev(ent, pev_nextthink,get_gametime() + THINK_DELAY)

g_barnacleCount[id]--

client_print(id, print_center, "Осталось Ловушек : %d", g_barnacleCount[id])
}
}
else
client_print(id, print_center, "Больше нет Ловушек !")
}


МультиМод CS
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 22.2.2020, 14:57
Сообщение #3
Стаж: 14 лет
Город: Moscow

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

$@NyA, простым смертным искусство выбора не под силу. Пили до конца, чего уж там, останется для поколений good.gif

Отредактировал: Safety1st, - 22.2.2020, 15:07
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя HAPKOMAH
сообщение 22.2.2020, 19:03
Сообщение #4


Стаж: 6 лет 4 месяца

Сообщений: 21
Благодарностей: 5
Полезность: 181

$@NyA, Я по другому сделал, но всёравно спасибо !
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 22.2.2020, 19:10
Сообщение #5
Стаж: 14 лет
Город: Moscow

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

HAPKOMAH, спасибо, что поделился thank_you2.gif

Отредактировал: Safety1st, - 22.2.2020, 19:11
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя mOdest
сообщение 22.2.2020, 19:28
Сообщение #6


Стаж: 9 лет 9 месяцев

Сообщений: 1255
Благодарностей: 255
Полезность: 79

$@NyA, еб твою.. здесь из требуемого функционала только 5-6 строк, зачем ты пол мода скинул?

Отредактировал: Fullserver, - 22.2.2020, 20:08
Причина: Выдано устное предупреждение!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя HAPKOMAH
сообщение 22.2.2020, 20:31
Сообщение #7


Стаж: 6 лет 4 месяца

Сообщений: 21
Благодарностей: 5
Полезность: 181

Цитата(Safety1st @ 22.2.2020, 21:10) *
HAPKOMAH, спасибо, что поделился thank_you2.gif

Дык делиться нечем ) т.к у меня модель ставится под ноги игроку то она в стену не уходит даже стоя в плотную ней, она уходила в землю... через MOVETYPE_PUSHSTEP запретил ей движение и все. БЫвает что модель остается в чуть подвешенном состоянии но в моем случае это не критично.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Safety1st
сообщение 22.2.2020, 20:58
Сообщение #8
Стаж: 14 лет
Город: Moscow

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

HAPKOMAH, поздравляю: ты заюзал корректный movetype для своей шляпы good.gif Удивительно, когда правильный код правильно работает, сложно привыкнуть

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