Files
novafarma/nova farma TRAE/dokumentacija/DEVLOG_2026_03_02.md

97 lines
3.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 📓 Dev Log — 2026-03-02 (Ponedeljek)
**Seja:** Popoldanska / Večerna
**Trajanje:** ~22 minut aktivnega dela
**Git commit:** `4cbb198d7`
---
## ✅ Opravljeno danes
### 1. 🌧️ Popravki dežnega sistema (Rain System)
**Problem:** Dež je padal samo na enem koncu mape (levi rob) in izgledal kot "bela eksplozija" — preveč gost, preveč bel.
**Rešitve (3 iteracije):**
| Iteracija | Problem | Rešitev |
|-----------|---------|---------|
| v1 | Dež samo levo | `min: 0, max: this.scale.width` → zamenjano z `startFollow(kai)` |
| v2 | Bela eksplozija 😂 | `frequency: 10` preveč → zmanjšano na `frequency: 30`, `quantity: 3` |
| v3 | Vzorci / stolpci kapljic | **Celotna zamenjava** sprite emitter → **procedural canvas** sistem |
**Končna implementacija (v3 — procedural):**
- `160` naključnih kapljic kot kratke diagonalne črtice (818px)
- Hitrost: 420700 px/s (hiter, naraven)
- Alpha: 0.250.55 (prozorno — otok in Kai vedno vidna)
- Pravi `Math.random()` razmestitev — brez vzorcev ali "stebrov"
- Črtice so svetlo modre (`0xaaddff`) z rahlim nagibom v levo
- Vsaka kapljica se ob izhodu iz zaslona teleportira nazaj na vrh (recycling)
**Bug fix:** `SyntaxError: Identifier 'viewW' has already been declared`
→ Preimenovano v `rainViewW` / `rainViewH`
---
### 2. 🏗️ Building System (`src/systems/BuildingSystem.js`)
**Nov modul** za postavljanje stavb na otok.
**Funkcionalnosti:**
- **[B]** tipka — odpre/zapre Build Mode
- **[Esc]** — izhod iz Build Mode
- **Stranski panel** (desno) z ikonami stavb:
- 🏕️ Šotor (`sotor`)
- 🔥 Taborni ogenj (`campfire`)
- 💧 Zbirač dežja (`rain_catcher`)
- 🏗️ Betonski temelj (`foundation_concrete`)
- **Ghost preview** — slika sledi mišu
- Zelena = veljavna postavitev (na otoku)
- Rdeča = neveljavna (zunaj otoka / v oceanu)
- **Klik = postavi** stavbo s fizičnim colliderjem
- **Y-sorting** — Kai se skrije za stavbo ko gre zadaj, pride pred njo ko gre spredaj
- **Static physics body** — Kai ne more hoditi skozi stavbe
- **Spawn animacija** `Back.out` (stavba "potrdi" pozicijo)
**Merjenje:** Stavbe skalirajo glede na Kai višino (64px):
- Šotor = 2.5× Kai = 160px
- Zbirač dežja = 2.0× Kai = 128px
- Temelj = 2.0× Kai = 128px
- Ogenj = 1.0× Kai = 64px
---
## 🚧 Znane omejitve / Za naslednjič
- [ ] Stavbe se ne shranjujejo med sejami (ni persistence/save sistema)
- [ ] Building panel je fiksiran na desni — ne upošteva zoom-a kamere
- [ ] Šotor in ogenj nima animacij (campfire bi moral goreti)
- [ ] Nima `Demolish` (rušenje postavljenih stavb)
- [ ] Zvočni efekti ob postavitvi stavb (placeholder potreben)
- [ ] `foundation_concrete` assetov je malo — potrebno generirati hiše/kmečke zgradbe
---
## 💡 Ideje za naslednjo sejo
1. **Save/Load sistem** — shrani placed buildings v `localStorage` → ohrani stanje med restart-om
2. **Campfire animacija** — flickering light z Graphics ali sprite sheet
3. **Hiša** — generirati asset `hisa_osnovna.png` in dodati v BuildingSystem katalog
4. **Rušenje stavb** — desni klik = odstranjuje zgradbo v build modu
5. **Build Grid** — opcijsko prikaži mrežo pri gradnji za lažje poravnavanje
6. **Zvok dežja** — proceduralni Web Audio API šum (beli šum + filter)
---
## 📊 Stanje projekta
**Git:** `master` — 2 commita pred origin
**Zmogljivost:** Scena deluje brez performance problemov (160 rain drops @ 60fps ✅)
**Faza:** Demo Faza 1 — aktivni razvoj
---
*Dev log zapisan: 2026-03-02 ob 20:42*
*Naslednja seja: TBD*