Lua Scripting (#1334)

Closes #83
Fixes #1309
Fixes #1287
Fixes #1129 (actually fixed now)
This commit is contained in:
maybegreat48
2023-06-06 07:40:40 +00:00
committed by GitHub
parent 35bb398c01
commit 03c1a96b67
201 changed files with 156682 additions and 838 deletions

View File

@ -0,0 +1,35 @@
#include "backend/player_command.hpp"
#include "natives.hpp"
#include "pointers.hpp"
#include "util/teleport.hpp"
namespace big
{
class stop_vehicle : player_command
{
using player_command::player_command;
virtual void execute(player_ptr player, const std::vector<std::uint64_t>& _args, const std::shared_ptr<command_context> ctx)
{
Ped ped = PLAYER::GET_PLAYER_PED_SCRIPT_INDEX(player->id());
if (!PED::IS_PED_IN_ANY_VEHICLE(ped, true))
{
g_notification_service->push_warning("TOXIC"_T.data(), "ERROR_PLAYER_IS_NOT_IN_VEHICLE"_T.data());
}
else
{
Vehicle vehicle = PED::GET_VEHICLE_PED_IS_USING(ped);
if (entity::take_control_of(vehicle))
{
VEHICLE::BRING_VEHICLE_TO_HALT(vehicle, 0.0f, 1, 0);
}
else
{
g_notification_service->push_warning("Toxic", "Failed to take control of player vehicle.");
}
}
}
};
stop_vehicle g_stop_vehicle("stopveh", "Stop Vehicle", "Stops players vehicle", 0);
}