Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
    1. Welcome to GTAForums!

    1. GTANet.com

    1. GTA Online

      1. The Contract
      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

List of coordinates


FowardElement
 Share

Recommended Posts

FowardElement

Basically what I have:

 

1. List of coordinates

2. When player enters any of these coordinates -UI.Notify

 

Now I have this working for each coordinate, but I need to make the coordinates into a list that I can update to make the code much cleaner. For some reason I cant wrap my head around this. I've searched the forums (List of coordinates, vector3 list, etc) and I cant come up with anything. Please be nice to this newbie and give me an example of creating a list of coordinates that I can use with Game.Player.Character. IsInRangeOf. Thanks.

Link to comment
Share on other sites

FowardElement

Thanks for the info, but how would I use this for

 

if (Game.Player.Character.IsInRangeOf(?, 1))

{

UI.Notify("Is in range");

}

Link to comment
Share on other sites


foreach (Vector3 vec3 in coords)

{

if (Game.Player.Character.IsInRangeOf(vec3, 1))

{

UI.Notify("Is in range");

break;

}

}

Link to comment
Share on other sites

foreach (Vector3 vec3 in coords){  if (Game.Player.Character.IsInRangeOf(vec3, 1))  {    UI.Notify("Is in range");    break;  }}

 

 

foreach is a lot more costly than a for() loop, I would avoid foreach like the plague when it comes to scripting for games.

 

I would do one of these:

        List<Vector3> Coordinates = new List<Vector3>() { LocationA, LocationB, LocationC };        int index = Coordinates.FindIndex(x => Game.Player.Character.IsInRangeOf(x, 1));                if (index > -1)                       UI.Notify(string.Format("Location {0} is in range!", Coordinates[index]));

or do this:

  for (int i = 0; i < Coordinates.Count; i++)        {            if (Game.Player.Character.IsInRangeOf(Coordinates[i], 1))            {                UI.Notify("Is in range");                break;            }        }
Edited by bilago
Link to comment
Share on other sites

foreach is a lot more costly than a for() loop, I would avoid foreach like the plague when it comes to scripting for games.

 

www.dotnetperls.com/for-foreach
Link to comment
Share on other sites

You can edit(add/remove) elements in a list, so I prefer using Lists.

Vector3 Loc1 = new Vector3(0, 0, 0);List<Vector3> Locs = new List<Vector3> { Loc1, new Vector3(0, 0, 0) };Locs.Add(Loc1);Locs.RemoveAt(0);
Link to comment
Share on other sites

 

You can edit(add/remove) elements in a list, so I prefer using Lists.

Vector3 Loc1 = new Vector3(0, 0, 0);List<Vector3> Locs = new List<Vector3> { Loc1, new Vector3(0, 0, 0) };Locs.Add(Loc1);Locs.RemoveAt(0);

 

I agree, but if you have data that doesn't need to change, arrays perform faster than lists.

Edited by bilago
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.