shrani
This commit is contained in:
202
docs/sessions/SESSION_POND_SOUND.md
Normal file
202
docs/sessions/SESSION_POND_SOUND.md
Normal file
@@ -0,0 +1,202 @@
|
||||
# 🌊 Sesija: Ribnik & Sound System - 12. December 2025
|
||||
|
||||
## 📋 Povzetek Sesije
|
||||
|
||||
### 🎯 Glavni Dosežki
|
||||
|
||||
#### 1. **Ribnik z Animirano Vodo** 🌊
|
||||
- ✅ **Lokacija:** (30, 30) - okrogel ribnik (radij 4 tiles)
|
||||
- ✅ **2D Stardew Valley stil** - flat top-down namesto 3D isometric
|
||||
- ✅ **Temno modra barva** (0x0a3d62 → 0x1e5f8c) - dobro vidna!
|
||||
- ✅ **Alpha tween animacija** - valovanje (0.7 ↔ 1.0, 1 sekunda)
|
||||
- ✅ **Gradient + highlights** - svetli krogi za valovanje
|
||||
|
||||
#### 2. **Dežne Kapljice** 🌧️
|
||||
- ✅ **Rain particles** - padajo v ribnik
|
||||
- ✅ **10 kapljic/sekundo** (frequency: 100ms)
|
||||
- ✅ **Modre kapljice** (0x4488ff)
|
||||
- ✅ **Fade efekt** - alpha 0.8 → 0.3
|
||||
- ✅ **ADD blend mode** - svetleči efekt
|
||||
|
||||
#### 3. **Sound System** 🎵
|
||||
- ✅ **Ambient music** - C Minor Pentatonic scale
|
||||
- ✅ **Rain sound** - white noise nad ribnikom
|
||||
- ✅ **SFX ready** - dig, plant, harvest, build, chop, pickup
|
||||
- ✅ **Proceduralni zvoki** - Web Audio API oscillators
|
||||
|
||||
#### 4. **Čista Mapa** 🟢
|
||||
- ✅ **Brez dreves** (TREE_DENSITY = 0%)
|
||||
- ✅ **Brez hiš** (ABANDONED_HOUSES = [])
|
||||
- ✅ **Brez dekoracij** (grmički, rože, skale = 0%)
|
||||
- ✅ **SaveSystem onemogočen** - fresh start
|
||||
|
||||
---
|
||||
|
||||
## 🔧 Ključne Spremembe
|
||||
|
||||
### **TerrainSystem.js**
|
||||
|
||||
**1. Ribnik Generiranje:**
|
||||
```javascript
|
||||
// Konstante
|
||||
const POND_CENTER_X = 30;
|
||||
const POND_CENTER_Y = 30;
|
||||
const POND_RADIUS = 4;
|
||||
|
||||
// Generiranje
|
||||
const distToPond = Math.sqrt(
|
||||
Math.pow(x - POND_CENTER_X, 2) +
|
||||
Math.pow(y - POND_CENTER_Y, 2)
|
||||
);
|
||||
if (distToPond <= POND_RADIUS) {
|
||||
terrainType = this.terrainTypes.WATER;
|
||||
}
|
||||
```
|
||||
|
||||
**2. 2D Water Texture:**
|
||||
```javascript
|
||||
// Temna modra voda
|
||||
waterGraphics.fillGradientStyle(
|
||||
0x0a3d62, 0x0a3d62, // Temno modra
|
||||
0x1e5f8c, 0x1e5f8c // Srednje modra
|
||||
);
|
||||
|
||||
// Highlights
|
||||
waterGraphics.fillStyle(0x3a8fc2, 0.5);
|
||||
waterGraphics.fillCircle(12, 12, 10);
|
||||
waterGraphics.fillCircle(36, 28, 8);
|
||||
waterGraphics.fillCircle(24, 38, 6);
|
||||
|
||||
// Border
|
||||
waterGraphics.lineStyle(2, 0x062a40, 1);
|
||||
```
|
||||
|
||||
**3. Water Animation:**
|
||||
```javascript
|
||||
// Alpha tween za valovanje
|
||||
this.scene.tweens.add({
|
||||
targets: sprite,
|
||||
alpha: 0.7,
|
||||
duration: 1000,
|
||||
yoyo: true,
|
||||
repeat: -1,
|
||||
ease: 'Sine.easeInOut'
|
||||
});
|
||||
```
|
||||
|
||||
**4. Rain Particles:**
|
||||
```javascript
|
||||
this.rainEmitter = this.scene.add.particles(pondX, pondY - 100, 'raindrop', {
|
||||
x: { min: -50, max: 50 },
|
||||
y: 0,
|
||||
lifespan: 1000,
|
||||
speedY: { min: 200, max: 300 },
|
||||
scale: { start: 0.5, end: 0.2 },
|
||||
alpha: { start: 0.8, end: 0.3 },
|
||||
frequency: 100,
|
||||
blendMode: 'ADD'
|
||||
});
|
||||
|
||||
// Rain sound
|
||||
this.scene.soundManager.playRainSound();
|
||||
```
|
||||
|
||||
### **GameScene.js**
|
||||
|
||||
**1. TerrainSystem Update:**
|
||||
```javascript
|
||||
update(time, delta) {
|
||||
if (this.terrainSystem) this.terrainSystem.update(time, delta);
|
||||
// ... ostali sistemi
|
||||
}
|
||||
```
|
||||
|
||||
**2. Farm Tiles:**
|
||||
```javascript
|
||||
// Dirt namesto grass
|
||||
this.terrainSystem.tiles[y][x].type = 'dirt';
|
||||
this.terrainSystem.tiles[y][x].sprite.setTexture('dirt');
|
||||
```
|
||||
|
||||
### **SaveSystem.js**
|
||||
|
||||
**LoadGame Onemogočen:**
|
||||
```javascript
|
||||
loadGame() {
|
||||
console.log('📂 Loading game... DISABLED - Fresh start!');
|
||||
return false; // Vedno fresh start
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📊 Končna Konfiguracija
|
||||
|
||||
**Mapa:**
|
||||
- Velikost: 100x100
|
||||
- Teren: Zelena trava
|
||||
- Farm: 8x8 dirt tiles (50,50)
|
||||
- Ribnik: Okrogel, radij 4 (30,30)
|
||||
|
||||
**Dekoracije:**
|
||||
- Drevesa: 0%
|
||||
- Grmički: 0%
|
||||
- Rože: 0%
|
||||
- Skale: 0%
|
||||
- Hiše: 0%
|
||||
|
||||
**Voda:**
|
||||
- Stil: 2D Stardew Valley
|
||||
- Barva: Temno modra (0x0a3d62 → 0x1e5f8c)
|
||||
- Animacija: Alpha tween (1s)
|
||||
- Dež: 10 kapljic/s
|
||||
|
||||
**Zvok:**
|
||||
- Ambient music: C Minor Pentatonic
|
||||
- Rain sound: White noise (800Hz lowpass)
|
||||
- SFX: Proceduralni (Web Audio API)
|
||||
|
||||
---
|
||||
|
||||
## 🎯 Naslednji Koraki
|
||||
|
||||
**Priporočila:**
|
||||
1. **Testiranje ribnika** - Vizualno preverjanje
|
||||
2. **Dodati ribe** - Interakcija z ribnikom
|
||||
3. **Ribolov sistem** - Mini-game
|
||||
4. **Ponovno omogočiti save** - Ko je testiranje končano
|
||||
5. **Dodati nazaj drevesa** - Z nizko gostoto (1-3%)
|
||||
|
||||
---
|
||||
|
||||
## 📝 Opombe
|
||||
|
||||
- Voda je zdaj **2D flat** (Stardew Valley stil)
|
||||
- Rain particles **samo nad ribnikom**
|
||||
- Sound system **že implementiran**
|
||||
- Save sistem **onemogočen** za testiranje
|
||||
- Vse spremembe **kompatibilne** z obstoječim kodom
|
||||
|
||||
---
|
||||
|
||||
**Datum:** 12. December 2025
|
||||
**Trajanje:** ~40 minut
|
||||
**Status:** ✅ Uspešno zaključeno
|
||||
**Naslednja sesija:** Testiranje + ribe/ribolov
|
||||
|
||||
---
|
||||
|
||||
## 🚀 Quick Start (Po Vrnitvi)
|
||||
|
||||
```bash
|
||||
# Reload igre
|
||||
F4 v Electron oknu
|
||||
|
||||
# Preveri ribnik
|
||||
Pojdi na (30, 30)
|
||||
|
||||
# Ponovno omogoči save (ko je testiranje končano)
|
||||
# SaveSystem.js - odkomentiraj loadGame()
|
||||
```
|
||||
|
||||
**Uživajte v Sparu!** 🛒✨
|
||||
Reference in New Issue
Block a user