Advertisement
tissue_inu

Tilemap Randomization

Mar 26th, 2022
688
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. tool
  2. extends TileMap
  3.  
  4.  
  5. export(bool) var lock_pattern = false
  6. export(int) var random_int = 0 setget tilemap_randomization
  7.  
  8.  
  9. func tilemap_randomization(random_input: int):
  10.     if lock_pattern:
  11.         return
  12.  
  13.     random_int = random_input
  14.     var rng = RandomNumberGenerator.new()
  15.     rng.randomize()
  16.  
  17.     # Check of tool script is running on editor
  18.     if Engine.is_editor_hint():
  19.         for cell_position in get_used_cells():
  20.             var num: int = 0
  21.             if random_int != 0:
  22.                 num = rng.randi_range(0, 24)
  23.             set_cellv(cell_position, num)
  24.  
  25.  
  26. # If you want to randomize on runtime:
  27. #func _ready():
  28. #    var rng = RandomNumberGenerator.new()
  29. #    rng.randomize()
  30. #
  31. #    for cell_position in get_used_cells():
  32. #        var num = rng.randi_range(0, 24)
  33. #        set_cellv(cell_position, num)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement