#pragma once

#include "adapters/il2cpp/Il2CppObjectInstance.h"

/// Service for player hook business logic.
/// Owns speed/fly/survival configuration state, and the actual
/// object-manipulation logic that hook callbacks delegate to.
namespace ta::adapters::eft::player::movement
{
    void configure_speed(bool enabled, int iterations);
    void configure_fly(bool enabled, int speed, int up_hotkey, int down_hotkey);
    void configure_survival(bool enabled);
    void apply_speed_hack(Il2CppObject* instance);
    void apply_fly_mode(ta::adapters::il2cpp::Il2CppObjectInstance& main_player);
    int apply_survival(int exit_status);
}
