feat(Functions): Added spawn vehicle func
This commit is contained in:
parent
9213324e9d
commit
e2b49fd59f
@ -184,4 +184,47 @@ namespace big::features::functions
|
|||||||
{
|
{
|
||||||
return sqrt(pow((a.x - b.x), 2) + pow((a.y - b.y), 2) + pow((a.z - b.z), 2));
|
return sqrt(pow((a.x - b.x), 2) + pow((a.y - b.y), 2) + pow((a.z - b.z), 2));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Entity spawn_vehicle(const char* model, Vector3 location, float heading)
|
||||||
|
{
|
||||||
|
Hash hash = MISC::GET_HASH_KEY(model);
|
||||||
|
|
||||||
|
if (hash)
|
||||||
|
{
|
||||||
|
for (uint8_t i = 0; !STREAMING::HAS_MODEL_LOADED(hash) && i < 100; i++)
|
||||||
|
{
|
||||||
|
STREAMING::REQUEST_MODEL(hash);
|
||||||
|
|
||||||
|
script::get_current()->yield();
|
||||||
|
}
|
||||||
|
if (!STREAMING::HAS_MODEL_LOADED(hash))
|
||||||
|
{
|
||||||
|
notify::above_map("~r~Failed to spawn model, did you give an incorrect model?");
|
||||||
|
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
*(unsigned short*)g_pointers->m_model_spawn_bypass = 0x9090;
|
||||||
|
Vehicle veh = VEHICLE::CREATE_VEHICLE(hash, location.x, location.y, location.z, heading, true, false, false);
|
||||||
|
*(unsigned short*)g_pointers->m_model_spawn_bypass = 0x0574;
|
||||||
|
|
||||||
|
script::get_current()->yield();
|
||||||
|
|
||||||
|
STREAMING::SET_MODEL_AS_NO_LONGER_NEEDED(hash);
|
||||||
|
|
||||||
|
if (*g_pointers->m_is_session_started)
|
||||||
|
{
|
||||||
|
DECORATOR::DECOR_SET_INT(veh, "MPBitset", 0);
|
||||||
|
ENTITY::_SET_ENTITY_SOMETHING(veh, true);
|
||||||
|
int networkId = NETWORK::VEH_TO_NET(veh);
|
||||||
|
if (NETWORK::NETWORK_GET_ENTITY_IS_NETWORKED(veh))
|
||||||
|
NETWORK::SET_NETWORK_ID_EXISTS_ON_ALL_MACHINES(networkId, true);
|
||||||
|
VEHICLE::SET_VEHICLE_IS_STOLEN(veh, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
return veh;
|
||||||
|
}
|
||||||
|
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
}
|
}
|
@ -13,6 +13,8 @@ namespace big::features::functions
|
|||||||
void spoof_rank(int rank);
|
void spoof_rank(int rank);
|
||||||
void toggle_protections(bool toggle);
|
void toggle_protections(bool toggle);
|
||||||
|
|
||||||
|
Entity spawn_vehicle(const char* model, Vector3 location, float heading);
|
||||||
|
|
||||||
bool take_control_of_entity(Entity ent);
|
bool take_control_of_entity(Entity ent);
|
||||||
|
|
||||||
BOOL raycast_entity(Entity* ent);
|
BOOL raycast_entity(Entity* ent);
|
||||||
|
Reference in New Issue
Block a user