summaryrefslogtreecommitdiffstats
path: root/game/shared/feature.hh
blob: b5cb2626b0001a35f7a2529fb0cb1201ca20df9e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#ifndef SHARED_FEATURE_HH
#define SHARED_FEATURE_HH 1
#pragma once

#include "shared/types.hh"

class Dimension;
class VoxelStorage;

class Feature final : public std::vector<std::tuple<voxel_pos, voxel_id, bool>> {
public:
    explicit Feature(void) = default;
    virtual ~Feature(void) = default;

public:
    void place(const voxel_pos &vpos, Dimension *dimension) const;
    void place(const voxel_pos &vpos, const chunk_pos &cpos, VoxelStorage &voxels) const;
};

#endif /* SHARED_FEATURE_HH */