Tiles.gd 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. @tool
  2. class_name PacTiles
  3. extends Node2D
  4. var map = [
  5. "############################",
  6. "#i....i.....i##i.....i....i#",
  7. "#.####.#####.##.#####.####.#",
  8. "#p####.#####.##.#####.####p#",
  9. "#.####.#####.##.#####.####.#",
  10. "#i....i..i..i..i..i..i....i#",
  11. "#.####.##.########.##.####.#",
  12. "#.####.##.########.##.####.#",
  13. "#i....i##i..i##i..i##i....i#",
  14. "######.##### ## #####.######",
  15. "######.##### ## #####.######",
  16. "######.##I IGGI I##.######",
  17. "######.## ### ### ##.######",
  18. "######.## #IIIIII# ##.######",
  19. " i I#IIIIII#I i ",
  20. "######.## #IIIIII# ##.######",
  21. "######.## ######## ##.######",
  22. "######.##I I##.######",
  23. "######.## ######## ##.######",
  24. "######.## ######## ##.######",
  25. "#i....i..i..i##i..i..i....i#",
  26. "#.####.#####.##.#####.####.#",
  27. "#.####.#####.##.#####.####.#",
  28. "#P.i##i..i..i i..i..i##i.P#",
  29. "###.##.##.########.##.##.###",
  30. "###.##.##.########.##.##.###",
  31. "#i.i..i##i..i##i..i##i..i.i#",
  32. "#.##########.##.##########.#",
  33. "#.##########.##.##########.#",
  34. "#i..........i..i..........i#",
  35. "############################"
  36. ]
  37. var tiles = []
  38. # Called when the node enters the scene tree for the first time.
  39. func _ready():
  40. for i in range(len(map)):
  41. var row = []
  42. for char in range(len(map[i])):
  43. var newTile: Tile
  44. match map[i][char]:
  45. "#":
  46. newTile = Tile.new(false,false,true,false,false)
  47. " ":
  48. newTile = Tile.new(false,false,false,false,false)
  49. ".":
  50. newTile = Tile.new(true,false,false,false,false)
  51. "P":
  52. newTile = Tile.new(false,true,false,true,true)
  53. "G":
  54. newTile = Tile.new(false,false,false,false,true)
  55. "p":
  56. newTile = Tile.new(false,true,false,false,false)
  57. "I":
  58. newTile = Tile.new(false,false,false,true,true)
  59. "i":
  60. newTile = Tile.new(true,false,false,true,true)
  61. newTile.position.x = char * 8
  62. newTile.position.y = i * 8
  63. row.append(newTile)
  64. add_child(newTile)
  65. tiles.append(row)