Jump to content
    1. Welcome to GTAForums!

    1. GTANet.com

    1. GTA Online

      1. Los Santos Drug Wars
      2. Updates
      3. Find Lobbies & Players
      4. Guides & Strategies
      5. Vehicles
      6. Content Creator
      7. Help & Support
    2. Red Dead Online

      1. Blood Money
      2. Frontier Pursuits
      3. Find Lobbies & Outlaws
      4. Help & Support
    3. Crews

    1. Grand Theft Auto Series

      1. Bugs*
      2. St. Andrews Cathedral
    2. GTA VI

    3. GTA V

      1. Guides & Strategies
      2. Help & Support
    4. GTA IV

      1. The Lost and Damned
      2. The Ballad of Gay Tony
      3. Guides & Strategies
      4. Help & Support
    5. GTA San Andreas

      1. Classic GTA SA
      2. Guides & Strategies
      3. Help & Support
    6. GTA Vice City

      1. Classic GTA VC
      2. Guides & Strategies
      3. Help & Support
    7. GTA III

      1. Classic GTA III
      2. Guides & Strategies
      3. Help & Support
    8. Portable Games

      1. GTA Chinatown Wars
      2. GTA Vice City Stories
      3. GTA Liberty City Stories
    9. Top-Down Games

      1. GTA Advance
      2. GTA 2
      3. GTA
    1. Red Dead Redemption 2

      1. PC
      2. Help & Support
    2. Red Dead Redemption

    1. GTA Mods

      1. GTA V
      2. GTA IV
      3. GTA III, VC & SA
      4. Tutorials
    2. Red Dead Mods

      1. Documentation
    3. Mod Showroom

      1. Scripts & Plugins
      2. Maps
      3. Total Conversions
      4. Vehicles
      5. Textures
      6. Characters
      7. Tools
      8. Other
      9. Workshop
    4. Featured Mods

      1. Design Your Own Mission
      2. OpenIV
      3. GTA: Underground
      4. GTA: Liberty City
      5. GTA: State of Liberty
    1. Rockstar Games

    2. Rockstar Collectors

    1. Off-Topic

      1. General Chat
      2. Gaming
      3. Technology
      4. Movies & TV
      5. Music
      6. Sports
      7. Vehicles
    2. Expression

      1. Graphics / Visual Arts
      2. GFX Requests & Tutorials
      3. Writers' Discussion
      4. Debates & Discussion
    1. Announcements

    2. Support

    3. Suggestions

[C#] Removing Vehicle before spawning crashes game


Colata
 Share

Recommended Posts

Im trying to make a vehicle spawn, but before spawning a vehicle i want to remove one that might be already spawned (which should be under 10 units away)

 

var Buzzard = new MenuButton("Buzzard");
Buzzard.Activated += (sender, args) =>
{
Vehicle NearbyVeh = Function.Call<Vehicle>(Hash.GET_PED_NEARBY_VEHICLES, player, 10f);
NearbyVeh.Delete();
World.CreateVehicle(VehicleHash.Buzzard, MazeBankHeli);
};
helicopterMenuItems.Add(Buzzard);
When i try a button press in the menu to spawn a vehicle, it crashes the game.
I'm trying to fetch a vehicle (GET_PED_NEARBY_VEHICLES) from a remote location (where the is almost no vehicles) so my only thought on why it's crashing the game is because it cant find any vehicle to return.
Link to comment
Share on other sites

Before you using native figure I out what paramaters it takes, and c# script hook had already wrapped this native, it's in world class. And it returns array of vehicles, to return one you can use either get vehicle in sphere to get or get closest vehicle. And check if it exists.

 

All the best,

Paul.

Edited by leftas
Link to comment
Share on other sites

InfamousSabre

Well, first of all, that function does not return a Vehicle.
Second: you must make sure it exists before trying to act upon it.

This function actually requires a struct, where the first value is the maximum number of elements to return. Here is a sample of how I was able to get it to work correctly, without yet knowing the struct format.

//Setup the array
const int numElements = 10;
const int arrSize = numElements * 2 + 2;
Any veh[arrSize];
//0 index is the size of the array
veh[0] = numElements;

int count = PED::GET_PED_NEARBY_VEHICLES(PLAYER::PLAYER_PED_ID(), veh);

if (veh != NULL)
{
//Simple loop to go through results
for (int i = 0; i < count; i++)
{
int offsettedID = i * 2 + 2;
//Make sure it exists
if (veh[offsettedID] != NULL && ENTITY::DOES_ENTITY_EXIST(veh[offsettedID]))
{
//Do something
}
}
}

 

 

Also, you should know that that function is not able to see certain vehicles. I don't really remember which ones right now, but if missing a vehicle or two (or all, depending on circumstances) is an issue, just keep this in mind.

If you're just wanting to remove vehicles that your script has spawned: simply keep a list of them.

Edited by InfamousSabre
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • 1 User Currently Viewing
    0 members, 0 Anonymous, 1 Guest

×
×
  • Create New...

Important Information

By using GTAForums.com, you agree to our Terms of Use and Privacy Policy.