charakter

This commit is contained in:
2025-12-13 04:34:11 +01:00
parent 9481bfc9b8
commit abb9af9063
11 changed files with 371 additions and 32 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 705 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 164 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 133 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 437 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 470 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 773 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

View File

@@ -0,0 +1,315 @@
# 💀 KRVAVA ŽETEV - SPECIFIC FEATURES
## 🆕 **PHASE 35: ZOMBI DELAVEC SISTEM** (HIGH PRIORITY)
Implementacija zombi delavcev - jedro Krvava Žetev koncepta.
- [ ] **Zombi Framework**
- [ ] Zombi entity class
- [ ] Zombi AI (basic pathfinding)
- [ ] Zombi animations (walk, work, idle, decay)
- [ ] Zombi stats (HP, stamina, XP, skills)
- [ ] **Alfa Sistem (Krotenje)**
- [ ] Player je Alfa (hybrid virus)
- [ ] Zombiji vohajo igralca
- [ ] Krotenje divjih zombijev
- [ ] Ukazi zombijem (follow, work, guard)
- [ ] **Zombi Delo**
- [ ] Farming task (kopanje, sadenje, žetev)
- [ ] Mining task (rudarjenje)
- [ ] Gathering task (nabiranje)
- [ ] Guard task (obramba)
- [ ] **Zombi Leveling**
- [ ] XP gain glede na nalogo
- [ ] Skill specialization (Farmer, Miner, Guard)
- [ ] Level up bonusi (hitrost, moč)
- [ ] **Zombi Utrujenost & Razpad**
- [ ] Stamina sistem (delo = utrujenost)
- [ ] Decay timer (počasno razpadanje)
- [ ] Smrt zombija → Gnojilo + XP
- [ ] **Grobovi (Počitek)**
- [ ] Crafting grobov (kamen + zemlja)
- [ ] Zombi počitek v grobu
- [ ] Regeneracija stamina
- [ ] Podaljšanje življenjske dobe
**Status:** 🔥 HIGH PRIORITY - Jedro igre!
---
## 🆕 **PHASE 36: HYBRID SKILL SISTEM** (HIGH PRIORITY)
Igralčeva Hybrid veščina - razumevanje zombijev.
- [ ] **Hybrid Skill Tree**
- [ ] Level 1-10 progression
- [ ] XP gain iz zombi smrti (dediščina)
- [ ] Skill points allocation
- [ ] **Zombi Komunikacija**
- [ ] Level 1: Samo godrnjanje ("Hnggg...")
- [ ] Level 5: Ključne besede v podnapisih
- [ ] Level 10: Celotne stavke (opozorila, spomini)
- [ ] **Alfa Moči**
- [ ] Večji radius krotenja
- [ ] Več zombijev hkrati
- [ ] Boljši ukazi (kompleksne naloge)
- [ ] Voh Alfe (privlačnost za zombije)
- [ ] **Hybrid Abilities**
- [ ] Heal zombije (regeneracija)
- [ ] Boost zombije (začasna moč)
- [ ] Calm divje zombije
- [ ] Sense danger (opozorilo)
**Status:** 🔥 HIGH PRIORITY
---
## 🆕 **PHASE 37: MICRO FARM & ŠIRITEV** (HIGH PRIORITY)
Začetek na 8x8 parceli in postopna širitev.
- [ ] **Micro Farm (8x8)**
- [ ] Fiksna začetna parcela
- [ ] Omejen prostor (prisili strategijo)
- [ ] Tutorial na micro farm
- [ ] **Širitev Sistema**
- [ ] Odklepanje po 2x2 tiles
- [ ] Pošlji zombije da očistijo
- [ ] Zombiji pripravijo zemljo
- [ ] Plačilo za širitev (resources)
- [ ] **Zemljišče Tipi**
- [ ] Grass (osnova)
- [ ] Forest (drevesa, clearing needed)
- [ ] Rocky (kamenje, mining needed)
- [ ] Swamp (voda, drainage needed)
**Status:** 🔥 HIGH PRIORITY
---
## 🆕 **PHASE 38: OBNOVA MESTA** (MEDIUM PRIORITY)
Obnova porušenega mesta - socialni element.
- [ ] **Ruševine**
- [ ] Porušene hiše (NPC homes)
- [ ] Damage levels (25%, 50%, 75%, 100%)
- [ ] Visual progression (repair stages)
- [ ] **Obnova Projektov**
- [ ] Material requirements (les, kamen, železo, zlato)
- [ ] Zombi pomoč (construction work)
- [ ] Time to complete
- [ ] Completion rewards
- [ ] **NPC Srčki (Hearts)**
- [ ] Relationship system (1-10 hearts)
- [ ] Unlock trgovine z hearts
- [ ] Unlock quests z hearts
- [ ] Unlock zombi posoja
- [ ] **Zombi Posoja (Leasing)**
- [ ] Posodi zombije NPC-jem
- [ ] Plačilo za zombi delo
- [ ] Zombi dobi special XP
- [ ] Return zombija (upgraded)
- [ ] **NPC Trgovine**
- [ ] Kovač (orodja, orožje)
- [ ] Pekarica (hrana, recepti)
- [ ] Trgovec (semena, materiali)
- [ ] Zdravnik (zdravila, cure research)
**Status:** 📋 MEDIUM PRIORITY
---
## 🆕 **PHASE 39: MESOJEDKE (MARIO PLANTS)** (MEDIUM PRIORITY)
Gigantske rože za obrambo in End-Game farming.
- [ ] **Mesojedke Framework**
- [ ] Seed planting
- [ ] Growth stages (1-5)
- [ ] Gigantska roža (final stage)
- [ ] **Hranjenje z Mesom**
- [ ] Ne potrebujejo vode
- [ ] Potrebujejo meso (zombi deli, mutanti)
- [ ] Feeding system
- [ ] Growth speed glede na kvaliteto mesa
- [ ] **Obramba**
- [ ] Auto-attack sovražnikov
- [ ] Damage output
- [ ] Range (radius)
- [ ] Cooldown
- [ ] **Pridelek**
- [ ] Cvetni listi (rare material)
- [ ] Semena (expensive)
- [ ] Special drops (legendary items)
**Status:** 📋 MEDIUM PRIORITY
---
## 🆕 **PHASE 40: EKONOMIJA - MINTING** (MEDIUM PRIORITY)
Kovanje zlatnikov - unikaten ekonomski sistem.
- [ ] **Rudarjenje Zlata**
- [ ] Zlata ruda (rare ore)
- [ ] Mining locations
- [ ] Zombi miners
- [ ] **Talilnica (Smelter)**
- [ ] Crafting smelter
- [ ] Smelt zlato rudo → zlato
- [ ] Fuel requirements (coal, wood)
- [ ] **Kovalnica (Mint)**
- [ ] Crafting mint
- [ ] Mint zlato → zlatniki (coins)
- [ ] Minting time
- [ ] Quality levels (pure gold = more value)
- [ ] **Valuta**
- [ ] Zlatniki kot glavna valuta
- [ ] Ni random coin drops
- [ ] Vse preko minting
- [ ] Inflation control (limited gold)
**Status:** 📋 MEDIUM PRIORITY
---
## 🆕 **PHASE 41: ALBUM (COLLECTION)** (LOW PRIORITY)
Zbirateljski sistem - odkrivanje sveta.
- [ ] **Album Framework**
- [ ] Album UI (book interface)
- [ ] Categories (zombiji, rastline, ribe, mutanti)
- [ ] Auto-discovery (first encounter)
- [ ] Completion percentage
- [ ] **Kategorije**
- [ ] Legendarne Zombije (rare types)
- [ ] Gigantske Rože (mesojedke)
- [ ] Redke Ribe (fishing)
- [ ] Mutanti (enemies)
- [ ] Defektni Zombiji (lab jokes)
- [ ] **Rewards**
- [ ] Completion bonuses
- [ ] Unlock special items
- [ ] Achievements
- [ ] Lore entries
**Status:** 📋 LOW PRIORITY
---
## 🆕 **PHASE 42: MAIN QUEST - SESTRA** (HIGH PRIORITY)
Glavna zgodba - iskanje izgubljene sestre.
- [ ] **Quest Framework**
- [ ] Quest tracking
- [ ] Quest journal
- [ ] Quest markers
- [ ] Quest rewards
- [ ] **Zgodba**
- [ ] Prologue (napad Zmaj-Volka)
- [ ] Act 1: Iskanje sledi
- [ ] Act 2: Odkrivanje laboratorija
- [ ] Act 3: Soočenje z resnico
- [ ] Finale: Sestra & zdravilo
- [ ] **Zapisi (Lore)**
- [ ] Stari zapisi (mining, digging)
- [ ] Virus origin story
- [ ] Lab experiments
- [ ] Zmaj-Volk creation
- [ ] **Odločitve**
- [ ] Zdravilo ali maščevanje?
- [ ] Rešiti sestro ali svet?
- [ ] Multiple endings
**Status:** 🔥 HIGH PRIORITY
---
## 🆕 **PHASE 43: ZMAJ-VOLK BOSS** (HIGH PRIORITY)
Najvišji plenilec - epic boss fight.
- [ ] **Zmaj-Volk Design**
- [ ] Hybrid mutant (dragon + wolf)
- [ ] Massive size
- [ ] Unique animations
- [ ] Intimidating presence
- [ ] **Boss Fight**
- [ ] Multi-phase fight (3 faze)
- [ ] Special attacks (fire breath, claw swipe)
- [ ] Weak points
- [ ] Environmental hazards
- [ ] **Boss Arena**
- [ ] Special location (ruins, forest)
- [ ] Dynamic environment
- [ ] Escape routes
- [ ] **Rewards**
- [ ] Zmaj-Volk trophy
- [ ] Legendary loot
- [ ] Story progression
- [ ] Unlock ending
**Status:** 🔥 HIGH PRIORITY
---
## 🆕 **PHASE 44: INVAZIJA (HORDE MODE)** (MEDIUM PRIORITY)
Wave defense - End-Game content.
- [ ] **Horde System**
- [ ] Wave spawning
- [ ] Difficulty scaling
- [ ] Enemy types (zombiji, mutanti)
- [ ] Boss waves
- [ ] **Obramba**
- [ ] Mesojedke (auto-defense)
- [ ] Guard zombiji (player army)
- [ ] Traps and barriers
- [ ] Player combat
- [ ] **Rewards**
- [ ] Wave completion rewards
- [ ] Rare loot
- [ ] XP bonuses
- [ ] Leaderboards
**Status:** 📋 MEDIUM PRIORITY
---
## 📊 **KRVAVA ŽETEV - PRIORITY ROADMAP**
### **HIGH PRIORITY (Začni tukaj):**
1. Phase 35: Zombi Delavec Sistem
2. Phase 36: Hybrid Skill
3. Phase 37: Micro Farm & Širitev
4. Phase 42: Main Quest - Sestra
5. Phase 43: Zmaj-Volk Boss
### **MEDIUM PRIORITY (Potem):**
6. Phase 38: Obnova Mesta
7. Phase 39: Mesojedke
8. Phase 40: Minting
9. Phase 44: Invazija
### **LOW PRIORITY (Zadnje):**
10. Phase 41: Album
---
**Timeline:**
- **Core Systems (35-37):** 3-4 weeks
- **Story & Boss (42-43):** 2-3 weeks
- **Social & Economy (38-40):** 3-4 weeks
- **End-Game (39, 41, 44):** 2-3 weeks
**Total:** 10-14 weeks (2.5-3.5 months)
---
**💀 KRVAVA ŽETEV - DEATH HARVEST 💀**
**Unique Zombie Worker Survival RPG**
**Development Start: December 2025** 🚀✨

View File

@@ -92,18 +92,14 @@ class Player {
} }
createSprite() { createSprite() {
// NEW: Use player_dreadlocks sprite (isometric 2.5D) // KRVAVA ŽETEV: Use new protagonist sprite
let texKey = 'player_dreadlocks'; let texKey = 'player_protagonist';
// Fallback chain if new sprite not loaded // Fallback to generated sprite if not loaded
if (!this.scene.textures.exists(texKey)) { if (!this.scene.textures.exists(texKey)) {
texKey = this.scene.textures.exists('player_walk') ? 'player_walk' : 'player_sprite'; console.warn('⚠️ player_protagonist sprite not found! Generating fallback...');
if (!this.scene.textures.exists(texKey)) { TextureGenerator.createPlayerSprite(this.scene, 'player_fallback');
texKey = 'player'; texKey = 'player_fallback';
if (!this.scene.textures.exists(texKey)) {
TextureGenerator.createPlayerSprite(this.scene, texKey);
}
}
} }
// Kreira sprite // Kreira sprite
@@ -113,15 +109,13 @@ class Player {
screenPos.y + this.offsetY, screenPos.y + this.offsetY,
texKey texKey
); );
this.sprite.setOrigin(0.5, 1); this.sprite.setOrigin(0.5, 0.8); // Changed from 1 to 0.8 to show legs
// Scale based on sprite type // Scale based on sprite type
if (texKey === 'player_dreadlocks') { if (texKey === 'player_protagonist') {
this.sprite.setScale(2.5); // MUCH larger for better visibility this.sprite.setScale(1.0); // Smaller protagonist sprite
} else if (texKey === 'player_walk') {
this.sprite.setScale(2.5); // Old animated sprite
} else { } else {
this.sprite.setScale(1.2); // Old static sprite this.sprite.setScale(1.0); // Fallback sprite
} }
@@ -343,10 +337,35 @@ class Player {
this.lastDir = { x: dx, y: dy }; this.lastDir = { x: dx, y: dy };
this.sprite.setFlipX(!facingRight); this.sprite.setFlipX(!facingRight);
// Play walking animation (with safety check)
if (this.sprite.anims) {
try {
if (this.scene.anims.exists('protagonist_walk') && !this.sprite.anims.isPlaying) {
this.sprite.play('protagonist_walk');
}
} catch (e) {
// Ignore animation errors
}
}
// Hand offset // Hand offset
const handOffset = facingRight ? 10 : -10; const handOffset = facingRight ? 10 : -10;
this.handSprite.setX(this.sprite.x + handOffset); this.handSprite.setX(this.sprite.x + handOffset);
this.handSprite.setFlipX(!facingRight); this.handSprite.setFlipX(!facingRight);
} else {
// Stop animation when idle (with safety check)
if (this.sprite.anims) {
try {
if (this.sprite.anims.isPlaying) {
this.sprite.stop();
}
if (this.scene.anims.exists('protagonist_idle')) {
this.sprite.play('protagonist_idle');
}
} catch (e) {
// Ignore animation errors
}
}
} }
// Collision Check // Collision Check

View File

@@ -136,21 +136,19 @@ class PreloadScene extends Phaser.Scene {
}); });
// New Processed Animations (Standardized 64x64 strips) // New Processed Animations (Standardized 64x64 strips)
this.load.spritesheet('player_walk', 'assets/sprites/player_walk_strip.png', { frameWidth: 64, frameHeight: 64 });
this.load.spritesheet('zombie_walk', 'assets/sprites/zombie_walk_strip.png', { frameWidth: 64, frameHeight: 64 }); this.load.spritesheet('zombie_walk', 'assets/sprites/zombie_walk_strip.png', { frameWidth: 64, frameHeight: 64 });
// KRVAVA ŽETEV - New Player Sprite (Protagonist with dreadlocks)
this.load.spritesheet('player_protagonist', 'assets/sprites/player_walk_animations.png', {
frameWidth: 128, // Adjust based on actual sprite size
frameHeight: 128
});
} }
createAnimations() { createAnimations() {
if (this.anims.exists('player_walk_anim')) return; if (this.anims.exists('protagonist_walk')) return;
// Old animations
this.anims.create({
key: 'player_walk_anim',
frames: this.anims.generateFrameNumbers('player_walk', { start: 0, end: 5 }),
frameRate: 12,
repeat: -1
});
// Zombie animations
this.anims.create({ this.anims.create({
key: 'zombie_walk_anim', key: 'zombie_walk_anim',
frames: this.anims.generateFrameNumbers('zombie_walk', { start: 0, end: 5 }), frames: this.anims.generateFrameNumbers('zombie_walk', { start: 0, end: 5 }),
@@ -158,18 +156,25 @@ class PreloadScene extends Phaser.Scene {
repeat: -1 repeat: -1
}); });
// NEW: Isometric character animations (6 frames)
this.anims.create({ this.anims.create({
key: 'player_dreadlocks_walk', key: 'zombie_worker_walk',
frames: this.anims.generateFrameNumbers('player_dreadlocks', { start: 0, end: 5 }), frames: this.anims.generateFrameNumbers('zombie_worker', { start: 0, end: 5 }),
frameRate: 8,
repeat: -1
});
// KRVAVA ŽETEV: Protagonist animations
this.anims.create({
key: 'protagonist_walk',
frames: this.anims.generateFrameNumbers('player_protagonist', { start: 0, end: 7 }),
frameRate: 10, frameRate: 10,
repeat: -1 repeat: -1
}); });
this.anims.create({ this.anims.create({
key: 'zombie_worker_walk', key: 'protagonist_idle',
frames: this.anims.generateFrameNumbers('zombie_worker', { start: 0, end: 5 }), frames: this.anims.generateFrameNumbers('player_protagonist', { start: 8, end: 9 }),
frameRate: 8, frameRate: 2,
repeat: -1 repeat: -1
}); });