A 2D tile-based sandbox game.
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

WGDefault.h 685B

123456789101112131415161718192021222324
  1. #pragma once
  2. #include <swan/swan.h>
  3. #include <PerlinNoise/PerlinNoise.hpp>
  4. class WGDefault: public Swan::WorldGen {
  5. public:
  6. class Factory: public Swan::WorldGen::Factory {
  7. public:
  8. WorldGen *create(Swan::TileMap &tmap) { return new WGDefault(tmap); }
  9. };
  10. WGDefault(Swan::TileMap &tmap):
  11. tGrass_(tmap.getID("core::grass")), tDirt_(tmap.getID("core::dirt")),
  12. tStone_(tmap.getID("core::stone")), tAir_(tmap.getID("core::air")) {}
  13. void genChunk(Swan::WorldPlane &plane, Swan::Chunk &chunk) override;
  14. Swan::Entity &spawnPlayer(Swan::WorldPlane &plane) override;
  15. private:
  16. Swan::Tile::ID tGrass_, tDirt_, tStone_, tAir_;
  17. siv::PerlinNoise perlin_ = siv::PerlinNoise(100);
  18. };