Merge branch 'master' of https://github.com/Anuken/Mindustry into schematics

This commit is contained in:
Anuken
2019-10-15 08:52:48 -04:00
31 changed files with 1449 additions and 1199 deletions

View File

@@ -49,6 +49,7 @@ customgame = Custom Game
newgame = New Game newgame = New Game
none = <none> none = <none>
minimap = Minimap minimap = Minimap
position = Position
close = Close close = Close
website = Website website = Website
quit = Quit quit = Quit
@@ -593,6 +594,7 @@ setting.fps.name = Show FPS
setting.vsync.name = VSync setting.vsync.name = VSync
setting.pixelate.name = Pixelate[lightgray] (disables animations) setting.pixelate.name = Pixelate[lightgray] (disables animations)
setting.minimap.name = Show Minimap setting.minimap.name = Show Minimap
setting.position.name = Show Player Position
setting.musicvol.name = Music Volume setting.musicvol.name = Music Volume
setting.ambientvol.name = Ambient Volume setting.ambientvol.name = Ambient Volume
setting.mutemusic.name = Mute Music setting.mutemusic.name = Mute Music

File diff suppressed because it is too large Load Diff

View File

@@ -1,4 +1,4 @@
credits.text = Creato da [ROYAL]Anuken[] - [SKY]anukendev@gmail.com[]\n\n[GRAY](Nel caso non te ne sia accorto, la traduzione del gioco non è completa.\n Chi di dovere sta lavorando più velocemente possibile per completarla! Un aiutino non sarebbe male!) credits.text = Creato da [ROYAL]Anuken[] - [SKY]anukendev@gmail.com[]
credits = Crediti credits = Crediti
contributors = Traduttori e Contributori contributors = Traduttori e Contributori
discord = Entra nel server discord di mindustry! discord = Entra nel server discord di mindustry!
@@ -10,7 +10,7 @@ link.trello.description = Scheda ufficiale trello per funzionalità pianificate
link.itch.io.description = pagina di itch.io con download per PC e versione web link.itch.io.description = pagina di itch.io con download per PC e versione web
link.google-play.description = Elenco di Google Play Store link.google-play.description = Elenco di Google Play Store
link.wiki.description = wiki ufficiale di Mindustry link.wiki.description = wiki ufficiale di Mindustry
linkfail = Impossibile aprire il link! L'URL è stato copiato nella tua bacheca. linkfail = Impossibile aprire il link! L'URL è stato copiato.
screenshot = Screenshot salvato a {0} screenshot = Screenshot salvato a {0}
screenshot.invalid = Mappa troppo grossa, probabilmente non c'è abbastanza memoria libera. screenshot.invalid = Mappa troppo grossa, probabilmente non c'è abbastanza memoria libera.
gameover = Il nucleo è stato distrutto. gameover = Il nucleo è stato distrutto.
@@ -25,7 +25,7 @@ stat.wave = Ondate sconfitte:[accent] {0}
stat.enemiesDestroyed = Nemici distrutti:[accent] {0} stat.enemiesDestroyed = Nemici distrutti:[accent] {0}
stat.built = Costruzioni erette:[accent] {0} stat.built = Costruzioni erette:[accent] {0}
stat.destroyed = Costruzioni distrutte:[accent] {0} stat.destroyed = Costruzioni distrutte:[accent] {0}
stat.deconstructed = Costruzioni smontate:[accent] {0} stat.deconstructed = Costruzioni smantellate:[accent] {0}
stat.delivered = Riorse lanciate: stat.delivered = Riorse lanciate:
stat.rank = Livello finale: [accent]{0} stat.rank = Livello finale: [accent]{0}
launcheditems = [accent]Oggetti lanciati launcheditems = [accent]Oggetti lanciati
@@ -48,18 +48,18 @@ minimap = Minimappa
close = Chiuso close = Chiuso
website = Website website = Website
quit = Esci quit = Esci
save.quit = Save & Quit save.quit = Salva ed esci
maps = Mappe maps = Mappe
maps.browse = Browse Maps maps.browse = Consulta Mappe
continue = Continua continue = Continua
maps.none = [LIGHT_GRAY]Nessuna mappa trovata! maps.none = [LIGHT_GRAY]Nessuna mappa trovata!
invalid = Invalid invalid = Invalido
preparingconfig = Preparing Config preparingconfig = Preparo la configurazione
preparingcontent = Preparing Content preparingcontent = Preparo il contenuto
uploadingcontent = Uploading Content uploadingcontent = Carico il contenuto
uploadingpreviewfile = Uploading Preview File uploadingpreviewfile = Carico file di anteprima
committingchanges = Comitting Changes committingchanges = Applico le modifiche
done = Done done = Fatto
about.button = Info about.button = Info
name = Nome: name = Nome:
noname = Scegli un [accent] nome[] prima di unirti. noname = Scegli un [accent] nome[] prima di unirti.
@@ -74,31 +74,31 @@ players = {0} giocatori online
players.single = {0} giocatori online players.single = {0} giocatori online
server.closing = [accent]Chiusura server ... server.closing = [accent]Chiusura server ...
server.kicked.kick = Sei stato cacciato dal server! server.kicked.kick = Sei stato cacciato dal server!
server.kicked.whitelist = You are not whitelisted here. server.kicked.whitelist = Non sei presente in questa whitelist.
server.kicked.serverClose = Server chiuso. server.kicked.serverClose = Server chiuso.
server.kicked.vote = You have been vote-kicked. Goodbye. server.kicked.vote = Sei stato cacciato su richiesta dei giocatori. Buona giornata.
server.kicked.clientOutdated = Versione del client obsoleta! Aggiorna il tuo gioco! server.kicked.clientOutdated = Versione del client obsoleta! Aggiorna il tuo gioco!
server.kicked.serverOutdated = Server obsoleto! Chiedi all'host di aggiornare! server.kicked.serverOutdated = Server obsoleto! Chiedi all'host di aggiornare!
server.kicked.banned = Sei bannato da questo server. server.kicked.banned = Sei bannato da questo server.
server.kicked.typeMismatch = This server is not compatible with your build type. server.kicked.typeMismatch = Questo server non è comparibile con la tua build.
server.kicked.playerLimit = This server is full. Wait for an empty slot. server.kicked.playerLimit = Questo server è pieno. Attendi che si liberi un posto.
server.kicked.recentKick = Sei stato cacciato di recente.\nAspetta prima di riconnetterti. server.kicked.recentKick = Sei stato cacciato di recente.\nAspetta prima di riconnetterti.
server.kicked.nameInUse = C'è già qualcuno con il tuo nome\nsu questo server. server.kicked.nameInUse = C'è già qualcuno con il tuo nome su questo server.
server.kicked.nameEmpty = Il tuo nome deve contenere almeno un carattere. server.kicked.nameEmpty = Il tuo nome deve contenere almeno un carattere.
server.kicked.idInUse = Sei già su questo server! Non è permesso connettersi con due account. server.kicked.idInUse = Sei già su questo server! Non è permesso connettersi con due account.
server.kicked.customClient = Questo server non supporta le build personalizzate. Scarica la versione ufficiale dal sito. server.kicked.customClient = Questo server non supporta le build personalizzate. Scarica la versione ufficiale dal sito.
server.kicked.gameover = Game over! server.kicked.gameover = Game over!
server.versions = Your version:[accent] {0}[]\nServer version:[accent] {1}[] server.versions = Your version:[accent] {0}[]\nServer version:[accent] {1}[]
host.info = Il pulsante [accent]hos [] ospita un server sulle porte [scarlet]6567[] e [scarlet]656.[] Chiunque sulla stessa [LIGHT_GRAY]connessione wifi o rete locale[] dovrebbe essere in grado di vedere il proprio server nel proprio elenco server.\n\n Se vuoi che le persone siano in grado di connettersi ovunque tramite IP, è richiesto il [accent]port forwarding[]. \n\n[LIGHT_GRAY]Nota: se qualcuno sta riscontrando problemi durante la connessione al gioco LAN, assicurati di aver consentito a Mindustry di accedere alla rete locale nelle impostazioni del firewall. host.info = Il pulsante [accent]host [] ospita un server sulla porte [scarlet]6567[].[] Chiunque sulla stessa [LIGHT_GRAY]connessione wifi o rete locale[] dovrebbe essere in grado di vedere il proprio server nel proprio elenco server.\n\n Se vuoi che le persone siano in grado di connettersi ovunque tramite IP, è richiesto il [accent]port forwarding[]. \n\n[LIGHT_GRAY]Nota: se qualcuno sta riscontrando problemi durante la connessione al gioco LAN, assicurati di aver consentito a Mindustry di accedere alla rete locale nelle impostazioni del firewall.
join.info = Qui è possibile inserire un [accent]IP del server[] a cui connettersi, o scoprire [accent]un server sulla rete locale[] disponibile.\n Sono supportati sia il multiplayer LAN che WAN. \n\n[LIGHT_GRAY]Nota: non esiste un elenco di server globali automatici; se si desidera connettersi a qualcuno tramite IP, è necessario chiedere all'host il proprio IP. join.info = Qui è possibile inserire un [accent]IP del server[] a cui connettersi, o scoprire [accent]un server sulla rete locale[] disponibile.\n Sono supportati sia il multiplayer LAN che WAN. \n\n[LIGHT_GRAY]Nota: non esiste un elenco di server globali automatici; se si desidera connettersi a qualcuno tramite IP, è necessario chiedere all'host il proprio IP.
hostserver = Host Server hostserver = Ospita Server
invitefriends = Invite Friends invitefriends = Invita amici
hostserver.mobile = Host\nServer hostserver.mobile = Ospita\nServer
host = Host host = Host
hosting = [accent] Apertura del server ... hosting = [accent] Apertura del server ...
hosts.refresh = Aggiorna hosts.refresh = Aggiorna
hosts.discovering = Ricerca partite LAN hosts.discovering = Ricerca partite LAN
hosts.discovering.any = Discovering games hosts.discovering.any = Ricerca partite
server.refreshing = Aggiornamento del server server.refreshing = Aggiornamento del server
hosts.none = [lightgray]Nessuna partita LAN trovata! hosts.none = [lightgray]Nessuna partita LAN trovata!
host.invalid = [scarlet]Impossibile connettersi all'host. host.invalid = [scarlet]Impossibile connettersi all'host.
@@ -122,7 +122,7 @@ server.version = [lightgray]Versione: {0}
server.custombuild = [yellow] Costruzione personalizzata server.custombuild = [yellow] Costruzione personalizzata
confirmban = Sei sicuro di voler bandire questo giocatore? confirmban = Sei sicuro di voler bandire questo giocatore?
confirmkick = Sei sicuro di voler espellere questo giocatore? confirmkick = Sei sicuro di voler espellere questo giocatore?
confirmvotekick = Are you sure you want to vote-kick this player? confirmvotekick = Sei sicuro di voler votare per l'espulsione di questo giocatore?
confirmunban = Sei sicuro di voler riammettere questo giocatore? confirmunban = Sei sicuro di voler riammettere questo giocatore?
confirmadmin = Sei sicuro di voler rendere questo giocatore un amministratore? confirmadmin = Sei sicuro di voler rendere questo giocatore un amministratore?
confirmunadmin = Sei sicuro di voler rimuovere lo stato di amministratore da questo giocatore? confirmunadmin = Sei sicuro di voler rimuovere lo stato di amministratore da questo giocatore?
@@ -133,7 +133,7 @@ disconnect.error = Connection error.
disconnect.closed = Connection closed. disconnect.closed = Connection closed.
disconnect.timeout = Timed out. disconnect.timeout = Timed out.
disconnect.data = Il mondo non si vuole caricare, mi dispiace! disconnect.data = Il mondo non si vuole caricare, mi dispiace!
cantconnect = Unable to join game ([accent]{0}[]). cantconnect = Impossibile unirsi al server ([accent]{0}[]).
connecting = [accent]Connessione in corso ... connecting = [accent]Connessione in corso ...
connecting.data = [accent]Caricamento dei dati del mondo ... connecting.data = [accent]Caricamento dei dati del mondo ...
server.port = Porta: server.port = Porta:
@@ -145,7 +145,7 @@ save.new = Nuovo Salvataggio
save.overwrite = Sei sicuro di voler sovrascrivere questo salvataggio? save.overwrite = Sei sicuro di voler sovrascrivere questo salvataggio?
overwrite = Sovrascrivi overwrite = Sovrascrivi
save.none = Nessun salvataggio trovato! save.none = Nessun salvataggio trovato!
saveload = [Accent]Salvataggio ... saveload = [accent]Salvataggio ...
savefail = [crimson]Salvataggio del gioco NON riuscito! savefail = [crimson]Salvataggio del gioco NON riuscito!
save.delete.confirm = Sei sicuro di voler eliminare questo salvataggio? save.delete.confirm = Sei sicuro di voler eliminare questo salvataggio?
save.delete = Elimina save.delete = Elimina
@@ -159,7 +159,7 @@ save.rename = Rinomina
save.rename.text = Nuovo nome: save.rename.text = Nuovo nome:
selectslot = Seleziona un salvataggio. selectslot = Seleziona un salvataggio.
slot = [accent]Slot {0} slot = [accent]Slot {0}
editmessage = Edit Message editmessage = Modifica messaggio
save.corrupted = [orang]Salvataggio corrotto o non valido! save.corrupted = [orang]Salvataggio corrotto o non valido!
empty = <Vuoto> empty = <Vuoto>
on = On on = On
@@ -173,7 +173,7 @@ save.playtime = Tempo di gioco: {0}
warning = Attenzione warning = Attenzione
confirm = Conferma confirm = Conferma
delete = Elimina delete = Elimina
view.workshop = View In Workshop view.workshop = Vedi nel Workshop
ok = OK ok = OK
open = Apri open = Apri
customize = Personalizza customize = Personalizza
@@ -183,13 +183,13 @@ copylink = Copia link
back = Indietro back = Indietro
data.export = Esporta Salvataggio data.export = Esporta Salvataggio
data.import = Importa Salvataggio data.import = Importa Salvataggio
data.exported = Data exported. data.exported = Dati esportati.
data.invalid = This isn't valid game data. data.invalid = Questi non sono dati di gioco validi.
data.import.confirm = Importing external data will erase[scarlet] all[] your current game data.\n[accent]This cannot be undone![]\n\nOnce the data is imported, your game will exit immediately. data.import.confirm = Importare dati di gioco esterni eliminerà[scarlet] tutti[] i tuoi progressi attuali.\n[accent]L'operazione è irreversibile![]\n\nUna volta importati i dati, il gioco si chiuderà immediatamente.
classic.export = Esporta dati classici classic.export = Esporta dati classici
classic.export.text = [accent]Mindustry[] ha appena rilasciato un aggiornamento importante.\nSalvataggio Classic (v3.5 build 40) o dati delle mappe è stato ritrovato. Vorresti esportare questi salvatagggi sul tuo telefono per usarli nella Mindustry Classic app? classic.export.text = [accent]Mindustry[] ha appena rilasciato un aggiornamento importante.\nSalvataggio Classic (v3.5 build 40) o dati delle mappe è stato ritrovato. Vorresti esportare questi salvatagggi sul tuo telefono per usarli nella Mindustry Classic app?
quit.confirm = Sei sicuro di voler uscire? quit.confirm = Sei sicuro di voler uscire?
quit.confirm.tutorial = Sei sicuro di sapere cosa stai facendo? Il tutorial può essere ripetuto in[accent] Impostazioni->Gioco->Ripeti il tutorial.[] quit.confirm.tutorial = Sei sicuro di sapere cosa stai facendo? Il tutorial può essere ripetuto in[accent] Gioca > Tutorial.[]
loading = [accent]Caricamento in corso ... loading = [accent]Caricamento in corso ...
saving = [accent]Salvando ... saving = [accent]Salvando ...
wave = [accent]Ondata {0} wave = [accent]Ondata {0}
@@ -210,11 +210,11 @@ map.nospawn = Questa mappa non possiede un nucleo in cui spawnare! Aggiungine un
map.nospawn.pvp = Questa mappa non ha un nucleo nemico! Aggiungi un [SCARLET]nucleo rosso[] nell'editor per poter giocare. map.nospawn.pvp = Questa mappa non ha un nucleo nemico! Aggiungi un [SCARLET]nucleo rosso[] nell'editor per poter giocare.
map.nospawn.attack = Questa mappa non ha un nucleo nemico! Aggiungi un [SCARLET]nucleo rosso[] nell'editor per poter giocare. map.nospawn.attack = Questa mappa non ha un nucleo nemico! Aggiungi un [SCARLET]nucleo rosso[] nell'editor per poter giocare.
map.invalid = Errore nel caricamento della mappa: file mappa corrotto o non valido. map.invalid = Errore nel caricamento della mappa: file mappa corrotto o non valido.
map.publish.error = Error publishing map: {0} map.publish.error = Errore durante la pubblicazione della mappa:\n{0}
map.publish.confirm = Are you sure you want to publish this map?\n\n[lightgray]Make sure you agree to the Workshop EULA first, or your maps will not show up! map.publish.confirm = Vuoi pubblicare questa mappa?\n\n[lightgray]Assicurati di aver accettato il Workshop EULA, o le tue mappe non saranno visibili!
eula = Steam EULA eula = Steam EULA
map.publish = Map published. map.publish = Mappa pubblicata.
map.publishing = [accent]Publishing map... map.publishing = [accent]Pubblico la mappa...
editor.brush = Pennello editor.brush = Pennello
editor.openin = Apri nell'editor editor.openin = Apri nell'editor
editor.oregen = Generazione dei minerali editor.oregen = Generazione dei minerali
@@ -222,12 +222,12 @@ editor.oregen.info = Generazione dei minerali:
editor.mapinfo = Informazioni mappa editor.mapinfo = Informazioni mappa
editor.author = Autore: editor.author = Autore:
editor.description = Descrizione: editor.description = Descrizione:
editor.nodescription = A map must have a description of at least 4 characters before being published. editor.nodescription = Una mappa deve avere una descrizione di almeno 4 caratteri per poter essere pubblicata.
editor.waves = Ondate: editor.waves = Ondate:
editor.rules = Regole: editor.rules = Regole:
editor.generation = Generazione: editor.generation = Generazione:
editor.ingame = Modifica in gioco editor.ingame = Modifica in gioco
editor.publish.workshop = Publish On Workshop editor.publish.workshop = Pubblica sul Workshop
editor.newmap = Nuova mappa editor.newmap = Nuova mappa
workshop = Workshop workshop = Workshop
waves.title = Ondate waves.title = Ondate
@@ -246,7 +246,7 @@ waves.invalid = Onde dagli appunti non valide.
waves.copied = Onde copiate. waves.copied = Onde copiate.
waves.none = Nessun nemico definiti.\n Nota che le disposizioni di ondate vuote verranno automaticamente rimpiazzate con la disposizione predefinita. waves.none = Nessun nemico definiti.\n Nota che le disposizioni di ondate vuote verranno automaticamente rimpiazzate con la disposizione predefinita.
editor.default = [LIGHT_GRAY]<Predefinito> editor.default = [LIGHT_GRAY]<Predefinito>
details = Details... details = Dettagli...
edit = Modifica... edit = Modifica...
editor.name = Nome: editor.name = Nome:
editor.spawn = Piazza un'unità editor.spawn = Piazza un'unità
@@ -256,7 +256,7 @@ editor.errorload = Errore nel caricamento di:\n[accent]{0}
editor.errorsave = Errore nel salvataggio di:\n[accent]{0} editor.errorsave = Errore nel salvataggio di:\n[accent]{0}
editor.errorimage = Quella è un'immagine, non una mappa. Non cambiare estensioni sperando che funzioni.\n\n Se vuoi importare una mappa vecchia clicca su "importa una mappa vecchia" nell'editor. editor.errorimage = Quella è un'immagine, non una mappa. Non cambiare estensioni sperando che funzioni.\n\n Se vuoi importare una mappa vecchia clicca su "importa una mappa vecchia" nell'editor.
editor.errorlegacy = La mappa è troppo vecchia ed usa un formato che non è più supportato. editor.errorlegacy = La mappa è troppo vecchia ed usa un formato che non è più supportato.
editor.errornot = This is not a map file. editor.errornot = Questo file non è una mappa.
editor.errorheader = Questo file della mappa è invalido o corrotto. editor.errorheader = Questo file della mappa è invalido o corrotto.
editor.errorname = Questa mappa è senza nome. editor.errorname = Questa mappa è senza nome.
editor.update = Aggiorna editor.update = Aggiorna
@@ -280,7 +280,7 @@ editor.importimage.description = Importa immagine esterna terreno
editor.export = Esportazione... editor.export = Esportazione...
editor.exportfile = Esporta file editor.exportfile = Esporta file
editor.exportfile.description = Esporta file mappa editor.exportfile.description = Esporta file mappa
editor.exportimage = Esporta immagine terreno editor.exportimage = Esporta immagine
editor.exportimage.description = Esporta file immagine mappa editor.exportimage.description = Esporta file immagine mappa
editor.loadimage = Carica\nimmagine editor.loadimage = Carica\nimmagine
editor.saveimage = Salva\nImmagine editor.saveimage = Salva\nImmagine
@@ -289,7 +289,7 @@ editor.resizemap = Ridimensiona la mappa
editor.mapname = Nome Mappa: editor.mapname = Nome Mappa:
editor.overwrite = [Accent]Attenzione!\nQuesto sovrascrive una mappa esistente. editor.overwrite = [Accent]Attenzione!\nQuesto sovrascrive una mappa esistente.
editor.overwrite.confirm = [scarlet]Attenzione![] Una mappa con questo nome esiste già. Sei sicuro di volerla sovrascrivere? editor.overwrite.confirm = [scarlet]Attenzione![] Una mappa con questo nome esiste già. Sei sicuro di volerla sovrascrivere?
editor.exists = A map with this name already exists. editor.exists = Esiste già una mappa con questo nome.
editor.selectmap = Seleziona una mappa da caricare: editor.selectmap = Seleziona una mappa da caricare:
toolmode.replace = Rimpiazzare toolmode.replace = Rimpiazzare
toolmode.replace.description = Disegna solo su blocchi solidi. toolmode.replace.description = Disegna solo su blocchi solidi.
@@ -369,7 +369,7 @@ launch.skip.confirm = Se salti adesso non riuscirai a decollare fino alle ondate
uncover = Svelare uncover = Svelare
configure = Configura l'equipaggiamento configure = Configura l'equipaggiamento
configure.locked = [LIGHT_GRAY]Arriva all'ondata {0}\nper configurare l'equipaggiamento. configure.locked = [LIGHT_GRAY]Arriva all'ondata {0}\nper configurare l'equipaggiamento.
configure.invalid = Amount must be a number between 0 and {0}. configure.invalid = Il valore dev'essere un numero compresto tra 0 e {0}.
zone.unlocked = [LIGHT_GRAY]{0} sbloccata. zone.unlocked = [LIGHT_GRAY]{0} sbloccata.
zone.requirement.complete = Ondata {0} raggiunta:\n{1} requisiti di zona soddisfatti. zone.requirement.complete = Ondata {0} raggiunta:\n{1} requisiti di zona soddisfatti.
zone.config.complete = Ondata {0} raggiunta:\nEquipaggiamento personalizzato sbloccato. zone.config.complete = Ondata {0} raggiunta:\nEquipaggiamento personalizzato sbloccato.
@@ -420,7 +420,7 @@ zone.crags.description = <inserisci descrizione>
settings.language = Lingua settings.language = Lingua
settings.data = Importa/Esporta salvataggio settings.data = Importa/Esporta salvataggio
settings.reset = Resetta Alle Impostazioni Predefinite settings.reset = Resetta Alle Impostazioni Predefinite
settings.rebind = Reimposta settings.rebind = Modifica
settings.controls = Controlli settings.controls = Controlli
settings.game = Gioco settings.game = Gioco
settings.sound = Suoni settings.sound = Suoni
@@ -490,10 +490,10 @@ bullet.splashdamage = [stat]{0}[lightgray] danno ad area ~[stat] {1}[lightgray]
bullet.incendiary = [stat]incendiario bullet.incendiary = [stat]incendiario
bullet.homing = [stat]autoguidato bullet.homing = [stat]autoguidato
bullet.shock = [stat]stordente bullet.shock = [stat]stordente
bullet.frag = [stat]frammentazione bullet.frag = [stat]a frammentazione
bullet.knockback = [stat]{0}[lightgray] contraccolpo bullet.knockback = [stat]{0}[lightgray] contraccolpo
bullet.freezing = [stat]congelamento bullet.freezing = [stat]congelante
bullet.tarred = [stat]asfaltata bullet.tarred = [stat]viscoso
bullet.multiplier = [stat]{0}[lightgray]x moltiplicatore munizioni bullet.multiplier = [stat]{0}[lightgray]x moltiplicatore munizioni
bullet.reload = [stat]{0}[lightgray]x ricarica bullet.reload = [stat]{0}[lightgray]x ricarica
unit.blocks = blocchi unit.blocks = blocchi
@@ -523,18 +523,18 @@ setting.animatedshields.name = Scudi animati
setting.antialias.name = Antialias[LIGHT_GRAY] (richiede riapertura gioco)[] setting.antialias.name = Antialias[LIGHT_GRAY] (richiede riapertura gioco)[]
setting.indicators.name = Indicatori Alleati setting.indicators.name = Indicatori Alleati
setting.autotarget.name = Mira automatica setting.autotarget.name = Mira automatica
setting.keyboard.name = Controlli Mouse+Tastiera setting.keyboard.name = Tastiera
setting.touchscreen.name = Touchscreen Controls setting.touchscreen.name = Touchscreen Controls
setting.fpscap.name = Limite FPS setting.fpscap.name = Limite FPS
setting.fpscap.none = Niente setting.fpscap.none = Niente
setting.fpscap.text = {0} FPS setting.fpscap.text = {0} FPS
setting.uiscale.name = Ridimensionamento dell'interfaccia utente[lightgray] (richiede riapertura gioco)[] setting.uiscale.name = Ridimensionamento dell'interfaccia utente[lightgray] (richiede riapertura gioco)[]
setting.swapdiagonal.name = Posizionamento sempre diagonale setting.swapdiagonal.name = Posizionamento sempre diagonale
setting.difficulty.training = formazione setting.difficulty.training = Allenamento
setting.difficulty.easy = facile setting.difficulty.easy = Facile
setting.difficulty.normal = medio setting.difficulty.normal = Medio
setting.difficulty.hard = difficile setting.difficulty.hard = Difficile
setting.difficulty.insane = impossibile setting.difficulty.insane = Impossibile
setting.difficulty.name = Difficoltà: setting.difficulty.name = Difficoltà:
setting.screenshake.name = Movimento dello schermo setting.screenshake.name = Movimento dello schermo
setting.effects.name = Visualizza effetti setting.effects.name = Visualizza effetti
@@ -553,8 +553,8 @@ setting.mutemusic.name = Silenzia musica
setting.sfxvol.name = Volume Effetti setting.sfxvol.name = Volume Effetti
setting.mutesound.name = Togli suoni setting.mutesound.name = Togli suoni
setting.crashreport.name = Invia rapporti sugli arresti anomali anonimamente setting.crashreport.name = Invia rapporti sugli arresti anomali anonimamente
setting.savecreate.name = Auto-Create Saves setting.savecreate.name = Autosalvataggio
setting.publichost.name = Public Game Visibility setting.publichost.name = Gioco visibile pubblicamente
setting.chatopacity.name = Opacità chat setting.chatopacity.name = Opacità chat
setting.lasersopacity.name = Power Laser Opacity setting.lasersopacity.name = Power Laser Opacity
setting.playerchat.name = Mostra Chat in-game setting.playerchat.name = Mostra Chat in-game
@@ -567,33 +567,33 @@ category.general.name = Generale
category.view.name = Visualizzazione category.view.name = Visualizzazione
category.multiplayer.name = Multigiocatore category.multiplayer.name = Multigiocatore
command.attack = Attacca command.attack = Attacca
command.rally = Rally command.rally = Guardia
command.retreat = Torna indietro command.retreat = Ritirata
keybind.gridMode.name = Seleziona blocco keybind.gridMode.name = Seleziona blocco
keybind.gridModeShift.name = Seleziona categoria keybind.gridModeShift.name = Seleziona categoria
keybind.press = Premi un tasto... keybind.press = Premi un tasto...
keybind.press.axis = Premi un'asse o un tasto... keybind.press.axis = Premi un'asse o un tasto...
keybind.screenshot.name = Screenshot della mappa keybind.screenshot.name = Screenshot della mappa
keybind.move_x.name = Sposta_x keybind.move_x.name = Muovi orizzontale
keybind.move_y.name = Sposta_y keybind.move_y.name = Muovi verticale
keybind.fullscreen.name = Toggle Fullscreen keybind.fullscreen.name = Schermo Intero
keybind.select.name = seleziona keybind.select.name = Seleziona
keybind.diagonal_placement.name = Posizionamento diagonale keybind.diagonal_placement.name = Posizionamento diagonale
keybind.pick.name = Scegli Blocco keybind.pick.name = Scegli Blocco
keybind.break_block.name = Rompi blocco keybind.break_block.name = Rompi blocco
keybind.deselect.name = Deseleziona keybind.deselect.name = Deseleziona
keybind.shoot.name = spara keybind.shoot.name = Spara
keybind.zoom_hold.name = attiva zoom keybind.zoom_hold.name = Attiva zoom
keybind.zoom.name = esegui zoom keybind.zoom.name = Esegui zoom
keybind.menu.name = menu keybind.menu.name = Apri Menu
keybind.pause.name = pausa keybind.pause.name = Pausa
keybind.minimap.name = Minimappa keybind.minimap.name = Minimappa
keybind.dash.name = Scatto keybind.dash.name = Scatto
keybind.chat.name = Chat keybind.chat.name = Chat
keybind.player_list.name = lista_giocatori keybind.player_list.name = Lista dei Giocatori
keybind.console.name = console keybind.console.name = Console
keybind.rotate.name = Ruotare keybind.rotate.name = Ruotare
keybind.toggle_menus.name = Abilita menù keybind.toggle_menus.name = Mostra/Nascondi HUD
keybind.chat_history_prev.name = Scorri chat vero l'alto keybind.chat_history_prev.name = Scorri chat vero l'alto
keybind.chat_history_next.name = Scorri chatt verso il basso keybind.chat_history_next.name = Scorri chatt verso il basso
keybind.chat_scroll.name = Scorri chat keybind.chat_scroll.name = Scorri chat
@@ -606,7 +606,7 @@ mode.sandbox.name = Creativa
mode.sandbox.description = Risorse infinite e nessun timer per le ondate. mode.sandbox.description = Risorse infinite e nessun timer per le ondate.
mode.pvp.name = PvP mode.pvp.name = PvP
mode.pvp.description = Lotta contro altri giocatori. mode.pvp.description = Lotta contro altri giocatori.
mode.attack.name = Attacco mode.attack.name = Schermaglia
mode.attack.description = Obiettivo: Distruggere la base nemica, non ci sono ondate mode.attack.description = Obiettivo: Distruggere la base nemica, non ci sono ondate
mode.custom = Regole personalizzate mode.custom = Regole personalizzate
rules.infiniteresources = Risorse infinite rules.infiniteresources = Risorse infinite
@@ -614,7 +614,7 @@ rules.wavetimer = Timer ondate
rules.waves = Ondate rules.waves = Ondate
rules.attack = Modalità attacco rules.attack = Modalità attacco
rules.enemyCheat = Infinite Risorse AI rules.enemyCheat = Infinite Risorse AI
rules.unitdrops = Drops Unità rules.unitdrops = Generazione Unità
rules.unitbuildspeedmultiplier = Moltiplicatore velocità costruzione unità rules.unitbuildspeedmultiplier = Moltiplicatore velocità costruzione unità
rules.unithealthmultiplier = Moltiplicatore vita unità rules.unithealthmultiplier = Moltiplicatore vita unità
rules.playerhealthmultiplier = Moltiplicatore vita giocatore rules.playerhealthmultiplier = Moltiplicatore vita giocatore
@@ -626,7 +626,7 @@ rules.wavespacing = Tempo fra ondate:[LIGHT_GRAY] (secondi)
rules.buildcostmultiplier = Moltiplicatore costo costruzione rules.buildcostmultiplier = Moltiplicatore costo costruzione
rules.buildspeedmultiplier = Moltiplicatore velocità costruzione rules.buildspeedmultiplier = Moltiplicatore velocità costruzione
rules.waitForWaveToEnd = Ondate aspettano fino a quando l'ondata precedente finisce rules.waitForWaveToEnd = Ondate aspettano fino a quando l'ondata precedente finisce
rules.dropzoneradius = Raggio di drop:[LIGHT_GRAY] (blocchi) rules.dropzoneradius = Raggio di generazione:[LIGHT_GRAY] (blocchi)
rules.respawns = Massimo di rigenerazioni per ondata rules.respawns = Massimo di rigenerazioni per ondata
rules.limitedRespawns = Limite rigenerazioni rules.limitedRespawns = Limite rigenerazioni
rules.title.waves = Ondate rules.title.waves = Ondate
@@ -764,8 +764,8 @@ block.dark-panel-5.name = Pannello scuro 5
block.dark-panel-6.name = Pannello scuro 6 block.dark-panel-6.name = Pannello scuro 6
block.dark-metal.name = Metallo Scuro block.dark-metal.name = Metallo Scuro
block.ignarock.name = Roccia Ignea block.ignarock.name = Roccia Ignea
block.hotrock.name = Roccia bollente block.hotrock.name = Roccia Bollente
block.magmarock.name = Roccia magmatica block.magmarock.name = Roccia Magmatica
block.cliffs.name = Scogliere block.cliffs.name = Scogliere
block.copper-wall.name = Muro di rame block.copper-wall.name = Muro di rame
block.copper-wall-large.name = Muro grande di rame block.copper-wall-large.name = Muro grande di rame
@@ -783,9 +783,9 @@ block.scatter.name = Cannone a dispersione
block.hail.name = Bombardiere block.hail.name = Bombardiere
block.lancer.name = Lanciere block.lancer.name = Lanciere
block.conveyor.name = Nastro trasportatore block.conveyor.name = Nastro trasportatore
block.titanium-conveyor.name = Nastro trasportatore avanzato block.titanium-conveyor.name = Nastro avanzato
block.armored-conveyor.name = Armored Conveyor block.armored-conveyor.name = Nastro corazzato
block.armored-conveyor.description = Moves items at the same speed as titanium conveyors, but possesses more armor. Does not accept inputs from the sides from anything but other conveyors. block.armored-conveyor.description = Trasporta gli oggetti alla stessa velocità del nastro avanzato, ma è più resistente. Accetta input dai lati solo da altri nastri.
block.junction.name = Incrocio block.junction.name = Incrocio
block.router.name = Distributore block.router.name = Distributore
block.distributor.name = Distributore Grande block.distributor.name = Distributore Grande
@@ -820,8 +820,8 @@ block.delta-mech-pad.name = Piattaforma del Mech Delta
block.javelin-ship-pad.name = Piattaforma della Nave Giavellotto block.javelin-ship-pad.name = Piattaforma della Nave Giavellotto
block.trident-ship-pad.name = Piattaforma della Nave Tridente block.trident-ship-pad.name = Piattaforma della Nave Tridente
block.glaive-ship-pad.name = Piattaforma della Nave Glaive block.glaive-ship-pad.name = Piattaforma della Nave Glaive
block.omega-mech-pad.name = Piattaforma della Nave Omega block.omega-mech-pad.name = Piattaforma del Mech Omega
block.tau-mech-pad.name = Piattaforma della Nave Tau block.tau-mech-pad.name = Piattaforma del Mech Tau
block.conduit.name = Condotta block.conduit.name = Condotta
block.mechanical-pump.name = Pompa meccanica block.mechanical-pump.name = Pompa meccanica
block.item-source.name = Fonte infinita (oggetti) block.item-source.name = Fonte infinita (oggetti)
@@ -875,10 +875,10 @@ block.surge-wall-large.name = Muro di Sovratensione Grande
block.cyclone.name = Ciclone block.cyclone.name = Ciclone
block.fuse.name = Frantume block.fuse.name = Frantume
block.shock-mine.name = Mina Stordente block.shock-mine.name = Mina Stordente
block.overdrive-projector.name = Generatore di Campo di Overclock block.overdrive-projector.name = Generatore di Campo di Overdrive
block.force-projector.name = Generatore di Campo di Forza block.force-projector.name = Generatore di Campo di Forza
block.arc.name = Arco Elettrico block.arc.name = Arco Elettrico
block.rtg-generator.name = Generatore Termico ai Radioisotopi block.rtg-generator.name = Generatore RTG
block.spectre.name = Spettro block.spectre.name = Spettro
block.meltdown.name = Fusione block.meltdown.name = Fusione
block.container.name = Contenitore block.container.name = Contenitore
@@ -907,25 +907,25 @@ unit.eradicator.name = Estirpatore
unit.lich.name = Lich unit.lich.name = Lich
unit.reaper.name = Mietitore unit.reaper.name = Mietitore
tutorial.next = [lightgray]<Clicca per continuare> tutorial.next = [lightgray]<Clicca per continuare>
tutorial.intro = Sei entrato nel[scarlet] Tutorial di Mindustry.[]\nInizia [accent] scavando rame[]. Clicca un minerale di rame vicino al tuo nucleo per farlo.\n\n[accent]{0}/{1} rame tutorial.intro = Sei entrato nel[scarlet] Tutorial di Mindustry.[]\nInizia[accent] scavando rame[]. Clicca un minerale di rame vicino al tuo nucleo per farlo.\n\n[accent]{0}/{1} rame
tutorial.drill = Minare manualmente.\n[accent]Le trivelle []possono scavare automaticamente\nPiazzane una su un minerale di rame. tutorial.drill = Ora crea una trivella.\n[accent]Le trivelle []scavano da sole e sono più efficienti. Piazzane una su un minerale di rame.
tutorial.drill.mobile = L'estrazione manuale è inefficiente. \n[accent] Le trivelle [] possono estrarre automaticamente. \n Toccare la scheda della trivella in basso a destra. \n Selezionare la trivella meccanica [accent] []. \n Posizionarlo su una vena di rame toccando, quindi premere il segno di spunta [accent] [] in basso per confermare la selezione. \n Premere il tasto X [accent] [] per annullare il posizionamento. tutorial.drill.mobile = Ora crea una trivella. \n[accent] Le trivelle []scavano da sole e sono più efficienti. \n Toccare la scheda della trivella in basso a destra. \n Selezionare la trivella meccanica [accent] []. \n Posizionarlo su una vena di rame toccando, quindi premere il segno di spunta [accent] [] in basso per confermare la selezione. \n Premere il tasto X [accent] [] per annullare il posizionamento.
tutorial.blockinfo = Ogni blocco ha statistiche diverse. Ogni trivella può estrarre solo determinati minerali. \n Per controllare le informazioni e le statistiche di un blocco, [accent] tocca "?" mentre lo selezioni nel menu di creazione. []\n\n[accent] Accedi ora alle statistiche della trivella meccanica. [] tutorial.blockinfo = Ogni blocco ha statistiche diverse. Alcuni minerali richiedono trivelle specifiche.\nPer controllare le informazioni e le statistiche di un blocco, [accent] tocca "?" mentre lo selezioni nel database. []\n\n[accent]Accedi ora alle statistiche della trivella meccanica. []
tutorial.conveyor = [accent] I nastri trasportatori [] sono usati per trasportare oggetti al nocciolo. \n Crea una linea di nastri dalla trivella al nocciolo. tutorial.conveyor = [accent]I nastri trasportatori []sono usati per trasportare oggetti al nucleo. \nCrea una linea di nastri dalla trivella al nucleo.
tutorial.conveyor.mobile = [accent] I nastri trasportatori [] sono usati per trasportare oggetti nel nocciolo. \nCrea una linea di nastri trasportatori dalla trivella al nocciolo. \n[accent] Posizionati in una linea tenendo premuto il dito per alcuni secondi [] e trascinando in una direzione. \n\n [accent] {0} / {1} nastri trasportatori disposti in linea \n [accent] 0/1 oggetti consegnati tutorial.conveyor.mobile = [accent] I nastri trasportatori [] sono usati per trasportare oggetti nel nocciolo. \nCrea una linea di nastri trasportatori dalla trivella al nocciolo. \n[accent] Posizionati in una linea tenendo premuto il dito per alcuni secondi [] e trascinando in una direzione. \n\n [accent] {0} / {1} nastri trasportatori disposti in linea \n [accent] 0/1 oggetti consegnati
tutorial.turret = Strutture difensive devono essere costruite per respingere il nemico [LIGHT_GRAY] []. \nCostruisci una torretta a due vicino alla tua base. tutorial.turret = Costruisci delle torrette per respingere il nemico [LIGHT_GRAY] []. \nCostruisci una torretta Duo vicino alla tua base.
tutorial.drillturret = Torrette a due richiedono[accent] munizioni di rame[] per sparare.\n Duo turrets require[accent] copper ammo []to shoot.\nPosiziona una trivella vicino alla torretta per rifornirlo di rame estratto. tutorial.drillturret = La Torretta Duo richiede[accent] munizioni di rame[] per sparare.\nPosiziona una trivella e collega un nastro alla torretta per rifornirla di munizioni con il rame estratto.
tutorial.pause = Durante la battaglia, puoi mettere in pausa il gioco [accent]. []\nPuoi disporre gli edifici mentre sei in pausa. \n\n[accent] Premi spazio per mettere in pausa. tutorial.pause = Durante la battaglia, puoi mettere in pausa il gioco [accent]. []\nPuoi disporre gli edifici mentre sei in pausa. \n\n[accent]Premi spazio per mettere in pausa.
tutorial.pause.mobile = Durante la battaglia, puoi mettere in pausa il gioco [accent]. []\nPuoi disporre gli edifici mentre sei in pausa. \n\n[accent] Premi questo pulsante in alto a sinistra per mettere in pausa. tutorial.pause.mobile = Durante la battaglia, puoi mettere in pausa il gioco [accent]. []\nPuoi disporre gli edifici mentre sei in pausa. \n\n[accent] Premi questo pulsante in alto a sinistra per mettere in pausa.
tutorial.unpause = Ora premi di nuovo spazio per annullare la pausa. tutorial.unpause = Ora premi di nuovo spazio per annullare la pausa.
tutorial.unpause.mobile = Ora premilo di nuovo per annullare la pausa. tutorial.unpause.mobile = Ora premilo di nuovo per annullare la pausa.
tutorial.breaking = I blocchi spesso devono essere distrutti. \n [accent] Tieni premuto il tasto destro del mouse [] per distruggere tutti i blocchi in una selezione. []\n\n[accent] Distruggi tutti i blocchi di scarto a sinistra del tuo core usando la selezione dell'area . tutorial.breaking = I blocchi spesso devono essere distrutti. \n [accent]Tieni premuto il tasto destro del mouse [] per distruggere tutti i blocchi in una selezione. []\n[accent]Distruggi tutti i blocchi di scarto a sinistra del tuo core usando la selezione dell'area .
tutorial.breaking.mobile = I blocchi spesso devono essere distrutti. \n [accent] Seleziona la modalità di decostruzione [], quindi tocca un blocco per iniziare a romperlo. \n Distruggi un'area tenendo premuto il dito per alcuni secondi [] e trascinando in una direzione.\n Premi il pulsante con il segno di spunta per confermare la rottura. \n\n [accent] Distruggi tutti i blocchi di scarto a sinistra del tuo nucleo usando la selezione dell'area. tutorial.breaking.mobile = I blocchi spesso devono essere distrutti. \n [accent] Seleziona la modalità di decostruzione [], quindi tocca un blocco per iniziare a smantellarlo. \n Distruggi un'area tenendo premuto il dito per alcuni secondi [] e trascinando in una direzione.\nPremi il pulsante con il segno di spunta per confermare la rimozione. \n\n [accent] Distruggi tutti i blocchi di scarto a sinistra del tuo nucleo usando la selezione dell'area.
tutorial.withdraw = In alcune situazioni, è necessario prendere gli oggetti direttamente dai blocchi. \n Per fare ciò, [accent] tocca un blocco [] con oggetti al suo interno, quindi [accent] tocca l'oggetto [] nell'inventario. \nPosti multipli possono essere ritirati da [accent] toccando e tenendo premuto []. \n\n[accent] Prelevare un po' di rame dal nucleo. [] tutorial.withdraw = In alcune situazioni, è necessario prendere gli oggetti direttamente dai blocchi.\nPer fare ciò, [accent] tocca un blocco []con oggetti al suo interno, quindi [accent] tocca l'oggetto [] nell'inventario. \nPuoi prelevare più oggetti insieme[accent]tenendo premuto il tasto sinistro del mouse[].\n[accent]Preleva un po' di rame dal nucleo. []
tutorial.deposit = Deposita gli oggetti in blocchi trascinandoli dalla tua nave al blocco di destinazione. \n\n[accent] Riporta il rame nel nucleo. [] tutorial.deposit = Deposita tutti gli oggetti che trasporti trascinandoli dalla tua nave al blocco di destinazione. \n[accent]Rimetti il rame nel nucleo. []
tutorial.waves = Il nemico [LIGHT_GRAY] si avvicina. \n\n Difendi il tuo nucleo per 2 ondate. Costruisci più torrette. tutorial.waves = Il nemico [LIGHT_GRAY] si avvicina.\nDifendi il tuo nucleo per 2 ondate. Costruisci più torrette. Puoi sparare tenendo premuto il tasto sinistro del mouse.
tutorial.waves.mobile = Il [lightgray] nemico si avvicina.\n\n Difendi il nucleo per due ondate. La tua nave sparerà automaticamente contro i nemici.\nCostruisci più torrette e trivelle. Scava più rame tutorial.waves.mobile = Il [lightgray] nemico si avvicina.\n\n Difendi il nucleo per 2 ondate. La tua nave sparerà automaticamente contro i nemici.\nCostruisci più torrette.
tutorial.launch = Una volta raggiunta un'onda specifica, sei in grado di [accent] decollare con il nucleo [], lasciando indietro le tue difese ed [accent] ottenendo tutte le risorse nel tuo nucleo. [] \n Queste risorse possono quindi essere utilizzate per ricercare nuove tecnologie.\n\n [accent] Premi il pulsante di avvio. tutorial.launch = Una volta raggiunta un'ondata specifica, sarai in grado di [accent] decollare con il nucleo [], lasciando la zona e abbandonando le tue difese e le tue strutture\nOtterrai [accent]tutte le risorse nel tuo nucleo[] e potrai quindi usarle per ricercare nuove tecnologie.\n\n [accent]Decolla e conferma per terminare il tutorial.
item.copper.description = Un utile materiale, usato dappertutto item.copper.description = Un utile materiale, usato dappertutto
item.lead.description = Un materiale di base, molto usato nei blocchi di trasporto. item.lead.description = Un materiale di base, molto usato nei blocchi di trasporto.
item.metaglass.description = Un durissimo composto di vetro. Estensivamente usato per trasporto di liquidi ed immagazzinamento. item.metaglass.description = Un durissimo composto di vetro. Estensivamente usato per trasporto di liquidi ed immagazzinamento.

View File

@@ -48,7 +48,7 @@ minimap = ミニマップ
close = 閉じる close = 閉じる
website = ウェブサイト website = ウェブサイト
quit = 終了 quit = 終了
save.quit = Save & Quit save.quit = セーブして終了する
maps = マップ maps = マップ
maps.browse = マップを閲覧する maps.browse = マップを閲覧する
continue = 続ける continue = 続ける
@@ -340,7 +340,7 @@ width = 幅:
height = 高さ: height = 高さ:
menu = メニュー menu = メニュー
play = プレイ play = プレイ
campaign = 遠征 campaign = プレイ
load = 読み込む load = 読み込む
save = 保存 save = 保存
fps = FPS: {0} fps = FPS: {0}
@@ -354,18 +354,18 @@ editor = エディター
mapeditor = マップエディター mapeditor = マップエディター
donate = 寄付 donate = 寄付
abandon = 撤退 abandon = 撤退
abandon.text = このゾーンすべての資源が敵に奪われます。 abandon.text = このゾーンすべての資源が敵に奪われます。
locked = ロック locked = ロック
complete = [lightgray]達成済み: complete = [lightgray]達成済み:
zone.requirement = ゾーン {1} でウェーブ {0} を達成 zone.requirement = ゾーン {1} でウェーブ {0} を達成
resume = 再開ゾーン:\n[lightgray]{0} resume = 再開ゾーン:\n[lightgray]{0}
bestwave = [lightgray]最高ウェーブ: {0} bestwave = [lightgray]最高ウェーブ: {0}
launch = < 離脱 > launch = < 発射 >
launch.title = 離脱成功 launch.title = 発射成功
launch.next = [lightgray]次は ウェーブ {0} で離脱可能です。 launch.next = [lightgray]次は ウェーブ {0} で発射可能です。
launch.unable2 = [scarlet]離脱できません。[] launch.unable2 = [scarlet]発射できません。[]
launch.confirm = すべての資源をコアに搬入し、離脱します。\nもうこの基地には戻ってくることはできません。 launch.confirm = すべての資源をコアに搬入し、発射します。\nもうこの基地には戻ってくることはできません。
launch.skip.confirm = スキップすると、次の離脱可能なウェーブまで離脱できません。 launch.skip.confirm = スキップすると、次の発射可能なウェーブまで発射できません。
uncover = 開放 uncover = 開放
configure = 積み荷の設定 configure = 積み荷の設定
configure.locked = [lightgray]ウェーブ {0} を達成すると積み荷を設定できるようになります。 configure.locked = [lightgray]ウェーブ {0} を達成すると積み荷を設定できるようになります。
@@ -375,14 +375,14 @@ zone.requirement.complete = ウェーブ {0} を達成:\n{1} の開放条件を
zone.config.complete = ウェーブ {0} を達成:\n積み荷の設定が解除されました。 zone.config.complete = ウェーブ {0} を達成:\n積み荷の設定が解除されました。
zone.resources = 発見した資源: zone.resources = 発見した資源:
zone.objective = [lightgray]目標: [accent]{0} zone.objective = [lightgray]目標: [accent]{0}
zone.objective.survival = 生き残 zone.objective.survival = 敵からコアを守り切
zone.objective.attack = 敵のコアを破壊する zone.objective.attack = 敵のコアを破壊する
add = 追加... add = 追加...
boss.health = ボスのHP boss.health = ボスのHP
connectfail = [crimson]サーバーへ接続できませんでした:\n\n[accent]{0} connectfail = [crimson]サーバーへ接続できませんでした:\n\n[accent]{0}
error.unreachable = サーバーに到達できません。\nアドレスは正しいですか? error.unreachable = サーバーに到達できません。\nアドレスは正しいですか?
error.invalidaddress = 無効なアドレスです。 error.invalidaddress = 無効なアドレスです。
error.timedout = タイムアウトしました!\nホストがポート開放されているかを確認してください。また、このアドレスは無効なアドレスではありません! error.timedout = タイムアウトしました!\nホストがポート開放されているかを確認してください。
error.mismatch = パケットエラー:\n恐らくクライアント/サーバーのバージョンが一致していません。\nゲームとサーバーが最新版のMindustryかどうかを確認してください! error.mismatch = パケットエラー:\n恐らくクライアント/サーバーのバージョンが一致していません。\nゲームとサーバーが最新版のMindustryかどうかを確認してください!
error.alreadyconnected = すでに接続されています。 error.alreadyconnected = すでに接続されています。
error.mapnotfound = マップファイルが見つかりません! error.mapnotfound = マップファイルが見つかりません!

View File

@@ -16,11 +16,14 @@ screenshot.invalid = 맵이 너무 커서 스크린샷을 찍을 메모리가
gameover = 게임 오버 gameover = 게임 오버
gameover.pvp = [accent]{0}[] 팀이 승리했습니다! gameover.pvp = [accent]{0}[] 팀이 승리했습니다!
highscore = [accent]최고점수 달성! highscore = [accent]최고점수 달성!
load.sound = 소리 load.sound = 소리
load.map = load.map =
load.image = 사진 load.image = 사진
load.content = 컨텐츠 load.content = 컨텐츠
load.system = 시스템 load.system = 시스템
load.mod = 모드
stat.wave = 버틴 단계 수 : [accent]{0} stat.wave = 버틴 단계 수 : [accent]{0}
stat.enemiesDestroyed = 파괴한 적 수 : [accent]{0} stat.enemiesDestroyed = 파괴한 적 수 : [accent]{0}
stat.built = 건설한 건물 수 : [accent]{0} stat.built = 건설한 건물 수 : [accent]{0}
@@ -28,7 +31,9 @@ stat.destroyed = 파괴된 건물 수 : [accent]{0}
stat.deconstructed = 파괴한 건물 수 : [accent]{0} stat.deconstructed = 파괴한 건물 수 : [accent]{0}
stat.delivered = 획득한 자원 : stat.delivered = 획득한 자원 :
stat.rank = 최종 점수: [accent]{0} stat.rank = 최종 점수: [accent]{0}
launcheditems = [accent]창고 launcheditems = [accent]창고
launchinfo = [출격되지 않음][[출격]파랑색으로 표시된 자원들을 획득합니다.
map.delete = 정말로 "[accent]{0}[]" 맵을 삭제하시겠습니까? map.delete = 정말로 "[accent]{0}[]" 맵을 삭제하시겠습니까?
level.highscore = 최고 점수 : [accent]{0} level.highscore = 최고 점수 : [accent]{0}
level.select = 맵 선택 level.select = 맵 선택
@@ -40,7 +45,6 @@ database = 코어 기록보관소
savegame = 게임 저장 savegame = 게임 저장
loadgame = 게임 불러오기 loadgame = 게임 불러오기
joingame = 서버 접속 joingame = 서버 접속
addplayers = 플레이어 추가/제거
customgame = 사용자 정의 게임 customgame = 사용자 정의 게임
newgame = 새 게임 newgame = 새 게임
none = <없음> none = <없음>
@@ -60,16 +64,35 @@ uploadingcontent = 컨텐츠 업로드
uploadingpreviewfile = 미리보기 파일 업로드 uploadingpreviewfile = 미리보기 파일 업로드
committingchanges = 바뀐 점 적용 committingchanges = 바뀐 점 적용
done = 완료 done = 완료
mods.alphainfo = 현재의 모드는 첫 번째 버전이며, 그리고[scarlet] 버그가 매우 많음을 명심하십시오[].\n만약 버그를 발견할경우 Mindustry 깃허브 또는 디스코드로 제보해주세요.
mods.alpha = [scarlet](Alpha)
mods = 모드
mods.none = [LIGHT_GRAY]모드가 발견되지 않았습니다!
mods.guide = 모드 가이드
mods.report = 버그 신고
mod.enabled = [lightgray]활성화
mod.disabled = [scarlet]비활성화
mod.disable = 비활성화
mod.enable = 활성화
mod.requiresrestart = 모드 변경사항을 적용하기 위해 게임을 종료합니다.
mod.reloadrequired = [scarlet]새로고침 요구됨
mod.import = 모드 추가
mod.import.github = 깃허브 모드 추가
mod.remove.confirm = 모드가 삭제되었습니다.
mod.author = [LIGHT_GRAY]제작자:[] {0}
mod.missing = 이 세이브파일에는 설치하지 않은 모드 혹은 이 버전에 속해있지 않은 데이터가 포함되어 있습니다. 이 것을 불러올 경우 세이브파일의 데이터가 손상될 수 있습니다. 정말로 이 파일을 불러오시겠습니까?\n[lightgray]모드 :\n{0}
about.button = 정보 about.button = 정보
name = 이름 : name = 이름 :
noname = 먼저 [accent] 유저 이름[] 을 설정하세요. noname = 먼저 [accent] 유저 이름[] 을 설정하세요.
filename = 파일 이름 : filename = 파일 이름 :
unlocked = 새 건물 잠금 해제 unlocked = 대상 정보 기록
completed = [accent]연구됨 completed = [accent]연구됨
techtree = 연구 기록 techtree = 연구 기록
research.list = [LIGHT_GRAY]연구: research.list = [LIGHT_GRAY]연구 :
research = 연구 research = 연구
researched = [LIGHT_GRAY]{0}연구. researched = [LIGHT_GRAY]{0}연구 완료.
players = 현재 {0}명 접속중 players = 현재 {0}명 접속중
players.single = 현재 {0}명만 있음. players.single = 현재 {0}명만 있음.
server.closing = [accent]서버 닫는중... server.closing = [accent]서버 닫는중...
@@ -129,7 +152,7 @@ confirmunadmin = 이 플레이어를 일반 유저로 만들겠습니까?
joingame.title = 게임 참가 joingame.title = 게임 참가
joingame.ip = 주소: joingame.ip = 주소:
disconnect = 서버와 연결이 해제되었습니다. disconnect = 서버와 연결이 해제되었습니다.
disconnect.error = Connection error. disconnect.error = 연결 .
disconnect.closed = 연결이 끊어졌습니다.. disconnect.closed = 연결이 끊어졌습니다..
disconnect.timeout = 연결 시간 한계 도달.. disconnect.timeout = 연결 시간 한계 도달..
disconnect.data = 월드 데이터 로딩 실패.. disconnect.data = 월드 데이터 로딩 실패..
@@ -140,7 +163,6 @@ server.port = 포트:
server.addressinuse = 주소가 이미 사용중입니다! server.addressinuse = 주소가 이미 사용중입니다!
server.invalidport = 포트가 올바르지 않습니다! server.invalidport = 포트가 올바르지 않습니다!
server.error = [accent]{0}[crimson]서버를 여는데 오류가 발생했습니다. server.error = [accent]{0}[crimson]서버를 여는데 오류가 발생했습니다.
save.old = 이 저장파일은 이전 버전의 게임용이며, 지금은 사용할 수 없습니다. \n\n[LIGHT_GRAY]4.0 정식때 이전 게임버전에서 만든 저장파일과 호환됩니다.
save.new = 새로 저장 save.new = 새로 저장
save.overwrite = 이 저장 슬롯을 덮어씌우겠습니까? save.overwrite = 이 저장 슬롯을 덮어씌우겠습니까?
overwrite = 덮어쓰기 overwrite = 덮어쓰기
@@ -160,21 +182,22 @@ save.rename.text = 새 이름:
selectslot = 저장슬롯을 선택하십시오. selectslot = 저장슬롯을 선택하십시오.
slot = [accent]{0}번째 슬롯 slot = [accent]{0}번째 슬롯
editmessage = 글 수정하기 editmessage = 글 수정하기
save.corrupted = [accent]세이브 파일이 손상되었거나 잘못된 파일입니다! 만약 게임을 업데이트 했다면 이것은 아마 저장 형식 변경일 것이고, 이것은 버그가 [scarlet]아닙니다[]. save.corrupted = [accent]세이브 파일이 손상되었거나 잘못된 파일입니다!
empty = <비어있음> empty = <비어있음>
on = 켜기 on = 활성화
off = 끄기 off = 비활성화
save.autosave = 자동저장: {0} save.autosave = 자동저장 : {0}
save.map = 맵: {0} save.map = : {0}
save.wave = 웨이브 {0} save.wave = {0} 단계
save.mode = 게임모드 : {0} save.mode = 게임모드 : {0}
save.date = 마지막 저장날짜: {0} save.date = 마지막 저장: {0}
save.playtime = 플레이시간: {0} save.playtime = 플레이타임 : {0}
warning = 경고. warning = 경고.
confirm = 확인 confirm = 확인
delete = 삭제 delete = 삭제
view.workshop = 워크샵에서 보기 view.workshop = 워크샵에서 보기
ok = OK workshop.listing = 워크샵 목록 편집하기
ok = 확인
open = 열기 open = 열기
customize = 맞춤설정 customize = 맞춤설정
cancel = 취소 cancel = 취소
@@ -191,7 +214,11 @@ classic.export.text = Mindustry 클래식 (v3.5 build 40)의 세이브파일 또
quit.confirm = 정말로 종료하시겠습니까? quit.confirm = 정말로 종료하시겠습니까?
quit.confirm.tutorial = 튜토리얼을 종료하시겠습니까?\n튜토리얼은 [accent]설정 -> 게임 -> 튜토리얼[]에서 다시 해보실 수 있습니다. quit.confirm.tutorial = 튜토리얼을 종료하시겠습니까?\n튜토리얼은 [accent]설정 -> 게임 -> 튜토리얼[]에서 다시 해보실 수 있습니다.
loading = [accent]불러오는중... loading = [accent]불러오는중...
reloading = [accent]모드 새로고침하는중...
saving = [accent]저장중... saving = [accent]저장중...
cancelbuilding = [accent][[{0}][] 를 눌러 설계도 초기화
pausebuilding = [accent][[{0}][] 를 눌러 설계모드 진입
resumebuilding = [scarlet][[{0}][] 를 눌러 건설 시작
wave = [accent]웨이브 {0} wave = [accent]웨이브 {0}
wave.waiting = [green]{0}초[]후 웨이브 시작 wave.waiting = [green]{0}초[]후 웨이브 시작
wave.waveInProgress = [LIGHT_GRAY]웨이브 진행중 wave.waveInProgress = [LIGHT_GRAY]웨이브 진행중
@@ -211,7 +238,12 @@ map.nospawn.pvp = 이 맵에는 적팀 코어가 없습니다! 에디터에서 [
map.nospawn.attack = 이 맵에는 플레이어가 공격할 수 있는 적의 코어가 없습니다! 에디터에서 [ROYAL] 빨강색 팀[] 코어를 맵에 추가하세요. map.nospawn.attack = 이 맵에는 플레이어가 공격할 수 있는 적의 코어가 없습니다! 에디터에서 [ROYAL] 빨강색 팀[] 코어를 맵에 추가하세요.
map.invalid = 파일이 잘못되었거나 손상되어 맵을 열 수 없습니다. map.invalid = 파일이 잘못되었거나 손상되어 맵을 열 수 없습니다.
map.publish.error = 맵 업로드 오류 : {0} map.publish.error = 맵 업로드 오류 : {0}
map.update = 맵 업데이트
map.load.error = 워크샵 작업 오류 : {0}
map.missing = 해당 맵은 삭제되거나 옮겨졌습니다.\n[lightgray]워크샵 목록은 자동으로 동기화되지 않습니다.
map.publish.confirm = 맵을 업로드 하시겠습니까?\n\n[lightgray]먼저 워크샵 EULA에 동의하시지 않으면 맵이 표시되지 않습니다! map.publish.confirm = 맵을 업로드 하시겠습니까?\n\n[lightgray]먼저 워크샵 EULA에 동의하시지 않으면 맵이 표시되지 않습니다!
map.menu = 원하는 맵을 선택하세요.
map.changelog = 바뀐 점 (선택성):
eula = 스팀 EULA eula = 스팀 EULA
map.publish = 맵 업로드 완료! map.publish = 맵 업로드 완료!
map.publishing = [accent]맵 업로드 중... map.publishing = [accent]맵 업로드 중...
@@ -291,6 +323,7 @@ editor.overwrite = [accept]경고!이 명령은 기존 맵을 덮어씌우게
editor.overwrite.confirm = [scarlet]경고![] 이 이름을 가진 맵이 이미 있습니다. 덮어 쓰시겠습니까? editor.overwrite.confirm = [scarlet]경고![] 이 이름을 가진 맵이 이미 있습니다. 덮어 쓰시겠습니까?
editor.exists = 같은 이름의 맵이 이미 존재합니다. editor.exists = 같은 이름의 맵이 이미 존재합니다.
editor.selectmap = 불러올 맵 선택: editor.selectmap = 불러올 맵 선택:
toolmode.replace = 재배치 toolmode.replace = 재배치
toolmode.replace.description = 블록을 배치합니다. toolmode.replace.description = 블록을 배치합니다.
toolmode.replaceall = 모두 재배치 toolmode.replaceall = 모두 재배치
@@ -305,6 +338,7 @@ toolmode.fillteams = 팀 채우기
toolmode.fillteams.description = 블록 대신 팀 건물로 채웁니다. toolmode.fillteams.description = 블록 대신 팀 건물로 채웁니다.
toolmode.drawteams = 팀 그리기 toolmode.drawteams = 팀 그리기
toolmode.drawteams.description = 블록 대신 팀 건물을 배치합니다. toolmode.drawteams.description = 블록 대신 팀 건물을 배치합니다.
filters.empty = [LIGHT_GRAY]필터가 없습니다!! 아래 버튼을 눌러 추가하세요. filters.empty = [LIGHT_GRAY]필터가 없습니다!! 아래 버튼을 눌러 추가하세요.
filter.distort = 왜곡 filter.distort = 왜곡
filter.noise = 맵 전체에 타일 혹은 블럭 뿌리기 filter.noise = 맵 전체에 타일 혹은 블럭 뿌리기
@@ -336,16 +370,16 @@ filter.option.floor2 = 2번째 바닥
filter.option.threshold2 = 2번째 한계점 filter.option.threshold2 = 2번째 한계점
filter.option.radius = 반경 filter.option.radius = 반경
filter.option.percentile = 백분위수 filter.option.percentile = 백분위수
width = 넓이:
height = 높이: width = 넓이 :
height = 높이 :
menu = 메뉴 menu = 메뉴
play = 플레이 play = 플레이
campaign = 캠페인 campaign = 캠페인
load = 불러오기 load = 불러오기
save = 저장 save = 저장
fps = FPS: {0} fps = FPS : {0}
tps = TPS: {0} ping = Ping : 초당 {0}
ping = Ping: {0}ms
language.restart = 언어를 변경하려면 게임을 다시시작 해 주세요. language.restart = 언어를 변경하려면 게임을 다시시작 해 주세요.
settings = 설정 settings = 설정
tutorial = 게임 방법 tutorial = 게임 방법
@@ -353,32 +387,38 @@ tutorial.retake = 튜토리얼
editor = 편집기 editor = 편집기
mapeditor = 맵 편집기 mapeditor = 맵 편집기
donate = 기부 donate = 기부
abandon = 포기 abandon = 포기
abandon.text = 이 구역의 모든 자원이 적에게 빼앗길 것입니다. abandon.text = 이 구역의 모든 자원이 적에게 빼앗길 것입니다.
locked = 잠김 locked = 잠김
complete = [LIGHT_GRAY]완료: complete = [LIGHT_GRAY]완료 :
zone.requirement = 지역 {1} 에서 단계 {0} 달성 zone.requirement = 지역 {1} 에서 단계 {0} 달성
resume = 지역 계속 플레이:\n[LIGHT_GRAY]{0} requirement.core = Destroy Enemy Core in {0}
bestwave = [LIGHT_GRAY]최고 점수: {0} requirement.unlock = Unlock {0}
resume = 현재 진행 중인 지역 :\n[LIGHT_GRAY]{0}
bestwave = [LIGHT_GRAY]최고 점수 : {0}
launch = < 출격 > launch = < 출격 >
launch.title = 출격 성공 launch.title = 출격 성공
launch.next = [LIGHT_GRAY]다음 출격기회는 {0} 단계에서 나타납니다. launch.next = [LIGHT_GRAY]다음 출격기회는 {0} 단계에서 나타납니다.
launch.unable2 = [scarlet]출격할 수 없습니다.[] launch.unable2 = [scarlet]출격할 수 없습니다.[]
launch.confirm = 출격하게 되면 모든 자원이 코어로 들어갑니다.\n또한 성공하기 전까지 기지로 돌아갈 수 없습니다. launch.confirm = 출격하게 되면 코어에 저장된 모든 자원이 창고로 들어갑니다.\n또한 출격한 지역에는 아무것도 남지 않습니다.
launch.skip.confirm = 만약 지금 출격하시지 않고 스킵하신다면, 다음 출격 단계까지 기다려야 합니다. launch.skip.confirm = 만약 지금 출격하시지 않고 스킵하신다면, 다음 출격 단계까지 기다려야 합니다.
uncover = 역 개방 uncover = 역 개방
configure = 코어 시작자원 설정 configure = 코어 시작자원 설정
configure.locked = {0} 단계에서 시작자원 설정 잠금이 해제됩니다. bannedblocks = 금지된 블럭들
addall = 모두 추가
configure.locked = 단계를 지역 {0}에서 달성할 시 시작자원 설정이 해금됩니다.
configure.invalid = 해당 0 과 {0} 사이여야 합니다. configure.invalid = 해당 0 과 {0} 사이여야 합니다.
zone.unlocked = [LIGHT_GRAY] 잠금 해제되었습니다! zone.unlocked = [LIGHT_GRAY] 잠금 해제되었습니다!
zone.requirement.complete = 단계 {0} 달성:\n{1} 지역 요구사항이 충족되었습니다! zone.requirement.complete = 단계 {0} 달성:\n{1} 지역 요구사항이 충족되었습니다!
zone.config.complete = 단계 {0} 달성:\n시작자원 설정 기능이 해금되었습니다! zone.config.complete = 단계 {0} 달성:\n시작자원 설정 기능이 해금되었습니다!
zone.resources = 자원이 감지되었습니다 : zone.resources = 감지된 자원 목록 :
zone.objective = [lightgray]게임 모드: [accent]{0} zone.objective = [lightgray]게임 모드 : [accent]{0}
zone.objective.survival = 생존 zone.objective.survival = 생존
zone.objective.attack = 적 코어 파괴 zone.objective.attack = 적 코어 파괴
add = 추가... add = 추가...
boss.health = 보스 체력 boss.health = 보스 체력
connectfail = [crimson]{0}[accent] 서버에 연결하지 못했습니다.[] connectfail = [crimson]{0}[accent] 서버에 연결하지 못했습니다.[]
error.unreachable = 서버에 연결하지 못했습니다.\n서버 주소가 정확히 입력되었나요? error.unreachable = 서버에 연결하지 못했습니다.\n서버 주소가 정확히 입력되었나요?
error.invalidaddress = 잘못된 주소입니다. error.invalidaddress = 잘못된 주소입니다.
@@ -389,6 +429,7 @@ error.mapnotfound = 맵 파일을 찾을 수 없습니다!
error.io = 네트워크 I/O 오류. error.io = 네트워크 I/O 오류.
error.any = 알 수 없는 네트워크 오류. error.any = 알 수 없는 네트워크 오류.
error.bloom = 블룸 그래픽 효과를 적용하지 못했습니다.\n당신의 기기가 이 기능을 지원하지 않는 것일 수도 있습니다. error.bloom = 블룸 그래픽 효과를 적용하지 못했습니다.\n당신의 기기가 이 기능을 지원하지 않는 것일 수도 있습니다.
zone.groundZero.name = 전초기지 zone.groundZero.name = 전초기지
zone.desertWastes.name = 쓰레기 사막 zone.desertWastes.name = 쓰레기 사막
zone.craters.name = 크레이터 zone.craters.name = 크레이터
@@ -403,6 +444,7 @@ zone.saltFlats.name = 소금 사막
zone.impact0078.name = Impact 0078 zone.impact0078.name = Impact 0078
zone.crags.name = 협곡 zone.crags.name = 협곡
zone.fungalPass.name = 포자 지대 zone.fungalPass.name = 포자 지대
zone.groundZero.description = 이 장소는 다시 시작하기에 최적의 환경을 지닌 장소입니다. 적은 수준의 위협이 있으며 자원의 양은 적습니다.\n가능한 한 많은 양의 구리와 납을 수집하십시오.\n출격합시다! zone.groundZero.description = 이 장소는 다시 시작하기에 최적의 환경을 지닌 장소입니다. 적은 수준의 위협이 있으며 자원의 양은 적습니다.\n가능한 한 많은 양의 구리와 납을 수집하십시오.\n출격합시다!
zone.frozenForest.description = 이 지역도 산과 가까운 지역입니다 포자들이 흩뿌려져 있으며 극한의 추위도 포자룰 막을 수 있을거 같지 않습니다.\n전력을 통해서 모험을 시작하십시오 화력 발전소를 짓고 수리드론을 사용하는 법을 배우십시오. zone.frozenForest.description = 이 지역도 산과 가까운 지역입니다 포자들이 흩뿌려져 있으며 극한의 추위도 포자룰 막을 수 있을거 같지 않습니다.\n전력을 통해서 모험을 시작하십시오 화력 발전소를 짓고 수리드론을 사용하는 법을 배우십시오.
zone.desertWastes.description = 이 황무지는 끝을 알수 없을 정도로 광활합니다 그리고 십자가 형태의 버려진 구조물이 존재합니다.\n석탄이 존재하며 이를 화력발전에 쓰거나 흑연정제에 쓰십시오.\n\n[lightgray]이 지역에서의 착륙장소는 확실하지 않습니다. zone.desertWastes.description = 이 황무지는 끝을 알수 없을 정도로 광활합니다 그리고 십자가 형태의 버려진 구조물이 존재합니다.\n석탄이 존재하며 이를 화력발전에 쓰거나 흑연정제에 쓰십시오.\n\n[lightgray]이 지역에서의 착륙장소는 확실하지 않습니다.
@@ -417,6 +459,7 @@ zone.nuclearComplex.description = 과거 토륨의 생산, 연구와 처리를
zone.fungalPass.description = 고산지대과 포자지대 사이의 지역입니다. 소규모의 적 정찰기지가 있으니 디거와 크롤러를 이용해 적의 코어를 파괴하십시오. zone.fungalPass.description = 고산지대과 포자지대 사이의 지역입니다. 소규모의 적 정찰기지가 있으니 디거와 크롤러를 이용해 적의 코어를 파괴하십시오.
zone.impact0078.description = [ROYAL]죄송합니다. 아직 설명이 준비되지 않았습니다. zone.impact0078.description = [ROYAL]죄송합니다. 아직 설명이 준비되지 않았습니다.
zone.crags.description = [ROYAL]죄송합니다. 아직 설명이 준비되지 않았습니다. zone.crags.description = [ROYAL]죄송합니다. 아직 설명이 준비되지 않았습니다.
settings.language = 언어 settings.language = 언어
settings.data = 게임 데이터 settings.data = 게임 데이터
settings.reset = 설정 초기화 settings.reset = 설정 초기화
@@ -471,20 +514,22 @@ blocks.inaccuracy = 오차각
blocks.shots = 발포 횟수 blocks.shots = 발포 횟수
blocks.reload = 재장전 blocks.reload = 재장전
blocks.ammo = 탄약 blocks.ammo = 탄약
bar.drilltierreq = 더 좋은 드릴이 요구됨 bar.drilltierreq = 더 좋은 드릴이 요구됨
bar.drillspeed = 채광 속도 : {0}/s bar.drillspeed = 채광 속도 : {0}/s
bar.efficiency = 효율성 : {0}% bar.efficiency = 효율성 : {0}%
bar.powerbalance = 전력 : {0}/s bar.powerbalance = 전력 : {0}/s
bar.powerstored = 에너지 저장량 : {0}/{1} bar.powerstored = 총 전력 저장량 : {0}/{1}
bar.poweramount = 전력 저장량 : {0} bar.poweramount = 전력 저장량 : {0}
bar.poweroutput = 전력 생산량 : {0}/s bar.poweroutput = 전력 생산량 : {0}/s
bar.items = 최대 120개중 {0}개 중 bar.items = 자원량 : {0}
bar.capacity = 저장공간 : {0} bar.capacity = 저장공간 : {0}
bar.liquid = 액체 bar.liquid = 액체
bar.heat = 발열 bar.heat = 발열
bar.power = 전력 bar.power = 전력
bar.progress = 생산 진행도 bar.progress = 생산 진행도
bar.spawned = 최대 {1}기 중 {0}기 생산됨 bar.spawned = 최대 {1}기 중 {0}기 생산됨
bullet.damage = [stat]{0}[lightgray] 데미지 bullet.damage = [stat]{0}[lightgray] 데미지
bullet.splashdamage = [stat]{0}[lightgray] 범위 데미지 ~[stat] {1}[lightgray] 타일 bullet.splashdamage = [stat]{0}[lightgray] 범위 데미지 ~[stat] {1}[lightgray] 타일
bullet.incendiary = [stat]방화 bullet.incendiary = [stat]방화
@@ -496,6 +541,7 @@ bullet.freezing = [stat]동결
bullet.tarred = [stat]타르 bullet.tarred = [stat]타르
bullet.multiplier = [stat]{0}[lightgray]x 탄약 소모율 bullet.multiplier = [stat]{0}[lightgray]x 탄약 소모율
bullet.reload = [stat]{0}[lightgray]x 사격 속도 bullet.reload = [stat]{0}[lightgray]x 사격 속도
unit.blocks = 블록 unit.blocks = 블록
unit.powersecond = 전력/초 unit.powersecond = 전력/초
unit.liquidsecond = 액체/초 unit.liquidsecond = 액체/초
@@ -545,6 +591,7 @@ setting.fullscreen.name = 전체 화면
setting.borderlesswindow.name = 테두리 없는 창모드[LIGHT_GRAY] (재시작이 필요할 수 있습니다) setting.borderlesswindow.name = 테두리 없는 창모드[LIGHT_GRAY] (재시작이 필요할 수 있습니다)
setting.fps.name = FPS 표시 setting.fps.name = FPS 표시
setting.vsync.name = VSync 활성화 setting.vsync.name = VSync 활성화
setting.lasers.name = 전력 노드 레이저 표시
setting.pixelate.name = 픽셀화[LIGHT_GRAY] (애니메이션 효과가 꺼집니다) setting.pixelate.name = 픽셀화[LIGHT_GRAY] (애니메이션 효과가 꺼집니다)
setting.minimap.name = 미니맵 보기 setting.minimap.name = 미니맵 보기
setting.musicvol.name = 음악 크기 setting.musicvol.name = 음악 크기
@@ -556,9 +603,9 @@ setting.crashreport.name = 오류 보고서 보내기
setting.savecreate.name = 자동 저장 활성화 setting.savecreate.name = 자동 저장 활성화
setting.publichost.name = 공용 서버 보이기 setting.publichost.name = 공용 서버 보이기
setting.chatopacity.name = 채팅 투명도 setting.chatopacity.name = 채팅 투명도
setting.lasersopacity.name = Power Laser Opacity setting.playerchat.name = 채팅 말풍선 표시
setting.playerchat.name = 게임 채팅 표시 public.confirm = 게임을 공개하시겠습니까?\n[lightgray]설정 - 게임 - 게임 서버 공개에서 다시 설정하실 수 있습니다.
uiscale.reset = UI 스케일이 변경되었습니다.\n"확인"버튼을 눌러 스케일을 확인하세요.\n[scarlet]Reverting and exiting in[accent] {0}[] settings... uiscale.reset = UI 스케일이 변경되었습니다.\n"확인"버튼을 눌러 스케일을 확인하세요.\n[scarlet][accent] {0}[]초 후에 예전 설정으로 되돌리고 게임을 종료합니다...
uiscale.cancel = 취소 & 나가기 uiscale.cancel = 취소 & 나가기
setting.bloom.name = 발광 효과 setting.bloom.name = 발광 효과
keybind.title = 조작키 설정 keybind.title = 조작키 설정
@@ -593,22 +640,25 @@ keybind.chat.name = 채팅
keybind.player_list.name = 플레이어 목록 keybind.player_list.name = 플레이어 목록
keybind.console.name = 콘솔 keybind.console.name = 콘솔
keybind.rotate.name = 회전 keybind.rotate.name = 회전
keybind.rotateplaced.name = 기존 회전 (고정)
keybind.toggle_menus.name = 메뉴 보이기/숨기기 keybind.toggle_menus.name = 메뉴 보이기/숨기기
keybind.chat_history_prev.name = 이전 채팅기록 keybind.chat_history_prev.name = 이전 채팅기록
keybind.chat_history_next.name = 다음 채팅기록 keybind.chat_history_next.name = 다음 채팅기록
keybind.chat_scroll.name = 채팅 스크롤 keybind.chat_scroll.name = 채팅 스크롤
keybind.drop_unit.name = 유닛 드롭 keybind.drop_unit.name = 유닛 처치시 자원획득
keybind.zoom_minimap.name = 미니맵 확대 keybind.zoom_minimap.name = 미니맵 확대
mode.help.title = 모드 도움말 mode.help.title = 게임모드 도움말
mode.survival.name = 생존 mode.survival.name = 생존
mode.survival.description = 이것은 일반 모드입니다. 제한된 자원을 가지고 자동으로 다음 단계가 시작됩니다. mode.survival.description = 이것은 일반 모드입니다. 제한된 자원을 가지고 자동으로 다음 단계가 시작됩니다.
mode.sandbox.name = 샌드박스 mode.sandbox.name = 샌드박스
mode.sandbox.description = 무한한 자원을 가지고 자유롭게 다음 단계를 시작할 수 있습니다. mode.sandbox.description = 무한한 자원을 가지고 자유롭게 다음 단계를 시작할 수 있습니다.
mode.editor.name = 편집기
mode.pvp.name = PvP mode.pvp.name = PvP
mode.pvp.description = 실제 플레이어와 PvP를 합니다. 맵에 적어도 2개의 다른 색상 코어가 있어야 합니다. mode.pvp.description = 실제 플레이어와 PvP를 합니다. 맵에 적어도 2개의 다른 색상 코어가 있어야 합니다.
mode.attack.name = 공격 mode.attack.name = 공격
mode.attack.description = 적 기지를 파괴하세요. 맵에 빨간팀 코어가 있어야 플레이 가능합니다. mode.attack.description = 적 기지를 파괴하세요. 맵에 빨간팀 코어가 있어야 플레이 가능합니다.
mode.custom = 사용자 정의 규칙 mode.custom = 사용자 정의 규칙
rules.infiniteresources = 무한 자원 rules.infiniteresources = 무한 자원
rules.wavetimer = 웨이브 타이머 rules.wavetimer = 웨이브 타이머
rules.waves = 웨이브 rules.waves = 웨이브
@@ -635,6 +685,7 @@ rules.title.resourcesbuilding = 자원 & 건축
rules.title.player = 플레이어들 rules.title.player = 플레이어들
rules.title.enemy = rules.title.enemy =
rules.title.unit = 유닛 rules.title.unit = 유닛
content.item.name = 아이템 content.item.name = 아이템
content.liquid.name = 액체 content.liquid.name = 액체
content.unit.name = 유닛 content.unit.name = 유닛
@@ -696,6 +747,7 @@ mech.buildspeed = [LIGHT_GRAY]건설 속도: {0}%
liquid.heatcapacity = [LIGHT_GRAY]발열 용량: {0} liquid.heatcapacity = [LIGHT_GRAY]발열 용량: {0}
liquid.viscosity = [LIGHT_GRAY]점도: {0} liquid.viscosity = [LIGHT_GRAY]점도: {0}
liquid.temperature = [LIGHT_GRAY]온도: {0} liquid.temperature = [LIGHT_GRAY]온도: {0}
block.sand-boulder.name = 사암 block.sand-boulder.name = 사암
block.grass.name = 잔디 block.grass.name = 잔디
block.salt.name = 소금 block.salt.name = 소금
@@ -926,6 +978,7 @@ tutorial.deposit = 자원을 다시 블록에 넣을수도 있습니다.\n\n[acc
tutorial.waves = [LIGHT_GRAY]적[]이 접근합니다.\n당신의 기체는 적을 향해 클릭하여 공격할 수 있습니다. 또한, 구리를 더 캐내고 포탑을 더 지어서 방어를 강화하세요.\n\n[accent]2단계 동안 코어를 보호하세요.[] tutorial.waves = [LIGHT_GRAY]적[]이 접근합니다.\n당신의 기체는 적을 향해 클릭하여 공격할 수 있습니다. 또한, 구리를 더 캐내고 포탑을 더 지어서 방어를 강화하세요.\n\n[accent]2단계 동안 코어를 보호하세요.[]
tutorial.waves.mobile = [LIGHT_GRAY]적[]이 접근합니다.\n당신의 기체는 적을 자동조준하지만, 원하는 적을 클릭하여 공격하고 싶은 대상을 바꿀 수 있습니다.\n구리를 더 캐내고 포탑을 더 지어서 방어를 강화하세요.\n\n[accent]2단계동안 코어를 방어하세요.[] tutorial.waves.mobile = [LIGHT_GRAY]적[]이 접근합니다.\n당신의 기체는 적을 자동조준하지만, 원하는 적을 클릭하여 공격하고 싶은 대상을 바꿀 수 있습니다.\n구리를 더 캐내고 포탑을 더 지어서 방어를 강화하세요.\n\n[accent]2단계동안 코어를 방어하세요.[]
tutorial.launch = 특정 단계에 도달하면 [accent]출격[]이 가능합니다.\n[accent]출격[]을 하게되면 해당 지역의 코어에 들어있는 자원들을 캠페인의 자원 창고로 보내지만, 해당 지역의 [accent]모든 것들[]은 날라가게 되니 주의하세요. tutorial.launch = 특정 단계에 도달하면 [accent]출격[]이 가능합니다.\n[accent]출격[]을 하게되면 해당 지역의 코어에 들어있는 자원들을 캠페인의 자원 창고로 보내지만, 해당 지역의 [accent]모든 것들[]은 날라가게 되니 주의하세요.
item.copper.description = 모든 종류의 블록에서 광범위하게 사용되는 자원입니다. item.copper.description = 모든 종류의 블록에서 광범위하게 사용되는 자원입니다.
item.lead.description = 쉽게 구할 수 있으며, 전자 및 액체 수송 블록에서 광범위하게 사용되는 자원입니다. item.lead.description = 쉽게 구할 수 있으며, 전자 및 액체 수송 블록에서 광범위하게 사용되는 자원입니다.
item.metaglass.description = 초강력 유리 화합물. 액체 분배 및 저장에 광범위하게 사용됩니다.\n\n[royal]액체를 활용하기 위한 필수품입니다. item.metaglass.description = 초강력 유리 화합물. 액체 분배 및 저장에 광범위하게 사용됩니다.\n\n[royal]액체를 활용하기 위한 필수품입니다.
@@ -1033,7 +1086,7 @@ block.combustion-generator.description = 인화성 물질을 태워 소량의
block.thermal-generator.description = 건설가능한 열이 있는 타일 위에 건설하면 전력을 생산합니다.\n\n[ROYAL]용암 웅덩이 혹은 열기지대에서 무한정 열을 발산합니다. block.thermal-generator.description = 건설가능한 열이 있는 타일 위에 건설하면 전력을 생산합니다.\n\n[ROYAL]용암 웅덩이 혹은 열기지대에서 무한정 열을 발산합니다.
block.turbine-generator.description = 화력 발전기보다 효율적이지만, 액체가 추가적으로 필요합니다.\n\n[ROYAL]일반 타일에서 물추출기 1개로 2개가 가동가능합니다. block.turbine-generator.description = 화력 발전기보다 효율적이지만, 액체가 추가적으로 필요합니다.\n\n[ROYAL]일반 타일에서 물추출기 1개로 2개가 가동가능합니다.
block.differential-generator.description = 냉각수와 파이라타이트의 온도 차를 이용해 안정적으로 원자로에 버금가는 양의 전기를 생산합니다. block.differential-generator.description = 냉각수와 파이라타이트의 온도 차를 이용해 안정적으로 원자로에 버금가는 양의 전기를 생산합니다.
block.rtg-generator.description = 방사성동위원소 열전기 발전기\n토륨또는 현상 구조체를 사용하며, 냉각이 필요없는 발전을 하지만 토륨 원자로에 비해 발전량이 매우 적습니다. block.rtg-generator.description = 방사성동위원소 열전기 발전기\n토륨또는 메타를 사용하며, 냉각이 필요없는 발전을 하지만 토륨 원자로에 비해 발전량이 매우 적습니다.
block.solar-panel.description = 태양광으로 극소량의 전기을 생산합니다. block.solar-panel.description = 태양광으로 극소량의 전기을 생산합니다.
block.solar-panel-large.description = 일반 태양 전지판보다 훨씬 발전량이 많지만, 건축비도 훨씬 비쌉니다. block.solar-panel-large.description = 일반 태양 전지판보다 훨씬 발전량이 많지만, 건축비도 훨씬 비쌉니다.
block.thorium-reactor.description = 토륨을 이용해 막대한 양의 전기를 생산합니다. 지속적인 냉각이 필요하며 냉각제의 양이 부족하면 크게 폭발합니다.\n\n[royal]폭발로 인한 피해를 버틸 수 있는 건물은 없습니다. block.thorium-reactor.description = 토륨을 이용해 막대한 양의 전기를 생산합니다. 지속적인 냉각이 필요하며 냉각제의 양이 부족하면 크게 폭발합니다.\n\n[royal]폭발로 인한 피해를 버틸 수 있는 건물은 없습니다.

View File

@@ -1,10 +1,10 @@
credits.text = Gemaakt door [ROYAL]Anuken[] - [SKY]anukendev@gmail.com[] credits.text = Gemaakt door [ROYAL]Anuken[] - [SKY]anukendev@gmail.com[] -
credits = Credits credits = Credits
contributors = Vertalers en Medewerkers contributors = Vertalers en Medewerkers
discord = Word lid van de Mindustry Discord! discord = Word lid van de Mindustry Discord!
link.discord.description = De officiële Mindustry discord chatroom link.discord.description = De officiële Mindustry discord chatroom
link.github.description = Game broncode link.github.description = Game broncode
link.changelog.description = List of update changes link.changelog.description = Lijst van Updates
link.dev-builds.description = Onstabiele ontwikkeling builds link.dev-builds.description = Onstabiele ontwikkeling builds
link.trello.description = Officiële trello-bord voor geplande functies link.trello.description = Officiële trello-bord voor geplande functies
link.itch.io.description = itch.io pagina met pc-downloads en webversie link.itch.io.description = itch.io pagina met pc-downloads en webversie
@@ -12,15 +12,15 @@ link.google-play.description = Google Play store vermelding
link.wiki.description = Officiële Mindustry wiki link.wiki.description = Officiële Mindustry wiki
linkfail = Kan link niet openen!\nDe URL is gekopieerd naar je klembord linkfail = Kan link niet openen!\nDe URL is gekopieerd naar je klembord
screenshot = Schermafbeeling opgeslagen in {0} screenshot = Schermafbeeling opgeslagen in {0}
screenshot.invalid = Map too large, potentially not enough memory for screenshot. screenshot.invalid = Map is te groot, Mogelijk niet genoeg ruimte op apparaat.
gameover = Game Over gameover = Spel afgelopen
gameover.pvp = het[accent] {0}[] team heeft gewonnen! gameover.pvp = het[accent] {0}[] team heeft gewonnen!
highscore = [accent]Nieuw topscore! highscore = [accent]Nieuw topscore!
load.sound = Sounds load.sound = Geluid
load.map = Maps load.map = Mappen
load.image = Images load.image = Afbeeldingen
load.content = Content load.content = inhoud
load.system = System load.system = Systeem
stat.wave = Waves Verslagen:[accent] {0} stat.wave = Waves Verslagen:[accent] {0}
stat.enemiesDestroyed = Vijanden Vernietigd:[accent] {0} stat.enemiesDestroyed = Vijanden Vernietigd:[accent] {0}
stat.built = Gebouwen Gebouwd:[accent] {0} stat.built = Gebouwen Gebouwd:[accent] {0}
@@ -28,69 +28,58 @@ stat.destroyed = Gebouwen Vernietigd:[accent] {0}
stat.deconstructed = Gebouwen Gesloopt:[accent] {0} stat.deconstructed = Gebouwen Gesloopt:[accent] {0}
stat.delivered = Middelen Gelanceerd: stat.delivered = Middelen Gelanceerd:
stat.rank = Eindrang: [accent]{0} stat.rank = Eindrang: [accent]{0}
launcheditems = [accent]Launched Items launcheditems = [accent]Gelanceerde items
map.delete = Weet je zeker dat je de map wilt verwijderen? "[accent]{0}[]"? map.delete = Weet je zeker dat je de map wilt verwijderen? "[accent]{0}[]"?
level.highscore = Topscore: [accent]{0} level.highscore = Topscore: [accent]{0}
level.select = Selecteer Level level.select = Selecteer Level
level.mode = Spelmodus: level.mode = Spelmodus:
showagain = Don't show again next session showagain = Niet Laten zien in de volgende sessie
coreattack = < Core is under attack! > coreattack = < Core wordt aangevallen! >
nearpoint = [[ [scarlet]LEAVE DROP POINT IMMEDIATELY[] ]\nannihilation imminent nearpoint = [[ [scarlet]LEAVE DROP POINT IMMEDIATELY[] ]\nannihilation imminent
database = Core Database database = Core Database
savegame = Save Game savegame = Opslaan
loadgame = Load Game loadgame = Laden
joingame = Join Game joingame = Treed toe
addplayers = Add/Remove Players addplayers = Add/Remove Players
customgame = Custom Game customgame = Aangepast spel
newgame = New Game newgame = Nieuw spel
none = <none> none = <none>
minimap = Minimap minimap = Minimap
close = Close close = Aflsuiten
website = Website website = Website
quit = Quit quit = Stoppen
save.quit = Save & Quit maps = Mappen
maps = Maps continue = Ga door
maps.browse = Browse Maps maps.none = [LIGHT_GRAY]Geen map gevonden!
continue = Continue about.button = Over
maps.none = [LIGHT_GRAY]No maps found! name = Naam:
invalid = Invalid noname = Maak eerst een[accent] Speler naam[].
preparingconfig = Preparing Config filename = Bestandsnaam:
preparingcontent = Preparing Content
uploadingcontent = Uploading Content
uploadingpreviewfile = Uploading Preview File
committingchanges = Comitting Changes
done = Done
about.button = About
name = Name:
noname = Pick a[accent] player name[] first.
filename = File Name:
unlocked = New content unlocked! unlocked = New content unlocked!
completed = [accent]Completed completed = [accent]Voltooid
techtree = Tech Tree techtree = Tech boom
research.list = [LIGHT_GRAY]Research: research.list = [LIGHT_GRAY]Onderzoek:
research = Research research = Onderzoek
researched = [LIGHT_GRAY]{0} researched. researched = [LIGHT_GRAY]{0} Onderzocht.
players = {0} players online players = {0} Spelers online
players.single = {0} player online players.single = {0} Speler online
server.closing = [accent]Closing server... server.closing = [accent]Server aan het sluiten...
server.kicked.kick = You have been kicked from the server! server.kicked.kick = Je bent verwijderd van deze sessie.
server.kicked.whitelist = You are not whitelisted here. server.kicked.serverClose = Server afgesloten...
server.kicked.serverClose = Server closed. server.kicked.vote = Je bent ge vote-kicked. Tot ziens.
server.kicked.vote = You have been vote-kicked. Goodbye. server.kicked.clientOutdated = Verouderde versie! Update jouw spel!
server.kicked.clientOutdated = Outdated client! Update your game! server.kicked.serverOutdated = Verouderde server! Vraag de host om te upgraden!
server.kicked.serverOutdated = Outdated server! Ask the host to update! server.kicked.banned = Je bent verbannen van deze server.
server.kicked.banned = You are banned on this server. server.kicked.typeMismatch = Deze server is niet compitabel met jouw bouwtype.
server.kicked.typeMismatch = This server is not compatible with your build type. server.kicked.recentKick = Je bent reeds verwijderd.\nWacht voordat je opnieuw verbindt.
server.kicked.playerLimit = This server is full. Wait for an empty slot. server.kicked.nameInUse = Er is al iemand met die naam\nop deze server.
server.kicked.recentKick = You have been kicked recently.\nWait before connecting again. server.kicked.nameEmpty = Je gekozen naam is niet geldig.
server.kicked.nameInUse = There is someone with that name\nalready on this server. server.kicked.idInUse = Je bent al verbonden met deze server! Verbinden met 2 accounts is verboden.
server.kicked.nameEmpty = Your chosen name is invalid. server.kicked.customClient = Deze server ondersteunt geen aangepaste spellen . Download de officiele versie.
server.kicked.idInUse = You are already on this server! Connecting with two accounts is not permitted. server.kicked.gameover = Spel afgelopen
server.kicked.customClient = This server does not support custom builds. Download an official version. server.versions = Jouw versie:[accent] {0}[]\nServer versie:[accent] {1}[]
server.kicked.gameover = Game over! host.info = De [accent]host[] knop hosts `een server op port [scarlet]6567[]. \nIedereen op hetzelfde [LIGHT_GRAY]wifi or locaal netwerk[] zou jouw server in hun serverlijst moeten zien.\n\nAls je wilt dan vrienden vanaf overal kunnen meedoen via IP, [accent]port forwarding[] is nodig.\n\n[LIGHT_GRAY]Note: IAls iemand moeilijkheden heeft met het meedoen aan jouw spel, kijk of je Mindustry in je firewall instellingen toegang hebt gegeven to jouw locaal netwerk.
server.versions = Your version:[accent] {0}[]\nServer version:[accent] {1}[] join.info = Hier kan je een [accent]server IP[] invoeren om te verbinden, of om[accent]locale netwerken[] te vinden.\nBeide LAN en WAN multiplayer is ondersteund.\n\n[LIGHT_GRAY]Note: Er is geen automatische globale serverlijst; Als je met iemands IP wil verbinden, Zou je moeten vragen om hun IP.
host.info = The [accent]host[] button hosts a server on port [scarlet]6567[]. \nAnybody on the same [LIGHT_GRAY]wifi or local network[] should be able to see your server in their server list.\n\nIf you want people to be able to connect from anywhere by IP, [accent]port forwarding[] is required.\n\n[LIGHT_GRAY]Note: If someone is experiencing trouble connecting to your LAN game, make sure you have allowed Mindustry access to your local network in your firewall settings.
join.info = Here, you can enter a [accent]server IP[] to connect to, or discover [accent]local network[] servers to connect to.\nBoth LAN and WAN multiplayer is supported.\n\n[LIGHT_GRAY]Note: There is no automatic global server list; if you want to connect to someone by IP, you would need to ask the host for their IP.
hostserver = Host Game hostserver = Host Game
invitefriends = Invite Friends invitefriends = Invite Friends
hostserver.mobile = Host\nGame hostserver.mobile = Host\nGame

View File

@@ -45,6 +45,7 @@ customgame = 自定义游戏
newgame = 新游戏 newgame = 新游戏
none = <无> none = <无>
minimap = 小地图 minimap = 小地图
position = 位置
close = 关闭 close = 关闭
website = 官网 website = 官网
quit = 退出 quit = 退出
@@ -547,6 +548,7 @@ setting.fps.name = 显示 FPS
setting.vsync.name = 垂直同步 setting.vsync.name = 垂直同步
setting.pixelate.name = 像素画面 [LIGHT_GRAY](禁用动画) setting.pixelate.name = 像素画面 [LIGHT_GRAY](禁用动画)
setting.minimap.name = 显示小地图 setting.minimap.name = 显示小地图
setting.position.name = 显示玩家坐标
setting.musicvol.name = 音乐音量 setting.musicvol.name = 音乐音量
setting.ambientvol.name = 环境体积 setting.ambientvol.name = 环境体积
setting.mutemusic.name = 静音 setting.mutemusic.name = 静音

View File

@@ -78,4 +78,5 @@ itskatt
Agent-Laevain Agent-Laevain
AzariasB AzariasB
amrsoll amrsoll
ねらひかだ
Draco Draco

View File

@@ -9,7 +9,7 @@ import io.anuke.arc.util.*;
import io.anuke.mindustry.*; import io.anuke.mindustry.*;
import io.anuke.mindustry.entities.*; import io.anuke.mindustry.entities.*;
import io.anuke.mindustry.entities.bullet.*; import io.anuke.mindustry.entities.bullet.*;
import io.anuke.mindustry.entities.type.Bullet; import io.anuke.mindustry.entities.type.*;
import io.anuke.mindustry.game.*; import io.anuke.mindustry.game.*;
import io.anuke.mindustry.gen.*; import io.anuke.mindustry.gen.*;
import io.anuke.mindustry.graphics.*; import io.anuke.mindustry.graphics.*;
@@ -29,8 +29,6 @@ import io.anuke.mindustry.world.consumers.*;
import io.anuke.mindustry.world.meta.*; import io.anuke.mindustry.world.meta.*;
import io.anuke.mindustry.world.modules.*; import io.anuke.mindustry.world.modules.*;
import static io.anuke.mindustry.Vars.*;
public class Blocks implements ContentList{ public class Blocks implements ContentList{
public static Block public static Block
@@ -716,23 +714,23 @@ public class Blocks implements ContentList{
//region sandbox //region sandbox
powerVoid = new PowerVoid("power-void"){{ powerVoid = new PowerVoid("power-void"){{
requirements(Category.power, () -> state.rules.infiniteResources, ItemStack.with()); requirements(Category.power, BuildVisibility.sandboxOnly, ItemStack.with());
alwaysUnlocked = true; alwaysUnlocked = true;
}}; }};
powerSource = new PowerSource("power-source"){{ powerSource = new PowerSource("power-source"){{
requirements(Category.power, () -> state.rules.infiniteResources, ItemStack.with()); requirements(Category.power, BuildVisibility.sandboxOnly, ItemStack.with());
alwaysUnlocked = true; alwaysUnlocked = true;
}}; }};
itemSource = new ItemSource("item-source"){{ itemSource = new ItemSource("item-source"){{
requirements(Category.distribution, () -> state.rules.infiniteResources, ItemStack.with()); requirements(Category.distribution, BuildVisibility.sandboxOnly, ItemStack.with());
alwaysUnlocked = true; alwaysUnlocked = true;
}}; }};
itemVoid = new ItemVoid("item-void"){{ itemVoid = new ItemVoid("item-void"){{
requirements(Category.distribution, () -> state.rules.infiniteResources, ItemStack.with()); requirements(Category.distribution, BuildVisibility.sandboxOnly, ItemStack.with());
alwaysUnlocked = true; alwaysUnlocked = true;
}}; }};
liquidSource = new LiquidSource("liquid-source"){{ liquidSource = new LiquidSource("liquid-source"){{
requirements(Category.liquid, () -> state.rules.infiniteResources, ItemStack.with()); requirements(Category.liquid, BuildVisibility.sandboxOnly, ItemStack.with());
alwaysUnlocked = true; alwaysUnlocked = true;
}}; }};
message = new MessageBlock("message"){{ message = new MessageBlock("message"){{
@@ -745,27 +743,27 @@ public class Blocks implements ContentList{
int wallHealthMultiplier = 4; int wallHealthMultiplier = 4;
scrapWall = new Wall("scrap-wall"){{ scrapWall = new Wall("scrap-wall"){{
requirements(Category.defense, () -> state.rules.infiniteResources, ItemStack.with()); requirements(Category.defense, BuildVisibility.sandboxOnly, ItemStack.with());
health = 60 * wallHealthMultiplier; health = 60 * wallHealthMultiplier;
variants = 5; variants = 5;
}}; }};
scrapWallLarge = new Wall("scrap-wall-large"){{ scrapWallLarge = new Wall("scrap-wall-large"){{
requirements(Category.defense, () -> state.rules.infiniteResources, ItemStack.with()); requirements(Category.defense, BuildVisibility.sandboxOnly, ItemStack.with());
health = 60 * 4 * wallHealthMultiplier; health = 60 * 4 * wallHealthMultiplier;
size = 2; size = 2;
variants = 4; variants = 4;
}}; }};
scrapWallHuge = new Wall("scrap-wall-huge"){{ scrapWallHuge = new Wall("scrap-wall-huge"){{
requirements(Category.defense, () -> state.rules.infiniteResources, ItemStack.with()); requirements(Category.defense, BuildVisibility.sandboxOnly, ItemStack.with());
health = 60 * 9 * wallHealthMultiplier; health = 60 * 9 * wallHealthMultiplier;
size = 3; size = 3;
variants = 3; variants = 3;
}}; }};
scrapWallGigantic = new Wall("scrap-wall-gigantic"){{ scrapWallGigantic = new Wall("scrap-wall-gigantic"){{
requirements(Category.defense, () -> state.rules.infiniteResources, ItemStack.with()); requirements(Category.defense, BuildVisibility.sandboxOnly, ItemStack.with());
health = 60 * 16 * wallHealthMultiplier; health = 60 * 16 * wallHealthMultiplier;
size = 4; size = 4;
}}; }};
@@ -1235,7 +1233,7 @@ public class Blocks implements ContentList{
//region storage //region storage
coreShard = new CoreBlock("core-shard"){{ coreShard = new CoreBlock("core-shard"){{
requirements(Category.effect, () -> false, ItemStack.with(Items.titanium, 1000)); requirements(Category.effect, BuildVisibility.debugOnly, ItemStack.with(Items.titanium, 4000));
alwaysUnlocked = true; alwaysUnlocked = true;
health = 1100; health = 1100;
@@ -1244,7 +1242,7 @@ public class Blocks implements ContentList{
}}; }};
coreFoundation = new CoreBlock("core-foundation"){{ coreFoundation = new CoreBlock("core-foundation"){{
requirements(Category.effect, () -> false, ItemStack.with(Items.titanium, 1500, Items.silicon, 1000)); requirements(Category.effect, BuildVisibility.debugOnly, ItemStack.with(Items.titanium, 400, Items.silicon, 3000));
health = 2000; health = 2000;
itemCapacity = 9000; itemCapacity = 9000;
@@ -1252,7 +1250,7 @@ public class Blocks implements ContentList{
}}; }};
coreNucleus = new CoreBlock("core-nucleus"){{ coreNucleus = new CoreBlock("core-nucleus"){{
requirements(Category.effect, () -> false, ItemStack.with(Items.titanium, 4000, Items.silicon, 2000, Items.surgealloy, 1000)); requirements(Category.effect, BuildVisibility.debugOnly, ItemStack.with(Items.titanium, 4000, Items.silicon, 2000, Items.surgealloy, 3000));
health = 4000; health = 4000;
itemCapacity = 13000; itemCapacity = 13000;
@@ -1277,7 +1275,7 @@ public class Blocks implements ContentList{
}}; }};
launchPad = new LaunchPad("launch-pad"){{ launchPad = new LaunchPad("launch-pad"){{
requirements(Category.effect, () -> world.isZone(), ItemStack.with(Items.copper, 250, Items.silicon, 75, Items.lead, 100)); requirements(Category.effect, BuildVisibility.campaignOnly, ItemStack.with(Items.copper, 250, Items.silicon, 75, Items.lead, 100));
size = 3; size = 3;
itemCapacity = 100; itemCapacity = 100;
launchTime = 60f * 16; launchTime = 60f * 16;
@@ -1286,7 +1284,7 @@ public class Blocks implements ContentList{
}}; }};
launchPadLarge = new LaunchPad("launch-pad-large"){{ launchPadLarge = new LaunchPad("launch-pad-large"){{
requirements(Category.effect, () -> world.isZone(), ItemStack.with(Items.titanium, 200, Items.silicon, 150, Items.lead, 250, Items.plastanium, 75)); requirements(Category.effect, BuildVisibility.campaignOnly, ItemStack.with(Items.titanium, 200, Items.silicon, 150, Items.lead, 250, Items.plastanium, 75));
size = 4; size = 4;
itemCapacity = 250; itemCapacity = 250;
launchTime = 60f * 14; launchTime = 60f * 14;

View File

@@ -46,7 +46,7 @@ public class MapResizeDialog extends FloatingDialog{
buttons.defaults().size(200f, 50f); buttons.defaults().size(200f, 50f);
buttons.addButton("$cancel", this::hide); buttons.addButton("$cancel", this::hide);
buttons.addButton("$editor.resize", () -> { buttons.addButton("$ok", () -> {
cons.accept(width, height); cons.accept(width, height);
hide(); hide();
}); });

View File

@@ -9,7 +9,6 @@ import io.anuke.arc.graphics.glutils.*;
import io.anuke.arc.math.*; import io.anuke.arc.math.*;
import io.anuke.arc.util.*; import io.anuke.arc.util.*;
import io.anuke.mindustry.content.*; import io.anuke.mindustry.content.*;
import io.anuke.mindustry.entities.type.base.*;
import io.anuke.mindustry.game.*; import io.anuke.mindustry.game.*;
import io.anuke.mindustry.game.EventType.*; import io.anuke.mindustry.game.EventType.*;
import io.anuke.mindustry.game.Teams.*; import io.anuke.mindustry.game.Teams.*;
@@ -29,6 +28,7 @@ public class BlockRenderer implements Disposable{
private int lastCamX, lastCamY, lastRangeX, lastRangeY; private int lastCamX, lastCamY, lastRangeX, lastRangeY;
private int requestidx = 0; private int requestidx = 0;
private int iterateidx = 0; private int iterateidx = 0;
private float brokenFade = 0f;
private FrameBuffer shadows = new FrameBuffer(2, 2); private FrameBuffer shadows = new FrameBuffer(2, 2);
private FrameBuffer fog = new FrameBuffer(2, 2); private FrameBuffer fog = new FrameBuffer(2, 2);
private Array<Tile> outArray = new Array<>(); private Array<Tile> outArray = new Array<>();
@@ -124,12 +124,18 @@ public class BlockRenderer implements Disposable{
} }
public void drawBroken(){ public void drawBroken(){
if(unitGroups[player.getTeam().ordinal()].all().contains(p -> p instanceof BuilderDrone)){ if(control.input.isPlacing() || control.input.isBreaking()){
brokenFade = Mathf.lerpDelta(brokenFade, 1f, 0.1f);
}else{
brokenFade = Mathf.lerpDelta(brokenFade, 0f, 0.1f);
}
if(brokenFade > 0.001f){
for(BrokenBlock block : state.teams.get(player.getTeam()).brokenBlocks){ for(BrokenBlock block : state.teams.get(player.getTeam()).brokenBlocks){
Block b = content.block(block.block); Block b = content.block(block.block);
if(!camera.bounds(Tmp.r1).grow(tilesize * 2f).overlaps(Tmp.r2.setSize(b.size * tilesize).setCenter(block.x * tilesize + b.offset(), block.y * tilesize + b.offset()))) continue; if(!camera.bounds(Tmp.r1).grow(tilesize * 2f).overlaps(Tmp.r2.setSize(b.size * tilesize).setCenter(block.x * tilesize + b.offset(), block.y * tilesize + b.offset()))) continue;
Draw.alpha(0.5f); Draw.alpha(0.53f * brokenFade);
Draw.mixcol(Color.white, 0.2f + Mathf.absin(Time.globalTime(), 6f, 0.2f)); Draw.mixcol(Color.white, 0.2f + Mathf.absin(Time.globalTime(), 6f, 0.2f));
Draw.rect(b.icon(Cicon.full), block.x * tilesize + b.offset(), block.y * tilesize + b.offset(), b.rotate ? block.rotation * 90 : 0f); Draw.rect(b.icon(Cicon.full), block.x * tilesize + b.offset(), block.y * tilesize + b.offset(), b.rotate ? block.rotation * 90 : 0f);
} }

View File

@@ -211,6 +211,11 @@ public class DesktopInput extends InputHandler{
cursorType = SystemCursor.arrow; cursorType = SystemCursor.arrow;
} }
@Override
public boolean isBreaking(){
return mode == breaking;
}
void pollInput(){ void pollInput(){
Tile selected = tileAt(Core.input.mouseX(), Core.input.mouseY()); Tile selected = tileAt(Core.input.mouseX(), Core.input.mouseY());
int cursorX = tileX(Core.input.mouseX()); int cursorX = tileX(Core.input.mouseX());

View File

@@ -523,6 +523,10 @@ public abstract class InputHandler implements InputProcessor, GestureListener{
return block != null; return block != null;
} }
public boolean isBreaking(){
return false;
}
public float mouseAngle(float x, float y){ public float mouseAngle(float x, float y){
return Core.input.mouseWorld(getMouseX(), getMouseY()).sub(x, y).angle(); return Core.input.mouseWorld(getMouseX(), getMouseY()).sub(x, y).angle();
} }

View File

@@ -348,6 +348,11 @@ public class MobileInput extends InputHandler implements GestureListener{
//endregion //endregion
//region input events //region input events
@Override
public boolean isBreaking(){
return mode == breaking;
}
@Override @Override
public boolean touchDown(int screenX, int screenY, int pointer, KeyCode button){ public boolean touchDown(int screenX, int screenY, int pointer, KeyCode button){
if(state.is(State.menu) || player.isDead()) return false; if(state.is(State.menu) || player.isDead()) return false;

View File

@@ -25,6 +25,7 @@ import io.anuke.mindustry.mod.Mods.*;
import io.anuke.mindustry.type.*; import io.anuke.mindustry.type.*;
import io.anuke.mindustry.world.*; import io.anuke.mindustry.world.*;
import io.anuke.mindustry.world.consumers.*; import io.anuke.mindustry.world.consumers.*;
import io.anuke.mindustry.world.meta.*;
import java.lang.reflect.*; import java.lang.reflect.*;
@@ -173,9 +174,9 @@ public class ContentParser{
TechTree.create(find(ContentType.block, value.get("research").asString()), block); TechTree.create(find(ContentType.block, value.get("research").asString()), block);
} }
//make block visible //make block visible by default if there are requirements and no visibility set
if(value.has("requirements")){ if(value.has("requirements") && block.buildVisibility == BuildVisibility.hidden){
block.buildVisibility = () -> true; block.buildVisibility = BuildVisibility.shown;
} }
}); });

View File

@@ -1,6 +1,7 @@
package io.anuke.mindustry.ui; package io.anuke.mindustry.ui;
import io.anuke.arc.Core; import io.anuke.arc.Core;
import io.anuke.arc.util.Strings;
import io.anuke.arc.graphics.Color; import io.anuke.arc.graphics.Color;
import io.anuke.mindustry.graphics.Pal; import io.anuke.mindustry.graphics.Pal;
@@ -29,7 +30,7 @@ public class Links{
} }
public static class LinkEntry{ public static class LinkEntry{
public final String name, description, link; public final String name, title, description, link;
public final Color color; public final Color color;
public LinkEntry(String name, String link, Color color){ public LinkEntry(String name, String link, Color color){
@@ -37,6 +38,9 @@ public class Links{
this.color = color; this.color = color;
this.description = Core.bundle.getNotNull("link." + name + ".description"); this.description = Core.bundle.getNotNull("link." + name + ".description");
this.link = link; this.link = link;
String title = Core.bundle.getOrNull("link." + name + ".title");
this.title = title != null ? title : Strings.capitalize(name.replace("-", " "));
} }
} }
} }

View File

@@ -59,7 +59,7 @@ public class AboutDialog extends FloatingDialog{
}).size(h - 5, h); }).size(h - 5, h);
table.table(inset -> { table.table(inset -> {
inset.add("[accent]" + Strings.capitalize(link.name.replace("-", " "))).growX().left(); inset.add("[accent]" + link.title).growX().left();
inset.row(); inset.row();
inset.labelWrap(link.description).width(w - 100f).color(Color.lightGray).growX(); inset.labelWrap(link.description).width(w - 100f).color(Color.lightGray).growX();
}).padLeft(8); }).padLeft(8);

View File

@@ -157,14 +157,14 @@ public class CustomRulesDialog extends FloatingDialog{
main.row(); main.row();
title("$rules.title.player"); title("$rules.title.player");
number("$rules.playerdamagemultiplier", f -> rules.playerDamageMultiplier = f, () -> rules.playerDamageMultiplier);
number("$rules.playerhealthmultiplier", f -> rules.playerHealthMultiplier = f, () -> rules.playerHealthMultiplier); number("$rules.playerhealthmultiplier", f -> rules.playerHealthMultiplier = f, () -> rules.playerHealthMultiplier);
number("$rules.playerdamagemultiplier", f -> rules.playerDamageMultiplier = f, () -> rules.playerDamageMultiplier);
title("$rules.title.unit"); title("$rules.title.unit");
check("$rules.unitdrops", b -> rules.unitDrops = b, () -> rules.unitDrops, () -> true); check("$rules.unitdrops", b -> rules.unitDrops = b, () -> rules.unitDrops, () -> true);
number("$rules.unitbuildspeedmultiplier", f -> rules.unitBuildSpeedMultiplier = f, () -> rules.unitBuildSpeedMultiplier);
number("$rules.unithealthmultiplier", f -> rules.unitHealthMultiplier = f, () -> rules.unitHealthMultiplier); number("$rules.unithealthmultiplier", f -> rules.unitHealthMultiplier = f, () -> rules.unitHealthMultiplier);
number("$rules.unitdamagemultiplier", f -> rules.unitDamageMultiplier = f, () -> rules.unitDamageMultiplier); number("$rules.unitdamagemultiplier", f -> rules.unitDamageMultiplier = f, () -> rules.unitDamageMultiplier);
number("$rules.unitbuildspeedmultiplier", f -> rules.unitBuildSpeedMultiplier = f, () -> rules.unitBuildSpeedMultiplier);
title("$rules.title.enemy"); title("$rules.title.enemy");
check("$rules.attack", b -> rules.attackMode = b, () -> rules.attackMode); check("$rules.attack", b -> rules.attackMode = b, () -> rules.attackMode);

View File

@@ -294,6 +294,7 @@ public class SettingsMenuDialog extends SettingsDialog{
graphics.checkPref("effects", true); graphics.checkPref("effects", true);
graphics.checkPref("playerchat", true); graphics.checkPref("playerchat", true);
graphics.checkPref("minimap", !mobile); graphics.checkPref("minimap", !mobile);
graphics.checkPref("position", false);
graphics.checkPref("fps", false); graphics.checkPref("fps", false);
graphics.checkPref("indicators", true); graphics.checkPref("indicators", true);
graphics.checkPref("animatedwater", false); graphics.checkPref("animatedwater", false);

View File

@@ -157,7 +157,7 @@ public class ZoneInfoDialog extends FloatingDialog{
hide(); hide();
control.playZone(zone); control.playZone(zone);
} }
}).minWidth(150f).margin(13f).padTop(5).disabled(b -> zone.locked() ? !zone.canUnlock() : !data.hasItems(zone.getLaunchCost())).uniformY().get(); }).minWidth(200f).margin(13f).padTop(5).disabled(b -> zone.locked() ? !zone.canUnlock() : !data.hasItems(zone.getLaunchCost())).uniformY().get();
button.row(); button.row();
button.add(iteminfo); button.add(iteminfo);

View File

@@ -19,15 +19,14 @@ import io.anuke.arc.util.*;
import io.anuke.mindustry.core.GameState.*; import io.anuke.mindustry.core.GameState.*;
import io.anuke.mindustry.entities.*; import io.anuke.mindustry.entities.*;
import io.anuke.mindustry.entities.type.*; import io.anuke.mindustry.entities.type.*;
import io.anuke.mindustry.game.EventType.*;
import io.anuke.mindustry.game.*; import io.anuke.mindustry.game.*;
import io.anuke.mindustry.game.EventType.*;
import io.anuke.mindustry.gen.*; import io.anuke.mindustry.gen.*;
import io.anuke.mindustry.graphics.*; import io.anuke.mindustry.graphics.*;
import io.anuke.mindustry.input.*; import io.anuke.mindustry.input.*;
import io.anuke.mindustry.net.Packets.*; import io.anuke.mindustry.net.Packets.*;
import io.anuke.mindustry.type.*; import io.anuke.mindustry.type.*;
import io.anuke.mindustry.ui.*; import io.anuke.mindustry.ui.*;
import io.anuke.mindustry.ui.Styles;
import io.anuke.mindustry.ui.dialogs.*; import io.anuke.mindustry.ui.dialogs.*;
import static io.anuke.mindustry.Vars.*; import static io.anuke.mindustry.Vars.*;
@@ -249,9 +248,16 @@ public class HudFragment extends Fragment{
info.label(() -> ping.get(netClient.getPing())).visible(net::client).left().style(Styles.outlineLabel); info.label(() -> ping.get(netClient.getPing())).visible(net::client).left().style(Styles.outlineLabel);
}).top().left(); }).top().left();
}); });
//minimap parent.fill(t -> {
parent.fill(t -> t.top().right().add(new Minimap()).visible(() -> Core.settings.getBool("minimap") && !state.rules.tutorial)); //minimap
t.add(new Minimap().visible(() -> Core.settings.getBool("minimap") && !state.rules.tutorial));
t.row();
//position
t.label(() -> world.toTile(player.x) + "," + world.toTile(player.y))
.visible(() -> Core.settings.getBool("position") && !state.rules.tutorial);
t.top().right();
});
//spawner warning //spawner warning
parent.fill(t -> { parent.fill(t -> {

View File

@@ -39,8 +39,6 @@ import static io.anuke.mindustry.Vars.*;
public class Block extends BlockStorage{ public class Block extends BlockStorage{
public static final int crackRegions = 8, maxCrackSize = 5; public static final int crackRegions = 8, maxCrackSize = 5;
private static final BooleanProvider invisible = () -> false;
/** whether this block has a tile entity that updates */ /** whether this block has a tile entity that updates */
public boolean update; public boolean update;
/** whether this block has health and can be destroyed */ /** whether this block has health and can be destroyed */
@@ -124,7 +122,9 @@ public class Block extends BlockStorage{
/** Cost of building this block; do not modify directly! */ /** Cost of building this block; do not modify directly! */
public float buildCost; public float buildCost;
/** Whether this block is visible and can currently be built. */ /** Whether this block is visible and can currently be built. */
public BooleanProvider buildVisibility = invisible; public BuildVisibility buildVisibility = BuildVisibility.hidden;
/** Multiplier for speed of building this block. */
public float buildCostMultiplier = 1f;
/** Whether this block has instant transfer.*/ /** Whether this block has instant transfer.*/
public boolean instantTransfer = false; public boolean instantTransfer = false;
public boolean alwaysUnlocked = false; public boolean alwaysUnlocked = false;
@@ -155,7 +155,7 @@ public class Block extends BlockStorage{
} }
public boolean isBuildable(){ public boolean isBuildable(){
return buildVisibility != invisible; return buildVisibility != BuildVisibility.hidden && buildVisibility != BuildVisibility.debugOnly;
} }
public boolean isStatic(){ public boolean isStatic(){
@@ -388,6 +388,7 @@ public class Block extends BlockStorage{
for(ItemStack stack : requirements){ for(ItemStack stack : requirements){
buildCost += stack.amount * stack.item.cost; buildCost += stack.amount * stack.item.cost;
} }
buildCost *= buildCostMultiplier;
if(consumes.has(ConsumeType.power)) hasPower = true; if(consumes.has(ConsumeType.power)) hasPower = true;
if(consumes.has(ConsumeType.item)) hasItems = true; if(consumes.has(ConsumeType.item)) hasItems = true;
@@ -805,7 +806,7 @@ public class Block extends BlockStorage{
} }
public boolean isVisible(){ public boolean isVisible(){
return buildVisibility.get() && !isHidden(); return buildVisibility.visible() && !isHidden();
} }
public boolean isFloor(){ public boolean isFloor(){
@@ -822,7 +823,7 @@ public class Block extends BlockStorage{
@Override @Override
public boolean isHidden(){ public boolean isHidden(){
return !buildVisibility.get(); return !buildVisibility.visible();
} }
@Override @Override
@@ -831,21 +832,21 @@ public class Block extends BlockStorage{
} }
protected void requirements(Category cat, ItemStack[] stacks, boolean unlocked){ protected void requirements(Category cat, ItemStack[] stacks, boolean unlocked){
requirements(cat, () -> true, stacks); requirements(cat, BuildVisibility.shown, stacks);
this.alwaysUnlocked = unlocked; this.alwaysUnlocked = unlocked;
} }
protected void requirements(Category cat, ItemStack[] stacks){ protected void requirements(Category cat, ItemStack[] stacks){
requirements(cat, () -> true, stacks); requirements(cat, BuildVisibility.shown, stacks);
} }
/** Sets up requirements. Use only this method to set up requirements. */ /** Sets up requirements. Use only this method to set up requirements. */
protected void requirements(Category cat, BooleanProvider visible, ItemStack[] stacks){ protected void requirements(Category cat, BuildVisibility visible, ItemStack[] stacks){
this.category = cat; this.category = cat;
this.requirements = stacks; this.requirements = stacks;
this.buildVisibility = visible; this.buildVisibility = visible;
Arrays.sort(requirements, (a, b) -> Integer.compare(a.item.id, b.item.id)); Arrays.sort(requirements, Structs.comparingInt(i -> i.item.id));
} }
} }

View File

@@ -16,6 +16,7 @@ public class Wall extends Block{
solid = true; solid = true;
destructible = true; destructible = true;
group = BlockGroup.walls; group = BlockGroup.walls;
buildCostMultiplier = 5f;
} }
@Override @Override

View File

@@ -0,0 +1,22 @@
package io.anuke.mindustry.world.meta;
import io.anuke.arc.function.*;
import io.anuke.mindustry.*;
public enum BuildVisibility{
hidden(() -> false),
shown(() -> true),
debugOnly(() -> false),
sandboxOnly(() -> Vars.state.rules.infiniteResources),
campaignOnly(() -> Vars.world.isZone());
private final BooleanProvider visible;
public boolean visible(){
return visible.get();
}
BuildVisibility(BooleanProvider visible){
this.visible = visible;
}
}

View File

@@ -0,0 +1,14 @@
ベルトコンベアーを巧みに配置して、弾薬をタレットに送り込み、建設に必要な材料を集めて、敵からコアを守り切ろう。あなたのフレンドとクロスプラットフォームでマルチプレイして、お互いに協力したり、チームで戦ったりしよう。
Mindustryの特徴:
- 24個のマップ
- テックツリーや新しいエリアの解放を目指す
- 4つのパワフルなボス
- 電気、液体、アイテムの輸送システム
- 19個の個性的なドローンや機体
- 120以上のテクロジーブロックを使いこなす
- 75以上の異なる環境ブロック
- ローカルネットワークや専用サーバーで、クロスプラットフォームのマルチプレイが可能
- カスタマイズ可能なゲーム: ブロックのコスト変更、敵のステータス、初期アイテム、ウェーブのタイミング など…
- 強力なエディター、鉱石をランダムに生成したり、地形、デコレーション、左右対称なマップも制作可能
- マップごとにウェーブの構成もカスタマイズ可能

View File

@@ -0,0 +1 @@
工場ベースのサンドボックスタワーディフェンスゲーム。

View File

@@ -0,0 +1 @@
Mindustry

View File

View File

@@ -0,0 +1,109 @@
"lang"
{
"Language" "italian"
"Tokens"
{
"NEW_ACHIEVEMENT_20_0_NAME" "Utente abilitato"
"NEW_ACHIEVEMENT_20_0_DESC" "Completa il tutorial."
"NEW_ACHIEVEMENT_20_1_NAME" "Attaccabrighe"
"NEW_ACHIEVEMENT_20_1_DESC" "Distruggi 1000 unità nemiche."
"NEW_ACHIEVEMENT_20_2_NAME" "Epurazione"
"NEW_ACHIEVEMENT_20_2_DESC" "Distruggi 100,000 unità nemiche."
"NEW_ACHIEVEMENT_20_3_NAME" "Trasporto Atmosferico"
"NEW_ACHIEVEMENT_20_3_DESC" "Lancia 10,000 oggetti."
"NEW_ACHIEVEMENT_20_5_NAME" "Spedizioni senza fine"
"NEW_ACHIEVEMENT_20_5_DESC" "Lancia 1,000,000 di oggetti."
"NEW_ACHIEVEMENT_20_6_NAME" "Conquistatore"
"NEW_ACHIEVEMENT_20_6_DESC" "Vinci 10 partite in modalità attacco."
"NEW_ACHIEVEMENT_20_7_NAME" "Campione"
"NEW_ACHIEVEMENT_20_7_DESC" "Vinci 10 partite multigiocatore PvP."
"NEW_ACHIEVEMENT_20_8_NAME" "Blitz"
"NEW_ACHIEVEMENT_20_8_DESC" "Distruggi il nucleo nemico in una zona d'attacco in 5 ondate o meno."
"NEW_ACHIEVEMENT_20_9_NAME" "Pioggia di Nuclei"
"NEW_ACHIEVEMENT_20_9_DESC" "Lancia il tuo nucleo in una zona 30 volte"
"NEW_ACHIEVEMENT_20_10_NAME" "Tenace"
"NEW_ACHIEVEMENT_20_10_DESC" "Sopravvivi a 100 ondate."
"NEW_ACHIEVEMENT_20_11_NAME" "Imbattuto"
"NEW_ACHIEVEMENT_20_11_DESC" "Sopravvivi a 500 ondate."
"NEW_ACHIEVEMENT_20_12_NAME" "Ricercatore"
"NEW_ACHIEVEMENT_20_12_DESC" "Ricerca tutto."
"NEW_ACHIEVEMENT_20_13_NAME" "Mutaforma"
"NEW_ACHIEVEMENT_20_13_DESC" "Sblocca tutti i mech e trasformati in ogniuno di essi."
"NEW_ACHIEVEMENT_20_14_NAME" "Sovraccarico"
"NEW_ACHIEVEMENT_20_14_DESC" "Colpisci un nemico ricoperto d'acqua con l'elettricità."
"NEW_ACHIEVEMENT_20_15_NAME" "Deviazione"
"NEW_ACHIEVEMENT_20_15_DESC" "Distruggi un nemico con un suo colpo riflesso."
"NEW_ACHIEVEMENT_20_17_NAME" "Un grave errore"
"NEW_ACHIEVEMENT_20_17_DESC" "Ricerca il distributore."
"NEW_ACHIEVEMENT_20_18_NAME" "Costruttore"
"NEW_ACHIEVEMENT_20_18_DESC" "Piazza 10,000 blocchi."
"NEW_ACHIEVEMENT_20_19_NAME" "Razziatore"
"NEW_ACHIEVEMENT_20_19_DESC" "Distruggi 1,000 blocchi nemici."
"NEW_ACHIEVEMENT_20_20_NAME" "Un disastro memorabile"
"NEW_ACHIEVEMENT_20_20_DESC" "Causa il surriscaldamento e l'esplosione di un Reattore al Torio."
"NEW_ACHIEVEMENT_20_21_NAME" "Cartografo"
"NEW_ACHIEVEMENT_20_21_DESC" "Crea 10 nuove mappe."
"NEW_ACHIEVEMENT_20_22_NAME" "Navigatore"
"NEW_ACHIEVEMENT_20_22_DESC" "Scarica una mappa dal Workshop."
"NEW_ACHIEVEMENT_20_23_NAME" "Creatore"
"NEW_ACHIEVEMENT_20_23_DESC" "Pubblica una mappa nel Workshop."
"NEW_ACHIEVEMENT_20_24_NAME" "Mietitore"
"NEW_ACHIEVEMENT_20_24_DESC" "Sconfiggi un boss."
"NEW_ACHIEVEMENT_20_25_NAME" "Esploratore"
"NEW_ACHIEVEMENT_20_25_DESC" "Sblocca tutte le zone della campagna."
"NEW_ACHIEVEMENT_20_26_NAME" "Completista"
"NEW_ACHIEVEMENT_20_26_DESC" "Sblocca l'equipaggiamento personalizzato in tutte le zone."
"NEW_ACHIEVEMENT_20_29_NAME" "Materiale II"
"NEW_ACHIEVEMENT_20_29_DESC" "Sblocca il Torio."
"NEW_ACHIEVEMENT_20_31_NAME" "Materiale I"
"NEW_ACHIEVEMENT_20_31_DESC" "Sblocca il Titanio."
"NEW_ACHIEVEMENT_21_0_NAME" "Kamikaze"
"NEW_ACHIEVEMENT_21_0_DESC" "Riempi il tuo mech di esplosivi e muori, creando un esplosione."
"NEW_ACHIEVEMENT_21_1_NAME" "Ha inizio"
"NEW_ACHIEVEMENT_21_1_DESC" "Costruisci una fabbrica di droni pugnalatori."
"NEW_ACHIEVEMENT_21_2_NAME" "Assalto Diretto"
"NEW_ACHIEVEMENT_21_2_DESC" "Emetti un ordine di attacco usando il centro di comando."
"NEW_ACHIEVEMENT_21_3_NAME" "Orda"
"NEW_ACHIEVEMENT_21_3_DESC" "Possiedi 100 unità attive contemporaneamente."
"NEW_ACHIEVEMENT_21_4_NAME" "Stormo"
"NEW_ACHIEVEMENT_21_4_DESC" "Possiedi 10 Droni Fantasma attivi contemporaneamente."
"NEW_ACHIEVEMENT_21_5_NAME" "Esercito Esplosivo"
"NEW_ACHIEVEMENT_21_5_DESC" "Possiedi 50 Strisciatori attivi contemporaneamente."
"NEW_ACHIEVEMENT_21_6_NAME" "Legione"
"NEW_ACHIEVEMENT_21_6_DESC" "Costruisci 1000 unità."
"NEW_ACHIEVEMENT_21_7_NAME" "Super"
"NEW_ACHIEVEMENT_21_7_DESC" "Ottieni la valutazione S in una zona qualsiasi."
"NEW_ACHIEVEMENT_21_8_NAME" "Super Super"
"NEW_ACHIEVEMENT_21_8_DESC" "Ottieni la valutazione SS in una zona qualsiasi."
"NEW_ACHIEVEMENT_21_9_NAME" "Avresti dovusto ascoltare"
"NEW_ACHIEVEMENT_21_9_DESC" "Muori nella zona di esclusione dell'atterraggio nemico."
"NEW_ACHIEVEMENT_21_10_NAME" "Premi Shift"
"NEW_ACHIEVEMENT_21_10_DESC" "Annega, in qualche modo."
"NEW_ACHIEVEMENT_21_11_NAME" "Collezionista"
"NEW_ACHIEVEMENT_21_11_DESC" "Riempi il nucleo alla capacità massima con ogni tipo di materiale."
"NEW_ACHIEVEMENT_21_12_NAME" "Folla"
"NEW_ACHIEVEMENT_21_12_DESC" "Ospita un server con 10 giocatori."
"NEW_ACHIEVEMENT_21_13_NAME" "Invincibile"
"NEW_ACHIEVEMENT_21_13_DESC" "Costruisci le torrette Fusione e Spettro."
"NEW_ACHIEVEMENT_21_14_NAME" "Ascesa"
"NEW_ACHIEVEMENT_21_14_DESC" "Usa l'ascensore spaziale."
"NEW_ACHIEVEMENT_21_15_NAME" "Autocompiacimento"
"NEW_ACHIEVEMENT_21_15_DESC" "Salta il decollo due volte e perdi il nucleo per mano nemica."
"NEW_ACHIEVEMENT_21_16_NAME" "Eresia"
"NEW_ACHIEVEMENT_21_16_DESC" "Costruisci due distributori uno affianco all'altro."
"NEW_ACHIEVEMENT_21_17_NAME" "Guardiano dell'amore"
"NEW_ACHIEVEMENT_21_17_DESC" "Sopravvivi a 10 ondate in qualsiasi zona senza piazzare blocchi."
"NEW_ACHIEVEMENT_21_18_NAME" "Incenerimento"
"NEW_ACHIEVEMENT_21_18_DESC" "Usa la Pirite in una torretta qualsiasi."
"NEW_ACHIEVEMENT_21_19_NAME" "Efficenza"
"NEW_ACHIEVEMENT_21_19_DESC" "Raffredda una torretta con dell'acqua o del criofluido."
"NEW_ACHIEVEMENT_21_20_NAME" "Modalità Classica"
"NEW_ACHIEVEMENT_21_20_DESC" "Abilita la pixelazione."
"NEW_ACHIEVEMENT_21_21_NAME" "Alunno"
"NEW_ACHIEVEMENT_21_21_DESC" "Apri la wiki dal gioco."
"NEW_ACHIEVEMENT_21_22_NAME" "Vantaggio"
"NEW_ACHIEVEMENT_21_22_DESC" "Lanciati in una zona con 10,000 o più oggetti nell'equipaggiamento."
"NEW_ACHIEVEMENT_21_23_NAME" "Avviamento"
"NEW_ACHIEVEMENT_21_23_DESC" "Avvia un Reattore ad Impatto."
}
}

View File

@@ -1,3 +1,3 @@
org.gradle.daemon=true org.gradle.daemon=true
org.gradle.jvmargs=-Xms256m -Xmx1024m org.gradle.jvmargs=-Xms256m -Xmx1024m
archash=737a74af85af88ee003a6e5a5c4cbc6f0f375a44 archash=9b1c3dc5f7690d67aaa399c9f7950953b00d7648

View File

@@ -341,7 +341,7 @@ public class ApplicationTests{
for(int x = 5; x < tiles.length && i < content.blocks().size; ){ for(int x = 5; x < tiles.length && i < content.blocks().size; ){
Block block = content.block(i++); Block block = content.block(i++);
if(block.buildVisibility.get()){ if(block.isBuildable()){
x += block.size; x += block.size;
tiles[x][5].setBlock(block); tiles[x][5].setBlock(block);
x += block.size; x += block.size;