add multi-place/remove
This commit is contained in:
parent
2ba5548009
commit
d10d2810ab
|
@ -4,7 +4,7 @@ Size=400,400
|
|||
Collapsed=0
|
||||
|
||||
[Window][Phoenix Map Editor]
|
||||
Pos=833,459
|
||||
Pos=816,436
|
||||
Size=773,184
|
||||
Collapsed=0
|
||||
|
||||
|
@ -14,7 +14,7 @@ Size=357,247
|
|||
Collapsed=0
|
||||
|
||||
[Window][Map Information Editor]
|
||||
Pos=838,656
|
||||
Pos=845,633
|
||||
Size=588,347
|
||||
Collapsed=0
|
||||
|
||||
|
|
|
@ -54,6 +54,168 @@ TILE FLOOR
|
|||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE FLOOR
|
||||
TILE WALL
|
||||
TILE WALL
|
||||
TILE WALL
|
||||
TILE WALL
|
||||
TILE WALL
|
||||
TILE WALL
|
||||
TILE WALL
|
||||
|
|
|
@ -99,12 +99,16 @@ void runMapEditor() {
|
|||
!ImGui::IsAnyItemHovered()) {
|
||||
if (event.button.button == SDL_BUTTON_LEFT) {
|
||||
if (editorState.placeTileMode) {
|
||||
editorState.currentMap.data.mapTiles.push_back(
|
||||
editorState.selectedTileName);
|
||||
for (int i = 0; i < editorState.tilePlaceAmount; i++) {
|
||||
editorState.currentMap.data.mapTiles.push_back(
|
||||
editorState.selectedTileName);
|
||||
}
|
||||
}
|
||||
} else if (event.button.button == SDL_BUTTON_RIGHT) {
|
||||
if (editorState.placeTileMode) {
|
||||
editorState.currentMap.data.mapTiles.pop_back();
|
||||
for (int i = 0; i < editorState.tilePlaceAmount; i++) {
|
||||
editorState.currentMap.data.mapTiles.pop_back();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -175,10 +179,9 @@ void runMapEditor() {
|
|||
|
||||
const char *tileNames[] = {"WALL", "FLOOR"};
|
||||
|
||||
ImGui::Text("Selected tile");
|
||||
ImGui::SameLine();
|
||||
if (ImGui::BeginCombo("##EditorSelectedTile",
|
||||
editorState.selectedTileName)) {
|
||||
ImGui::Text("Tile placement");
|
||||
ImGui::InputInt("Tile count", &editorState.tilePlaceAmount);
|
||||
if (ImGui::BeginCombo("Selected tile", editorState.selectedTileName)) {
|
||||
for (int i = 0; i < IM_ARRAYSIZE(tileNames); i++) {
|
||||
bool isSelected = (editorState.selectedTileName == tileNames[i]);
|
||||
if (ImGui::Selectable(tileNames[i], isSelected)) {
|
||||
|
|
|
@ -10,4 +10,5 @@ struct EditorGlobalState {
|
|||
Map currentMap;
|
||||
const char *selectedTileName = "WALL";
|
||||
int editorScale = 1;
|
||||
int tilePlaceAmount = 1;
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue