128x128 PNG mit transparentem Hintergrund, aus SVG-Quellen per ImageMagick (librsvg) erzeugt und damit reproduzierbar statt handgemalt. - Tauchmaske, quer liegende Pressluft-Kartusche mit Manometer, drei Einzelflaschen und die Doppelflasche fuer XL - Laufzeit als Zahl auf dem Farbband: ohne die waren die Einzelflaschen bei Slot-Groesse nur noch an der Bandfarbe zu unterscheiden, im 56px-Test gar nicht mehr - Kartusche bewusst liegend statt hochkant, damit sie sich von den Flaschen abhebt - die erste Fassung las sich wie eine Flasche mit Download-Pfeil - client.image faellt weg: ox_inventory laedt <imagepath>/<itemname>.png, und die Dateien heissen genau wie die Items gen-icons.mjs schreibt zusaetzlich ein Kontrollblatt (Schachbrett, Slot-Groesse, klein), mit dem die Icons gegengeprueft wurden. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -61,23 +61,28 @@ weich ein und aus.
|
||||
und in `ox_inventory/data/items.lua` innerhalb der `return { … }`-Klammer
|
||||
einfügen. Sechs Items, nichts weiter anzupassen.
|
||||
|
||||
3. Icons nach `cdn.d4rkst3r.de/items/` legen: `diving_gear.png`,
|
||||
`diving_fill.png`, `diving_tank_small.png`, `diving_tank_medium.png`,
|
||||
`diving_tank_large.png`, `diving_tank_xl.png`.
|
||||
3. Die sechs PNGs aus [`icons/`](icons) nach `cdn.d4rkst3r.de/items/` hochladen.
|
||||
Sie heißen genau wie die Items, deshalb braucht es kein `client.image`.
|
||||
|
||||
Es gibt bewusst **keine** fertige `items.lua` zum Ersetzen — die würde die
|
||||
restlichen Items des Servers überschreiben.
|
||||
|
||||
## Items
|
||||
|
||||
| Item | Label | Laufzeit | Fülldruck | Gewicht |
|
||||
|---|---|---|---|---|
|
||||
| `diving_gear` | Tauchausrüstung | — | — | 5000 |
|
||||
| `diving_fill` | Pressluft-Kartusche | — | — | 1000 |
|
||||
| `diving_tank_small` | Tauchflasche (5 Min) | 300 s | 300 bar | 4000 |
|
||||
| `diving_tank_medium` | Tauchflasche (10 Min) | 600 s | 300 bar | 7000 |
|
||||
| `diving_tank_large` | Tauchflasche (15 Min) | 900 s | 300 bar | 10000 |
|
||||
| `diving_tank_xl` | Tauchflasche (20 Min) | 1200 s | 300 bar | 13000 |
|
||||
| Icon | Item | Label | Laufzeit | Fülldruck | Gewicht |
|
||||
|---|---|---|---|---|---|
|
||||
| <img src="icons/diving_gear.png" width="40"> | `diving_gear` | Tauchausrüstung | — | — | 5000 |
|
||||
| <img src="icons/diving_fill.png" width="40"> | `diving_fill` | Pressluft-Kartusche | — | — | 1000 |
|
||||
| <img src="icons/diving_tank_small.png" width="40"> | `diving_tank_small` | Tauchflasche (5 Min) | 300 s | 300 bar | 4000 |
|
||||
| <img src="icons/diving_tank_medium.png" width="40"> | `diving_tank_medium` | Tauchflasche (10 Min) | 600 s | 300 bar | 7000 |
|
||||
| <img src="icons/diving_tank_large.png" width="40"> | `diving_tank_large` | Tauchflasche (15 Min) | 900 s | 300 bar | 10000 |
|
||||
| <img src="icons/diving_tank_xl.png" width="40"> | `diving_tank_xl` | Tauchflasche (20 Min) | 1200 s | 300 bar | 13000 |
|
||||
|
||||
Die Icons liegen als 128×128 PNG mit transparentem Hintergrund in
|
||||
[`icons/`](icons), die SVG-Quellen in `icons/src/`. Die Laufzeit steht als Zahl
|
||||
auf dem Farbband — ohne die sind die Einzelflaschen im Inventar nur noch an der
|
||||
Bandfarbe auseinanderzuhalten. Wer `capacity` ändert, sollte die Zahlen in
|
||||
`icons/gen-icons.mjs` mitziehen.
|
||||
|
||||
Dass alle Flaschen mit demselben Fülldruck starten, ist gewollt: in echt macht das
|
||||
Volumen die Laufzeit, nicht der Druck. Die große Flasche hält 300 bar einfach länger.
|
||||
@@ -197,8 +202,22 @@ solcher Punkte enthält also den Pitch.
|
||||
node ../.tools/lint.mjs # Lua-Lint, CfxLua-tauglich
|
||||
node ../.tools/nui-preview.mjs nui # HUD im Browser anschauen
|
||||
node docs/gen-hud-svg.mjs docs # Renderings für diese README neu bauen
|
||||
|
||||
# Item-Icons neu bauen (SVG -> PNG, braucht ImageMagick mit librsvg)
|
||||
node icons/gen-icons.mjs
|
||||
for f in icons/src/*.svg; do
|
||||
magick -background none "$f" -resize 128x128 "icons/$(basename "$f" .svg).png"
|
||||
done
|
||||
```
|
||||
|
||||
`gen-icons.mjs` schreibt außerdem `icons/_check.html` — alle Icons auf
|
||||
Schachbrett, in Slot-Größe und klein, zum Gegenschauen nach Änderungen.
|
||||
|
||||
> librsvg 2.40 wirft beim Rendern der Zahlen ein
|
||||
> `Invalid UTF-8 string passed to pango_layout_set_text()`. Das ist harmlos und
|
||||
> passiert bei jedem `<text>`-Element, auch im minimalsten Testfall — die Zahlen
|
||||
> kommen korrekt raus.
|
||||
|
||||
Der Umbau ist in [PLAN.md](PLAN.md) dokumentiert, inklusive der offenen Punkte.
|
||||
|
||||
## Bekannte Unsicherheiten
|
||||
|
||||
Reference in New Issue
Block a user