Region editor
Some checks failed
Build Dusk / build-linux (push) Failing after 51s
Build Dusk / build-psp (push) Failing after 55s

This commit is contained in:
2025-11-28 08:48:42 -06:00
parent 538079880d
commit b01c0d37b0
9 changed files with 188 additions and 5 deletions

View File

@@ -11,7 +11,7 @@ class EntityPanel(QWidget):
self.setLayout(layout)
# Top panel placeholder
topWidget = QLabel("Entity Editor (top)")
topWidget = QLabel("Entity Editor")
layout.addWidget(topWidget)
# Name input

View File

@@ -14,6 +14,11 @@ class GLWidget(QOpenGLWidget):
def initializeGL(self):
glClearColor(0.392, 0.584, 0.929, 1.0)
glEnable(GL_DEPTH_TEST)
glEnable(GL_BLEND)
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA)
glEnable(GL_POLYGON_OFFSET_FILL)
glPolygonOffset(1.0, 1.0)
glDisable(GL_POLYGON_OFFSET_FILL)
def resizeGL(self, w, h):
pass
@@ -31,6 +36,6 @@ class GLWidget(QOpenGLWidget):
glViewport(0, 0, w, h)
self.parent.camera.setup(w, h)
self.parent.map.draw()
self.parent.grid.draw()
self.parent.map.draw()
self.parent.selectBox.draw()

View File

@@ -11,7 +11,7 @@ class Grid:
def draw(self):
if not self.enabled:
return
center = [0, 0, 0]
center = [0.01,0.01,0.01]
halfWidth = self.cellWidth * self.lines // 2
halfHeight = self.cellHeight * self.lines // 2
# Draw origin axes

View File

@@ -1,6 +1,7 @@
from PyQt5.QtWidgets import QWidget, QVBoxLayout, QGridLayout, QPushButton, QTabWidget, QLabel
from editortool.map.chunkpanel import ChunkPanel
from editortool.map.entitypanel import EntityPanel
from editortool.map.regionpanel import RegionPanel
class MapLeftPanel(QWidget):
def __init__(self, parent):
@@ -31,11 +32,13 @@ class MapLeftPanel(QWidget):
# Panels
self.chunkPanel = ChunkPanel(self.parent)
self.entityPanel = EntityPanel(self.parent)
self.regionPanel = RegionPanel(self.parent)
# Tabs
self.tabs = QTabWidget()
self.tabs.addTab(self.chunkPanel, "Tiles")
self.tabs.addTab(self.entityPanel, "Entities")
self.tabs.addTab(self.regionPanel, "Regions")
self.tabs.addTab(None, "Triggers")
layout.addWidget(self.tabs)

View File

@@ -0,0 +1,15 @@
from PyQt5.QtWidgets import QWidget, QVBoxLayout, QLabel, QComboBox, QHBoxLayout, QPushButton, QLineEdit, QListWidget, QListWidgetItem
from PyQt5.QtCore import Qt
from dusk.entity import Entity
from dusk.defs import CHUNK_WIDTH, CHUNK_HEIGHT, CHUNK_DEPTH, ENTITY_TYPES, ENTITY_TYPE_NULL
class RegionPanel(QWidget):
def __init__(self, parent):
super().__init__(parent)
self.parent = parent
layout = QVBoxLayout(self)
self.setLayout(layout)
# Top panel placeholder
topWidget = QLabel("Region Editor")
layout.addWidget(topWidget)