LUA скрипт [pandora]animbreaker in air

Участник
Участник
Статус
Онлайн
Регистрация
4 Мар 2021
Сообщения
1,241
Реакции
301
вообщем сливаю вам сурс с щиткодом который я напастил(ну хоть работает)
отдельный респект @Jerrix_fanat его сурсы анимбрикера
shitcode:
Expand Collapse Copy
--дохуя говна снизу

ffi.cdef[[
    typedef void*(__thiscall* get_client_entity_t)(void*, int);
    typedef uintptr_t (__thiscall* GetClientEntity_4242425_t)(void*, int);
    int VirtualFree(void* lpAddress, unsigned long dwSize, unsigned long dwFreeType);
    void* VirtualAlloc(void* lpAddress, unsigned long dwSize, unsigned long  flAllocationType, unsigned long flProtect);
    int VirtualProtect(void* lpAddress, unsigned long dwSize, unsigned long flNewProtect, unsigned long* lpflOldProtect);


    typedef struct
    {
        float x;
        float y;
        float z;
    } Vector_t;

    
    typedef struct
    {
        char    pad0[0x60]; // 0x00
        void* pEntity; // 0x60
        void* pActiveWeapon; // 0x64
        void* pLastActiveWeapon; // 0x68
        float        flLastUpdateTime; // 0x6C
        int            iLastUpdateFrame; // 0x70
        float        flLastUpdateIncrement; // 0x74
        float        flEyeYaw; // 0x78
        float        flEyePitch; // 0x7C
        float        flGoalFeetYaw; // 0x80
        float        flLastFeetYaw; // 0x84
        float        flMoveYaw; // 0x88
        float        flLastMoveYaw; // 0x8C // changes when moving/jumping/hitting ground
        float        flLeanAmount; // 0x90
        char    pad1[0x4]; // 0x94
        float        flFeetCycle; // 0x98 0 to 1
        float        flMoveWeight; // 0x9C 0 to 1
        float        flMoveWeightSmoothed; // 0xA0
        float        flDuckAmount; // 0xA4
        float        flHitGroundCycle; // 0xA8
        float        flRecrouchWeight; // 0xAC
        Vector_t        vecOrigin; // 0xB0
        Vector_t        vecLastOrigin;// 0xBC
        Vector_t        vecVelocity; // 0xC8
        Vector_t        vecVelocityNormalized; // 0xD4
        Vector_t        vecVelocityNormalizedNonZero; // 0xE0
        float        flVelocityLenght2D; // 0xEC
        float        flJumpFallVelocity; // 0xF0
        float        flSpeedNormalized; // 0xF4 // clamped velocity from 0 to 1
        float        flRunningSpeed; // 0xF8
        float        flDuckingSpeed; // 0xFC
        float        flDurationMoving; // 0x100
        float        flDurationStill; // 0x104
        bool        bOnGround; // 0x108
        bool        bHitGroundAnimation; // 0x109
        char    pad2[0x2]; // 0x10A
        float        flNextLowerBodyYawUpdateTime; // 0x10C
        float        flDurationInAir; // 0x110
        float        flLeftGroundHeight; // 0x114
        float        flHitGroundWeight; // 0x118 // from 0 to 1, is 1 when standing
        float        flWalkToRunTransition; // 0x11C // from 0 to 1, doesnt change when walking or crouching, only running
        char    pad3[0x4]; // 0x120
        float        flAffectedFraction; // 0x124 // affected while jumping and running, or when just jumping, 0 to 1
        char    pad4[0x208]; // 0x128
        float        flMinBodyYaw; // 0x330
        float        flMaxBodyYaw; // 0x334
        float        flMinPitch; //0x338
        float        flMaxPitch; // 0x33C
        int            iAnimsetVersion; // 0x340
    } CCSGOPlayerAnimationState_534535_t;
]]

local menu = {
    misc = {
        animation_breaker = ui.add_dropdown("anim.breaker", {"forward legs", "backward legs", "forward run animation", "no animations", "crab", "forward run in air", "crab in air"}),
        breakarm = ui.add_checkbox("break animation arm"),
        staticair = ui.add_checkbox("static legs in air"),
        ducari = ui.add_checkbox("Ducari in Gym")
    }
}

local entity_list_ptr = ffi.cast("void***", client.create_interface("client.dll", "VClientEntityList003"))
local get_client_entity_fn = ffi.cast("GetClientEntity_4242425_t", entity_list_ptr[0][3])
local  get_entity_address = function(ent_index)
        local addr = get_client_entity_fn(entity_list_ptr, ent_index)
        return addr
    end
local localplayer = entity_list.get_client_entity(engine.get_local_player())

callbacks.register("post_anim_update", function(e)
if menu.misc.animation_breaker:get() == 0 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(2)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(0, 0.5) --forward legs
elseif menu.misc.animation_breaker:get() == 1 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(2)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(0, 1) --backward legs
elseif menu.misc.animation_breaker:get() == 2 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(1)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(7, 0) --forward run animation
elseif menu.misc.animation_breaker:get() == 3 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(1)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(8, 0) --no animations
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(9, 0) --no animations
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(10, 0) --no animations
elseif menu.misc.animation_breaker:get() == 4 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(1)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(7, 0.8) --crab
elseif menu.misc.animation_breaker:get() == 5 then
    ffi.cast("CCSGOPlayerAnimationState_534535_t**", get_entity_address(localplayer:index()) + 0x9960)[0].flAffectedFraction = 1 --anim in air
    ui.get("Misc", "General", "Movement", "Leg movement"):set(1)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(7, 0) --forward run animation
elseif menu.misc.animation_breaker:get() == 6 then
    ffi.cast("CCSGOPlayerAnimationState_534535_t**", get_entity_address(localplayer:index()) + 0x9960)[0].flAffectedFraction = 1 --anim in air
    ui.get("Misc", "General", "Movement", "Leg movement"):set(1)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(7, 0.8) --crab
end

if menu.misc.ducari:get() then
    e:get_prop("DT_BaseAnimating", "m_flModelScale"):set_float_index(0, 0.5) --ModelScale
else
 e:get_prop("DT_BaseAnimating", "m_flModelScale"):set_float_index(0, 1)
end

if menu.misc.breakarm:get() then
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(14, 1) --break arm
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(15, 1) --break arm
end


if menu.misc.staticair:get() then
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(6, 1) --static legs in air
end
end)
d5eed70b0b46095a76e65e90d3e881ae.jpg
 
кончил на код
 
int VirtualFree(void* lpAddress, unsigned long dwSize, unsigned long dwFreeType); void* VirtualAlloc(void* lpAddress, unsigned long dwSize, unsigned long flAllocationType, unsigned long flProtect); int VirtualProtect(void* lpAddress, unsigned long dwSize, unsigned long flNewProtect, unsigned long* lpflOldProtect);
нахуя это всё..


ffi.cast("CCSGOPlayerAnimationState_534535_t**", get_entity_address(localplayer:index()) + 0x9960)[0].flAffectedFraction = 1 --anim in air
это кстати не самый лучший выбор, но думаю сойдёт
 
хорошо хоть не насрал?
нахуя это всё..
отвечаю на вопрос: мусора дохуя потому-что я быриком за 5 минут нашел у себя в луашках этот столб с готовыми ffi и просто впихнул его
моя цель была в том что бы на пандоре все заработало, хотел проверить
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
хорошо хоть не насрал?

отвечаю на вопрос: мусора дохуя потому-что я быриком за 5 минут нашел у себя в луашках этот столб с готовыми ffi и просто впихнул его
моя цель была в том что бы на пандоре все заработало, хотел проверить
Зачем тебе ффи, конда ты можешь сетать m_flPoseParameter 6?
 
Зачем тебе ффи, конда ты можешь сетать m_flPoseParameter 6?
а как я сетну анимлеер без ffi если пос параметер сам за себя говорит что он лишь параметр позиции, и сетая его ты только изменяешь анимацию в позиции, но в аирах свои анимлееры и там тот же m_flPoseParameter[7] = 0.8 ака аллах легс не робит
 
how to fix crash when turning forward run animation?
 
it's crashing when changing maps, how do I fix it?
 
I also tried fixing it & nothing worked. thx btw
shitcode:
Expand Collapse Copy
--load after spawn and unload before map loading

ffi.cdef[[
    typedef void*(__thiscall* get_client_entity_t)(void*, int);
    typedef uintptr_t (__thiscall* GetClientEntity_4242425_t)(void*, int);

    typedef struct
    {
        float x;
        float y;
        float z;
    } Vector_t;

    
    typedef struct
    {
        char    pad0[0x60]; // 0x00
        void* pEntity; // 0x60
        void* pActiveWeapon; // 0x64
        void* pLastActiveWeapon; // 0x68
        float        flLastUpdateTime; // 0x6C
        int            iLastUpdateFrame; // 0x70
        float        flLastUpdateIncrement; // 0x74
        float        flEyeYaw; // 0x78
        float        flEyePitch; // 0x7C
        float        flGoalFeetYaw; // 0x80
        float        flLastFeetYaw; // 0x84
        float        flMoveYaw; // 0x88
        float        flLastMoveYaw; // 0x8C // changes when moving/jumping/hitting ground
        float        flLeanAmount; // 0x90
        char    pad1[0x4]; // 0x94
        float        flFeetCycle; // 0x98 0 to 1
        float        flMoveWeight; // 0x9C 0 to 1
        float        flMoveWeightSmoothed; // 0xA0
        float        flDuckAmount; // 0xA4
        float        flHitGroundCycle; // 0xA8
        float        flRecrouchWeight; // 0xAC
        Vector_t        vecOrigin; // 0xB0
        Vector_t        vecLastOrigin;// 0xBC
        Vector_t        vecVelocity; // 0xC8
        Vector_t        vecVelocityNormalized; // 0xD4
        Vector_t        vecVelocityNormalizedNonZero; // 0xE0
        float        flVelocityLenght2D; // 0xEC
        float        flJumpFallVelocity; // 0xF0
        float        flSpeedNormalized; // 0xF4 // clamped velocity from 0 to 1
        float        flRunningSpeed; // 0xF8
        float        flDuckingSpeed; // 0xFC
        float        flDurationMoving; // 0x100
        float        flDurationStill; // 0x104
        bool        bOnGround; // 0x108
        bool        bHitGroundAnimation; // 0x109
        char    pad2[0x2]; // 0x10A
        float        flNextLowerBodyYawUpdateTime; // 0x10C
        float        flDurationInAir; // 0x110
        float        flLeftGroundHeight; // 0x114
        float        flHitGroundWeight; // 0x118 // from 0 to 1, is 1 when standing
        float        flWalkToRunTransition; // 0x11C // from 0 to 1, doesnt change when walking or crouching, only running
        char    pad3[0x4]; // 0x120
        float        flAffectedFraction; // 0x124 // affected while jumping and running, or when just jumping, 0 to 1
        char    pad4[0x208]; // 0x128
        float        flMinBodyYaw; // 0x330
        float        flMaxBodyYaw; // 0x334
        float        flMinPitch; //0x338
        float        flMaxPitch; // 0x33C
        int            iAnimsetVersion; // 0x340
    } CCSGOPlayerAnimationState_534535_t;
]]

local menu = {
    misc = {
        animation_breaker = ui.add_dropdown("anim.breaker", {"forward legs", "backward legs", "forward run animation", "no animations", "crab", "forward run in air", "crab in air"}),
        breakarm = ui.add_checkbox("break animation arm"),
        staticair = ui.add_checkbox("static legs in air"),
        ducari = ui.add_checkbox("Ducari in Gym")
    }
}

local entity_list_ptr = ffi.cast("void***", client.create_interface("client.dll", "VClientEntityList003"))
local get_client_entity_fn = ffi.cast("GetClientEntity_4242425_t", entity_list_ptr[0][3])
local  get_entity_address = function(ent_index)
        local addr = get_client_entity_fn(entity_list_ptr, ent_index)
        return addr
    end
local localplayer = entity_list.get_client_entity(engine.get_local_player())

callbacks.register("post_anim_update", function(e)
if menu.misc.animation_breaker:get() == 0 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(2)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(0, 0.5) --forward legs
elseif menu.misc.animation_breaker:get() == 1 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(2)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(0, 1) --backward legs
elseif menu.misc.animation_breaker:get() == 2 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(1)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(7, 0) --forward run animation
elseif menu.misc.animation_breaker:get() == 3 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(1)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(8, 0) --no animations
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(9, 0) --no animations
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(10, 0) --no animations
elseif menu.misc.animation_breaker:get() == 4 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(1)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(7, 0.8) --crab
elseif localplayer and client.is_alive and menu.misc.animation_breaker:get() == 5 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(1)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(7, 0) --forward run animation
    ffi.cast("CCSGOPlayerAnimationState_534535_t**", get_entity_address(localplayer:index()) + 0x9960)[0].flAffectedFraction = 1 --anim in air
elseif localplayer and client.is_alive and menu.misc.animation_breaker:get() == 6 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(1)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(7, 0.8) --crab
    ffi.cast("CCSGOPlayerAnimationState_534535_t**", get_entity_address(localplayer:index()) + 0x9960)[0].flAffectedFraction = 1 --anim in air
end

if menu.misc.ducari:get() then
    e:get_prop("DT_BaseAnimating", "m_flModelScale"):set_float_index(0, 0.5) --ModelScale
else
 e:get_prop("DT_BaseAnimating", "m_flModelScale"):set_float_index(0, 1)
end

if menu.misc.breakarm:get() then
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(14, 1) --break arm
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(15, 1) --break arm
end


if menu.misc.staticair:get() then
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(6, 1) --static legs in air
end
end)

load after spawn and unload before map loading
I just got it working only use this instructions
это кстати не самый лучший выбор, но думаю сойдёт
как оказалось это пиздец не лучший выбор :roflanEbalo: ?
но по крайне мере я не видел ещё на пандору рабочих анимбрикеров с анимацией ходьбы в аирах
 
Последнее редактирование:
shitcode:
Expand Collapse Copy
--load after spawn and unload before map loading

ffi.cdef[[
    typedef void*(__thiscall* get_client_entity_t)(void*, int);
    typedef uintptr_t (__thiscall* GetClientEntity_4242425_t)(void*, int);

    typedef struct
    {
        float x;
        float y;
        float z;
    } Vector_t;

   
    typedef struct
    {
        char    pad0[0x60]; // 0x00
        void* pEntity; // 0x60
        void* pActiveWeapon; // 0x64
        void* pLastActiveWeapon; // 0x68
        float        flLastUpdateTime; // 0x6C
        int            iLastUpdateFrame; // 0x70
        float        flLastUpdateIncrement; // 0x74
        float        flEyeYaw; // 0x78
        float        flEyePitch; // 0x7C
        float        flGoalFeetYaw; // 0x80
        float        flLastFeetYaw; // 0x84
        float        flMoveYaw; // 0x88
        float        flLastMoveYaw; // 0x8C // changes when moving/jumping/hitting ground
        float        flLeanAmount; // 0x90
        char    pad1[0x4]; // 0x94
        float        flFeetCycle; // 0x98 0 to 1
        float        flMoveWeight; // 0x9C 0 to 1
        float        flMoveWeightSmoothed; // 0xA0
        float        flDuckAmount; // 0xA4
        float        flHitGroundCycle; // 0xA8
        float        flRecrouchWeight; // 0xAC
        Vector_t        vecOrigin; // 0xB0
        Vector_t        vecLastOrigin;// 0xBC
        Vector_t        vecVelocity; // 0xC8
        Vector_t        vecVelocityNormalized; // 0xD4
        Vector_t        vecVelocityNormalizedNonZero; // 0xE0
        float        flVelocityLenght2D; // 0xEC
        float        flJumpFallVelocity; // 0xF0
        float        flSpeedNormalized; // 0xF4 // clamped velocity from 0 to 1
        float        flRunningSpeed; // 0xF8
        float        flDuckingSpeed; // 0xFC
        float        flDurationMoving; // 0x100
        float        flDurationStill; // 0x104
        bool        bOnGround; // 0x108
        bool        bHitGroundAnimation; // 0x109
        char    pad2[0x2]; // 0x10A
        float        flNextLowerBodyYawUpdateTime; // 0x10C
        float        flDurationInAir; // 0x110
        float        flLeftGroundHeight; // 0x114
        float        flHitGroundWeight; // 0x118 // from 0 to 1, is 1 when standing
        float        flWalkToRunTransition; // 0x11C // from 0 to 1, doesnt change when walking or crouching, only running
        char    pad3[0x4]; // 0x120
        float        flAffectedFraction; // 0x124 // affected while jumping and running, or when just jumping, 0 to 1
        char    pad4[0x208]; // 0x128
        float        flMinBodyYaw; // 0x330
        float        flMaxBodyYaw; // 0x334
        float        flMinPitch; //0x338
        float        flMaxPitch; // 0x33C
        int            iAnimsetVersion; // 0x340
    } CCSGOPlayerAnimationState_534535_t;
]]

local menu = {
    misc = {
        animation_breaker = ui.add_dropdown("anim.breaker", {"forward legs", "backward legs", "forward run animation", "no animations", "crab", "forward run in air", "crab in air"}),
        breakarm = ui.add_checkbox("break animation arm"),
        staticair = ui.add_checkbox("static legs in air"),
        ducari = ui.add_checkbox("Ducari in Gym")
    }
}

local entity_list_ptr = ffi.cast("void***", client.create_interface("client.dll", "VClientEntityList003"))
local get_client_entity_fn = ffi.cast("GetClientEntity_4242425_t", entity_list_ptr[0][3])
local  get_entity_address = function(ent_index)
        local addr = get_client_entity_fn(entity_list_ptr, ent_index)
        return addr
    end
local localplayer = entity_list.get_client_entity(engine.get_local_player())

callbacks.register("post_anim_update", function(e)
if menu.misc.animation_breaker:get() == 0 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(2)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(0, 0.5) --forward legs
elseif menu.misc.animation_breaker:get() == 1 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(2)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(0, 1) --backward legs
elseif menu.misc.animation_breaker:get() == 2 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(1)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(7, 0) --forward run animation
elseif menu.misc.animation_breaker:get() == 3 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(1)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(8, 0) --no animations
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(9, 0) --no animations
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(10, 0) --no animations
elseif menu.misc.animation_breaker:get() == 4 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(1)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(7, 0.8) --crab
elseif localplayer and client.is_alive and menu.misc.animation_breaker:get() == 5 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(1)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(7, 0) --forward run animation
    ffi.cast("CCSGOPlayerAnimationState_534535_t**", get_entity_address(localplayer:index()) + 0x9960)[0].flAffectedFraction = 1 --anim in air
elseif localplayer and client.is_alive and menu.misc.animation_breaker:get() == 6 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(1)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(7, 0.8) --crab
    ffi.cast("CCSGOPlayerAnimationState_534535_t**", get_entity_address(localplayer:index()) + 0x9960)[0].flAffectedFraction = 1 --anim in air
end

if menu.misc.ducari:get() then
    e:get_prop("DT_BaseAnimating", "m_flModelScale"):set_float_index(0, 0.5) --ModelScale
else
e:get_prop("DT_BaseAnimating", "m_flModelScale"):set_float_index(0, 1)
end

if menu.misc.breakarm:get() then
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(14, 1) --break arm
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(15, 1) --break arm
end


if menu.misc.staticair:get() then
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(6, 1) --static legs in air
end
end)

load after spawn and unload before map loading
I just got it working only use this instructions

как оказалось это пиздец не лучший выбор :roflanEbalo: ?
но по крайне мере я не видел ещё на пандору рабочих анимбрикеров с анимацией ходьбы в аирах
damn, just replace localplayer in post_anim_update for e (e. g.
JavaScript:
Expand Collapse Copy
elseif e and client.is_alive and menu.misc.animation_breaker:get() == 5 then

    ui.get("Misc", "General", "Movement", "Leg movement"):set(1)

    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(7, 0) --forward run animation

    ffi.cast("CCSGOPlayerAnimationState_534535_t**", get_entity_address(e:index()) + 0x9960)[0].flAffectedFraction = 1 --anim in air

elseif e and client.is_alive and menu.misc.animation_breaker:get() == 6 then

    ui.get("Misc", "General", "Movement", "Leg movement"):set(1)

    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(7, 0.8) --crab

    ffi.cast("CCSGOPlayerAnimationState_534535_t**", get_entity_address(e:index()) + 0x9960)[0].flAffectedFraction = 1 --anim in air

end
) and it'll be getting dynamically instead of once per script load and you won't be dereferencing nullptr
 
damn, just replace localplayer in post_anim_update for e (e. g.
JavaScript:
Expand Collapse Copy
elseif e and client.is_alive and menu.misc.animation_breaker:get() == 5 then

    ui.get("Misc", "General", "Movement", "Leg movement"):set(1)

    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(7, 0) --forward run animation

    ffi.cast("CCSGOPlayerAnimationState_534535_t**", get_entity_address(e:index()) + 0x9960)[0].flAffectedFraction = 1 --anim in air

elseif e and client.is_alive and menu.misc.animation_breaker:get() == 6 then

    ui.get("Misc", "General", "Movement", "Leg movement"):set(1)

    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(7, 0.8) --crab

    ffi.cast("CCSGOPlayerAnimationState_534535_t**", get_entity_address(e:index()) + 0x9960)[0].flAffectedFraction = 1 --anim in air

end
) and it'll be getting dynamically instead of once per script load and you won't be dereferencing nullptr
thx my bad, im only started in lua scripting for cheats?
no crashes code():
Expand Collapse Copy
--load after spawn and unload before map loading

ffi.cdef[[
    typedef void*(__thiscall* get_client_entity_t)(void*, int);
    typedef uintptr_t (__thiscall* GetClientEntity_4242425_t)(void*, int);

    typedef struct
    {
        float x;
        float y;
        float z;
    } Vector_t;

    
    typedef struct
    {
        char    pad0[0x60]; // 0x00
        void* pEntity; // 0x60
        void* pActiveWeapon; // 0x64
        void* pLastActiveWeapon; // 0x68
        float        flLastUpdateTime; // 0x6C
        int            iLastUpdateFrame; // 0x70
        float        flLastUpdateIncrement; // 0x74
        float        flEyeYaw; // 0x78
        float        flEyePitch; // 0x7C
        float        flGoalFeetYaw; // 0x80
        float        flLastFeetYaw; // 0x84
        float        flMoveYaw; // 0x88
        float        flLastMoveYaw; // 0x8C // changes when moving/jumping/hitting ground
        float        flLeanAmount; // 0x90
        char    pad1[0x4]; // 0x94
        float        flFeetCycle; // 0x98 0 to 1
        float        flMoveWeight; // 0x9C 0 to 1
        float        flMoveWeightSmoothed; // 0xA0
        float        flDuckAmount; // 0xA4
        float        flHitGroundCycle; // 0xA8
        float        flRecrouchWeight; // 0xAC
        Vector_t        vecOrigin; // 0xB0
        Vector_t        vecLastOrigin;// 0xBC
        Vector_t        vecVelocity; // 0xC8
        Vector_t        vecVelocityNormalized; // 0xD4
        Vector_t        vecVelocityNormalizedNonZero; // 0xE0
        float        flVelocityLenght2D; // 0xEC
        float        flJumpFallVelocity; // 0xF0
        float        flSpeedNormalized; // 0xF4 // clamped velocity from 0 to 1
        float        flRunningSpeed; // 0xF8
        float        flDuckingSpeed; // 0xFC
        float        flDurationMoving; // 0x100
        float        flDurationStill; // 0x104
        bool        bOnGround; // 0x108
        bool        bHitGroundAnimation; // 0x109
        char    pad2[0x2]; // 0x10A
        float        flNextLowerBodyYawUpdateTime; // 0x10C
        float        flDurationInAir; // 0x110
        float        flLeftGroundHeight; // 0x114
        float        flHitGroundWeight; // 0x118 // from 0 to 1, is 1 when standing
        float        flWalkToRunTransition; // 0x11C // from 0 to 1, doesnt change when walking or crouching, only running
        char    pad3[0x4]; // 0x120
        float        flAffectedFraction; // 0x124 // affected while jumping and running, or when just jumping, 0 to 1
        char    pad4[0x208]; // 0x128
        float        flMinBodyYaw; // 0x330
        float        flMaxBodyYaw; // 0x334
        float        flMinPitch; //0x338
        float        flMaxPitch; // 0x33C
        int            iAnimsetVersion; // 0x340
    } CCSGOPlayerAnimationState_534535_t;
]]

local menu = {
    misc = {
        animation_breaker = ui.add_dropdown("anim.breaker", {"forward legs", "backward legs", "forward run animation", "no animations", "crab", "forward run in air", "crab in air"}),
        breakarm = ui.add_checkbox("break animation arm"),
        staticair = ui.add_checkbox("static legs in air"),
        ducari = ui.add_checkbox("Ducari in Gym")
    }
}

local entity_list_ptr = ffi.cast("void***", client.create_interface("client.dll", "VClientEntityList003"))
local get_client_entity_fn = ffi.cast("GetClientEntity_4242425_t", entity_list_ptr[0][3])
local  get_entity_address = function(ent_index)
        local addr = get_client_entity_fn(entity_list_ptr, ent_index)
        return addr
    end
local localplayer = entity_list.get_client_entity(engine.get_local_player())

callbacks.register("post_anim_update", function(e)
local J = entity_list.get_client_entity( engine.get_local_player( ))
if menu.misc.animation_breaker:get() == 0 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(2)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(0, 0.5) --forward legs
elseif menu.misc.animation_breaker:get() == 1 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(2)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(0, 1) --backward legs
elseif menu.misc.animation_breaker:get() == 2 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(1)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(7, 0) --forward run animation
elseif menu.misc.animation_breaker:get() == 3 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(1)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(8, 0) --no animations
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(9, 0) --no animations
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(10, 0) --no animations
elseif menu.misc.animation_breaker:get() == 4 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(1)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(7, 0.8) --crab
elseif J and client.is_alive and menu.misc.animation_breaker:get() == 5 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(1)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(7, 0) --forward run animation
    ffi.cast("CCSGOPlayerAnimationState_534535_t**", get_entity_address(J:index()) + 0x9960)[0].flAffectedFraction = 1 --anim in air
elseif J and client.is_alive and menu.misc.animation_breaker:get() == 6 then
    ui.get("Misc", "General", "Movement", "Leg movement"):set(1)
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(7, 0.8) --crab
    ffi.cast("CCSGOPlayerAnimationState_534535_t**", get_entity_address(J:index()) + 0x9960)[0].flAffectedFraction = 1 --anim in air
end

if menu.misc.ducari:get() then
    e:get_prop("DT_BaseAnimating", "m_flModelScale"):set_float_index(0, 0.5) --ModelScale
else
 e:get_prop("DT_BaseAnimating", "m_flModelScale"):set_float_index(0, 1)
end

if menu.misc.breakarm:get() then
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(14, 1) --break arm
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(15, 1) --break arm
end


if menu.misc.staticair:get() then
    e:get_prop("DT_BaseAnimating", "m_flPoseParameter"):set_float_index(6, 1) --static legs in air
end
end)
got fixed
now 0 crashes
 
не робит (дай либы)
1682155978787.png
 
Назад
Сверху Снизу