]> git.localhorst.tv Git - blobs.git/blob - src/world/TileType.hpp
varying material and schlick/fresnel
[blobs.git] / src / world / TileType.hpp
1 #ifndef BLOBS_WORLD_TILETYPE_HPP_
2 #define BLOBS_WORLD_TILETYPE_HPP_
3
4 #include <string>
5 #include <vector>
6
7
8 namespace blobs {
9 namespace creature {
10         class Composition;
11 }
12 namespace world {
13
14 struct TileType {
15
16         std::string name;
17         std::string label;
18
19         int id;
20         int texture;
21
22         double shiny = 5.0;
23         double glossy = 0.5;
24         double metallic = 0.0;
25
26         struct Yield {
27                 int resource;
28                 double ubiquity;
29         };
30         std::vector<Yield> resources;
31
32         std::vector<Yield>::const_iterator FindResource(int) const;
33         std::vector<Yield>::const_iterator FindBestResource(const creature::Composition &) const;
34
35 };
36
37 }
38 }
39
40 #endif