-
Автор темы
- #1
Привет, ребята, вы могли подумать, как сделать анимацию fakeduck onetap?
в этой теме я расскажу об этом, но с кодом r2p.
это просто для того, чтобы добавить плавный переход при fakeducking. как в onetap, когда вы приседаете, тогда вы хотите трахнуть, есть небольшое сглаживание, когда ваша камера поднимается.
видео, показывающее, как это работает:
не спрашивайте, как это поставить, вы знаете, что работает функция viewsetup, и где ее поставить, это ваша работа (легко).
cock departament.
в этой теме я расскажу об этом, но с кодом r2p.
это просто для того, чтобы добавить плавный переход при fakeducking. как в onetap, когда вы приседаете, тогда вы хотите трахнуть, есть небольшое сглаживание, когда ваша камера поднимается.
видео, показывающее, как это работает:
Пожалуйста, авторизуйтесь для просмотра ссылки.
не спрашивайте, как это поставить, вы знаете, что работает функция viewsetup, и где ее поставить, это ваша работа (легко).
C++:
/* fakeduck animation. */
// catware technologie$$$.
// useful data to be used later.
static float maxduck = 0;
static bool in_transition = false;
// if we are fakeducking.
if (fakeducking)
{
// we are in transition and now we run the animation using frametime to make our viewoffset increased till the limit (standing viewoffset with magical number).
in_transition = true;
maxduck += m_globals()->m_frametime * 150;
// if the maxduck reached the limit (standing viwoffset with magical number).
if (maxduck > m_gamemovement()->GetPlayerViewOffset(false).z + 0.064f)
maxduck = m_gamemovement()->GetPlayerViewOffset(false).z + 0.064f;
}
// or if we are not fakeducking.
else
{
// don't enable transition or else the code will always running that will break the viewoffset. this code also will makes unducking viewoffset look smooth after you fakeducks.
if (maxduck > g_ctx.local()->m_vecViewOffset().z)
maxduck -= m_globals()->m_frametime * 150;
// if maxduck number reached the limit when we are not fakeducking (normal viewwoffset).
if (maxduck < g_ctx.local()->m_vecViewOffset().z) {
maxduck = g_ctx.local()->m_vecViewOffset().z;
// transition is done, no need to do any animations anymore.
in_transition = false;
}
}
// only set our viewsetup origin when we are in transition (just like the thirdperson that leaked here from my cheat, hmmm.).
if (in_transition)
viewsetup->origin = g_ctx.local()->GetAbsOrigin() + Vector(0.0f, 0.0f, maxduck);
Последнее редактирование: