6.7 KiB
6.7 KiB
🎮 FAZA 7: GAMEPLAY MEHANIKE - PREGLED
Datum: 12. December 2025
Status: ✅ VSE ŽE OBSTAJA!
✅ ŠTO JE ŽE IMPLEMENTIRANO:
1. Dan/Noč Cikel ✅
Datoteka: src/systems/WeatherSystem.js (432 vrstic)
Funkcionalnosti:
- ✅ 24-urni cikel - 5 minut realnega časa = 24 ur v igri
- ✅ Dan/Noč faze - Dawn, Day, Dusk, Night
- ✅ Vizualni overlay - Temnejše ponoči, svetlejše podnevi
- ✅ Seasons - Pomlad, Poletje, Jesen, Zima
- ✅ Weather - Dež, nevihta, jasno
- ✅ Temperature - Vpliva na igralca
- ✅ Horde Nights - Vsako 7. noč
Metode:
getCurrentHour() // Trenutna ura (0-24)
getDayCount() // Število dni
isNight() // Ali je noč
isDay() // Ali je dan
isHordeNight() // Ali je horde night
getSeason() // Trenutna sezona
getTemperature() // Trenutna temperatura
2. Sistem Lakote in Žeje ✅
Datoteka: src/systems/StatsSystem.js (246 vrstic)
Funkcionalnosti:
- ✅ Hunger - Lakota (100 = poln, 0 = lačen)
- ✅ Thirst - Žeja (100 = ne žejen, 0 = žejen)
- ✅ Decay rates - Hunger: 0.5/s, Thirst: 0.8/s
- ✅ Starvation damage - 5 HP/s če si lačen/žejen
- ✅ Regeneration - +1 HP/s če si poln (hunger > 80, thirst > 80)
- ✅ Camera shake - Opozorilo ko si lačen/žejen
Metode:
eat(amount) // Poje hrano (+hunger)
drink(amount) // Pije vodo (+thirst)
takeDamage(amount) // Prejme damage
die() // Smrt igralca
Dodatno:
- ✅ Leveling System - XP, level up, stat bonusi
- ✅ Friendship System - Hearts z NPCji
- ✅ Score System - Legacy točke
- ✅ Death Penalty - Izguba 25% score, farm ostane
3. Zbiranje Virov ✅
Datoteka: src/systems/LootSystem.js (126 vrstic)
Funkcionalnosti:
- ✅ spawnLoot() - Spawn loot na poziciji
- ✅ Auto-pickup - Avtomatsko pobiranje (radius 0.8)
- ✅ Magnet effect - Privlačevanje (radius 3.0)
- ✅ Visual symbols - Emoji ikone (🪵 🪨 🌱 🌾)
- ✅ Bobbing animation - Loot se premika gor/dol
- ✅ Floating text - "+5 wood" ob pobiranju
- ✅ Sound effects - Pickup zvok
- ✅ Particle effects - Sparkle ob pobiranju
Podprti viri:
wood, stone, iron, seeds, wheat,
axe, pickaxe, sword, hoe,
diamond, emerald, ruby,
gold_coin, flower, bone
4. Crafting Osnove ✅
Datoteka: src/scenes/UIScene.js (crafting menu)
Funkcionalnosti:
- ✅ Crafting Menu - C tipka za odpiranje
- ✅ Recipe List - Seznam vseh receptov
- ✅ Requirements - Prikaz potrebnih materialov
- ✅ Can Craft Check - Preverjanje ali imaš dovolj materialov
- ✅ Craft Button - Izdelava itema
- ✅ Sound Effect - Zvok ob craftanju
- ✅ Flash Effect - Vizualni učinek
Recepti (že definirani v UIScene):
Stone Axe - 3 wood + 3 stone
Stone Pickaxe - 3 wood + 3 stone
Iron Bucket - 2 iron_bar
Stable - 40 wood + 20 stone
Animal Feed - 2 wheat
Wood Boat - 25 wood
Stone Hoe - 2 wood + 2 stone
Stone Sword - 5 wood + 2 stone
Wood Fence - 2 wood
Wooden Chest - 20 wood
Furnace - 20 stone
Mint - 50 stone + 5 iron_bar
Grave - 10 stone
📊 STATISTIKA:
| Sistem | Status | Vrstice | Datoteka |
|---|---|---|---|
| Dan/Noč | ✅ Obstaja | 432 | WeatherSystem.js |
| Hunger/Thirst | ✅ Obstaja | 246 | StatsSystem.js |
| Loot | ✅ Obstaja | 126 | LootSystem.js |
| Crafting | ✅ Obstaja | ~200 | UIScene.js |
Skupaj: ~1000 vrstic gameplay kode!
🎮 KAKO DELUJE:
Dan/Noč Cikel:
// Avtomatsko teče v WeatherSystem.update()
// 5 minut = 24 ur
// Vsak dan: Dawn → Day → Dusk → Night
// Vsako 7. noč: Horde Night (več zombijev)
Hunger/Thirst:
// Avtomatsko pada v StatsSystem.update()
// Hunger: -0.5/s (200s do 0)
// Thirst: -0.8/s (125s do 0)
// Če 0: -5 HP/s damage
// Če > 80: +1 HP/s regeneracija
Zbiranje Virov:
// Avtomatsko v LootSystem.update()
// Če si blizu loota (< 0.8): auto-pickup
// Če si srednje blizu (< 3.0): magnet effect
Crafting:
// Pritisni C za crafting menu
// Izberi recept
// Preveri materiale (zeleno/rdeče)
// Klikni "CRAFT ITEM"
// Dobi item v inventory
🔧 KAKO UPORABLJATI:
V Igri:
- C - Odpri crafting menu
- ESC - Zapri crafting menu
- Hoja po lootu - Avtomatsko pobiranje
V Konzoli:
// Hunger/Thirst
gameScene.statsSystem.eat(50) // +50 hunger
gameScene.statsSystem.drink(50) // +50 thirst
// Spawn loot
gameScene.lootSystem.spawnLoot(50, 50, 'wood', 10)
// Dan/Noč
gameScene.weatherSystem.getCurrentHour() // Trenutna ura
gameScene.weatherSystem.getDayCount() // Število dni
gameScene.weatherSystem.isNight() // Ali je noč
// Leveling
gameScene.statsSystem.addXP(100) // +100 XP
gameScene.statsSystem.levelUp() // Level up
📝 GAMEPLAY LOOP:
1. Zberi vire (wood, stone, iron)
└─> Loot se avtomatsko pobere
2. Crafti orodja (axe, pickaxe, hoe)
└─> Odpri crafting menu (C)
3. Farmi (till, plant, harvest)
└─> Dobi wheat, seeds
4. Jedi in pij
└─> Hunger/Thirst pada
└─> Če 0: damage
5. Preživi noč
└─> Horde Night vsako 7. noč
└─> Več zombijev
6. Level up
└─> +XP za akcije
└─> +Stats za level
🎯 FEATURES:
| Feature | Status | Opis |
|---|---|---|
| Dan/Noč | ✅ | 24h cikel (5 min) |
| Seasons | ✅ | 4 sezone |
| Weather | ✅ | Dež, nevihta |
| Hunger | ✅ | Decay + damage |
| Thirst | ✅ | Decay + damage |
| Regeneration | ✅ | Če poln |
| Loot | ✅ | Auto-pickup |
| Crafting | ✅ | 13 receptov |
| Leveling | ✅ | XP + level up |
| Death | ✅ | Respawn + penalty |
📁 DATOTEKE:
Obstoječe (že implementirano):
- ✅
src/systems/WeatherSystem.js(432 vrstic) - ✅
src/systems/StatsSystem.js(246 vrstic) - ✅
src/systems/LootSystem.js(126 vrstic) - ✅
src/scenes/UIScene.js(crafting menu)
Dodane:
- ✅
SESSION_SUMMARY_FAZA7.md(ta dokument)
🚀 NASLEDNJI KORAK:
Vse je že implementirano!
Sistemi so že integrirani v GameScene in delujejo. Potrebno je samo:
- Testiranje - Preveriti ali vse deluje
- Posodobitev dev_plan.md - Označiti FAZO 7 kot končano
Status: ✅ VSE ŽE OBSTAJA!
Potrebno: Samo testiranje (0 minut)
Celoten gameplay loop je že implementiran!