Wood: giant mushrooms underground, felled by imps; wooden bridges and doors cost wood

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Richard ZinkandClaude Opus 5.5 committed 2026-11-05 22:07:59 +01:00
1 parent c5adc3e902
commit 398bb95681
28 files changed
+447 -31

No files matched your search

+8 -1
View File
@@ -64,6 +64,7 @@ msg.flag_removed = Útočná vlajka odstraněna. Tví tvorové se vracejí.
msg.flag_set = Útočná vlajka vztyčena! Bojeschopní tvorové se u ní shromáždí. msg.flag_set = Útočná vlajka vztyčena! Bojeschopní tvorové se u ní shromáždí.
msg.creature_leaves = Nespokojený tvor opouští tvou říši: {0}! msg.creature_leaves = Nespokojený tvor opouští tvou říši: {0}!
msg.no_gold = Nedostatek zlata! msg.no_gold = Nedostatek zlata!
msg.no_wood = Nedostatek dřeva! Pokácej obří houby (nebo stromy) krumpáčem.
msg.sold = Místnosti prodány: +{0} zlata. msg.sold = Místnosti prodány: +{0} zlata.
msg.no_mana_bolt = Nedostatek many na blesk. msg.no_mana_bolt = Nedostatek many na blesk.
msg.no_mana_heal = Nedostatek many na léčení. msg.no_mana_heal = Nedostatek many na léčení.
@@ -124,6 +125,7 @@ ui.key = Klávesa: {0}
# ---- HUD # ---- HUD
hud.gold = Zlato hud.gold = Zlato
hud.wood = Dřevo
hud.mana = Mana hud.mana = Mana
hud.core = Jádro hud.core = Jádro
hud.gate = Brána hud.gate = Brána
@@ -402,7 +404,8 @@ tool.bridge.desc = Postaví most přes vodu nebo lávu. Táhni z vlastní země
tool.drawbridge.label = Padací most tool.drawbridge.label = Padací most
tool.drawbridge.name = Postavit padací most tool.drawbridge.name = Postavit padací most
tool.drawbridge.desc = Most, který můžeš vytáhnout: táhni přes řeku a postav ho, kliknutím přepínáš: dole, nahoře, automaticky (zvedne se, když se blíží nepřátelé). Dřevo nad vodou hoří, kámen nad lávou ne. tool.drawbridge.desc = Most, který můžeš vytáhnout: táhni přes řeku a postav ho, kliknutím přepínáš: dole, nahoře, automaticky (zvedne se, když se blíží nepřátelé). Dřevo nad vodou hoří, kámen nad lávou ne.
cost.bridge = {0} zlata/políčko přes vodu, {1} přes lávu cost.bridge = {0} zlata + {1} dřeva/pole nad vodou, {2} zlata nad lávou
cost.drawbridge = {0} zlata + {1} dřeva/pole nad vodou, {2} zlata nad lávou
hint.bridge_where = Mosty musí začínat na tvé zemi: táhni ze svého území přes řeku. hint.bridge_where = Mosty musí začínat na tvé zemi: táhni ze svého území přes řeku.
hint.bridge_fire = Dřevěné mosty hoří: drž ohnivé pasti, ohnivý dech a blesky dál od nich – kamenné mosty nad lávou nehoří. hint.bridge_fire = Dřevěné mosty hoří: drž ohnivé pasti, ohnivý dech a blesky dál od nich – kamenné mosty nad lávou nehoří.
hint.bridge_river = Mosty lze stavět jen přes vodu nebo lávu. hint.bridge_river = Mosty lze stavět jen přes vodu nebo lávu.
@@ -414,6 +417,9 @@ tile.lava = Láva
tile.lava_info = Co do ní spadne, shoří. Přecházejí ji kamenné mosty. tile.lava_info = Co do ní spadne, shoří. Přecházejí ji kamenné mosty.
tile.bridge = Dřevěný most tile.bridge = Dřevěný most
tile.lavabridge = Kamenný most tile.lavabridge = Kamenný most
tile.mushroom = Obří houba
tile.tree = Strom
tile.plant_info = Označ krumpáčem: skřítek ho pokácí za {0} dřeva.
tile.drawbridge = Padací most tile.drawbridge = Padací most
tile.drawbridge_up = Vytažený tile.drawbridge_up = Vytažený
tile.drawbridge_down = Spuštěný tile.drawbridge_down = Spuštěný
@@ -1198,6 +1204,7 @@ ed.terrain.silver = Stříbrná žíla
ed.terrain.ruby = Rubínová žíla ed.terrain.ruby = Rubínová žíla
ed.terrain.diamond = Diamantová žíla ed.terrain.diamond = Diamantová žíla
ed.terrain.steel = Ocelová zeď ed.terrain.steel = Ocelová zeď
ed.terrain.mushroom = Obří houba
ed.place.core = Jádro duše ed.place.core = Jádro duše
ed.place.portal = Portál ed.place.portal = Portál
ed.place.gate = Brána hrdinů ed.place.gate = Brána hrdinů
+8 -1
View File
@@ -64,6 +64,7 @@ msg.flag_removed = Angrebsflaget er fjernet. Dine væsner vender tilbage.
msg.flag_set = Angrebsflaget er sat! Kampklare væsner samles der. msg.flag_set = Angrebsflaget er sat! Kampklare væsner samles der.
msg.creature_leaves = En utilfreds {0} forlader dit rige! msg.creature_leaves = En utilfreds {0} forlader dit rige!
msg.no_gold = Ikke nok guld! msg.no_gold = Ikke nok guld!
msg.no_wood = Ikke nok træ! Fæld kæmpesvampe (eller træer) med hakken.
msg.sold = Rum solgt: +{0} guld. msg.sold = Rum solgt: +{0} guld.
msg.no_mana_bolt = Ikke nok mana til Lyn. msg.no_mana_bolt = Ikke nok mana til Lyn.
msg.no_mana_heal = Ikke nok mana til Helbred. msg.no_mana_heal = Ikke nok mana til Helbred.
@@ -124,6 +125,7 @@ ui.key = Tast: {0}
# ---- HUD # ---- HUD
hud.gold = Guld hud.gold = Guld
hud.wood = Træ
hud.mana = Mana hud.mana = Mana
hud.core = Kerne hud.core = Kerne
hud.gate = Port hud.gate = Port
@@ -401,7 +403,8 @@ tool.bridge.desc = Bygger en bro over vand eller lava. Træk fra din egen jord h
tool.drawbridge.label = Vindebro tool.drawbridge.label = Vindebro
tool.drawbridge.name = Byg vindebro tool.drawbridge.name = Byg vindebro
tool.drawbridge.desc = En bro du kan hejse op: træk over floden for at bygge den, klik for at skifte: nede, oppe, automatisk (hejses når fjender nærmer sig). Træ over vand brænder, sten over lava gør ikke. tool.drawbridge.desc = En bro du kan hejse op: træk over floden for at bygge den, klik for at skifte: nede, oppe, automatisk (hejses når fjender nærmer sig). Træ over vand brænder, sten over lava gør ikke.
cost.bridge = {0} guld/felt over vand, {1} over lava cost.bridge = {0} guld + {1} træ/felt over vand, {2} guld over lava
cost.drawbridge = {0} guld + {1} træ/felt over vand, {2} guld over lava
hint.bridge_where = Broer skal starte på din egen jord: træk fra dit område hen over floden. hint.bridge_where = Broer skal starte på din egen jord: træk fra dit område hen over floden.
hint.bridge_fire = Træbroer brænder: hold ildfælder, ildånde og lyn væk fra dem – stenbroer over lava er brandsikre. hint.bridge_fire = Træbroer brænder: hold ildfælder, ildånde og lyn væk fra dem – stenbroer over lava er brandsikre.
hint.bridge_river = Broer kan kun bygges over vand eller lava. hint.bridge_river = Broer kan kun bygges over vand eller lava.
@@ -413,6 +416,9 @@ tile.lava = Lava
tile.lava_info = Hvad der falder i, brænder. Stenbroer fører over. tile.lava_info = Hvad der falder i, brænder. Stenbroer fører over.
tile.bridge = Træbro tile.bridge = Træbro
tile.lavabridge = Stenbro tile.lavabridge = Stenbro
tile.mushroom = Kæmpesvamp
tile.tree = Træ
tile.plant_info = Markér med hakken: en imp fælder den for {0} træ.
tile.drawbridge = Vindebro tile.drawbridge = Vindebro
tile.drawbridge_up = Hejst op tile.drawbridge_up = Hejst op
tile.drawbridge_down = Sænket tile.drawbridge_down = Sænket
@@ -1197,6 +1203,7 @@ ed.terrain.silver = Sølvåre
ed.terrain.ruby = Rubinåre ed.terrain.ruby = Rubinåre
ed.terrain.diamond = Diamantåre ed.terrain.diamond = Diamantåre
ed.terrain.steel = Stålmur ed.terrain.steel = Stålmur
ed.terrain.mushroom = Kæmpesvamp
ed.place.core = Sjælekerne ed.place.core = Sjælekerne
ed.place.portal = Portal ed.place.portal = Portal
ed.place.gate = Helteport ed.place.gate = Helteport
+8 -1
View File
@@ -63,6 +63,7 @@ msg.flag_removed = Angriffsflagge entfernt. Deine Kreaturen kehren zurück.
msg.flag_set = Angriffsflagge gesetzt! Kampfbereite Kreaturen sammeln sich dort. msg.flag_set = Angriffsflagge gesetzt! Kampfbereite Kreaturen sammeln sich dort.
msg.creature_leaves = Ein unzufriedener {0} verlässt dein Reich! msg.creature_leaves = Ein unzufriedener {0} verlässt dein Reich!
msg.no_gold = Nicht genug Gold! msg.no_gold = Nicht genug Gold!
msg.no_wood = Nicht genug Holz! Fälle Riesenpilze (oder Bäume) mit der Spitzhacke.
msg.sold = Räume verkauft: +{0} Gold. msg.sold = Räume verkauft: +{0} Gold.
msg.no_mana_bolt = Nicht genug Mana für den Blitz. msg.no_mana_bolt = Nicht genug Mana für den Blitz.
msg.no_mana_heal = Nicht genug Mana für die Heilung. msg.no_mana_heal = Nicht genug Mana für die Heilung.
@@ -123,6 +124,7 @@ ui.key = Taste: {0}
# ---- Anzeige # ---- Anzeige
hud.gold = Gold hud.gold = Gold
hud.wood = Holz
hud.mana = Mana hud.mana = Mana
hud.core = Kern hud.core = Kern
hud.gate = Tor hud.gate = Tor
@@ -401,7 +403,8 @@ tool.bridge.desc = Baut eine Brücke über Wasser oder Lava. Ziehe von deinem Ge
tool.drawbridge.label = Zugbrücke tool.drawbridge.label = Zugbrücke
tool.drawbridge.name = Zugbrücke bauen tool.drawbridge.name = Zugbrücke bauen
tool.drawbridge.desc = Eine Brücke, die du hochziehen kannst: Ziehe über den Fluss, um sie zu bauen, klicke sie an zum Umschalten: unten, oben, automatisch (hebt sich, wenn Feinde nahen). Holz über Wasser brennt, Stein über Lava nicht. tool.drawbridge.desc = Eine Brücke, die du hochziehen kannst: Ziehe über den Fluss, um sie zu bauen, klicke sie an zum Umschalten: unten, oben, automatisch (hebt sich, wenn Feinde nahen). Holz über Wasser brennt, Stein über Lava nicht.
cost.bridge = {0} Gold/Feld über Wasser, {1} über Lava cost.bridge = {0} Gold + {1} Holz/Kachel über Wasser, {2} Gold über Lava
cost.drawbridge = {0} Gold + {1} Holz/Kachel über Wasser, {2} Gold über Lava
hint.bridge_where = Brücken müssen an deinem Gebiet beginnen: Ziehe von deinem Reich aus über den Fluss. hint.bridge_where = Brücken müssen an deinem Gebiet beginnen: Ziehe von deinem Reich aus über den Fluss.
hint.bridge_fire = Holzbrücken brennen: Halte Feuerfallen, Feueratem und Blitze von ihnen fern – Steinbrücken über Lava sind feuerfest. hint.bridge_fire = Holzbrücken brennen: Halte Feuerfallen, Feueratem und Blitze von ihnen fern – Steinbrücken über Lava sind feuerfest.
hint.bridge_river = Brücken lassen sich nur über Wasser oder Lava bauen. hint.bridge_river = Brücken lassen sich nur über Wasser oder Lava bauen.
@@ -413,6 +416,9 @@ tile.lava = Lava
tile.lava_info = Was hineinfällt, verbrennt. Steinbrücken führen hinüber. tile.lava_info = Was hineinfällt, verbrennt. Steinbrücken führen hinüber.
tile.bridge = Holzbrücke tile.bridge = Holzbrücke
tile.lavabridge = Steinbrücke tile.lavabridge = Steinbrücke
tile.mushroom = Riesenpilz
tile.tree = Baum
tile.plant_info = Mit der Spitzhacke markieren: Ein Imp fällt ihn für {0} Holz.
tile.drawbridge = Zugbrücke tile.drawbridge = Zugbrücke
tile.drawbridge_up = Hochgezogen tile.drawbridge_up = Hochgezogen
tile.drawbridge_down = Herabgelassen tile.drawbridge_down = Herabgelassen
@@ -1197,6 +1203,7 @@ ed.terrain.silver = Silberader
ed.terrain.ruby = Rubinader ed.terrain.ruby = Rubinader
ed.terrain.diamond = Diamantader ed.terrain.diamond = Diamantader
ed.terrain.steel = Stahlwand ed.terrain.steel = Stahlwand
ed.terrain.mushroom = Riesenpilz
ed.place.core = Seelenkern ed.place.core = Seelenkern
ed.place.portal = Portal ed.place.portal = Portal
ed.place.gate = Heldentor ed.place.gate = Heldentor
+8 -1
View File
@@ -64,6 +64,7 @@ msg.flag_removed = Η σημαία επίθεσης αφαιρέθηκε. Τα
msg.flag_set = Η σημαία επίθεσης στήθηκε! Τα μάχιμα πλάσματα μαζεύονται εκεί. msg.flag_set = Η σημαία επίθεσης στήθηκε! Τα μάχιμα πλάσματα μαζεύονται εκεί.
msg.creature_leaves = Δυσαρεστημένο πλάσμα εγκαταλείπει το βασίλειό σου: {0}! msg.creature_leaves = Δυσαρεστημένο πλάσμα εγκαταλείπει το βασίλειό σου: {0}!
msg.no_gold = Δεν φτάνει ο χρυσός! msg.no_gold = Δεν φτάνει ο χρυσός!
msg.no_wood = Δεν φτάνει το ξύλο! Κόψε γιγάντια μανιτάρια (ή δέντρα) με την αξίνα.
msg.sold = Δωμάτια πουλήθηκαν: +{0} χρυσός. msg.sold = Δωμάτια πουλήθηκαν: +{0} χρυσός.
msg.no_mana_bolt = Δεν φτάνει το μάνα για Κεραυνό. msg.no_mana_bolt = Δεν φτάνει το μάνα για Κεραυνό.
msg.no_mana_heal = Δεν φτάνει το μάνα για Ίαση. msg.no_mana_heal = Δεν φτάνει το μάνα για Ίαση.
@@ -124,6 +125,7 @@ ui.key = Πλήκτρο: {0}
# ---- HUD # ---- HUD
hud.gold = Χρυσός hud.gold = Χρυσός
hud.wood = Ξύλο
hud.mana = Μάνα hud.mana = Μάνα
hud.core = Πυρήνας hud.core = Πυρήνας
hud.gate = Πύλη hud.gate = Πύλη
@@ -402,7 +404,8 @@ tool.bridge.desc = Χτίζει γέφυρα πάνω από νερό ή λάβ
tool.drawbridge.label = Κινητή γέφυρα tool.drawbridge.label = Κινητή γέφυρα
tool.drawbridge.name = Χτίσε κινητή γέφυρα tool.drawbridge.name = Χτίσε κινητή γέφυρα
tool.drawbridge.desc = Γέφυρα που μπορείς να σηκώσεις: σύρε πάνω από το ποτάμι για να τη χτίσεις, κάνε κλικ για αλλαγή: κάτω, πάνω, αυτόματα (σηκώνεται όταν πλησιάζουν εχθροί). Το ξύλο πάνω από νερό καίγεται, η πέτρα πάνω από λάβα όχι. tool.drawbridge.desc = Γέφυρα που μπορείς να σηκώσεις: σύρε πάνω από το ποτάμι για να τη χτίσεις, κάνε κλικ για αλλαγή: κάτω, πάνω, αυτόματα (σηκώνεται όταν πλησιάζουν εχθροί). Το ξύλο πάνω από νερό καίγεται, η πέτρα πάνω από λάβα όχι.
cost.bridge = {0} χρυσός/πλακίδιο πάνω από νερό, {1} πάνω από λάβα cost.bridge = {0} χρυσός + {1} ξύλο/πλακίδιο πάνω από νερό, {2} χρυσός πάνω από λάβα
cost.drawbridge = {0} χρυσός + {1} ξύλο/πλακίδιο πάνω από νερό, {2} χρυσός πάνω από λάβα
hint.bridge_where = Οι γέφυρες ξεκινούν από το δικό σου έδαφος: σύρε από την επικράτειά σου πέρα από το ποτάμι. hint.bridge_where = Οι γέφυρες ξεκινούν από το δικό σου έδαφος: σύρε από την επικράτειά σου πέρα από το ποτάμι.
hint.bridge_fire = Οι ξύλινες γέφυρες καίγονται: κράτα μακριά παγίδες φωτιάς, πύρινη ανάσα και κεραυνούς – οι πέτρινες γέφυρες πάνω από λάβα δεν καίγονται. hint.bridge_fire = Οι ξύλινες γέφυρες καίγονται: κράτα μακριά παγίδες φωτιάς, πύρινη ανάσα και κεραυνούς – οι πέτρινες γέφυρες πάνω από λάβα δεν καίγονται.
hint.bridge_river = Γέφυρες χτίζονται μόνο πάνω από νερό ή λάβα. hint.bridge_river = Γέφυρες χτίζονται μόνο πάνω από νερό ή λάβα.
@@ -414,6 +417,9 @@ tile.lava = Λάβα
tile.lava_info = Ό,τι πέφτει μέσα καίγεται. Οι πέτρινες γέφυρες την περνούν. tile.lava_info = Ό,τι πέφτει μέσα καίγεται. Οι πέτρινες γέφυρες την περνούν.
tile.bridge = Ξύλινη γέφυρα tile.bridge = Ξύλινη γέφυρα
tile.lavabridge = Πέτρινη γέφυρα tile.lavabridge = Πέτρινη γέφυρα
tile.mushroom = Γιγάντιο μανιτάρι
tile.tree = Δέντρο
tile.plant_info = Σημάδεψέ το με την αξίνα: ένα διαβολάκι το κόβει για {0} ξύλο.
tile.drawbridge = Κινητή γέφυρα tile.drawbridge = Κινητή γέφυρα
tile.drawbridge_up = Σηκωμένη tile.drawbridge_up = Σηκωμένη
tile.drawbridge_down = Κατεβασμένη tile.drawbridge_down = Κατεβασμένη
@@ -1198,6 +1204,7 @@ ed.terrain.silver = Φλέβα ασημιού
ed.terrain.ruby = Φλέβα ρουμπινιού ed.terrain.ruby = Φλέβα ρουμπινιού
ed.terrain.diamond = Φλέβα διαμαντιού ed.terrain.diamond = Φλέβα διαμαντιού
ed.terrain.steel = Ατσάλινος τοίχος ed.terrain.steel = Ατσάλινος τοίχος
ed.terrain.mushroom = Γιγάντιο μανιτάρι
ed.place.core = Πυρήνας ψυχής ed.place.core = Πυρήνας ψυχής
ed.place.portal = Πύλη μετάβασης ed.place.portal = Πύλη μετάβασης
ed.place.gate = Πύλη ηρώων ed.place.gate = Πύλη ηρώων
+8 -1
View File
@@ -64,6 +64,7 @@ msg.flag_removed = Attack flag removed. Your creatures return.
msg.flag_set = Attack flag set! Battle-ready creatures gather there. msg.flag_set = Attack flag set! Battle-ready creatures gather there.
msg.creature_leaves = An unhappy {0} leaves your realm! msg.creature_leaves = An unhappy {0} leaves your realm!
msg.no_gold = Not enough gold! msg.no_gold = Not enough gold!
msg.no_wood = Not enough wood! Fell giant mushrooms (or trees) with the pick.
msg.sold = Rooms sold: +{0} gold. msg.sold = Rooms sold: +{0} gold.
msg.no_mana_bolt = Not enough mana for Lightning. msg.no_mana_bolt = Not enough mana for Lightning.
msg.no_mana_heal = Not enough mana for Heal. msg.no_mana_heal = Not enough mana for Heal.
@@ -124,6 +125,7 @@ ui.key = Key: {0}
# ---- HUD # ---- HUD
hud.gold = Gold hud.gold = Gold
hud.wood = Wood
hud.mana = Mana hud.mana = Mana
hud.core = Core hud.core = Core
hud.gate = Gate hud.gate = Gate
@@ -402,7 +404,8 @@ tool.bridge.desc = Builds a bridge over water or lava. Drag from your own ground
tool.drawbridge.label = Drawbridge tool.drawbridge.label = Drawbridge
tool.drawbridge.name = Build Drawbridge tool.drawbridge.name = Build Drawbridge
tool.drawbridge.desc = A bridge you can raise: drag across the river to build it, click it to switch: down, up, automatic (rises when enemies come near). Wood over water burns, stone over lava does not. tool.drawbridge.desc = A bridge you can raise: drag across the river to build it, click it to switch: down, up, automatic (rises when enemies come near). Wood over water burns, stone over lava does not.
cost.bridge = {0} gold/tile over water, {1} over lava cost.bridge = {0} gold + {1} wood/tile over water, {2} gold over lava
cost.drawbridge = {0} gold + {1} wood/tile over water, {2} gold over lava
hint.bridge_where = Bridges must start at your own ground: drag from your territory across the river. hint.bridge_where = Bridges must start at your own ground: drag from your territory across the river.
hint.bridge_fire = Wooden bridges burn: keep fire traps, fire breath and lightning away from them – stone bridges over lava are fireproof. hint.bridge_fire = Wooden bridges burn: keep fire traps, fire breath and lightning away from them – stone bridges over lava are fireproof.
hint.bridge_river = Bridges can only be built over water or lava. hint.bridge_river = Bridges can only be built over water or lava.
@@ -414,6 +417,9 @@ tile.lava = Lava
tile.lava_info = Whatever falls in burns. Stone bridges cross it. tile.lava_info = Whatever falls in burns. Stone bridges cross it.
tile.bridge = Wooden bridge tile.bridge = Wooden bridge
tile.lavabridge = Stone bridge tile.lavabridge = Stone bridge
tile.mushroom = Giant mushroom
tile.tree = Tree
tile.plant_info = Mark it with the pick: an imp fells it for {0} wood.
tile.drawbridge = Drawbridge tile.drawbridge = Drawbridge
tile.drawbridge_up = Raised tile.drawbridge_up = Raised
tile.drawbridge_down = Lowered tile.drawbridge_down = Lowered
@@ -1198,6 +1204,7 @@ ed.terrain.silver = Silver vein
ed.terrain.ruby = Ruby vein ed.terrain.ruby = Ruby vein
ed.terrain.diamond = Diamond vein ed.terrain.diamond = Diamond vein
ed.terrain.steel = Steel wall ed.terrain.steel = Steel wall
ed.terrain.mushroom = Giant mushroom
ed.place.core = Soul core ed.place.core = Soul core
ed.place.portal = Portal ed.place.portal = Portal
ed.place.gate = Hero gate ed.place.gate = Hero gate
+8 -1
View File
@@ -64,6 +64,7 @@ msg.flag_removed = Bandera de ataque retirada. Tus criaturas regresan.
msg.flag_set = ¡Bandera de ataque colocada! Las criaturas listas para luchar se reúnen allí. msg.flag_set = ¡Bandera de ataque colocada! Las criaturas listas para luchar se reúnen allí.
msg.creature_leaves = ¡Un {0} descontento abandona tu reino! msg.creature_leaves = ¡Un {0} descontento abandona tu reino!
msg.no_gold = ¡No hay oro suficiente! msg.no_gold = ¡No hay oro suficiente!
msg.no_wood = ¡No hay madera suficiente! Tala setas gigantes (o árboles) con el pico.
msg.sold = Salas vendidas: +{0} de oro. msg.sold = Salas vendidas: +{0} de oro.
msg.no_mana_bolt = No hay maná suficiente para el Rayo. msg.no_mana_bolt = No hay maná suficiente para el Rayo.
msg.no_mana_heal = No hay maná suficiente para Curar. msg.no_mana_heal = No hay maná suficiente para Curar.
@@ -124,6 +125,7 @@ ui.key = Tecla: {0}
# ---- HUD # ---- HUD
hud.gold = Oro hud.gold = Oro
hud.wood = Madera
hud.mana = Maná hud.mana = Maná
hud.core = Núcleo hud.core = Núcleo
hud.gate = Puerta hud.gate = Puerta
@@ -402,7 +404,8 @@ tool.bridge.desc = Construye un puente sobre agua o lava. Arrastra desde tu prop
tool.drawbridge.label = Levadizo tool.drawbridge.label = Levadizo
tool.drawbridge.name = Construir puente levadizo tool.drawbridge.name = Construir puente levadizo
tool.drawbridge.desc = Un puente que puedes alzar: arrástralo sobre el río para construirlo y haz clic para cambiar: abajo, arriba, automático (se alza cuando se acercan enemigos). La madera sobre agua arde, la piedra sobre lava no. tool.drawbridge.desc = Un puente que puedes alzar: arrástralo sobre el río para construirlo y haz clic para cambiar: abajo, arriba, automático (se alza cuando se acercan enemigos). La madera sobre agua arde, la piedra sobre lava no.
cost.bridge = {0} de oro/casilla sobre agua, {1} sobre lava cost.bridge = {0} oro + {1} madera/casilla sobre agua, {2} oro sobre lava
cost.drawbridge = {0} oro + {1} madera/casilla sobre agua, {2} oro sobre lava
hint.bridge_where = Los puentes deben empezar en tu propio suelo: arrastra desde tu territorio a través del río. hint.bridge_where = Los puentes deben empezar en tu propio suelo: arrastra desde tu territorio a través del río.
hint.bridge_fire = Los puentes de madera arden: aleja de ellos las trampas de fuego, el aliento de fuego y los rayos; los puentes de piedra sobre lava son ignífugos. hint.bridge_fire = Los puentes de madera arden: aleja de ellos las trampas de fuego, el aliento de fuego y los rayos; los puentes de piedra sobre lava son ignífugos.
hint.bridge_river = Los puentes solo pueden construirse sobre agua o lava. hint.bridge_river = Los puentes solo pueden construirse sobre agua o lava.
@@ -414,6 +417,9 @@ tile.lava = Lava
tile.lava_info = Lo que cae dentro arde. Los puentes de piedra lo cruzan. tile.lava_info = Lo que cae dentro arde. Los puentes de piedra lo cruzan.
tile.bridge = Puente de madera tile.bridge = Puente de madera
tile.lavabridge = Puente de piedra tile.lavabridge = Puente de piedra
tile.mushroom = Seta gigante
tile.tree = Árbol
tile.plant_info = Márcalo con el pico: un diablillo lo tala por {0} de madera.
tile.drawbridge = Puente levadizo tile.drawbridge = Puente levadizo
tile.drawbridge_up = Alzado tile.drawbridge_up = Alzado
tile.drawbridge_down = Bajado tile.drawbridge_down = Bajado
@@ -1190,6 +1196,7 @@ ed.terrain.silver = Veta de plata
ed.terrain.ruby = Veta de rubíes ed.terrain.ruby = Veta de rubíes
ed.terrain.diamond = Veta de diamantes ed.terrain.diamond = Veta de diamantes
ed.terrain.steel = Muro de acero ed.terrain.steel = Muro de acero
ed.terrain.mushroom = Seta gigante
ed.place.core = Núcleo de alma ed.place.core = Núcleo de alma
ed.place.portal = Portal ed.place.portal = Portal
ed.place.gate = Puerta de héroes ed.place.gate = Puerta de héroes
+8 -1
View File
@@ -64,6 +64,7 @@ msg.flag_removed = Hyökkäyslippu poistettu. Olentosi palaavat.
msg.flag_set = Hyökkäyslippu asetettu! Taisteluvalmiit olennot kokoontuvat sinne. msg.flag_set = Hyökkäyslippu asetettu! Taisteluvalmiit olennot kokoontuvat sinne.
msg.creature_leaves = Tyytymätön olento lähtee valtakunnastasi: {0}! msg.creature_leaves = Tyytymätön olento lähtee valtakunnastasi: {0}!
msg.no_gold = Kulta ei riitä! msg.no_gold = Kulta ei riitä!
msg.no_wood = Ei tarpeeksi puuta! Kaada jättisieniä (tai puita) hakulla.
msg.sold = Huoneita myyty: +{0} kultaa. msg.sold = Huoneita myyty: +{0} kultaa.
msg.no_mana_bolt = Mana ei riitä salamaan. msg.no_mana_bolt = Mana ei riitä salamaan.
msg.no_mana_heal = Mana ei riitä parannukseen. msg.no_mana_heal = Mana ei riitä parannukseen.
@@ -124,6 +125,7 @@ ui.key = Näppäin: {0}
# ---- HUD # ---- HUD
hud.gold = Kulta hud.gold = Kulta
hud.wood = Puu
hud.mana = Mana hud.mana = Mana
hud.core = Ydin hud.core = Ydin
hud.gate = Portti hud.gate = Portti
@@ -402,7 +404,8 @@ tool.bridge.desc = Rakentaa sillan veden tai laavan yli. Vedä omalta maaltasi j
tool.drawbridge.label = Laskusilta tool.drawbridge.label = Laskusilta
tool.drawbridge.name = Rakenna laskusilta tool.drawbridge.name = Rakenna laskusilta
tool.drawbridge.desc = Silta, jonka voit nostaa: vedä joen yli rakentaaksesi, napsauta vaihtaaksesi: alhaalla, ylhäällä, automaattinen (nousee vihollisten lähestyessä). Puu veden yllä palaa, kivi laavan yllä ei. tool.drawbridge.desc = Silta, jonka voit nostaa: vedä joen yli rakentaaksesi, napsauta vaihtaaksesi: alhaalla, ylhäällä, automaattinen (nousee vihollisten lähestyessä). Puu veden yllä palaa, kivi laavan yllä ei.
cost.bridge = {0} kultaa/ruutu veden yli, {1} laavan yli cost.bridge = {0} kultaa + {1} puuta/ruutu veden yllä, {2} kultaa laavan yllä
cost.drawbridge = {0} kultaa + {1} puuta/ruutu veden yllä, {2} kultaa laavan yllä
hint.bridge_where = Siltojen on alettava omalta maaltasi: vedä alueeltasi joen yli. hint.bridge_where = Siltojen on alettava omalta maaltasi: vedä alueeltasi joen yli.
hint.bridge_fire = Puusillat palavat: pidä tuliansat, tulihenkäys ja salamat loitolla – kivisillat laavan yllä eivät pala. hint.bridge_fire = Puusillat palavat: pidä tuliansat, tulihenkäys ja salamat loitolla – kivisillat laavan yllä eivät pala.
hint.bridge_river = Siltoja voi rakentaa vain veden tai laavan yli. hint.bridge_river = Siltoja voi rakentaa vain veden tai laavan yli.
@@ -414,6 +417,9 @@ tile.lava = Laava
tile.lava_info = Mikä sinne putoaa, se palaa. Kivisillat ylittävät sen. tile.lava_info = Mikä sinne putoaa, se palaa. Kivisillat ylittävät sen.
tile.bridge = Puusilta tile.bridge = Puusilta
tile.lavabridge = Kivisilta tile.lavabridge = Kivisilta
tile.mushroom = Jättisieni
tile.tree = Puu
tile.plant_info = Merkitse hakulla: piru kaataa sen {0} puusta.
tile.drawbridge = Laskusilta tile.drawbridge = Laskusilta
tile.drawbridge_up = Nostettu tile.drawbridge_up = Nostettu
tile.drawbridge_down = Laskettu tile.drawbridge_down = Laskettu
@@ -1198,6 +1204,7 @@ ed.terrain.silver = Hopeasuoni
ed.terrain.ruby = Rubiinisuoni ed.terrain.ruby = Rubiinisuoni
ed.terrain.diamond = Timanttisuoni ed.terrain.diamond = Timanttisuoni
ed.terrain.steel = Teräsmuuri ed.terrain.steel = Teräsmuuri
ed.terrain.mushroom = Jättisieni
ed.place.core = Sieluydin ed.place.core = Sieluydin
ed.place.portal = Portaali ed.place.portal = Portaali
ed.place.gate = Sankariportti ed.place.gate = Sankariportti
+8 -1
View File
@@ -64,6 +64,7 @@ msg.flag_removed = Zastava napada uklonjena. Stvorenja se vraćaju.
msg.flag_set = Zastava napada postavljena! Stvorenja spremna za boj okupljaju se ondje. msg.flag_set = Zastava napada postavljena! Stvorenja spremna za boj okupljaju se ondje.
msg.creature_leaves = Nezadovoljno stvorenje napušta tvoje carstvo: {0}! msg.creature_leaves = Nezadovoljno stvorenje napušta tvoje carstvo: {0}!
msg.no_gold = Nema dovoljno zlata! msg.no_gold = Nema dovoljno zlata!
msg.no_wood = Nema dovoljno drva! Sruši divovske gljive (ili stabla) krampom.
msg.sold = Prostorije prodane: +{0} zlata. msg.sold = Prostorije prodane: +{0} zlata.
msg.no_mana_bolt = Nema dovoljno mane za Munju. msg.no_mana_bolt = Nema dovoljno mane za Munju.
msg.no_mana_heal = Nema dovoljno mane za Liječenje. msg.no_mana_heal = Nema dovoljno mane za Liječenje.
@@ -124,6 +125,7 @@ ui.key = Tipka: {0}
# ---- HUD # ---- HUD
hud.gold = Zlato hud.gold = Zlato
hud.wood = Drvo
hud.mana = Mana hud.mana = Mana
hud.core = Jezgra hud.core = Jezgra
hud.gate = Vrata hud.gate = Vrata
@@ -402,7 +404,8 @@ tool.bridge.desc = Gradi most preko vode ili lave. Povuci sa svog tla preko rije
tool.drawbridge.label = Pokretni most tool.drawbridge.label = Pokretni most
tool.drawbridge.name = Izgradi pokretni most tool.drawbridge.name = Izgradi pokretni most
tool.drawbridge.desc = Most koji možeš podići: povuci preko rijeke da ga izgradiš, klikni za promjenu: dolje, gore, automatski (diže se kad se neprijatelji približe). Drvo nad vodom gori, kamen nad lavom ne. tool.drawbridge.desc = Most koji možeš podići: povuci preko rijeke da ga izgradiš, klikni za promjenu: dolje, gore, automatski (diže se kad se neprijatelji približe). Drvo nad vodom gori, kamen nad lavom ne.
cost.bridge = {0} zlata/polje preko vode, {1} preko lave cost.bridge = {0} zlata + {1} drva/polje nad vodom, {2} zlata nad lavom
cost.drawbridge = {0} zlata + {1} drva/polje nad vodom, {2} zlata nad lavom
hint.bridge_where = Mostovi moraju početi na tvom tlu: povuci sa svog teritorija preko rijeke. hint.bridge_where = Mostovi moraju početi na tvom tlu: povuci sa svog teritorija preko rijeke.
hint.bridge_fire = Drveni mostovi gore: drži vatrene zamke, vatreni dah i munje podalje – kameni mostovi nad lavom ne gore. hint.bridge_fire = Drveni mostovi gore: drži vatrene zamke, vatreni dah i munje podalje – kameni mostovi nad lavom ne gore.
hint.bridge_river = Mostovi se grade samo preko vode ili lave. hint.bridge_river = Mostovi se grade samo preko vode ili lave.
@@ -414,6 +417,9 @@ tile.lava = Lava
tile.lava_info = Što god upadne, izgori. Kameni mostovi je premošćuju. tile.lava_info = Što god upadne, izgori. Kameni mostovi je premošćuju.
tile.bridge = Drveni most tile.bridge = Drveni most
tile.lavabridge = Kameni most tile.lavabridge = Kameni most
tile.mushroom = Divovska gljiva
tile.tree = Stablo
tile.plant_info = Označi krampom: vražić je sruši za {0} drva.
tile.drawbridge = Pokretni most tile.drawbridge = Pokretni most
tile.drawbridge_up = Podignut tile.drawbridge_up = Podignut
tile.drawbridge_down = Spušten tile.drawbridge_down = Spušten
@@ -1198,6 +1204,7 @@ ed.terrain.silver = Žila srebra
ed.terrain.ruby = Žila rubina ed.terrain.ruby = Žila rubina
ed.terrain.diamond = Žila dijamanata ed.terrain.diamond = Žila dijamanata
ed.terrain.steel = Čelični zid ed.terrain.steel = Čelični zid
ed.terrain.mushroom = Divovska gljiva
ed.place.core = Jezgra duše ed.place.core = Jezgra duše
ed.place.portal = Portal ed.place.portal = Portal
ed.place.gate = Vrata junaka ed.place.gate = Vrata junaka
+8 -1
View File
@@ -64,6 +64,7 @@ msg.flag_removed = Támadási zászló eltávolítva. A lényeid visszatérnek.
msg.flag_set = Támadási zászló kitűzve! A harcra kész lények ott gyülekeznek. msg.flag_set = Támadási zászló kitűzve! A harcra kész lények ott gyülekeznek.
msg.creature_leaves = Egy elégedetlen lény elhagyja a birodalmadat: {0}! msg.creature_leaves = Egy elégedetlen lény elhagyja a birodalmadat: {0}!
msg.no_gold = Nincs elég arany! msg.no_gold = Nincs elég arany!
msg.no_wood = Nincs elég fa! Vágj ki óriásgombákat (vagy fákat) a csákánnyal.
msg.sold = Szobák eladva: +{0} arany. msg.sold = Szobák eladva: +{0} arany.
msg.no_mana_bolt = Nincs elég mana a Villámhoz. msg.no_mana_bolt = Nincs elég mana a Villámhoz.
msg.no_mana_heal = Nincs elég mana a Gyógyításhoz. msg.no_mana_heal = Nincs elég mana a Gyógyításhoz.
@@ -124,6 +125,7 @@ ui.key = Gomb: {0}
# ---- HUD # ---- HUD
hud.gold = Arany hud.gold = Arany
hud.wood = Fa
hud.mana = Mana hud.mana = Mana
hud.core = Mag hud.core = Mag
hud.gate = Kapu hud.gate = Kapu
@@ -402,7 +404,8 @@ tool.bridge.desc = Hidat épít víz vagy láva fölé. Húzd a saját földedr
tool.drawbridge.label = Felvonóhíd tool.drawbridge.label = Felvonóhíd
tool.drawbridge.name = Felvonóhíd építése tool.drawbridge.name = Felvonóhíd építése
tool.drawbridge.desc = Felhúzható híd: húzd át a folyón az építéshez, kattints rá a váltáshoz: lent, fent, automatikus (felemelkedik, ha ellenség közeledik). A víz feletti fa ég, a láva feletti kő nem. tool.drawbridge.desc = Felhúzható híd: húzd át a folyón az építéshez, kattints rá a váltáshoz: lent, fent, automatikus (felemelkedik, ha ellenség közeledik). A víz feletti fa ég, a láva feletti kő nem.
cost.bridge = {0} arany/mező víz fölött, {1} láva fölött cost.bridge = {0} arany + {1} fa/mező víz fölött, {2} arany láva fölött
cost.drawbridge = {0} arany + {1} fa/mező víz fölött, {2} arany láva fölött
hint.bridge_where = A hídnak a saját földedről kell indulnia: húzd a területedről a folyón át. hint.bridge_where = A hídnak a saját földedről kell indulnia: húzd a területedről a folyón át.
hint.bridge_fire = A fahidak égnek: tartsd távol tőlük a tűzcsapdákat, a tűzleheletet és a villámokat – a láva feletti kőhidak tűzállók. hint.bridge_fire = A fahidak égnek: tartsd távol tőlük a tűzcsapdákat, a tűzleheletet és a villámokat – a láva feletti kőhidak tűzállók.
hint.bridge_river = Hidat csak víz vagy láva fölé lehet építeni. hint.bridge_river = Hidat csak víz vagy láva fölé lehet építeni.
@@ -414,6 +417,9 @@ tile.lava = Láva
tile.lava_info = Ami beleesik, elég. Kőhidak vezetnek át rajta. tile.lava_info = Ami beleesik, elég. Kőhidak vezetnek át rajta.
tile.bridge = Fahíd tile.bridge = Fahíd
tile.lavabridge = Kőhíd tile.lavabridge = Kőhíd
tile.mushroom = Óriásgomba
tile.tree = Fa
tile.plant_info = Jelöld meg a csákánnyal: egy manó kivágja {0} fáért.
tile.drawbridge = Felvonóhíd tile.drawbridge = Felvonóhíd
tile.drawbridge_up = Felhúzva tile.drawbridge_up = Felhúzva
tile.drawbridge_down = Leeresztve tile.drawbridge_down = Leeresztve
@@ -1198,6 +1204,7 @@ ed.terrain.silver = Ezüstér
ed.terrain.ruby = Rubinér ed.terrain.ruby = Rubinér
ed.terrain.diamond = Gyémántér ed.terrain.diamond = Gyémántér
ed.terrain.steel = Acélfal ed.terrain.steel = Acélfal
ed.terrain.mushroom = Óriásgomba
ed.place.core = Lélekmag ed.place.core = Lélekmag
ed.place.portal = Portál ed.place.portal = Portál
ed.place.gate = Hőskapu ed.place.gate = Hőskapu
+8 -1
View File
@@ -64,6 +64,7 @@ msg.flag_removed = Bandiera d'attacco rimossa. Le creature tornano indietro.
msg.flag_set = Bandiera d'attacco piantata! Le creature pronte alla lotta si radunano lì. msg.flag_set = Bandiera d'attacco piantata! Le creature pronte alla lotta si radunano lì.
msg.creature_leaves = Una creatura scontenta lascia il tuo regno: {0}! msg.creature_leaves = Una creatura scontenta lascia il tuo regno: {0}!
msg.no_gold = Oro insufficiente! msg.no_gold = Oro insufficiente!
msg.no_wood = Legno insufficiente! Abbatti funghi giganti (o alberi) con il piccone.
msg.sold = Stanze vendute: +{0} oro. msg.sold = Stanze vendute: +{0} oro.
msg.no_mana_bolt = Mana insufficiente per il Fulmine. msg.no_mana_bolt = Mana insufficiente per il Fulmine.
msg.no_mana_heal = Mana insufficiente per la Cura. msg.no_mana_heal = Mana insufficiente per la Cura.
@@ -124,6 +125,7 @@ ui.key = Tasto: {0}
# ---- HUD # ---- HUD
hud.gold = Oro hud.gold = Oro
hud.wood = Legno
hud.mana = Mana hud.mana = Mana
hud.core = Nucleo hud.core = Nucleo
hud.gate = Porta hud.gate = Porta
@@ -402,7 +404,8 @@ tool.bridge.desc = Costruisce un ponte su acqua o lava. Trascina dal tuo suolo a
tool.drawbridge.label = Levatoio tool.drawbridge.label = Levatoio
tool.drawbridge.name = Costruisci ponte levatoio tool.drawbridge.name = Costruisci ponte levatoio
tool.drawbridge.desc = Un ponte che puoi sollevare: trascina sul fiume per costruirlo, clicca per cambiare: giù, su, automatico (si alza quando arrivano nemici). Il legno sull'acqua brucia, la pietra sulla lava no. tool.drawbridge.desc = Un ponte che puoi sollevare: trascina sul fiume per costruirlo, clicca per cambiare: giù, su, automatico (si alza quando arrivano nemici). Il legno sull'acqua brucia, la pietra sulla lava no.
cost.bridge = {0} oro/casella sull'acqua, {1} sulla lava cost.bridge = {0} oro + {1} legno/casella sull'acqua, {2} oro sulla lava
cost.drawbridge = {0} oro + {1} legno/casella sull'acqua, {2} oro sulla lava
hint.bridge_where = I ponti devono partire dal tuo suolo: trascina dal tuo territorio attraverso il fiume. hint.bridge_where = I ponti devono partire dal tuo suolo: trascina dal tuo territorio attraverso il fiume.
hint.bridge_fire = I ponti di legno bruciano: tieni lontani trappole di fuoco, soffio infuocato e fulmini; i ponti di pietra sulla lava sono ignifughi. hint.bridge_fire = I ponti di legno bruciano: tieni lontani trappole di fuoco, soffio infuocato e fulmini; i ponti di pietra sulla lava sono ignifughi.
hint.bridge_river = I ponti si costruiscono solo su acqua o lava. hint.bridge_river = I ponti si costruiscono solo su acqua o lava.
@@ -414,6 +417,9 @@ tile.lava = Lava
tile.lava_info = Ciò che ci cade brucia. I ponti di pietra la attraversano. tile.lava_info = Ciò che ci cade brucia. I ponti di pietra la attraversano.
tile.bridge = Ponte di legno tile.bridge = Ponte di legno
tile.lavabridge = Ponte di pietra tile.lavabridge = Ponte di pietra
tile.mushroom = Fungo gigante
tile.tree = Albero
tile.plant_info = Segnalo col piccone: un diavoletto lo abbatte per {0} legno.
tile.drawbridge = Ponte levatoio tile.drawbridge = Ponte levatoio
tile.drawbridge_up = Sollevato tile.drawbridge_up = Sollevato
tile.drawbridge_down = Abbassato tile.drawbridge_down = Abbassato
@@ -1190,6 +1196,7 @@ ed.terrain.silver = Vena d'argento
ed.terrain.ruby = Vena di rubini ed.terrain.ruby = Vena di rubini
ed.terrain.diamond = Vena di diamanti ed.terrain.diamond = Vena di diamanti
ed.terrain.steel = Muro d'acciaio ed.terrain.steel = Muro d'acciaio
ed.terrain.mushroom = Fungo gigante
ed.place.core = Nucleo dell'Anima ed.place.core = Nucleo dell'Anima
ed.place.portal = Portale ed.place.portal = Portale
ed.place.gate = Porta degli Eroi ed.place.gate = Porta degli Eroi
+8 -1
View File
@@ -64,6 +64,7 @@ msg.flag_removed = Aanvalsvlag verwijderd. Je wezens keren terug.
msg.flag_set = Aanvalsvlag geplaatst! Strijdklare wezens verzamelen zich daar. msg.flag_set = Aanvalsvlag geplaatst! Strijdklare wezens verzamelen zich daar.
msg.creature_leaves = Een ontevreden {0} verlaat je rijk! msg.creature_leaves = Een ontevreden {0} verlaat je rijk!
msg.no_gold = Niet genoeg goud! msg.no_gold = Niet genoeg goud!
msg.no_wood = Niet genoeg hout! Kap reuzenpaddenstoelen (of bomen) met het houweel.
msg.sold = Kamers verkocht: +{0} goud. msg.sold = Kamers verkocht: +{0} goud.
msg.no_mana_bolt = Niet genoeg mana voor Bliksem. msg.no_mana_bolt = Niet genoeg mana voor Bliksem.
msg.no_mana_heal = Niet genoeg mana voor Genezen. msg.no_mana_heal = Niet genoeg mana voor Genezen.
@@ -124,6 +125,7 @@ ui.key = Toets: {0}
# ---- HUD # ---- HUD
hud.gold = Goud hud.gold = Goud
hud.wood = Hout
hud.mana = Mana hud.mana = Mana
hud.core = Kern hud.core = Kern
hud.gate = Poort hud.gate = Poort
@@ -402,7 +404,8 @@ tool.bridge.desc = Bouwt een brug over water of lava. Sleep vanaf je eigen grond
tool.drawbridge.label = Ophaalbrug tool.drawbridge.label = Ophaalbrug
tool.drawbridge.name = Ophaalbrug bouwen tool.drawbridge.name = Ophaalbrug bouwen
tool.drawbridge.desc = Een brug die je kunt ophalen: sleep over de rivier om hem te bouwen, klik om te wisselen: omlaag, omhoog, automatisch (gaat omhoog als vijanden naderen). Hout boven water brandt, steen boven lava niet. tool.drawbridge.desc = Een brug die je kunt ophalen: sleep over de rivier om hem te bouwen, klik om te wisselen: omlaag, omhoog, automatisch (gaat omhoog als vijanden naderen). Hout boven water brandt, steen boven lava niet.
cost.bridge = {0} goud/vak over water, {1} over lava cost.bridge = {0} goud + {1} hout/tegel boven water, {2} goud boven lava
cost.drawbridge = {0} goud + {1} hout/tegel boven water, {2} goud boven lava
hint.bridge_where = Bruggen moeten op je eigen grond beginnen: sleep vanuit je gebied over de rivier. hint.bridge_where = Bruggen moeten op je eigen grond beginnen: sleep vanuit je gebied over de rivier.
hint.bridge_fire = Houten bruggen branden: houd vuurvallen, vuuradem en bliksem uit de buurt – stenen bruggen over lava zijn vuurvast. hint.bridge_fire = Houten bruggen branden: houd vuurvallen, vuuradem en bliksem uit de buurt – stenen bruggen over lava zijn vuurvast.
hint.bridge_river = Bruggen kun je alleen over water of lava bouwen. hint.bridge_river = Bruggen kun je alleen over water of lava bouwen.
@@ -414,6 +417,9 @@ tile.lava = Lava
tile.lava_info = Wat erin valt, verbrandt. Stenen bruggen gaan eroverheen. tile.lava_info = Wat erin valt, verbrandt. Stenen bruggen gaan eroverheen.
tile.bridge = Houten brug tile.bridge = Houten brug
tile.lavabridge = Stenen brug tile.lavabridge = Stenen brug
tile.mushroom = Reuzenpaddenstoel
tile.tree = Boom
tile.plant_info = Markeer met het houweel: een duiveltje kapt hem voor {0} hout.
tile.drawbridge = Ophaalbrug tile.drawbridge = Ophaalbrug
tile.drawbridge_up = Opgehaald tile.drawbridge_up = Opgehaald
tile.drawbridge_down = Neergelaten tile.drawbridge_down = Neergelaten
@@ -1198,6 +1204,7 @@ ed.terrain.silver = Zilverader
ed.terrain.ruby = Robijnader ed.terrain.ruby = Robijnader
ed.terrain.diamond = Diamantader ed.terrain.diamond = Diamantader
ed.terrain.steel = Stalen muur ed.terrain.steel = Stalen muur
ed.terrain.mushroom = Reuzenpaddenstoel
ed.place.core = Zielenkern ed.place.core = Zielenkern
ed.place.portal = Portaal ed.place.portal = Portaal
ed.place.gate = Heldenpoort ed.place.gate = Heldenpoort
+8 -1
View File
@@ -64,6 +64,7 @@ msg.flag_removed = Angrepsflagget er fjernet. Skapningene dine vender tilbake.
msg.flag_set = Angrepsflagget er satt! Kampklare skapninger samles der. msg.flag_set = Angrepsflagget er satt! Kampklare skapninger samles der.
msg.creature_leaves = En misfornøyd {0} forlater riket ditt! msg.creature_leaves = En misfornøyd {0} forlater riket ditt!
msg.no_gold = Ikke nok gull! msg.no_gold = Ikke nok gull!
msg.no_wood = Ikke nok tre! Felle kjempesopper (eller trær) med hakka.
msg.sold = Rom solgt: +{0} gull. msg.sold = Rom solgt: +{0} gull.
msg.no_mana_bolt = Ikke nok mana til Lyn. msg.no_mana_bolt = Ikke nok mana til Lyn.
msg.no_mana_heal = Ikke nok mana til Helbred. msg.no_mana_heal = Ikke nok mana til Helbred.
@@ -124,6 +125,7 @@ ui.key = Tast: {0}
# ---- HUD # ---- HUD
hud.gold = Gull hud.gold = Gull
hud.wood = Tre
hud.mana = Mana hud.mana = Mana
hud.core = Kjerne hud.core = Kjerne
hud.gate = Port hud.gate = Port
@@ -401,7 +403,8 @@ tool.bridge.desc = Bygger en bro over vann eller lava. Dra fra din egen grunn ov
tool.drawbridge.label = Vindebro tool.drawbridge.label = Vindebro
tool.drawbridge.name = Bygg vindebro tool.drawbridge.name = Bygg vindebro
tool.drawbridge.desc = En bro du kan heise opp: dra over elva for å bygge den, klikk for å bytte: nede, oppe, automatisk (heises når fiender nærmer seg). Tre over vann brenner, stein over lava gjør ikke. tool.drawbridge.desc = En bro du kan heise opp: dra over elva for å bygge den, klikk for å bytte: nede, oppe, automatisk (heises når fiender nærmer seg). Tre over vann brenner, stein over lava gjør ikke.
cost.bridge = {0} gull/rute over vann, {1} over lava cost.bridge = {0} gull + {1} tre/rute over vann, {2} gull over lava
cost.drawbridge = {0} gull + {1} tre/rute over vann, {2} gull over lava
hint.bridge_where = Broer må starte på din egen grunn: dra fra området ditt over elven. hint.bridge_where = Broer må starte på din egen grunn: dra fra området ditt over elven.
hint.bridge_fire = Trebroer brenner: hold ildfeller, ildpust og lyn unna dem – steinbroer over lava er brannsikre. hint.bridge_fire = Trebroer brenner: hold ildfeller, ildpust og lyn unna dem – steinbroer over lava er brannsikre.
hint.bridge_river = Broer kan bare bygges over vann eller lava. hint.bridge_river = Broer kan bare bygges over vann eller lava.
@@ -413,6 +416,9 @@ tile.lava = Lava
tile.lava_info = Det som faller i, brenner. Steinbroer fører over. tile.lava_info = Det som faller i, brenner. Steinbroer fører over.
tile.bridge = Trebro tile.bridge = Trebro
tile.lavabridge = Steinbro tile.lavabridge = Steinbro
tile.mushroom = Kjempesopp
tile.tree = Tre
tile.plant_info = Merk med hakka: en imp feller den for {0} tre.
tile.drawbridge = Vindebro tile.drawbridge = Vindebro
tile.drawbridge_up = Heist opp tile.drawbridge_up = Heist opp
tile.drawbridge_down = Senket tile.drawbridge_down = Senket
@@ -1197,6 +1203,7 @@ ed.terrain.silver = Sølvåre
ed.terrain.ruby = Rubinåre ed.terrain.ruby = Rubinåre
ed.terrain.diamond = Diamantåre ed.terrain.diamond = Diamantåre
ed.terrain.steel = Stålvegg ed.terrain.steel = Stålvegg
ed.terrain.mushroom = Kjempesopp
ed.place.core = Sjelekjerne ed.place.core = Sjelekjerne
ed.place.portal = Portal ed.place.portal = Portal
ed.place.gate = Helteport ed.place.gate = Helteport
+8 -1
View File
@@ -64,6 +64,7 @@ msg.flag_removed = Bandeira de ataque retirada. As tuas criaturas regressam.
msg.flag_set = Bandeira de ataque colocada! As criaturas prontas para combate reúnem-se ali. msg.flag_set = Bandeira de ataque colocada! As criaturas prontas para combate reúnem-se ali.
msg.creature_leaves = Um {0} descontente abandona o teu reino! msg.creature_leaves = Um {0} descontente abandona o teu reino!
msg.no_gold = Ouro insuficiente! msg.no_gold = Ouro insuficiente!
msg.no_wood = Madeira insuficiente! Abate cogumelos gigantes (ou árvores) com a picareta.
msg.sold = Salas vendidas: +{0} de ouro. msg.sold = Salas vendidas: +{0} de ouro.
msg.no_mana_bolt = Mana insuficiente para o Relâmpago. msg.no_mana_bolt = Mana insuficiente para o Relâmpago.
msg.no_mana_heal = Mana insuficiente para Curar. msg.no_mana_heal = Mana insuficiente para Curar.
@@ -124,6 +125,7 @@ ui.key = Tecla: {0}
# ---- HUD # ---- HUD
hud.gold = Ouro hud.gold = Ouro
hud.wood = Madeira
hud.mana = Mana hud.mana = Mana
hud.core = Núcleo hud.core = Núcleo
hud.gate = Portão hud.gate = Portão
@@ -402,7 +404,8 @@ tool.bridge.desc = Constrói uma ponte sobre água ou lava. Arrasta a partir do
tool.drawbridge.label = Levadiça tool.drawbridge.label = Levadiça
tool.drawbridge.name = Construir ponte levadiça tool.drawbridge.name = Construir ponte levadiça
tool.drawbridge.desc = Uma ponte que podes levantar: arrasta sobre o rio para a construir, clica para mudar: em baixo, em cima, automática (sobe quando os inimigos se aproximam). Madeira sobre água arde, pedra sobre lava não. tool.drawbridge.desc = Uma ponte que podes levantar: arrasta sobre o rio para a construir, clica para mudar: em baixo, em cima, automática (sobe quando os inimigos se aproximam). Madeira sobre água arde, pedra sobre lava não.
cost.bridge = {0} de ouro/casa sobre água, {1} sobre lava cost.bridge = {0} ouro + {1} madeira/casa sobre água, {2} ouro sobre lava
cost.drawbridge = {0} ouro + {1} madeira/casa sobre água, {2} ouro sobre lava
hint.bridge_where = As pontes têm de começar no teu chão: arrasta a partir do teu território através do rio. hint.bridge_where = As pontes têm de começar no teu chão: arrasta a partir do teu território através do rio.
hint.bridge_fire = As pontes de madeira ardem: mantém armadilhas de fogo, sopro de fogo e relâmpagos longe delas – as pontes de pedra sobre lava não ardem. hint.bridge_fire = As pontes de madeira ardem: mantém armadilhas de fogo, sopro de fogo e relâmpagos longe delas – as pontes de pedra sobre lava não ardem.
hint.bridge_river = Só se podem construir pontes sobre água ou lava. hint.bridge_river = Só se podem construir pontes sobre água ou lava.
@@ -414,6 +417,9 @@ tile.lava = Lava
tile.lava_info = O que cai lá dentro arde. As pontes de pedra atravessam-na. tile.lava_info = O que cai lá dentro arde. As pontes de pedra atravessam-na.
tile.bridge = Ponte de madeira tile.bridge = Ponte de madeira
tile.lavabridge = Ponte de pedra tile.lavabridge = Ponte de pedra
tile.mushroom = Cogumelo gigante
tile.tree = Árvore
tile.plant_info = Marca-o com a picareta: um diabrete abate-o por {0} de madeira.
tile.drawbridge = Ponte levadiça tile.drawbridge = Ponte levadiça
tile.drawbridge_up = Levantada tile.drawbridge_up = Levantada
tile.drawbridge_down = Baixada tile.drawbridge_down = Baixada
@@ -1198,6 +1204,7 @@ ed.terrain.silver = Veio de prata
ed.terrain.ruby = Veio de rubis ed.terrain.ruby = Veio de rubis
ed.terrain.diamond = Veio diamantes ed.terrain.diamond = Veio diamantes
ed.terrain.steel = Parede de aço ed.terrain.steel = Parede de aço
ed.terrain.mushroom = Cogumelo gigante
ed.place.core = Núcleo de alma ed.place.core = Núcleo de alma
ed.place.portal = Portal ed.place.portal = Portal
ed.place.gate = Portão heróis ed.place.gate = Portão heróis
+8 -1
View File
@@ -64,6 +64,7 @@ msg.flag_removed = Steagul de atac a fost scos. Creaturile tale se întorc.
msg.flag_set = Steag de atac plantat! Creaturile pregătite de luptă se adună acolo. msg.flag_set = Steag de atac plantat! Creaturile pregătite de luptă se adună acolo.
msg.creature_leaves = Un {0} nemulțumit îți părăsește tărâmul! msg.creature_leaves = Un {0} nemulțumit îți părăsește tărâmul!
msg.no_gold = Nu ai destul aur! msg.no_gold = Nu ai destul aur!
msg.no_wood = Nu ai destul lemn! Doboară ciuperci uriașe (sau copaci) cu târnăcopul.
msg.sold = Camere vândute: +{0} aur. msg.sold = Camere vândute: +{0} aur.
msg.no_mana_bolt = Nu ai destulă mana pentru Fulger. msg.no_mana_bolt = Nu ai destulă mana pentru Fulger.
msg.no_mana_heal = Nu ai destulă mana pentru Vindecare. msg.no_mana_heal = Nu ai destulă mana pentru Vindecare.
@@ -124,6 +125,7 @@ ui.key = Tasta: {0}
# ---- HUD # ---- HUD
hud.gold = Aur hud.gold = Aur
hud.wood = Lemn
hud.mana = Mana hud.mana = Mana
hud.core = Miez hud.core = Miez
hud.gate = Poartă hud.gate = Poartă
@@ -402,7 +404,8 @@ tool.bridge.desc = Construiește un pod peste apă sau lavă. Trage de pe terenu
tool.drawbridge.label = Pod mobil tool.drawbridge.label = Pod mobil
tool.drawbridge.name = Construiește pod mobil tool.drawbridge.name = Construiește pod mobil
tool.drawbridge.desc = Un pod pe care îl poți ridica: trage peste râu ca să-l construiești, dă clic pentru a schimba: jos, sus, automat (se ridică atunci când se apropie dușmanii). Lemnul peste apă arde, piatra peste lavă nu. tool.drawbridge.desc = Un pod pe care îl poți ridica: trage peste râu ca să-l construiești, dă clic pentru a schimba: jos, sus, automat (se ridică atunci când se apropie dușmanii). Lemnul peste apă arde, piatra peste lavă nu.
cost.bridge = {0} aur/dală peste apă, {1} peste lavă cost.bridge = {0} aur + {1} lemn/pătrat peste apă, {2} aur peste lavă
cost.drawbridge = {0} aur + {1} lemn/pătrat peste apă, {2} aur peste lavă
hint.bridge_where = Podurile trebuie să pornească de pe terenul tău: trage de pe teritoriul tău peste râu. hint.bridge_where = Podurile trebuie să pornească de pe terenul tău: trage de pe teritoriul tău peste râu.
hint.bridge_fire = Podurile de lemn ard: ține capcanele de foc, suflarea de foc și fulgerele departe de ele – podurile de piatră peste lavă nu ard. hint.bridge_fire = Podurile de lemn ard: ține capcanele de foc, suflarea de foc și fulgerele departe de ele – podurile de piatră peste lavă nu ard.
hint.bridge_river = Podurile se pot construi doar peste apă sau lavă. hint.bridge_river = Podurile se pot construi doar peste apă sau lavă.
@@ -414,6 +417,9 @@ tile.lava = Lavă
tile.lava_info = Ce cade înăuntru arde. Podurile de piatră o traversează. tile.lava_info = Ce cade înăuntru arde. Podurile de piatră o traversează.
tile.bridge = Pod de lemn tile.bridge = Pod de lemn
tile.lavabridge = Pod de piatră tile.lavabridge = Pod de piatră
tile.mushroom = Ciupercă uriașă
tile.tree = Copac
tile.plant_info = Marchează-l cu târnăcopul: un drăcușor îl doboară pentru {0} lemn.
tile.drawbridge = Pod mobil tile.drawbridge = Pod mobil
tile.drawbridge_up = Ridicat tile.drawbridge_up = Ridicat
tile.drawbridge_down = Coborât tile.drawbridge_down = Coborât
@@ -1198,6 +1204,7 @@ ed.terrain.silver = Filon de argint
ed.terrain.ruby = Filon de rubine ed.terrain.ruby = Filon de rubine
ed.terrain.diamond = Filon de diamante ed.terrain.diamond = Filon de diamante
ed.terrain.steel = Zid de oțel ed.terrain.steel = Zid de oțel
ed.terrain.mushroom = Ciupercă uriașă
ed.place.core = Miezul sufletului ed.place.core = Miezul sufletului
ed.place.portal = Portal ed.place.portal = Portal
ed.place.gate = Poarta eroilor ed.place.gate = Poarta eroilor
+8 -1
View File
@@ -64,6 +64,7 @@ msg.flag_removed = Флаг атаки убран. Существа возвра
msg.flag_set = Флаг атаки установлен! Готовые к бою существа собираются там. msg.flag_set = Флаг атаки установлен! Готовые к бою существа собираются там.
msg.creature_leaves = Недовольное существо ({0}) покидает твои владения! msg.creature_leaves = Недовольное существо ({0}) покидает твои владения!
msg.no_gold = Не хватает золота! msg.no_gold = Не хватает золота!
msg.no_wood = Мало дерева! Рубите гигантские грибы (или деревья) киркой.
msg.sold = Комнаты проданы: +{0} золота. msg.sold = Комнаты проданы: +{0} золота.
msg.no_mana_bolt = Не хватает маны для молнии. msg.no_mana_bolt = Не хватает маны для молнии.
msg.no_mana_heal = Не хватает маны для лечения. msg.no_mana_heal = Не хватает маны для лечения.
@@ -124,6 +125,7 @@ ui.key = Клавиша: {0}
# ---- HUD # ---- HUD
hud.gold = Золото hud.gold = Золото
hud.wood = Дерево
hud.mana = Мана hud.mana = Мана
hud.core = Ядро hud.core = Ядро
hud.gate = Врата hud.gate = Врата
@@ -402,7 +404,8 @@ tool.bridge.desc = Строит мост через воду или лаву. Т
tool.drawbridge.label = Подъёмный tool.drawbridge.label = Подъёмный
tool.drawbridge.name = Построить подъёмный мост tool.drawbridge.name = Построить подъёмный мост
tool.drawbridge.desc = Мост, который можно поднять: протяните через реку, чтобы построить, щёлкните, чтобы переключить: опущен, поднят, автоматически (поднимается при приближении врагов). Дерево над водой горит, камень над лавой — нет. tool.drawbridge.desc = Мост, который можно поднять: протяните через реку, чтобы построить, щёлкните, чтобы переключить: опущен, поднят, автоматически (поднимается при приближении врагов). Дерево над водой горит, камень над лавой — нет.
cost.bridge = {0} золота/клетка над водой, {1} над лавой cost.bridge = {0} золота + {1} дерева/клетка над водой, {2} золота над лавой
cost.drawbridge = {0} золота + {1} дерева/клетка над водой, {2} золота над лавой
hint.bridge_where = Мост должен начинаться у твоей земли: тяни от своей территории через реку. hint.bridge_where = Мост должен начинаться у твоей земли: тяни от своей территории через реку.
hint.bridge_fire = Деревянные мосты горят: держите огненные ловушки, огненное дыхание и молнии подальше; каменные мосты над лавой не горят. hint.bridge_fire = Деревянные мосты горят: держите огненные ловушки, огненное дыхание и молнии подальше; каменные мосты над лавой не горят.
hint.bridge_river = Мосты строятся только над водой или лавой. hint.bridge_river = Мосты строятся только над водой или лавой.
@@ -414,6 +417,9 @@ tile.lava = Лава
tile.lava_info = Всё, что туда падает, сгорает. Её пересекают каменные мосты. tile.lava_info = Всё, что туда падает, сгорает. Её пересекают каменные мосты.
tile.bridge = Деревянный мост tile.bridge = Деревянный мост
tile.lavabridge = Каменный мост tile.lavabridge = Каменный мост
tile.mushroom = Гигантский гриб
tile.tree = Дерево
tile.plant_info = Отметьте киркой: бес срубит его за {0} дерева.
tile.drawbridge = Подъёмный мост tile.drawbridge = Подъёмный мост
tile.drawbridge_up = Поднят tile.drawbridge_up = Поднят
tile.drawbridge_down = Опущен tile.drawbridge_down = Опущен
@@ -1190,6 +1196,7 @@ ed.terrain.silver = Серебряная жила
ed.terrain.ruby = Рубиновая жила ed.terrain.ruby = Рубиновая жила
ed.terrain.diamond = Алмазная жила ed.terrain.diamond = Алмазная жила
ed.terrain.steel = Стальная стена ed.terrain.steel = Стальная стена
ed.terrain.mushroom = Гигантский гриб
ed.place.core = Ядро души ed.place.core = Ядро души
ed.place.portal = Портал ed.place.portal = Портал
ed.place.gate = Врата героев ed.place.gate = Врата героев
+8 -1
View File
@@ -64,6 +64,7 @@ msg.flag_removed = Útočná vlajka odstránená. Tvoje tvory sa vracajú.
msg.flag_set = Útočná vlajka vztýčená! Bojaschopné tvory sa pri nej zhromaždia. msg.flag_set = Útočná vlajka vztýčená! Bojaschopné tvory sa pri nej zhromaždia.
msg.creature_leaves = Nespokojný tvor opúšťa tvoju ríšu: {0}! msg.creature_leaves = Nespokojný tvor opúšťa tvoju ríšu: {0}!
msg.no_gold = Nedostatok zlata! msg.no_gold = Nedostatok zlata!
msg.no_wood = Nedostatok dreva! Vyrúbaj obrie huby (alebo stromy) krompáčom.
msg.sold = Miestnosti predané: +{0} zlata. msg.sold = Miestnosti predané: +{0} zlata.
msg.no_mana_bolt = Nedostatok many na blesk. msg.no_mana_bolt = Nedostatok many na blesk.
msg.no_mana_heal = Nedostatok many na liečenie. msg.no_mana_heal = Nedostatok many na liečenie.
@@ -124,6 +125,7 @@ ui.key = Kláves: {0}
# ---- HUD # ---- HUD
hud.gold = Zlato hud.gold = Zlato
hud.wood = Drevo
hud.mana = Mana hud.mana = Mana
hud.core = Jadro hud.core = Jadro
hud.gate = Brána hud.gate = Brána
@@ -402,7 +404,8 @@ tool.bridge.desc = Postaví most cez vodu alebo lávu. Ťahaj z vlastnej zeme ce
tool.drawbridge.label = Padací most tool.drawbridge.label = Padací most
tool.drawbridge.name = Postaviť padací most tool.drawbridge.name = Postaviť padací most
tool.drawbridge.desc = Most, ktorý môžeš vytiahnuť: potiahni cez rieku a postav ho, kliknutím prepínaš: dole, hore, automaticky (zdvihne sa, keď sa blížia nepriatelia). Drevo nad vodou horí, kameň nad lávou nie. tool.drawbridge.desc = Most, ktorý môžeš vytiahnuť: potiahni cez rieku a postav ho, kliknutím prepínaš: dole, hore, automaticky (zdvihne sa, keď sa blížia nepriatelia). Drevo nad vodou horí, kameň nad lávou nie.
cost.bridge = {0} zlata/políčko cez vodu, {1} cez lávu cost.bridge = {0} zlata + {1} dreva/pole nad vodou, {2} zlata nad lávou
cost.drawbridge = {0} zlata + {1} dreva/pole nad vodou, {2} zlata nad lávou
hint.bridge_where = Mosty musia začínať na tvojej zemi: ťahaj zo svojho územia cez rieku. hint.bridge_where = Mosty musia začínať na tvojej zemi: ťahaj zo svojho územia cez rieku.
hint.bridge_fire = Drevené mosty horia: drž ohnivé pasce, ohnivý dych a blesky ďalej od nich – kamenné mosty nad lávou nehoria. hint.bridge_fire = Drevené mosty horia: drž ohnivé pasce, ohnivý dych a blesky ďalej od nich – kamenné mosty nad lávou nehoria.
hint.bridge_river = Mosty sa dajú stavať len cez vodu alebo lávu. hint.bridge_river = Mosty sa dajú stavať len cez vodu alebo lávu.
@@ -414,6 +417,9 @@ tile.lava = Láva
tile.lava_info = Čo do nej spadne, zhorí. Prechádzajú ju kamenné mosty. tile.lava_info = Čo do nej spadne, zhorí. Prechádzajú ju kamenné mosty.
tile.bridge = Drevený most tile.bridge = Drevený most
tile.lavabridge = Kamenný most tile.lavabridge = Kamenný most
tile.mushroom = Obria huba
tile.tree = Strom
tile.plant_info = Označ krompáčom: škriatok ho vyrúbe za {0} dreva.
tile.drawbridge = Padací most tile.drawbridge = Padací most
tile.drawbridge_up = Vytiahnutý tile.drawbridge_up = Vytiahnutý
tile.drawbridge_down = Spustený tile.drawbridge_down = Spustený
@@ -1198,6 +1204,7 @@ ed.terrain.silver = Strieborná žila
ed.terrain.ruby = Rubínová žila ed.terrain.ruby = Rubínová žila
ed.terrain.diamond = Diamantová žila ed.terrain.diamond = Diamantová žila
ed.terrain.steel = Oceľová stena ed.terrain.steel = Oceľová stena
ed.terrain.mushroom = Obria huba
ed.place.core = Jadro duše ed.place.core = Jadro duše
ed.place.portal = Portál ed.place.portal = Portál
ed.place.gate = Brána hrdinov ed.place.gate = Brána hrdinov
+8 -1
View File
@@ -64,6 +64,7 @@ msg.flag_removed = Застава напада уклоњена. Створењ
msg.flag_set = Застава напада постављена! Створења спремна за бој окупљају се тамо. msg.flag_set = Застава напада постављена! Створења спремна за бој окупљају се тамо.
msg.creature_leaves = Незадовољно створење напушта твоје царство: {0}! msg.creature_leaves = Незадовољно створење напушта твоје царство: {0}!
msg.no_gold = Нема довољно злата! msg.no_gold = Нема довољно злата!
msg.no_wood = Нема довољно дрва! Сруши џиновске печурке (или стабла) крампом.
msg.sold = Просторије продате: +{0} злата. msg.sold = Просторије продате: +{0} злата.
msg.no_mana_bolt = Нема довољно мане за Муњу. msg.no_mana_bolt = Нема довољно мане за Муњу.
msg.no_mana_heal = Нема довољно мане за Лечење. msg.no_mana_heal = Нема довољно мане за Лечење.
@@ -124,6 +125,7 @@ ui.key = Тастер: {0}
# ---- HUD # ---- HUD
hud.gold = Злато hud.gold = Злато
hud.wood = Дрво
hud.mana = Мана hud.mana = Мана
hud.core = Језгро hud.core = Језгро
hud.gate = Капија hud.gate = Капија
@@ -402,7 +404,8 @@ tool.bridge.desc = Гради мост преко воде или лаве. Пр
tool.drawbridge.label = Покретни мост tool.drawbridge.label = Покретни мост
tool.drawbridge.name = Изгради покретни мост tool.drawbridge.name = Изгради покретни мост
tool.drawbridge.desc = Мост који можеш подићи: повуци преко реке да га изградиш, кликни за промену: доле, горе, аутоматски (диже се кад се непријатељи приближе). Дрво над водом гори, камен над лавом не. tool.drawbridge.desc = Мост који можеш подићи: повуци преко реке да га изградиш, кликни за промену: доле, горе, аутоматски (диже се кад се непријатељи приближе). Дрво над водом гори, камен над лавом не.
cost.bridge = {0} злата/поље преко воде, {1} преко лаве cost.bridge = {0} злата + {1} дрва/поље над водом, {2} злата над лавом
cost.drawbridge = {0} злата + {1} дрва/поље над водом, {2} злата над лавом
hint.bridge_where = Мостови морају да почну на твом тлу: превуци са своје територије преко реке. hint.bridge_where = Мостови морају да почну на твом тлу: превуци са своје територије преко реке.
hint.bridge_fire = Дрвени мостови горе: држи ватрене замке, ватрени дах и муње подаље – камени мостови над лавом не горе. hint.bridge_fire = Дрвени мостови горе: држи ватрене замке, ватрени дах и муње подаље – камени мостови над лавом не горе.
hint.bridge_river = Мостови се граде само преко воде или лаве. hint.bridge_river = Мостови се граде само преко воде или лаве.
@@ -414,6 +417,9 @@ tile.lava = Лава
tile.lava_info = Шта год упадне, изгори. Камени мостови је премошћују. tile.lava_info = Шта год упадне, изгори. Камени мостови је премошћују.
tile.bridge = Дрвени мост tile.bridge = Дрвени мост
tile.lavabridge = Камени мост tile.lavabridge = Камени мост
tile.mushroom = Џиновска печурка
tile.tree = Стабло
tile.plant_info = Означи крампом: враг је сруши за {0} дрва.
tile.drawbridge = Покретни мост tile.drawbridge = Покретни мост
tile.drawbridge_up = Подигнут tile.drawbridge_up = Подигнут
tile.drawbridge_down = Спуштен tile.drawbridge_down = Спуштен
@@ -1198,6 +1204,7 @@ ed.terrain.silver = Жила сребра
ed.terrain.ruby = Жила рубина ed.terrain.ruby = Жила рубина
ed.terrain.diamond = Жила дијаманата ed.terrain.diamond = Жила дијаманата
ed.terrain.steel = Челични зид ed.terrain.steel = Челични зид
ed.terrain.mushroom = Џиновска печурка
ed.place.core = Језгро душе ed.place.core = Језгро душе
ed.place.portal = Портал ed.place.portal = Портал
ed.place.gate = Капија хероја ed.place.gate = Капија хероја
+8 -1
View File
@@ -64,6 +64,7 @@ msg.flag_removed = Anfallsflaggan borttagen. Dina varelser återvänder.
msg.flag_set = Anfallsflaggan satt! Stridsredo varelser samlas där. msg.flag_set = Anfallsflaggan satt! Stridsredo varelser samlas där.
msg.creature_leaves = En olycklig {0} lämnar ditt rike! msg.creature_leaves = En olycklig {0} lämnar ditt rike!
msg.no_gold = Inte tillräckligt med guld! msg.no_gold = Inte tillräckligt med guld!
msg.no_wood = Inte nog med trä! Fäll jättesvampar (eller träd) med hackan.
msg.sold = Rum sålda: +{0} guld. msg.sold = Rum sålda: +{0} guld.
msg.no_mana_bolt = Inte tillräckligt med mana för Blixt. msg.no_mana_bolt = Inte tillräckligt med mana för Blixt.
msg.no_mana_heal = Inte tillräckligt med mana för Läk. msg.no_mana_heal = Inte tillräckligt med mana för Läk.
@@ -124,6 +125,7 @@ ui.key = Tangent: {0}
# ---- HUD # ---- HUD
hud.gold = Guld hud.gold = Guld
hud.wood = Trä
hud.mana = Mana hud.mana = Mana
hud.core = Kärna hud.core = Kärna
hud.gate = Port hud.gate = Port
@@ -402,7 +404,8 @@ tool.bridge.desc = Bygger en bro över vatten eller lava. Dra från din egen mar
tool.drawbridge.label = Vindbrygga tool.drawbridge.label = Vindbrygga
tool.drawbridge.name = Bygg vindbrygga tool.drawbridge.name = Bygg vindbrygga
tool.drawbridge.desc = En bro du kan hissa upp: dra över floden för att bygga den, klicka för att växla: nere, uppe, automatisk (hissas när fiender närmar sig). Trä över vatten brinner, sten över lava gör det inte. tool.drawbridge.desc = En bro du kan hissa upp: dra över floden för att bygga den, klicka för att växla: nere, uppe, automatisk (hissas när fiender närmar sig). Trä över vatten brinner, sten över lava gör det inte.
cost.bridge = {0} guld/ruta över vatten, {1} över lava cost.bridge = {0} guld + {1} trä/ruta över vatten, {2} guld över lava
cost.drawbridge = {0} guld + {1} trä/ruta över vatten, {2} guld över lava
hint.bridge_where = Broar måste börja vid din egen mark: dra från ditt territorium över floden. hint.bridge_where = Broar måste börja vid din egen mark: dra från ditt territorium över floden.
hint.bridge_fire = Träbroar brinner: håll eldfällor, eldande och blixtar borta från dem – stenbroar över lava är brandsäkra. hint.bridge_fire = Träbroar brinner: håll eldfällor, eldande och blixtar borta från dem – stenbroar över lava är brandsäkra.
hint.bridge_river = Broar kan bara byggas över vatten eller lava. hint.bridge_river = Broar kan bara byggas över vatten eller lava.
@@ -414,6 +417,9 @@ tile.lava = Lava
tile.lava_info = Det som faller i brinner upp. Stenbroar korsar den. tile.lava_info = Det som faller i brinner upp. Stenbroar korsar den.
tile.bridge = Träbro tile.bridge = Träbro
tile.lavabridge = Stenbro tile.lavabridge = Stenbro
tile.mushroom = Jättesvamp
tile.tree = Träd
tile.plant_info = Markera med hackan: en imp fäller den för {0} trä.
tile.drawbridge = Vindbrygga tile.drawbridge = Vindbrygga
tile.drawbridge_up = Uppdragen tile.drawbridge_up = Uppdragen
tile.drawbridge_down = Nedsänkt tile.drawbridge_down = Nedsänkt
@@ -1198,6 +1204,7 @@ ed.terrain.silver = Silveråder
ed.terrain.ruby = Rubinåder ed.terrain.ruby = Rubinåder
ed.terrain.diamond = Diamantåder ed.terrain.diamond = Diamantåder
ed.terrain.steel = Stålvägg ed.terrain.steel = Stålvägg
ed.terrain.mushroom = Jättesvamp
ed.place.core = Själskärna ed.place.core = Själskärna
ed.place.portal = Portal ed.place.portal = Portal
ed.place.gate = Hjälteport ed.place.gate = Hjälteport
+5 -1
View File
@@ -35,7 +35,7 @@ enum Cat {
const CATS: [Cat; 9] = [Cat::Terrain, Cat::Rooms, Cat::Places, Cat::Units, Cat::Towers, Cat::Traps, Cat::Forts, Cat::Zones, Cat::Erase]; const CATS: [Cat; 9] = [Cat::Terrain, Cat::Rooms, Cat::Places, Cat::Units, Cat::Towers, Cat::Traps, Cat::Forts, Cat::Zones, Cat::Erase];
const TERRAIN: [&str; 13] = ["floor", "earth", "reinforced", "rock", "water", "lava", "bridge", "lavabridge", "gold", "silver", "ruby", "diamond", "steel"]; const TERRAIN: [&str; 14] = ["floor", "earth", "reinforced", "rock", "water", "lava", "bridge", "lavabridge", "gold", "silver", "ruby", "diamond", "steel", "mushroom"];
const PLACES: [&str; 7] = ["core", "portal", "gate", "spring", "shard", "chest", "chained"]; const PLACES: [&str; 7] = ["core", "portal", "gate", "spring", "shard", "chest", "chained"];
const OWNERS: [Owner; 6] = [Owner::Player, Owner::Hero, Owner::Rival1, Owner::Rival2, Owner::Rival3, Owner::None]; const OWNERS: [Owner; 6] = [Owner::Player, Owner::Hero, Owner::Rival1, Owner::Rival2, Owner::Rival3, Owner::None];
const ZONE_SHAPES: [&str; 4] = ["rect", "circle", "tiles", "line"]; const ZONE_SHAPES: [&str; 4] = ["rect", "circle", "tiles", "line"];
@@ -75,6 +75,7 @@ fn kind_of_terrain(t: &str) -> (Kind, bool) {
"lava" => (Kind::Lava, false), "lava" => (Kind::Lava, false),
"bridge" => (Kind::Bridge, false), "bridge" => (Kind::Bridge, false),
"lavabridge" => (Kind::LavaBridge, false), "lavabridge" => (Kind::LavaBridge, false),
"mushroom" => (Kind::Mushroom, false),
"gold" => (Kind::Gold, false), "gold" => (Kind::Gold, false),
"silver" => (Kind::Silver, false), "silver" => (Kind::Silver, false),
"ruby" => (Kind::Ruby, false), "ruby" => (Kind::Ruby, false),
@@ -216,6 +217,9 @@ impl MapEdit {
tl.reinforced = reinforced; tl.reinforced = reinforced;
tl.owner = if reinforced && owner == Owner::None { Owner::Player } else { owner }; tl.owner = if reinforced && owner == Owner::None { Owner::Player } else { owner };
tl.marked = false; tl.marked = false;
if tl.plant() {
tl.hp = crate::wood::MUSHROOM_HP;
}
tl.gold = match k { tl.gold = match k {
Kind::Gold => 1200, Kind::Gold => 1200,
Kind::Silver => 900, Kind::Silver => 900,
+29 -6
View File
@@ -462,6 +462,7 @@ pub struct MasterState {
pub core: (i32, i32), pub core: (i32, i32),
pub core_hp: f32, pub core_hp: f32,
pub gold: f32, pub gold: f32,
pub wood: f32,
pub mana: f32, pub mana: f32,
pub payday: f32, pub payday: f32,
pub payday_warned: bool, pub payday_warned: bool,
@@ -586,6 +587,10 @@ pub struct Game {
#[serde(default)] #[serde(default)]
pub bridgework: crate::bridges::BridgeWork, // burning and worn bridges pub bridgework: crate::bridges::BridgeWork, // burning and worn bridges
#[serde(default)] #[serde(default)]
pub wood: f32, // the second resource (see wood.rs)
#[serde(default)]
pub woodwork: crate::wood::WoodWork, // felled mushrooms growing back
#[serde(default)]
pub dwarf_t: f32, pub dwarf_t: f32,
#[serde(default)] #[serde(default)]
pub rune_free: u32, // rune forge towers that can be built for free (from chests) pub rune_free: u32, // rune forge towers that can be built for free (from chests)
@@ -749,9 +754,9 @@ pub const ROOM_NAMES: [&str; N_ROOMS] = [
]; ];
// bridge cost per tile: over water, over lava // bridge cost per tile: over water, over lava
pub const BRIDGE_COST: [i32; 2] = [30, 75]; pub const BRIDGE_COST: [i32; 2] = [10, 75];
// a drawbridge tile (over water or lava) // a drawbridge tile: over water (and wood, see wood.rs), over lava
pub const DRAWBRIDGE_COST: i32 = 150; pub const DRAWBRIDGE_COST: [i32; 2] = [120, 150];
// steel wall cost per tile: from earth, from a reinforced wall // steel wall cost per tile: from earth, from a reinforced wall
pub const STEEL_COST: [i32; 2] = [80, 40]; pub const STEEL_COST: [i32; 2] = [80, 40];
pub const STEEL_HP: f32 = 40.0; pub const STEEL_HP: f32 = 40.0;
@@ -904,6 +909,8 @@ impl Game {
vrng: crate::particles::vrng(), vrng: crate::particles::vrng(),
dwarf_caves: Vec::new(), dwarf_caves: Vec::new(),
bridgework: Default::default(), bridgework: Default::default(),
wood: crate::wood::WOOD_START,
woodwork: Default::default(),
dwarf_t: 30.0, dwarf_t: 30.0,
rune_free: 0, rune_free: 0,
rune_final: 0, rune_final: 0,
@@ -1394,6 +1401,7 @@ impl Game {
core: self.map.core, core: self.map.core,
core_hp: self.core_hp, core_hp: self.core_hp,
gold: self.gold, gold: self.gold,
wood: self.wood,
mana: self.mana, mana: self.mana,
payday: self.payday, payday: self.payday,
payday_warned: self.payday_warned, payday_warned: self.payday_warned,
@@ -1423,6 +1431,7 @@ impl Game {
self.map.core = m.core; self.map.core = m.core;
self.core_hp = m.core_hp; self.core_hp = m.core_hp;
self.gold = m.gold; self.gold = m.gold;
self.wood = m.wood;
self.mana = m.mana; self.mana = m.mana;
self.payday = m.payday; self.payday = m.payday;
self.payday_warned = m.payday_warned; self.payday_warned = m.payday_warned;
@@ -1657,6 +1666,7 @@ impl Game {
} }
self.update_dwarves(dt); self.update_dwarves(dt);
self.update_bridges(dt); self.update_bridges(dt);
self.update_wood(dt);
// fallen hearts of a match are shared state: every client marks them in the same step // fallen hearts of a match are shared state: every client marks them in the same step
self.update_fallen_masters(); self.update_fallen_masters();
// the end of the game and the fog are about the master at this computer // the end of the game and the fog are about the master at this computer
@@ -2896,7 +2906,7 @@ impl Game {
} }
pub fn build_bridges_of(&mut self, x0: i32, y0: i32, x1: i32, y1: i32, draw: bool) { pub fn build_bridges_of(&mut self, x0: i32, y0: i32, x1: i32, y1: i32, draw: bool) {
let (mut built, mut broke, mut any_river) = (0, false, false); let (mut built, mut broke, mut any_river, mut no_wood) = (0, false, false, false);
loop { loop {
let mut add = Vec::new(); let mut add = Vec::new();
for y in y0.min(y1)..=y0.max(y1) { for y in y0.min(y1)..=y0.max(y1) {
@@ -2917,12 +2927,19 @@ impl Game {
let mut progress = false; let mut progress = false;
for i in add { for i in add {
let lava = self.map.t[i].kind == Kind::Lava; let lava = self.map.t[i].kind == Kind::Lava;
let cost = if draw { DRAWBRIDGE_COST } else { BRIDGE_COST[lava as usize] } as f32; let cost = if draw { DRAWBRIDGE_COST[lava as usize] } else { BRIDGE_COST[lava as usize] } as f32;
// wooden bridges also cost wood
let wood = if lava { 0.0 } else if draw { crate::wood::DRAWBRIDGE_WOOD } else { crate::wood::BRIDGE_WOOD };
if self.gold < cost { if self.gold < cost {
broke = true; broke = true;
continue; continue;
} }
if self.wood + 1e-3 < wood {
no_wood = true;
continue;
}
self.gold -= cost; self.gold -= cost;
self.wood -= wood;
let t = &mut self.map.t[i]; let t = &mut self.map.t[i];
t.kind = if draw { t.kind = if draw {
Kind::Drawbridge Kind::Drawbridge
@@ -2948,6 +2965,9 @@ impl Game {
if broke { if broke {
self.msg("msg.no_gold", vec![]); self.msg("msg.no_gold", vec![]);
self.sfx_ui(Sfx::Error); self.sfx_ui(Sfx::Error);
} else if no_wood {
self.msg("msg.no_wood", vec![]);
self.sfx_ui(Sfx::Error);
} else if built == 0 { } else if built == 0 {
self.hint(21, if any_river { "hint.bridge_where" } else { "hint.bridge_river" }); self.hint(21, if any_river { "hint.bridge_where" } else { "hint.bridge_river" });
} }
@@ -3300,6 +3320,9 @@ impl Game {
self.sfx(Sfx::Dig, fxx, fxy); self.sfx(Sfx::Dig, fxx, fxy);
} }
if done { if done {
if self.map.t[t].plant() {
self.felled(t);
}
self.dig_out(t); self.dig_out(t);
e.job = Job::None; e.job = Job::None;
} }
@@ -4728,7 +4751,7 @@ impl Game {
} }
if t.owner == self.me && t.bridge() { if t.owner == self.me && t.bridge() {
let lava = t.river() == Some(Kind::Lava); let lava = t.river() == Some(Kind::Lava);
let cost = if t.kind == Kind::Drawbridge { DRAWBRIDGE_COST } else { BRIDGE_COST[lava as usize] }; let cost = if t.kind == Kind::Drawbridge { DRAWBRIDGE_COST[lava as usize] } else { BRIDGE_COST[lava as usize] };
t.kind = if lava { Kind::Lava } else { Kind::Water }; t.kind = if lava { Kind::Lava } else { Kind::Water };
t.owner = Owner::None; t.owner = Owner::None;
t.reserved = 0; t.reserved = 0;
+40
View File
@@ -83,6 +83,11 @@ pub const T_RIVAL3: u32 = 189; // 4 variants: floor of the yellow master
pub const I_DRAWBRIDGE: u32 = 193; // drawbridge tool: a raised flap on chains pub const I_DRAWBRIDGE: u32 = 193; // drawbridge tool: a raised flap on chains
pub const I_FREEZE: u32 = 194; // frost spell: a snowflake pub const I_FREEZE: u32 = 194; // frost spell: a snowflake
pub const T_OBSIDIAN: u32 = 195; // 4 variants: cooled lava, dark glass with glowing seams pub const T_OBSIDIAN: u32 = 195; // 4 variants: cooled lava, dark glass with glowing seams
pub const T_STEM: u32 = 199; // giant mushroom stem
pub const T_CAP: u32 = 200; // giant mushroom cap, glowing spots
pub const T_BARK: u32 = 201; // tree trunk
pub const T_LEAVES: u32 = 202; // 2 variants: tree crown
pub const T_GRASS: u32 = 204; // 4 variants: grass above ground
pub struct Gfx { pub struct Gfx {
pub atlas: Texture2D, pub atlas: Texture2D,
@@ -835,6 +840,39 @@ fn gen_atlas() -> Image {
None None
} }
}); });
// giant mushroom: pale ribbed stem, a violet cap with glowing spots
cv.cell(T_STEM, |x, y| {
let r = hash(x, y, 410);
Some(if x % 4 == 0 { c(150, 140, 130) } else if r % 9 == 0 { c(170, 160, 150) } else { c(200, 192, 178) })
});
cv.cell(T_CAP, |x, y| {
let spot = |cx: i32, cy: i32| (x - cx).pow(2) + (y - cy).pow(2) <= 2;
if spot(4, 4) || spot(11, 6) || spot(6, 11) || spot(12, 12) {
Some(c(150, 255, 230))
} else if (x + y) % 5 == 0 {
Some(c(90, 50, 130))
} else {
Some(c(120, 66, 170))
}
});
// tree: bark and two kinds of crown
cv.cell(T_BARK, |x, y| {
let r = hash(x, y, 420);
Some(if x % 5 == 0 || r % 7 == 0 { c(60, 40, 24) } else { c(96, 66, 40) })
});
for v in 0..2u32 {
cv.cell(T_LEAVES + v, |x, y| {
let r = hash(x, y, 430 + v);
Some(if r % 5 == 0 { c(30, 70, 30) } else if r % 7 == 0 { c(110, 160, 60) } else if v == 0 { c(56, 110, 44) } else { c(70, 120, 40) })
});
}
// grass above ground
for v in 0..4u32 {
cv.cell(T_GRASS + v, |x, y| {
let r = hash(x, y, 440 + v);
Some(if r % 11 == 0 { c(120, 170, 70) } else if r % 6 == 0 { c(50, 96, 40) } else if r % 23 == 0 { c(200, 190, 90) } else { c(74, 126, 52) })
});
}
// obsidian: cooled lava, dark glass with a few glowing seams // obsidian: cooled lava, dark glass with a few glowing seams
for v in 0..4u32 { for v in 0..4u32 {
cv.cell(T_OBSIDIAN + v, |x, y| { cv.cell(T_OBSIDIAN + v, |x, y| {
@@ -1976,6 +2014,8 @@ impl Gfx {
Kind::Lava => T_LAVA + v, Kind::Lava => T_LAVA + v,
Kind::Bridge | Kind::Drawbridge => T_BRIDGE + (v & 1), Kind::Bridge | Kind::Drawbridge => T_BRIDGE + (v & 1),
Kind::Obsidian => T_OBSIDIAN + v, Kind::Obsidian => T_OBSIDIAN + v,
Kind::Mushroom => T_FLOOR + v,
Kind::Tree => T_GRASS + v,
Kind::LavaBridge => T_STONEBRIDGE + (v & 1), Kind::LavaBridge => T_STONEBRIDGE + (v & 1),
Kind::Shard => T_HEROFLOOR + v, Kind::Shard => T_HEROFLOOR + v,
Kind::Aerie => T_AERIE + v, Kind::Aerie => T_AERIE + v,
+1
View File
@@ -42,6 +42,7 @@ mod touch;
mod ui; mod ui;
mod voice; mod voice;
mod wilds; mod wilds;
mod wood;
mod xm; mod xm;
use cloud::{Cloud, CloudEvent}; use cloud::{Cloud, CloudEvent};
+12 -2
View File
@@ -70,6 +70,8 @@ pub enum Kind {
Altar, // room: sacrifices Altar, // room: sacrifices
Drawbridge, // bridge that can be raised (res: see DB_RAISED, DB_AUTO, DB_LAVA) Drawbridge, // bridge that can be raised (res: see DB_RAISED, DB_AUTO, DB_LAVA)
Obsidian, // lava cooled by frost: walkable until it melts again Obsidian, // lava cooled by frost: walkable until it melts again
Mushroom, // giant mushroom on open ground: imps fell it for wood (grows back)
Tree, // tree above ground: imps fell it for wood
} }
// drawbridge state in Tile::res // drawbridge state in Tile::res
@@ -103,7 +105,7 @@ pub struct River {
} }
// order matters for the packed savegame codec: only append new kinds // order matters for the packed savegame codec: only append new kinds
const KINDS: [Kind; 36] = [ const KINDS: [Kind; 38] = [
Kind::Rock, Kind::Rock,
Kind::Earth, Kind::Earth,
Kind::Gold, Kind::Gold,
@@ -140,6 +142,8 @@ const KINDS: [Kind; 36] = [
Kind::Altar, Kind::Altar,
Kind::Drawbridge, Kind::Drawbridge,
Kind::Obsidian, Kind::Obsidian,
Kind::Mushroom,
Kind::Tree,
]; ];
// treasures (veins, treasury content, imp loads): 0 gold, 1 silver, 2 ruby, 3 diamond // treasures (veins, treasury content, imp loads): 0 gold, 1 silver, 2 ruby, 3 diamond
@@ -223,7 +227,11 @@ impl Tile {
matches!(self.kind, Kind::Rock | Kind::Earth | Kind::Gold | Kind::Silver | Kind::Ruby | Kind::Diamond | Kind::Steel) matches!(self.kind, Kind::Rock | Kind::Earth | Kind::Gold | Kind::Silver | Kind::Ruby | Kind::Diamond | Kind::Steel)
} }
pub fn diggable(&self) -> bool { pub fn diggable(&self) -> bool {
matches!(self.kind, Kind::Earth | Kind::Gold | Kind::Silver | Kind::Ruby | Kind::Diamond | Kind::Steel) matches!(self.kind, Kind::Earth | Kind::Gold | Kind::Silver | Kind::Ruby | Kind::Diamond | Kind::Steel | Kind::Mushroom | Kind::Tree)
}
// a giant mushroom or a tree: felled like a wall is dug, gives wood
pub fn plant(&self) -> bool {
matches!(self.kind, Kind::Mushroom | Kind::Tree)
} }
// the treasure of a vein (None for everything else) // the treasure of a vein (None for everything else)
pub fn vein(&self) -> Option<u8> { pub fn vein(&self) -> Option<u8> {
@@ -751,6 +759,8 @@ impl Map {
Kind::Gold | Kind::Silver | Kind::Ruby | Kind::Diamond => Some(12), Kind::Gold | Kind::Silver | Kind::Ruby | Kind::Diamond => Some(12),
Kind::Rock | Kind::Core | Kind::Tower | Kind::Water | Kind::Lava => None, Kind::Rock | Kind::Core | Kind::Tower | Kind::Water | Kind::Lava => None,
Kind::Door => Some(10), Kind::Door => Some(10),
Kind::Mushroom | Kind::Tree => Some(6),
Kind::Drawbridge if tl.res & DB_RAISED != 0 => None,
_ => Some(1), _ => Some(1),
} }
} }
+38
View File
@@ -401,6 +401,17 @@ impl MB {
); );
} }
} }
// An axis-aligned box without its bottom (plants: stems, caps, trunks, crowns)
fn boxy(&mut self, lo: Vec3, hi: Vec3, cell: u32, c: [u8; 4], top: [u8; 4]) {
let (a, b) = cell_uv(cell);
let uv = [vec2(a.x, b.y), vec2(b.x, b.y), vec2(b.x, a.y), vec2(a.x, a.y)];
let (x0, y0, z0, x1, y1, z1) = (lo.x, lo.y, lo.z, hi.x, hi.y, hi.z);
self.quad([vec3(x0, y1, z0), vec3(x1, y1, z0), vec3(x1, y1, z1), vec3(x0, y1, z1)], uv, [top; 4], [Vec3::Y; 4]);
self.quad([vec3(x0, y0, z0), vec3(x1, y0, z0), vec3(x1, y1, z0), vec3(x0, y1, z0)], uv, [c; 4], [-Vec3::Z; 4]);
self.quad([vec3(x1, y0, z1), vec3(x0, y0, z1), vec3(x0, y1, z1), vec3(x1, y1, z1)], uv, [c; 4], [Vec3::Z; 4]);
self.quad([vec3(x0, y0, z1), vec3(x0, y0, z0), vec3(x0, y1, z0), vec3(x0, y1, z1)], uv, [c; 4], [-Vec3::X; 4]);
self.quad([vec3(x1, y0, z0), vec3(x1, y0, z1), vec3(x1, y1, z1), vec3(x1, y1, z0)], uv, [c; 4], [Vec3::X; 4]);
}
// Thin strip lying on a surface (normal n) from p to q, used for tile outlines // Thin strip lying on a surface (normal n) from p to q, used for tile outlines
fn strip(&mut self, p: Vec3, q: Vec3, n: Vec3, w: f32, c: [u8; 4]) { fn strip(&mut self, p: Vec3, q: Vec3, n: Vec3, w: f32, c: [u8; 4]) {
let side = (q - p).cross(n).normalize_or_zero() * (w * 0.5); let side = (q - p).cross(n).normalize_or_zero() * (w * 0.5);
@@ -834,6 +845,31 @@ fn build_chunk(map: &Map, amb: &[f32], glow: &[f32], cx: i32, cz: i32, atlas: &T
} }
// room decor // room decor
let dc = col(lava_lit(Vec3::splat(amb_at(amb, xf + 0.5, zf + 0.5)), lava_at(glow, xf + 0.5, zf + 0.5)), 1.0); let dc = col(lava_lit(Vec3::splat(amb_at(amb, xf + 0.5, zf + 0.5)), lava_at(glow, xf + 0.5, zf + 0.5)), 1.0);
if t.plant() {
// a giant mushroom or a tree (marked for felling: a yellow tint)
let (cx, cz) = (xf + 0.5, zf + 0.5);
let a = amb_at(amb, cx, cz);
let lg = lava_at(glow, cx, cz);
let tint = |v: Vec3| col(lava_lit(if t.marked { v * vec3(1.3, 1.15, 0.5) } else { v }, lg), 1.0);
let s = 0.85 + 0.1 * (t.var & 3) as f32;
if t.kind == Kind::Mushroom {
let h = 0.75 * s;
let sc = tint(Vec3::splat(a.max(0.35)));
mb.boxy(vec3(cx - 0.12, 0.0, cz - 0.12), vec3(cx + 0.12, h, cz + 0.12), T_STEM, sc, sc);
// the cap glows a little in the dark
let cc = tint(Vec3::splat(a.max(0.7)));
mb.boxy(vec3(cx - 0.42 * s, h, cz - 0.42 * s), vec3(cx + 0.42 * s, h + 0.26, cz + 0.42 * s), T_CAP, cc, cc);
mb.boxy(vec3(cx - 0.26 * s, h + 0.26, cz - 0.26 * s), vec3(cx + 0.26 * s, h + 0.38, cz + 0.26 * s), T_CAP, cc, cc);
} else {
let tc = tint(Vec3::splat(a.max(0.3)));
mb.boxy(vec3(cx - 0.12, 0.0, cz - 0.12), vec3(cx + 0.12, 0.9 * s, cz + 0.12), T_BARK, tc, tc);
let lc = tint(Vec3::splat(a.max(0.3) * 0.9));
let top = tint(Vec3::splat(a.max(0.3) * 1.1));
let leaves = T_LEAVES + (t.var as u32 & 1);
mb.boxy(vec3(cx - 0.48, 0.75 * s, cz - 0.48), vec3(cx + 0.48, 1.55 * s, cz + 0.48), leaves, lc, top);
mb.boxy(vec3(cx - 0.3, 1.55 * s, cz - 0.3), vec3(cx + 0.3, 1.95 * s, cz + 0.3), leaves, lc, top);
}
}
// wear and tear: grit and cracks on plain floors // wear and tear: grit and cracks on plain floors
if matches!(t.kind, Kind::Floor) { if matches!(t.kind, Kind::Floor) {
let hsh = (x as u32).wrapping_mul(2654435761) ^ (z as u32).wrapping_mul(2246822519); let hsh = (x as u32).wrapping_mul(2654435761) ^ (z as u32).wrapping_mul(2246822519);
@@ -3083,6 +3119,8 @@ pub fn minimap_color(tile: &Tile) -> [u8; 4] {
Kind::LavaBridge => [130, 120, 115, 255], Kind::LavaBridge => [130, 120, 115, 255],
Kind::Drawbridge => [120, 80, 50, 255], Kind::Drawbridge => [120, 80, 50, 255],
Kind::Obsidian => [60, 40, 70, 255], Kind::Obsidian => [60, 40, 70, 255],
Kind::Mushroom => [150, 90, 200, 255],
Kind::Tree => [40, 100, 40, 255],
Kind::Shard => [255, 60, 120, 255], Kind::Shard => [255, 60, 120, 255],
Kind::Aerie => [170, 140, 90, 255], Kind::Aerie => [170, 140, 90, 255],
Kind::Steel => [150, 160, 180, 255], Kind::Steel => [150, 160, 180, 255],
+6
View File
@@ -178,6 +178,12 @@ impl Game {
self.sfx_ui(Sfx::Error); self.sfx_ui(Sfx::Error);
return; return;
} }
// a wooden door costs wood
if kind == TrapKind::WoodDoor && !self.spend_wood(crate::wood::DOOR_WOOD) {
self.msg("msg.no_wood", vec![]);
self.sfx_ui(Sfx::Error);
return;
}
let id = self.next_id; let id = self.next_id;
self.next_id += 1; self.next_id += 1;
self.traps.push(Trap { id, kind, tile: i, stage: ORDERED, crate_tile: 0, progress: 0.0, cd: 0.0, hp: kind.hp(), locked: false, carrier: 0, fired: 99.0, aim: 0.0, revealed: false, sprung: false }); self.traps.push(Trap { id, kind, tile: i, stage: ORDERED, crate_tile: 0, progress: 0.0, cd: 0.0, hp: kind.hp(), locked: false, carrier: 0, fired: 99.0, aim: 0.0, revealed: false, sprung: false });
+14 -4
View File
@@ -288,8 +288,8 @@ pub fn tool_cost_static(t: Tool) -> String {
match t { match t {
Tool::Spell(sp) => trf("cost.mana", &[(sp.cost() as i32).to_string()]), Tool::Spell(sp) => trf("cost.mana", &[(sp.cost() as i32).to_string()]),
Tool::Trap(k) => trf("cost.work", &[(k.work() as i32).to_string()]), Tool::Trap(k) => trf("cost.work", &[(k.work() as i32).to_string()]),
Tool::Bridge => trf("cost.bridge", &[BRIDGE_COST[0].to_string(), BRIDGE_COST[1].to_string()]), Tool::Bridge => trf("cost.bridge", &[BRIDGE_COST[0].to_string(), (crate::wood::BRIDGE_WOOD as i32).to_string(), BRIDGE_COST[1].to_string()]),
Tool::Drawbridge => trf("cost.gold_tile", &[DRAWBRIDGE_COST.to_string()]), Tool::Drawbridge => trf("cost.drawbridge", &[DRAWBRIDGE_COST[0].to_string(), (crate::wood::DRAWBRIDGE_WOOD as i32).to_string(), DRAWBRIDGE_COST[1].to_string()]),
Tool::Steel => trf("cost.steel", &[STEEL_COST[0].to_string(), STEEL_COST[1].to_string()]), Tool::Steel => trf("cost.steel", &[STEEL_COST[0].to_string(), STEEL_COST[1].to_string()]),
Tool::Tower(TowerKind::Rune) => { Tool::Tower(TowerKind::Rune) => {
let s = tower_stats(TowerKind::Rune); let s = tower_stats(TowerKind::Rune);
@@ -314,8 +314,8 @@ pub fn tool_cost(t: Tool, g: &Game) -> String {
Tool::Lightning => trf("cost.mana", &["50".into()]), Tool::Lightning => trf("cost.mana", &["50".into()]),
Tool::Heal => trf("cost.mana", &["60".into()]), Tool::Heal => trf("cost.mana", &["60".into()]),
Tool::Summon => trf("cost.mana", &[(g.summon_cost() as i32).to_string()]), Tool::Summon => trf("cost.mana", &[(g.summon_cost() as i32).to_string()]),
Tool::Bridge => trf("cost.bridge", &[BRIDGE_COST[0].to_string(), BRIDGE_COST[1].to_string()]), Tool::Bridge => trf("cost.bridge", &[BRIDGE_COST[0].to_string(), (crate::wood::BRIDGE_WOOD as i32).to_string(), BRIDGE_COST[1].to_string()]),
Tool::Drawbridge => trf("cost.gold_tile", &[DRAWBRIDGE_COST.to_string()]), Tool::Drawbridge => trf("cost.drawbridge", &[DRAWBRIDGE_COST[0].to_string(), (crate::wood::DRAWBRIDGE_WOOD as i32).to_string(), DRAWBRIDGE_COST[1].to_string()]),
Tool::Steel => trf("cost.steel", &[STEEL_COST[0].to_string(), STEEL_COST[1].to_string()]), Tool::Steel => trf("cost.steel", &[STEEL_COST[0].to_string(), STEEL_COST[1].to_string()]),
Tool::Tower(TowerKind::Rune) => { Tool::Tower(TowerKind::Rune) => {
let s = tower_stats(TowerKind::Rune); let s = tower_stats(TowerKind::Rune);
@@ -622,6 +622,7 @@ impl Ui {
} }
let mut segs: Vec<Vec<Part>> = vec![ let mut segs: Vec<Vec<Part>> = vec![
gold_seg, gold_seg,
vec![txt(tr("hud.wood"), WOOD_C), Part::Gap, txt((g.wood.floor() as i32).to_string(), TXT)],
vec![txt(tr("hud.mana"), MANA), Part::Gap, Part::Bar(g.mana / g.mana_max(), MANA), Part::Gap, txt(format!("{:<3}", g.mana as i32), TXT)], vec![txt(tr("hud.mana"), MANA), Part::Gap, Part::Bar(g.mana / g.mana_max(), MANA), Part::Gap, txt(format!("{:<3}", g.mana as i32), TXT)],
vec![txt(tr("hud.core"), RED), Part::Gap, Part::Bar(g.core_hp / CORE_HP, RED)], vec![txt(tr("hud.core"), RED), Part::Gap, Part::Bar(g.core_hp / CORE_HP, RED)],
vec![txt(tr("hud.creatures"), TXT), Part::Gap, txt(format!("{}/{}", g.creature_count(), cap), TXT)], vec![txt(tr("hud.creatures"), TXT), Part::Gap, txt(format!("{}/{}", g.creature_count(), cap), TXT)],
@@ -1418,6 +1419,9 @@ impl Ui {
} }
// Info text for the unit or tile under the mouse (first line = title) // Info text for the unit or tile under the mouse (first line = title)
// the colour of wood in the interface
const WOOD_C: Color = Color::new(0.78, 0.56, 0.32, 1.0);
// fire and wear of a bridge tile // fire and wear of a bridge tile
fn bridge_state(g: &Game, i: usize, out: &mut Vec<(String, Color)>) { fn bridge_state(g: &Game, i: usize, out: &mut Vec<(String, Color)>) {
if g.burning(i) { if g.burning(i) {
@@ -1565,6 +1569,12 @@ pub fn hover_info(g: &Game, ent: Option<usize>, tile: Option<(i32, i32)>) -> Vec
out.push((tr(state), BLUE)); out.push((tr(state), BLUE));
bridge_state(g, i, &mut out); bridge_state(g, i, &mut out);
} }
Kind::Mushroom | Kind::Tree => {
let tree = t.kind == Kind::Tree;
out.push((tr(if tree { "tile.tree" } else { "tile.mushroom" }), WOOD_C));
let wood = if tree { crate::wood::WOOD_TREE } else { crate::wood::WOOD_MUSHROOM };
out.push((trf("tile.plant_info", &[(wood as i32).to_string()]), DIM));
}
Kind::Obsidian => { Kind::Obsidian => {
out.push((tr("tile.obsidian"), FRAME_HI)); out.push((tr("tile.obsidian"), FRAME_HI));
let left = g.bridgework.cooled.iter().find(|c| c.0 == i).map_or(0.0, |c| c.1); let left = g.bridgework.cooled.iter().find(|c| c.0 == i).map_or(0.0, |c| c.1);
+2
View File
@@ -71,6 +71,8 @@ impl Game {
} }
self.carve_cavern(x, y, &keep, &mut rng); self.carve_cavern(x, y, &keep, &mut rng);
} }
// giant mushrooms in the open: the underground's little wood
self.grow_mushrooms(seed);
} }
// a cavern: a few overlapping blobs, ragged edges // a cavern: a few overlapping blobs, ragged edges
+156
View File
@@ -0,0 +1,156 @@
// Wood, the second resource. Underground it comes from giant mushrooms (few, growing back
// slowly), above ground from trees (many). Pit imps fell them like they dig (mark them with the
// pick); the wood goes to the master at once. Wooden bridges, wooden drawbridges and wooden
// doors cost wood; stone bridges, iron and magic doors do not.
use crate::game::*;
use crate::map::*;
use serde::{Deserialize, Serialize};
// every master starts with a little wood
pub const WOOD_START: f32 = 12.0;
// wood from one giant mushroom / one tree
pub const WOOD_MUSHROOM: f32 = 4.0;
pub const WOOD_TREE: f32 = 3.0;
// strikes a plant takes
pub const MUSHROOM_HP: f32 = 4.0;
#[allow(dead_code)] // trees come with the surface world
pub const TREE_HP: f32 = 6.0;
// seconds until a felled giant mushroom grows back
pub const REGROW: f32 = 240.0;
// wood a wooden bridge tile, a wooden drawbridge tile and a wooden door cost
pub const BRIDGE_WOOD: f32 = 2.0;
pub const DRAWBRIDGE_WOOD: f32 = 4.0;
pub const DOOR_WOOD: f32 = 3.0;
// giant mushrooms in a cavern of a random map: one per this many open tiles
const MUSHROOM_SHARE: usize = 70;
#[derive(Clone, Debug, Default, Serialize, Deserialize)]
pub struct WoodWork {
pub regrow: Vec<(usize, f32)>, // felled mushroom tile, seconds until it grows back
}
// a tile where a plant stands alone: all eight neighbours open ground, no other plant next to
// it (so a plant never closes a corridor)
fn lonely_spot(map: &Map, x: i32, y: i32) -> bool {
if !inb(x, y) || map.t[idx(x, y)].kind != Kind::Floor || map.t[idx(x, y)].owner != Owner::None {
return false;
}
DIR8.iter().all(|&(dx, dy)| map.get(x + dx, y + dy).map_or(false, |n| n.walkable() && !n.bridge() && n.kind != Kind::Door))
&& (-2..=2).all(|dy| (-2..=2).all(|dx| !map.get(x + dx, y + dy).map_or(false, |n| n.plant())))
}
impl Game {
// giant mushrooms in the open caverns of a random map (deterministic, from the seed)
pub fn grow_mushrooms(&mut self, seed: u32) {
let mut rng = Rng(seed.wrapping_mul(0x9e37_79b9) ^ 0x6d2b_79f5 | 1);
let (cx, cy) = (self.map.core.0 + 1, self.map.core.1 + 1);
let open: Vec<usize> = (0..self.map.t.len())
.filter(|&i| {
let (x, y) = xy(i);
(x - cx).abs().max((y - cy).abs()) > 10 && lonely_spot(&self.map, x, y)
})
.collect();
let want = (open.len() / MUSHROOM_SHARE).max(6);
let mut placed = 0;
let mut tries = 0;
while placed < want && tries < want * 20 && !open.is_empty() {
tries += 1;
let i = open[(rng.next() as usize) % open.len()];
let (x, y) = xy(i);
if self.ents.iter().any(|e| e.alive && e.tile() == i) || !lonely_spot(&self.map, x, y) {
continue;
}
self.plant_mushroom(i);
placed += 1;
}
}
pub fn plant_mushroom(&mut self, i: usize) {
let t = &mut self.map.t[i];
t.kind = Kind::Mushroom;
t.owner = Owner::None;
t.hp = MUSHROOM_HP;
t.marked = false;
}
// an imp felled the plant at tile i: wood for its master, a mushroom grows back later
pub(crate) fn felled(&mut self, i: usize) {
let kind = self.map.t[i].kind;
let wood = if kind == Kind::Tree { WOOD_TREE } else { WOOD_MUSHROOM };
self.wood += wood;
if kind == Kind::Mushroom {
self.woodwork.regrow.push((i, REGROW));
}
let (x, y) = xy(i);
self.fx(5, x as f32 + 0.5, y as f32 + 0.5, 0.0, 0.0, 0.5, 0xff3070a0);
}
// pays wood; false (and nothing paid) if there is not enough
pub fn spend_wood(&mut self, n: f32) -> bool {
if self.wood + 1e-3 < n {
return false;
}
self.wood = (self.wood - n).max(0.0);
true
}
// the shared step: felled mushrooms grow back where there is room
pub(crate) fn update_wood(&mut self, dt: f32) {
let mut k = 0;
while k < self.woodwork.regrow.len() {
self.woodwork.regrow[k].1 -= dt;
if self.woodwork.regrow[k].1 > 0.0 {
k += 1;
continue;
}
let i = self.woodwork.regrow[k].0;
let (x, y) = xy(i);
if lonely_spot(&self.map, x, y) && !self.ents.iter().any(|e| e.alive && e.tile() == i) {
self.plant_mushroom(i);
self.woodwork.regrow.swap_remove(k);
} else if self.map.t[i].kind != Kind::Floor || self.map.t[i].owner != Owner::None {
// built over or claimed: it does not come back
self.woodwork.regrow.swap_remove(k);
} else {
self.woodwork.regrow[k].1 = 30.0;
k += 1;
}
}
}
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn random_maps_have_lonely_giant_mushrooms() {
let g = Game::new(9, 96, 96);
let n = g.map.t.iter().filter(|t| t.kind == Kind::Mushroom).count();
assert!(n >= 6, "{} mushrooms", n);
assert!((g.wood - WOOD_START).abs() < 1e-3);
// none closes a corridor: every neighbour is open ground
for i in 0..g.map.t.len() {
if g.map.t[i].kind == Kind::Mushroom {
let (x, y) = xy(i);
assert!(DIR8.iter().all(|&(dx, dy)| g.map.get(x + dx, y + dy).map_or(false, |n| n.walkable() || n.plant())));
}
}
}
#[test]
fn felling_gives_wood_and_mushrooms_grow_back() {
let mut g = Game::new(9, 96, 96);
let i = g.map.t.iter().position(|t| t.kind == Kind::Mushroom).unwrap();
let w0 = g.wood;
g.felled(i);
g.dig_out(i);
assert_eq!(g.wood, w0 + WOOD_MUSHROOM);
assert_eq!(g.map.t[i].kind, Kind::Floor);
g.woodwork.regrow[0].1 = 0.01;
g.update_wood(0.05);
assert_eq!(g.map.t[i].kind, Kind::Mushroom, "grown back");
assert!(g.spend_wood(3.0) && !g.spend_wood(1000.0));
}
}