Tiles.java 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. package pathgame.tilemap;
  2. public class Tiles
  3. {
  4. public final static Tile GRASS = buildGrass();
  5. public final static Tile GRASS_WITH_STONE = buildGrass();
  6. public final static Tile GRASS_WITH_6_BUSHES = buildGrass();
  7. public final static Tile GRASS_WITH_3_BUSHES = buildGrass();
  8. public final static Tile GRASS_WITH_FLOWERS_1 = buildGrass();
  9. public final static Tile GRASS_WITH_FLOWERS_2 = buildGrass();
  10. public final static Tile GRASS_WITH_FLOWERS_3 = buildGrass();
  11. public final static Tile GRASS_WITH_FLOWERS_4 = buildGrass();
  12. public final static Tile GRASS_WITH_HILL = buildGrass();
  13. public final static Tile GRASS_WITH_EARTH = buildGrass();
  14. public final static Tile[] GRASS_VARIANTS = new Tile[]
  15. {
  16. GRASS, GRASS_WITH_STONE, GRASS_WITH_6_BUSHES, GRASS_WITH_3_BUSHES,
  17. GRASS_WITH_FLOWERS_1, GRASS_WITH_FLOWERS_2, GRASS_WITH_FLOWERS_3,
  18. GRASS_WITH_FLOWERS_4, GRASS_WITH_HILL, GRASS_WITH_EARTH
  19. };
  20. public final static Tile FOREST = Tile.TileBuilder.create()
  21. .setEnergyCost(2)
  22. .setForestReplaceChance(0.0f)
  23. .setSpeedUp((pa) -> pa.getFasterForest())
  24. .build();
  25. public final static Tile SWAMP = buildSwamp();
  26. public final static Tile SWAMP_DECO = buildSwamp();
  27. public final static Tile SWAMP_TREE = buildSwamp();
  28. public final static Tile SHALLOW_WATER = Tile.TileBuilder.create()
  29. .setEnergyCost(3)
  30. .setForestReplaceChance(0.0f)
  31. .setSpeedUp((pa) -> pa.getFasterShallowWater())
  32. .noTown()
  33. .build();
  34. public final static Tile DEEP_WATER = Tile.TileBuilder.create()
  35. .setEnergyCost(3)
  36. .setForestReplaceChance(0.0f)
  37. .setSpeedUp((pa) -> pa.getFasterDeepWater())
  38. .noTown()
  39. .build();
  40. public final static Tile HILL = Tile.TileBuilder.create()
  41. .setEnergyCost(3)
  42. .setForestReplaceChance(0.5f)
  43. .setSpeedUp((pa) -> pa.getFasterHill())
  44. .build();
  45. public final static Tile MOUNTAIN = Tile.TileBuilder.create()
  46. .setEnergyCost(5)
  47. .setForestReplaceChance(0.0f)
  48. .setSpeedUp((pa) -> pa.getFasterMountain())
  49. .noTown()
  50. .build();
  51. public final static Tile TOWN = new TileTown();
  52. public final static Tile TOWN_BLOCKED_1 = buildBlockedTown();
  53. public final static Tile TOWN_BLOCKED_2 = buildBlockedTown();
  54. public final static Tile TOWN_BLOCKED_3 = buildBlockedTown();
  55. public final static Tile TOWN_BLOCKED_4 = buildBlockedTown();
  56. public final static Tile[] TOWN_BLOCKED = new Tile[]
  57. {
  58. TOWN_BLOCKED_1, TOWN_BLOCKED_2, TOWN_BLOCKED_3, TOWN_BLOCKED_4
  59. };
  60. public final static Tile PORT = Tile.TileBuilder.create()
  61. .noTown()
  62. .setForestReplaceChance(0.0f)
  63. .build();
  64. public final static Tile buildGrass()
  65. {
  66. return Tile.TileBuilder.create()
  67. .setSpeedUp((pa) -> pa.getFasterGrass())
  68. .build();
  69. }
  70. public final static Tile buildSwamp()
  71. {
  72. return Tile.TileBuilder.create()
  73. .setEnergyCost(3)
  74. .setForestReplaceChance(0.0f)
  75. .build();
  76. }
  77. public final static Tile buildBlockedTown()
  78. {
  79. return Tile.TileBuilder.create()
  80. .setForestReplaceChance(0.0f)
  81. .noTown()
  82. .noMovement()
  83. .build();
  84. }
  85. }