ui calculator

This commit is contained in:
Ilia Denisov
2026-03-30 19:38:24 +02:00
committed by GitHub
parent 17f366cd6b
commit a7793f5416
37 changed files with 2046 additions and 270 deletions
+22 -24
View File
@@ -415,6 +415,13 @@ func (LightTheme) PointClassOverride(class PointClassID) (StyleOverride, bool) {
PointRadiusPx: new(3.5),
}, true
case PointClassUnidentifiedPlanet:
// soft orange
return StyleOverride{
FillColor: cRGBA(192, 192, 192, 255),
PointRadiusPx: new(2.5),
}, true
default:
return StyleOverride{}, false
}
@@ -457,15 +464,7 @@ func (LightTheme) CircleClassOverride(class CircleClassID) (StyleOverride, bool)
case CircleClassDefault:
return StyleOverride{}, false
case CircleClassHome:
// teal-ish, a bit stronger stroke
return StyleOverride{
FillColor: cRGBA(32, 161, 145, 50),
StrokeColor: cRGBA(32, 161, 145, 210),
StrokeWidthPx: new(2.5),
}, true
case CircleClassAcquired:
case CircleClassLocalPlanet:
// blue
return StyleOverride{
FillColor: cRGBA(70, 108, 196, 45),
@@ -473,7 +472,7 @@ func (LightTheme) CircleClassOverride(class CircleClassID) (StyleOverride, bool)
StrokeWidthPx: new(2.2),
}, true
case CircleClassOccupied:
case CircleClassOthersPlanet:
// orange
return StyleOverride{
FillColor: cRGBA(222, 142, 70, 50),
@@ -481,7 +480,7 @@ func (LightTheme) CircleClassOverride(class CircleClassID) (StyleOverride, bool)
StrokeWidthPx: new(2.2),
}, true
case CircleClassFree:
case CircleClassFreePlanet:
// green
return StyleOverride{
FillColor: cRGBA(76, 171, 107, 45),
@@ -574,6 +573,12 @@ func (*DarkTheme) PointClassOverride(class PointClassID) (StyleOverride, bool) {
PointRadiusPx: new(3.5),
}, true
case PointClassUnidentifiedPlanet:
return StyleOverride{
FillColor: cRGBA(192, 192, 192, 255),
PointRadiusPx: new(2.5),
}, true
default:
return StyleOverride{}, false
}
@@ -615,30 +620,23 @@ func (*DarkTheme) CircleClassOverride(class CircleClassID) (StyleOverride, bool)
case CircleClassDefault:
return StyleOverride{}, false
case CircleClassHome:
case CircleClassLocalPlanet:
return StyleOverride{
FillColor: nil, // cRGBA(120, 214, 198, 255),
StrokeColor: cRGBA(120, 214, 198, 255),
StrokeWidthPx: new(2.5),
}, true
case CircleClassAcquired:
return StyleOverride{
FillColor: nil, // cRGBA(155, 175, 235, 255),
FillColor: cRGBA(155, 175, 235, 255),
StrokeColor: cRGBA(155, 175, 235, 255),
StrokeWidthPx: new(2.2),
}, true
case CircleClassOccupied:
case CircleClassOthersPlanet:
return StyleOverride{
FillColor: nil, // cRGBA(245, 178, 120, 255),
FillColor: cRGBA(245, 178, 120, 255),
StrokeColor: cRGBA(245, 178, 120, 255),
StrokeWidthPx: new(2.2),
}, true
case CircleClassFree:
case CircleClassFreePlanet:
return StyleOverride{
FillColor: nil, // cRGBA(132, 219, 162, 255),
FillColor: cRGBA(132, 219, 162, 255),
StrokeColor: cRGBA(132, 219, 162, 255),
StrokeWidthPx: new(2.2),
}, true
+8 -8
View File
@@ -688,6 +688,8 @@ const (
PointClassTrackIncoming
// PointClassTrackOutgoing marks a point as an outgoing track marker.
PointClassTrackOutgoing
// PointClassUnidentifiedPlanet marks an unidentified planet without visivle size.
PointClassUnidentifiedPlanet
)
// LineClassID classifies Line primitives for theme-level style overrides.
@@ -711,14 +713,12 @@ type CircleClassID uint8
const (
// CircleClassDefault selects the theme's default circle styling.
CircleClassDefault CircleClassID = iota
// CircleClassHome marks a circle as a home-world area.
CircleClassHome
// CircleClassAcquired marks a circle as an acquired world area.
CircleClassAcquired
// CircleClassOccupied marks a circle as an occupied world area.
CircleClassOccupied
// CircleClassFree marks a circle as a free world area.
CircleClassFree
// CircleClassLocalPlanet marks a circle as a player-owned planet.
CircleClassLocalPlanet
// CircleClassOthersPlanet marks a circle as an occupied planet.
CircleClassOthersPlanet
// CircleClassFreePlanet marks a circle as a free planet.
CircleClassFreePlanet
)
// PrimitiveID is a compact stable identifier for primitives stored in the World.