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

Timer Bar


Kieran_S
 Share

Recommended Posts

Hi all,

Does anyone know how to make a timer bar in the corner of the screen with a countdown? I am trying to make a timer for an indication of when the cops will get to where you are. 

 

Any help would be great.

 

Thanks.

Link to comment
Share on other sites

I think you can use the Native UI API. I believe it has a Timer Bar Function 

Edited by ConnorFTW
Link to comment
Share on other sites

10 minutes ago, ConnorFTW said:

I think you can use the Native UI API. I believe it has a Timer Bar Function 

Yeah, I was trying to use that but I wasn't showing. I did as it said in the guide, perhaps I missed something. Not sure about NativeUI.

Link to comment
Share on other sites

13 hours ago, Kieran_S said:

Yeah, I was trying to use that but I wasn't showing. I did as it said in the guide, perhaps I missed something. Not sure about NativeUI.

 

Here's what I always do.

 

First decide on how wide you want the timer bar to be, let's say 200 pixels for this example. Create a UIContainer to hold everything. Add a UIRectangle that is 8 pixels wider than the timer bar and 8 pixels taller, make the colour white. Add a second UIRectangle that is 4 pixels wider and 4 pixels taller and make that black. Set the position of the second UIRectangle to x +2 & y + 2 from the first one. That creates a white outline round a black rectangle.

 

Now add a third UIRectangle, this is the moving bar, position this at the same place as the second black UIRectangle.

 

To determine the width of the bar, you need a point of reference, so for this example let's use distance. When the cops are first detected, that distance is your reference point and that = the maximum bar width. For this example, let's say that's 3000m.

 

As the police get closer, divide the current distance by the reference distance and that will give you a percentage value. So the police are now 700m away, so 700f / 3000f = .23333f. To get the width of your bar, multiply the maximum width by that percentage, so 200f * .23333f = 46.6f pixels. Now draw your third bar in its current position but set the width to the calculated width... or the integer of it anyway.

 

You obviously need to be careful if the police move further away, so just use Math.Min(current distance / reference point, 1f) and that will ensure you never get more than 1f as the end result. You can wrap that in a Math.Max(value, 0) as well to make sure it never goes below 0;

 

I use this as a general purpose clamp function to keep values confined into a preset range:

float clampedValue = Math.Max(Math.Min(currentValue, maxValue), minValue);

 

I apologise if the coding aspect to generate the width is something you already know about, I just wanted to include all that for the benefit of anyone who needed to know the whole process.

Edited by LeeC22
Link to comment
Share on other sites

18 minutes ago, LeeC22 said:

 

Here's what I always do.

 

First decide on how wide you want the timer bar to be, let's say 200 pixels for this example. Create a UIContainer to hold everything. Add a UIRectangle that is 8 pixels wider than the timer bar and 8 pixels taller, make the colour white. Add a second UIRectangle that is 4 pixels wider and 4 pixels taller and make that black. Set the position of the second UIRectangle to x +2 & y + 2 from the first one. That creates a white outline round a black rectangle.

 

Now add a third UIRectangle, this is the moving bar, position this at the same place as the second black UIRectangle.

 

To determine the width of the bar, you need a point of reference, so for this example let's use distance. When the cops are first detected, that distance is your reference point and that = the maximum bar width. For this example, let's say that's 3000m.

 

As the police get closer, divide the current distance by the reference distance and that will give you a percentage value. So the police are now 700m away, so 700f / 3000f = .23333f. To get the width of your bar, multiply the maximum width by that percentage, so 200f * .23333f = 46.6f pixels. Now draw your third bar in its current position but set the width to the calculated width... or the integer of it anyway.

 

You obviously need to be careful if the police move further away, so just use Math.Min(current distance / reference point, 1f) and that will ensure you never get more than 1f as the end result. You can wrap that in a Math.Max(value, 0) as well to make sure it never goes below 0;

 

I use this as a general purpose clamp function to keep values confined into a preset range:

float clampedValue = Math.Max(Math.Min(currentValue, maxValue), minValue);

 

I apologise if the coding aspect to generate the width is something you already know about, I just wanted to include all that for the benefit of anyone who needed to know the whole process.

OK, thanks for the help. I will try and figure it out now.

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.