How could I make a lap counter?

Discussion in 'Mapping Questions & Discussion' started by Werewolf, Nov 26, 2015.

  1. Werewolf

    aa Werewolf Probably not a real Werewolf

    Messages:
    697
    Positive Ratings:
    197
    I'm looking to create a kart track for a map. I already have the track itself built, along with the other logic for starting / ending the race. However right now it only lasts one lap and I'd like to make it longer.

    Does anyone know of a way I can make it count the number of laps a player has completed, accounting for each individual player (the track supports a maximum of 6 players right now). I'd like a minimum of 3 laps, though more would not hurt.

    I want to avoid a situation where a player can simply drive cover the finish line, then reverse back though it for it, or situations where Player1 is on the last lap but Player2 who is a lap behind wins because they crossed the finish line ahead of Player1 (I hope that last one makes sense!)

    A bonus (but not essential) feature would be for players to be able to set the number of laps before starting the race, so that if they wished they could have just 1 lap or increase it to 5.
     
  2. MoonFox

    MoonFox L10: Glamorous Member

    Messages:
    735
    Positive Ratings:
    72
    quick thing I can think of: is make it like payload race and use numerable capture points as "laps"
     
  3. Coding Ethan

    Coding Ethan L2: Junior Member

    Messages:
    63
    Positive Ratings:
    44
    Use multiple "checkpoints" so you have to go through 1, 2 and 3 to count as a lap.
     
  4. worMatty

    aa worMatty Repacking Evangelist

    Messages:
    1,071
    Positive Ratings:
    832
    I think you'd need to set each player's targetname as they went through a checkpoint, using for example: AddOutput > targetname > check1. You'd use filter_activator_class to ensure that a player's targetname would only be set if they already had the correct targetname from the previous checkpoint. Then for the lap count, you would set the finish line to require the targetname from the last checkpoint of the third lap.

    Example:
    • Starting point (finish line)
    • Checkpoint 1 gives players targetname of check1
    • Checkpoint 2 gives players targetname of check2 if they have the targetname check1
    • Finish line gives players targetname of check3 if they have the targetname check2
    Repeat for each lap...
    • Checkpoint 1 check4...
    • Checkpoint 2 check5...
    • Finish line check6...
    On the third lap...
    • Checkpoint 1 check7...
    • Checkpoint 2 check8...
    • Finish line awards victory to the player with targetname check8.
     
    • Thanks Thanks x 1
    • Useful Useful x 1