DDraceNetwork Documentation
Loading...
Searching...
No Matches
layer_switch.h
Go to the documentation of this file.
1#ifndef GAME_EDITOR_MAPITEMS_LAYER_SWITCH_H
2#define GAME_EDITOR_MAPITEMS_LAYER_SWITCH_H
3
4#include "layer_tiles.h"
5
18
20{
21public:
22 CLayerSwitch(CEditorMap *pMap, int w, int h);
23 CLayerSwitch(const CLayerSwitch &Other);
24 ~CLayerSwitch() override;
25
27 unsigned char m_SwitchNumber;
28 unsigned char m_SwitchDelay;
29
30 void Resize(int NewW, int NewH) override;
31 void Shift(EShiftDirection Direction) override;
32 [[nodiscard]] bool IsEmpty() const override;
33 void BrushDraw(CLayer *pBrush, vec2 WorldPos) override;
34 void BrushFlipX() override;
35 void BrushFlipY() override;
36 void BrushRotate(float Amount) override;
37 void FillSelection(bool Empty, CLayer *pBrush, CUIRect Rect) override;
38 int FindNextFreeNumber() const;
39 bool ContainsElementWithId(int Id) const;
40 void GetPos(int Number, int Offset, ivec2 &SwitchPos);
41
44
46 void ClearHistory() override
47 {
49 m_History.clear();
50 }
51
52 std::shared_ptr<CLayer> Duplicate() const override;
53 const char *TypeName() const override;
54
55private:
57};
58
59#endif
Definition map.h:53
void BrushFlipX() override
Definition layer_switch.cpp:186
unsigned char m_SwitchDelay
Definition layer_switch.h:28
bool ContainsElementWithId(int Id) const
Definition layer_switch.cpp:346
void GetPos(int Number, int Offset, ivec2 &SwitchPos)
Definition layer_switch.cpp:362
ivec2 m_GotoSwitchLastPos
Definition layer_switch.h:43
EditorTileStateChangeHistory< SSwitchTileStateChange > m_History
Definition layer_switch.h:45
int FindNextFreeNumber() const
Definition layer_switch.cpp:334
void ClearHistory() override
Definition layer_switch.h:46
CSwitchTile * m_pSwitchTile
Definition layer_switch.h:26
void BrushDraw(CLayer *pBrush, vec2 WorldPos) override
Definition layer_switch.cpp:80
const char * TypeName() const override
Definition layer_switch.cpp:419
void RecordStateChange(int x, int y, SSwitchTileStateChange::SData Previous, SSwitchTileStateChange::SData Current)
Definition layer_switch.cpp:178
std::shared_ptr< CLayer > Duplicate() const override
Definition layer_switch.cpp:414
void Resize(int NewW, int NewH) override
Definition layer_switch.cpp:32
bool IsEmpty() const override
Definition layer_switch.cpp:60
void BrushRotate(float Amount) override
Definition layer_switch.cpp:198
int m_GotoSwitchOffset
Definition layer_switch.h:42
void Shift(EShiftDirection Direction) override
Definition layer_switch.cpp:54
CLayerSwitch(CEditorMap *pMap, int w, int h)
Definition layer_switch.cpp:5
unsigned char m_SwitchNumber
Definition layer_switch.h:27
void BrushFlipY() override
Definition layer_switch.cpp:192
void FillSelection(bool Empty, CLayer *pBrush, CUIRect Rect) override
Definition layer_switch.cpp:238
~CLayerSwitch() override
Definition layer_switch.cpp:27
virtual void ClearHistory()
Definition layer_tiles.h:201
CLayerTiles(CEditorMap *pMap, int w, int h)
Definition layer_tiles.cpp:18
CLayer(CEditorMap *pMap, int Type)
Definition layer.cpp:7
Definition mapitems.h:651
Definition ui_rect.h:12
std::map< int, std::map< int, T > > EditorTileStateChangeHistory
Definition layer_tiles.h:19
EShiftDirection
Definition layer_tiles.h:26
Direction
Definition nameplates.cpp:213
Definition layer_switch.h:10
int m_Index
Definition layer_switch.h:15
int m_Flags
Definition layer_switch.h:13
int m_Type
Definition layer_switch.h:12
int m_Number
Definition layer_switch.h:11
int m_Delay
Definition layer_switch.h:14
Definition layer_switch.h:7
struct SSwitchTileStateChange::SData m_Current
struct SSwitchTileStateChange::SData m_Previous
bool m_Changed
Definition layer_switch.h:8
vector2_base< int > ivec2
Definition vmath.h:163
vector2_base< float > vec2
Definition vmath.h:161