Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нём некорректно. Вам необходимо обновить браузер или попробовать использовать другой.
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Для сначало тебе нужно создать глобальный "контейнер" которое будет хранить отрисовки матрицы в DME (vector / deque будут делать это)
К примеру как
C++:
typedef struct matrices_s
{
matrix3x4_t[128] matrix;
float flDisplayTime; // как долго он будет оставаться (выполни gpGlobals-> curtime + 5.f, а затем проверь, не
// curtime >= flDisplayTime
matrices_t(matrix3x4_t[128] matr, float curtime)
{
matrix = matr;
flDisplayTime = curtime + 5.f;
}
} matrices_t;
А затем определение "контейнера"
C++:
std :: vector <matrices_t> m_vecMatrices ;
Самый простой способ это сделать через player_death
И сделать проверку, был ли убит игрок
событием -> GetInt вернет идентификатор атакующего, который нужно преобразовать в C_BaseEntity *, используя ClientEntityList, например:
Позже в DME если имееются ли какие-то матрицы, то нарисуй их в контейнере
C++:
// Форсируем любой материал, который ты хочешь, в ModelRender есть функция, я думаю, ты делаешь это для chams
for(size_t i = 0; i < m_vecMatrices.size(); i++)
{
if(m_vecMatrices[i].flDisplayTime =< gpGlobals)
m_vecMatrices.erase(m_vecMatrices.begin() + i);
oDrawModelExecute(ecx, context, state, info, m_vecMatrices[i].matrix);
}
// "Un" - форсировать материал после цикла
g_ModelRender->ForceMaterialOverride(NULL);
Ты зацикливаешь, чтобы нарисовать каждую матрицу, которая там присутствует
Проверь, больше ли значение curtime, чем у нашей матрицы, если оно есть, удали его
Для сначало тебе нужно создать глобальный "контейнер" которое будет хранить отрисовки матрицы в DME (vector / deque будут делать это)
К примеру как
C++:
typedef struct matrices_s
{
matrix3x4_t[128] matrix;
float flDisplayTime; // как долго он будет оставаться (выполни gpGlobals-> curtime + 5.f, а затем проверь, не
// curtime >= flDisplayTime
matrices_t(matrix3x4_t[128] matr, float curtime)
{
matrix = matr;
flDisplayTime = curtime + 5.f;
}
} matrices_t;
А затем определение "контейнера"
C++:
std :: vector <matrices_t> m_vecMatrices ;
Самый простой способ это сделать через player_death
И сделать проверку, был ли убит игрок
событием -> GetInt вернет идентификатор атакующего, который нужно преобразовать в C_BaseEntity *, используя ClientEntityList, например:
Позже в DME если имееются ли какие-то матрицы, то нарисуй их в контейнере
C++:
// Форсируем любой материал, который ты хочешь, в ModelRender есть функция, я думаю, ты делаешь это для chams
for(size_t i = 0; i < m_vecMatrices.size(); i++)
{
if(m_vecMatrices[i].flDisplayTime =< gpGlobals)
m_vecMatrices.erase(m_vecMatrices.begin() + i);
oDrawModelExecute(ecx, context, state, info, m_vecMatrices[i].matrix);
}
// "Un" - форсировать материал после цикла
g_ModelRender->ForceMaterialOverride(NULL);
Ты зацикливаешь, чтобы нарисовать каждую матрицу, которая там присутствует
Проверь, больше ли значение curtime, чем у нашей матрицы, если оно есть, удали его