From 97355263df8ca8bc5825cdd7b3291d8b40773eab Mon Sep 17 00:00:00 2001 From: Artur Quaresma Date: Wed, 12 Feb 2020 21:09:58 +0000 Subject: [PATCH 01/14] Added new lines and some small translation.s I added new lines and some small transaltions that was missing. --- core/assets/bundles/bundle_pt_PT.properties | 30 +++++++++++++++------ 1 file changed, 22 insertions(+), 8 deletions(-) diff --git a/core/assets/bundles/bundle_pt_PT.properties b/core/assets/bundles/bundle_pt_PT.properties index f845f98200..59413a614e 100644 --- a/core/assets/bundles/bundle_pt_PT.properties +++ b/core/assets/bundles/bundle_pt_PT.properties @@ -59,6 +59,7 @@ stat.built = Construções construídas:[accent] {0} stat.destroyed = Construções destruídas:[accent] {0} stat.deconstructed = Construções desconstruídas:[accent] {0} stat.delivered = Recursos lançados: +stat.playtime = Tempo jogado:[accent] {0} stat.rank = Rank Final: [accent]{0} launcheditems = [accent]Itens lançados @@ -103,7 +104,8 @@ mods = Mods mods.none = [LIGHT_GRAY]Mods não encontrados! mods.guide = Guia de mods mods.report = Reportar Bug -mods.openfolder = Open Mod Folder +mods.openfolder = Abrir pasta de Mods +mod.display = [gray]Mod:[orange] {0} mod.enabled = [lightgray]Ativado mod.disabled = [scarlet]Desativado mod.disable = Desativar @@ -167,9 +169,14 @@ hosting = [accent]Abrindo servidor... hosts.refresh = Atualizar hosts.discovering = Descobrindo jogos em lan hosts.discovering.any = Descobrindo jogos -server.refreshing = Atualizando servidor +server.refreshing = A atualizar servidor hosts.none = [lightgray]Nenhum jogo lan encontrado! host.invalid = [scarlet]Não foi possivel Hospedar. + +servers.local = Servidores Locais +servers.remote = Servidores Remotos +servers.global = Servidores Globais + trace = Traçar jogador trace.playername = Nome do jogador: [accent]{0} trace.ip = IP: [accent]{0} @@ -251,6 +258,7 @@ copylink = Copiar ligação back = Voltar data.export = Exportar dados data.import = Importar dados +data.openfolder = Abrir pasta de dados data.exported = Dados exportados. data.invalid = Estes dados de jogo não são válidos. data.import.confirm = Importar dados externos irá deletar[scarlet] todos[] os seus dados atuais.\n[accent]Isso não pode ser desfeito![]\n\nQuando sua data é importada, seu jogo ira sair imediatamente. @@ -530,6 +538,8 @@ error.title = [crimson]Ocorreu um Erro. error.crashtitle = Ocorreu um Erro blocks.input = Entrada blocks.output = Saida +blocks.tiles = Telhas Requeridas +blocks.affinities = Afinidades blocks.booster = Booster block.unknown = [LIGHT_GRAY]??? blocks.powercapacity = Capacidade de Energia @@ -641,14 +651,14 @@ setting.difficulty.insane = Insano setting.difficulty.name = Dificuldade setting.screenshake.name = Balanço do Ecrã setting.effects.name = Efeitos -setting.destroyedblocks.name = Display Destroyed Blocks -setting.conveyorpathfinding.name = Conveyor Placement Pathfinding -setting.coreselect.name = Allow Schematic Cores +setting.destroyedblocks.name = Mostrar Blocos Destruidos +setting.conveyorpathfinding.name = Localização do caminho do transportador +setting.coreselect.name = Permitir cores esquemáticas setting.sensitivity.name = Sensibilidade do Controle setting.saveinterval.name = Intervalo de autogravamento setting.seconds = {0} Segundos -setting.blockselecttimeout.name = Block Select Timeout -setting.milliseconds = {0} milliseconds +setting.blockselecttimeout.name = Tempo limite de seleção do bloco +setting.milliseconds = {0} milissegundos setting.fullscreen.name = Ecrã inteiro setting.borderlesswindow.name = Janela sem borda[LIGHT_GRAY] (Pode precisar reiniciar) setting.fps.name = Mostrar FPS @@ -665,8 +675,10 @@ setting.mutesound.name = Desligar Som setting.crashreport.name = Enviar denuncias de crash anonimas setting.savecreate.name = Criar gravamentos automaticamente setting.publichost.name = Visibilidade do jogo público +setting.playerlimit.name = Limite de Jogadores setting.chatopacity.name = Opacidade do chat setting.lasersopacity.name = Opacidade do Power Laser +setting.bridgeopacity.name = Opacidade da Ponte setting.playerchat.name = Mostrar chat em jogo public.confirm = Queres que o teu jogo fique publico?\n[accent]Qualquer jogador vai conseguir juntar-se ao teu jogo.\n[lightgray]Isto pode ser alterado mais tarde in Settings->Game->Public Game Visibility. public.beta = Observe que as versões beta do jogo não podem criar lobbies públicos. @@ -942,6 +954,7 @@ block.message.name = Mensagem block.illuminator.name = Illuminator block.illuminator.description = A small, compact, configurable light source. Requires power to function. block.overflow-gate.name = Portão Sobrecarregado +block.underflow-gate.name = Portão Desobrecarregado block.silicon-smelter.name = Fundidora de silicio block.phase-weaver.name = Palheta de fase block.pulverizer.name = Pulverizador @@ -1172,6 +1185,7 @@ block.inverted-sorter.description = Processes items like a standard sorter, but block.router.description = Aceita itens de uma direção e os divide em 3 direções igualmente. Util para espalhar materiais da fonte para multiplos alvos. block.distributor.description = Um roteador avancada que espalhas os itens em 7 outras direções igualmente. block.overflow-gate.description = Uma combinação de roteador e divisor Que apenas manda para a esquerda e Direita se a frente estiver bloqueada. +block.underflow-gate.description = O oposto de um portão de transbordamento. Saídas para a frente se os caminhos esquerdo e direito estiverem bloqueados. block.mass-driver.description = Bloco de transporte de itens supremo. Coleta itens severos e atira eles em outro mass driver de uma longa distancia. block.mechanical-pump.description = Uma bomba barata com baixa saída de líquidos, mas sem consumo de energia. block.rotary-pump.description = Uma bomba avançada. Bombeia mais líquido, mas requer energia. @@ -1246,4 +1260,4 @@ block.tau-mech-pad.description = Deixe sua atual embarcação e mude para o meca block.omega-mech-pad.description = Deixe sua atual embarcação e mude para o volumoso e bem armadurado meca feito para ataques da primeira linha.\nUse o pad clicando duas vezes em cima enquando fica em cima dele. block.javelin-ship-pad.description = Deixe sua atual embarcação e mude para um interceptador forte e rapido com armas de raio.\nUse o pad clicando duas vezes em cima enquando fica em cima dele. block.trident-ship-pad.description = Deixe sua atual embarcação e mude para um bombardeiro resionavelmente bem armadurado.\nUse o pad clicando duas vezes em cima enquando fica em cima dele. -block.glaive-ship-pad.description = Deixe sua atual embarcação e mude para grande, bem armadurada nave de combate.\nUse o pad clicando duas vezes em cima enquando fica em cima dele. +block.glaive-ship-pad.description = Deixe sua atual embarcação e mude para grande, bem armadurada nave de combate.\nUse o pad clicando duas vezes em cima enquando fica em cima dele. \ No newline at end of file From c5fcc30422bdec82145226f7daa3e53c5bc5422b Mon Sep 17 00:00:00 2001 From: soytheLB <60957935+soytheLB@users.noreply.github.com> Date: Wed, 12 Feb 2020 23:46:27 -0300 Subject: [PATCH 02/14] Update bundle_es to version #149465 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Added translation to the following: Line 62 stat.playtime Line 108 mod. display Line 176 servers.local Line 177 servers.remote Line 178 servers.global line 261 data.open.folder Line 542 block.tiles Line 543 block.afinities Line 678 Player.limit Line 681 bridge.opacity Changed cancel building from "impiar" to "limpiar" Changed Lich unit name to "Exánime". Translated name for scatter turret. Changed wave name from "Horda" to "Ola". (Horda reffers to enemy waves while ola means sea waves) Changed name swarmer from "enjambredor" to "enjambre". changed turrets description to be closer to the english version. Changed factories descriptions to be closer to english version --- core/assets/bundles/bundle_es.properties | 74 ++++++++++++++---------- 1 file changed, 44 insertions(+), 30 deletions(-) diff --git a/core/assets/bundles/bundle_es.properties b/core/assets/bundles/bundle_es.properties index 602e48455c..adf50c6a94 100644 --- a/core/assets/bundles/bundle_es.properties +++ b/core/assets/bundles/bundle_es.properties @@ -59,6 +59,7 @@ stat.built = Estructuras Construidas:[accent] {0} stat.destroyed = Estructuras Destruidas:[accent] {0} stat.deconstructed = Estructuras Desconstruidas:[accent] {0} stat.delivered = Recursos Lanzados: +stat.playtime= Tiempo jugado:[accent] {0} stat.rank = Rango final: [accent]{0} launcheditems = [accent]Recursos Lanzados @@ -104,6 +105,7 @@ mods.none = [LIGHT_GRAY]No se encontraron Mods! mods.guide = Guia de Modding mods.report = Reportar Error mods.openfolder = Abrir carpeta de mods +mod. display = [greay] mod: [orange] {0} mod.enabled = [lightgray]Activado mod.disabled = [scarlet]Desactivado mod.disable = Desactivar @@ -170,6 +172,11 @@ hosts.discovering.any = Descubrir juegos server.refreshing = Actualizando servidor... hosts.none = [lightgray]¡No se han encontrado partidas LAN! host.invalid = [scarlet]No se ha podido conectar al anfitrión. + +servers.local = Servidores Locales +servers. remote = Servidores Remotos +servers.global = Global Servers + trace = Rastrear Jugador trace.playername = Nombre de jugador: [accent]{0} trace.ip = IP: [accent]{0} @@ -251,6 +258,7 @@ copylink = Copiar Enlace back = Atrás data.export = Exportar Datos data.import = Importar Datos +data.openfolder = Abrir Carpeta de Datos data.exported = Datos exportados. data.invalid = Esta data del juego no es valida. data.import.confirm = Importando los datos externos borrará[scarlet] todo[] tu progreso.\n[accent]Esto no se puede rehacer![]\n\nUna vez que los datos hayan sido importados, el juego saldrá automaticamente. @@ -261,7 +269,7 @@ quit.confirm.tutorial = ¿Estás seguro de que sabes qué estas haciendo?\nSe pu loading = [accent]Cargando... reloading = [accent]Recargando mods... saving = [accent]Guardando... -cancelbuilding = [accent][[{0}][] para impiar el plan +cancelbuilding = [accent][[{0}][] para limpiar el plan selectschematic = [accent][[{0}][] para seleccionar+copiar pausebuilding = [accent][[{0}][] para pausar la construcción resumebuilding = [scarlet][[{0}][] para resumir la construcción @@ -531,6 +539,8 @@ error.crashtitle = Un error ha ocurrido. blocks.input = Entrada blocks.output = Salida blocks.booster = Potenciador +block.tiles = Casillas Requeridas +block.affinities = Afinidades block.unknown = [LIGHT_GRAY]??? blocks.powercapacity = Capacidad de Energía blocks.powershot = Energía/Disparo @@ -665,9 +675,11 @@ setting.mutesound.name = Silenciar Sonido setting.crashreport.name = Enviar informes de fallos anónimos setting.savecreate.name = Crear puntos de guardado automáticamente setting.publichost.name = Visibilidad del juego público +setting.playerlimit.name = Limite de Jugadores setting.chatopacity.name = Opacidad del Chat setting.lasersopacity.name = Opacidad de los rayos láser -setting.playerchat.name = Mostrar el chat in-game +setting.bridgeopacity.name = Opacidad de Puentes +setting.playerchat.name = Mostrar el chat de burbuja public.confirm = ¿Quieres hacer público tu juego?\n[lightgray]Esto se puede cambiar más tarde en Configuración->Juego->Visibilidad pública del juego. public.beta = Recuerda que en las versiones beta del juego no puedes crear partidas públicas. uiscale.reset = La escala de la interfaz ha sido modificada con éxito.\nPulsa "OK" para conservar esta escala.\n[scarlet]Deshaciendo los cambios y saliendo al menu en [accent] {0}[]segundos... @@ -885,7 +897,7 @@ block.snow.name = Nieve block.craters.name = Cráteres block.sand-water.name = Agua con Arena block.darksand-water.name = Agua con Arena Oscura -block.char.name = Charbonizado +block.char.name = Carbonizado block.holostone.name = Piedra hologramatica block.ice-snow.name = Hielo Nieve block.rocks.name = Rocas @@ -926,7 +938,7 @@ block.door.name = Puerta block.door-large.name = Puerta Grande block.duo.name = Dúo block.scorch.name = Quemador -block.scatter.name = Scatter +block.scatter.name = Dispersor block.hail.name = Granizo block.lancer.name = Lancero block.conveyor.name = Cinta Transportadora @@ -942,6 +954,7 @@ block.message.name = Mensaje block.illuminator.name = Iluminador block.illuminator.description = Una fuente de luz pequeña, compacta y configurable. Requiere poder para funcionar. block.overflow-gate.name = Compuerta de Desborde +block.underflow-gate.name = Compuerta de Subdesbordamiento block.silicon-smelter.name = Horno para Silicona block.phase-weaver.name = Tejedor de Fase block.pulverizer.name = Pulverizador @@ -983,8 +996,8 @@ block.power-void.name = Vacío de energía block.power-source.name = Energía Infinita block.unloader.name = Descargador block.vault.name = Bóveda -block.wave.name = Horda -block.swarmer.name = Enjambredor +block.wave.name = Ola +block.swarmer.name = Enjambre block.salvo.name = Salva block.ripple.name = Onda block.phase-conveyor.name = Cinta Transportadora de Fase @@ -1057,7 +1070,7 @@ unit.revenant.name = Revenante unit.eruptor.name = Erupcionador unit.chaos-array.name = Matriz del caos unit.eradicator.name = Erradicador -unit.lich.name = Lich +unit.lich.name = Exánime unit.reaper.name = Segador tutorial.next = [lightgray] tutorial.intro = Has entrado en el[scarlet]Tutorial de Mindustry.[]\nComienza[accent]minando cobre[]. Toca en una veta de cobre cercana al núcleo para hacer esto.\n\n[accent]{0}/{1} cobre @@ -1172,6 +1185,7 @@ block.inverted-sorter.description = Procesa elementos como un clasificador está block.router.description = Acepta objetos de una dirección y deja objetos equitativamente en hasta 3 direcciones diferentes. Útil para dividir los materiales de una fuente de recursos a múltiples objetivos. block.distributor.description = Un enrutador avanzado que distribuye objetos equitativamente en hasta otras 7 direcciones. block.overflow-gate.description = Un enrutador que solo saca por la izquierda y la derecha si la cinta del frente está llena. +block.underflow-gate.description = El opuesto de la compuerda de desborde. Solo dispensa hacia el frente si los lados están bloqueados. block.mass-driver.description = El mejor bloque de transorte. Recoge varios objetos y los dispara a otro conductor de masa en un largo rango. block.mechanical-pump.description = Una bomba barata con extracción lenta, pero sin uso de energía. block.rotary-pump.description = Una bomba avanzada. Bombea más líquido, pero requiere energía. @@ -1199,13 +1213,13 @@ block.solar-panel.description = Proporciona una pequeña cantidad de energía pr block.solar-panel-large.description = Genera un mucho mejor suministro de energía que un panel solar estándar, pero también es mucho más caro de construir. block.thorium-reactor.description = Genera grandes cantidades de energía del torio altamente radioactivo. Necesita enfriamiento constante. Explotará violentamente si no se le aporta suficiente enfriamiento. block.impact-reactor.description = Un generador avanzado, capaz de crear cantidades masivas de energía a máxima eficiencia. Requiere una cantidad significante de energía para impulsar el comienzo del proceso. -block.mechanical-drill.description = Un taladro barato. Cuando es colocado en casillas apropiadas, extrae objetos lentamente de forma indefinida. -block.pneumatic-drill.description = Un taladro mejorado que es más rápido y puede obtener minerales más duros usando la presión. +block.mechanical-drill.description = Un taladro barato. Cuando es colocado en casillas apropiadas, extrae objetos lentamente de forma indefinida. Solo es capaz de minar recursos básicos. +block.pneumatic-drill.description = Un taladro mejorado, es capaz de minar titanio más rápido que un taladro mécanico. block.laser-drill.description = Permite obtener minerales incluso más rápido con la tecnología láser, pero requiere energía. Además, se puede obtener torio radioactivo con este taladro. block.blast-drill.description = El mejor taladro. Requiere grandes cantidades de energía. block.water-extractor.description = Extrae agua de la tierra. Úsalo cuando no haya lagos cercanos. -block.cultivator.description = Cultiva la tierra para obtener biomateria. -block.oil-extractor.description = Usa grandes cantidades de energía para extraer aceite de la arena. Úsalo cuando no hay fuentes directas de aceite cerca. +block.cultivator.description = Cultiva concentraciones de esporas en la atmosfera a vainas. +block.oil-extractor.description = Usa grandes cantidades de energía, arena y agua para obtener petróleo. Úsalo cuando no hay fuentes directas de petróleo cerca. block.core-shard.description = La primera iteración de la cápsula del núcleo. Una vez destruido, todo el contacto con la región es perdido. No permitas que esto ocurra. block.core-foundation.description = La segunda versión del núcleo. Mejor blindado. Almacena más recursos. block.core-nucleus.description = La tercera y última iteración de la cápsula del núcleo. Muy bien blindado. Almacena cantidades masivas dde recursos. @@ -1214,30 +1228,30 @@ block.container.description = Almacena una pequeña cantidad de objetos. Úsalo block.unloader.description = Descarga objetos de un contenedor, almacén o el núcleo a un transportador o directamente a un bloque adyacente. El tipo de objeto descargado puede ser cambiado tocando el descagador. block.launch-pad.description = Lanza paquetes de recursos sin necesitar lanzar con el núcleo. block.launch-pad-large.description = Una versión mejorada del pad de lanzamiento. Almacena más recursos y los lanza más frecuentemente. -block.duo.description = Una torre pequeña y barata. -block.scatter.description = Una torreta antiaérea de tamaño medio. Dispara fuego aéreo de plomo o chatarra a las unidades enemigas. +block.duo.description = Una torre pequeña y barata. Útil contra enemigos terrestres. +block.scatter.description = Una torreta escencial antiaérea de tamaño medio. Dispara fuego anti-aéreo de plomo o chatarra a las unidades enemigas. block.scorch.description = Quema a cualquier enemigo terrestre cercano a él. Altamente efectivo a corto alcance. -block.hail.description = Una torre de artillería pequeña. -block.wave.description = Una torre de tamaño mediano que dispara burbujas de líquido. -block.lancer.description = Una torre de tamaño mediano que dispara rayos cargados eléctricamente. -block.arc.description = Una torre pequeña que disapra electricidad en un arco aleatorio al enemigo. -block.swarmer.description = Una torre de tamaño mediano que dispara misiles en grupo. -block.salvo.description = Una torre de tramaño mediano que dispara balas en salvos. -block.fuse.description = Una torre grande que dispara rayos poderosos de corto alcance. -block.ripple.description = Una torre de artillería grande que dispara varios disparos simultáneamente. -block.cyclone.description = Una torre de disparo rápido grande. -block.spectre.description = Una torre grande que dispara dos balas poderosas de una vez. -block.meltdown.description = Una torre grande que dispara rayos poderosos de largo alcance. +block.hail.description = Una torre de artillería pequeña de largo alcance. +block.wave.description = Una torre de tamaño mediano. Dispara chorros de líquido a enemigos. Automaticamente apaga fuegos cuando recibe agua. +block.lancer.description = Una torre láser anti-terrestre de tamaño mediano. Dispara y carga poderosos rayos de energía. +block.arc.description = Una pequeña torre eléctrica de rango corto. Dispara arcos de electricidad a los enemigos. +block.swarmer.description = Una torre de tamaño mediano que dispara misiles. Ataca a aire y tierra. Dispara misiles teledirigidos. +block.salvo.description = Una versión más grande y avanzada dela torre dúo. Dispara salvas rápidas al enemigo +block.fuse.description = Una torre grande de energía de corto alcance. Dispara tres rayos perforantes a enemigos cercanos. +block.ripple.description = Una extramadamente poderosa torre. Dispara conjuntos de balas a los enemigos en grandes distancias. +block.cyclone.description = Una torre grande anti-aérea y anti-terrestre. Dispara conjuntos explosivos de Flak a enemigos cercanos. +block.spectre.description = Un cañon masivo de dos barriles. Dispara balas perforantes a objetivos de aire y tierra. +block.meltdown.description = Un cañon láser masivo. Carga y dispara un rayo láser constante a enemigos cercanos. Requiere enfriamiento para operar. block.command-center.description = Emite comandos de movimiento a las unidades aliadas en el mapa.\nHace que las unidades patrullen, ataquen un núcleo enemigo o se retiren al núcleo / fábrica. When no enemy core is present, units will default to patrolling under the attack command. -block.draug-factory.description = Producedrones mineros primitivos. -block.spirit-factory.description = Produce drones ligeros que obtienen minerales y reparan bloques. -block.phantom-factory.description = Produce drones avanzados que son significativamente más eficientes que un dron espíritu. +block.draug-factory.description = Produce drones mineros primitivos. +block.spirit-factory.description = Produce drones ligeros que reparan bloques. +block.phantom-factory.description = Produce drones avanzados de construcción. block.wraith-factory.description = Produce unidades aéreas rápidas e interceptoras. block.ghoul-factory.description = Produce unidades bombarderas pesadas. -block.revenant-factory.description = Produce unidades terrestres láser pesadas. +block.revenant-factory.description = Produce unidades aéreas lanzamisiles pesadas. block.dagger-factory.description = Produce unidades terrestres básicas. -block.crawler-factory.description = Produces fast self-destructing swarm units. -block.titan-factory.description = Produce unidades terrestres avanzadas. +block.crawler-factory.description = Produce unidades rápidas terrestres explosivas. +block.titan-factory.description = Produce unidades terrestres avanzadas con armadura. block.fortress-factory.description = Produce unidades terrestres de artillería pesada. block.repair-point.description = Repara la unidad dañada más cercana a su alrededor. block.dart-mech-pad.description = Proporciona transformación en un mecanoide de ataque básico.\nÚsalo tocándolo mientras estés en él. From 47f63dd0064df9f036237d1c90f881aac367407d Mon Sep 17 00:00:00 2001 From: QmelZ <59574967+QmelZ@users.noreply.github.com> Date: Sat, 15 Feb 2020 15:15:27 +0200 Subject: [PATCH 03/14] Translation to Turkish I translated all the default ones left, fully finished. --- core/assets/bundles/bundle_tr.properties | 110 +++++++++++------------ 1 file changed, 55 insertions(+), 55 deletions(-) diff --git a/core/assets/bundles/bundle_tr.properties b/core/assets/bundles/bundle_tr.properties index f388a78ece..ecc89ae388 100644 --- a/core/assets/bundles/bundle_tr.properties +++ b/core/assets/bundles/bundle_tr.properties @@ -29,17 +29,17 @@ load.system = Sistem load.mod = Modlar load.scripts = Scripts -be.update = A new Bleeding Edge build is available: -be.update.confirm = Download it and restart now? -be.updating = Updating... -be.ignore = Ignore -be.noupdates = No updates found. -be.check = Check for updates +be.update = Yeni bir erken erişim sürümü var: +be.update.confirm = Yüklenip yeniden başlatılsın mı? +be.updating = Yeni sürüm yükleniyor... +be.ignore = Hayır +be.noupdates = Yeni güncelleme bulunamadı. +be.check = Güncellemeleri kontrol et schematic = Şema schematic.add = Şemayı Kaydet... schematics = Şemalar -schematic.replace = A schematic by that name already exists. Replace it? +schematic.replace = Aynı isimde bir şema zaten var. Üzerine yazılsın mı? schematic.import = Şema İçeri Aktar... schematic.exportfile = Dışa Aktar schematic.importfile = İçe Aktar @@ -49,8 +49,8 @@ schematic.copy.import = Panodan İçeri Aktar schematic.shareworkshop = Workshop'ta Kaydet schematic.flip = [accent][[{0}][]/[accent][[{1}][]: Şemayı döndür schematic.saved = Şema Kaydedildi. -schematic.delete.confirm = Bu şema tamamen yokedilecek. -schematic.rename = Şemayı yeniden Adlandır +schematic.delete.confirm = Bu şema tamamen yok edilecek. +schematic.rename = Şemayı yeniden adlandır schematic.info = {0}x{1}, {2} blok stat.wave = Yenilen Dalgalar:[accent] {0} @@ -70,7 +70,7 @@ level.mode = Oyun Modu: showagain = Bir daha gösterme coreattack = < Merkez saldırı altında! > nearpoint = [[ [scarlet]İNİŞ PİSTİNDEN AYRIL[] ]\nimha tehlikesi -database = Ana Veritabanı +database = Çekirdek Veritabanı savegame = Oyunu Kaydet loadgame = Oyunu Yükle joingame = Oyuna Katıl @@ -95,7 +95,7 @@ uploadingcontent = İçerik Yükleniyor uploadingpreviewfile = Önizleme Dosyası Yükleniyor committingchanges = Değişiklikler Uygulanıyor done = Bitti -feature.unsupported = Your device does not support this feature. +feature.unsupported = Cihazınızda bu özellik desteklenmemektedir. mods.alphainfo = Modların alfa aşamasında olduğunu ve [scarlet]oldukça hatalı olabileceklerini[] unutmayın.\nBulduğunuz sorunları Mindustry GitHub'ı veya Discord'una bildirin. mods.alpha = [accent](Alpha) @@ -103,29 +103,29 @@ mods = Modlar mods.none = [LIGHT_GRAY]Hiç mod bulunamadı! mods.guide = Mod Rehberi mods.report = Hata bildir -mods.openfolder = Open Mod Folder +mods.openfolder = Mod klasörünü aç mod.enabled = [lightgray]Etkin mod.disabled = [scarlet]Devre Dışı mod.disable = Devre Dışı Bırak -mod.delete.error = Unable to delete mod. File may be in use. -mod.requiresversion = [scarlet]Requires min game version: [accent]{0} -mod.missingdependencies = [scarlet]Missing dependencies: {0} -mod.erroredcontent = [scarlet]Content Errors -mod.errors = Errors have occurred loading content. -mod.noerrorplay = [scarlet]You have mods with errors.[] Either disable the affected mods or fix the errors before playing. -mod.nowdisabled = [scarlet]Mod '{0}' is missing dependencies:[accent] {1}\n[lightgray]These mods need to be downloaded first.\nThis mod will be automatically disabled. +mod.delete.error = Mod silinemiyor. Dosya kullanımda olabilir. +mod.requiresversion = [scarlet]Gereken en düşük oun versiyonu: [accent]{0} +mod.missingdependencies = [scarlet]Bu modun çalışması için gereken modlar: {0} +mod.erroredcontent = [scarlet]İçerik hatası. +mod.errors = İçerik yüklenirken bir hata oluştu. +mod.noerrorplay = [scarlet]Hatalı modlarınız var.[] Oynamadan önce bu modları devre dışı bırakın veya dosyadaki hataları düzeltin. +mod.nowdisabled = [scarlet]'{0}' modunun çalışması için gerekli olan modlardan bazıları bulunamadı:[accent] {1}\n[lightgray]Önce bu modların indirilmesi gerekmektedir.\nBu mod otomatik olarak devre dışı bırakılacaktır. mod.enable = Etkinleştir mod.requiresrestart = Oyun mod değişikliklerini uygulamak için kapatılacak. mod.reloadrequired = [scarlet]Yeniden Yükleme Gerekli mod.import = Mod İçeri Aktar mod.import.github = GitHub Modu İçeri Aktar -mod.item.remove = This item is part of the[accent] '{0}'[] mod. To remove it, uninstall that mod. +mod.item.remove = Bu eşya[accent] '{0}'[] modunun bir parçası. Kaldırmak için modu silebilirsiniz. mod.remove.confirm = Bu mod silinecek. mod.author = [LIGHT_GRAY]Yayıncı:[] {0} mod.missing = Bu kayıt yakın zamanda güncellediğiniz ya da artık yüklü olmayan modlar içermekte. Kayıt bozulmaları yaşanabilir. Kaydı yüklemek istediğinizden emin misiniz?\n[lightgray]Modlar:\n{0} mod.preview.missing = Bu modu atölyede yayınlamadan önce bir resim önizlemesi eklemelisiniz.\nMod dosyasına [accent]preview.png[] adlı bir resim yerleştirin ve tekrar deneyin. mod.folder.missing = Atölyede sadece klasör halindeki modlar yayınlanabilir.Bir modu klasöre çevirmek için, sadece mod dosyalarını bir klasöre çıkarın ve eski sıkıştırılmış dosyayı silin, sonra da oyunu tekrar başlatın ya da modlarınızı tekrar yükleyin. -mod.scripts.unsupported = Your device does not support mod scripts. Some mods will not function correctly. +mod.scripts.unsupported = Cihazınız bazı betik dosyalarını desteklemiyor. Bazı modlar düzgün çalışmayabilir. about.button = Hakkında name = İsim: @@ -155,7 +155,7 @@ server.kicked.nameEmpty = Seçtiğin isim geçersiz. server.kicked.idInUse = Zaten bu sunucudasın! İki hesapla bir sunucuya bağlanamazsın. server.kicked.customClient = Bu sunucu özel sürümleri kabul etmiyor. Resmi bir sürüm indir. server.kicked.gameover = Oyun bitti! -server.kicked.serverRestarting = The server is restarting. +server.kicked.serverRestarting = Sunucu yeniden başlatılıyor. server.versions = Kullandığın surum:[accent] {0}[]\nSunucunun sürümü:[accent] {1}[] host.info = [accent]host[], [scarlet]6567[] portunda bir sunucuya ev sahipliği yapıyor. \nAynı [lightgray]wifi veya yerel ağdaki[] herkes sunucu listelerinde senin sunucunu görebiliyor olmalı.\n\nEğer diğerlerinin herhangi bir yerden IP ile bağlanabilmesini istiyorsan [accent]port yönlendirmesi[] gerekli.\n\n[lightgray]Not: Eğer birisi senin yerel ağ oyununa katılmakta sorun yaşıyorsa güvenlik duvarı ayarlarında Mindustry'ye yerel ağ bağlantısı izni verdiğinden emin olun. Halka açık ağların zaman zaman sunucu aramaya engel olduğunu unutmayın. join.info = Burada, bağlanmak istediğin sunucunun [accent]IP[] adresini girebilir veya [accent]yerel ağ[] sunucularını görebilirsin..\nHem yerel ağ hem de geniş alan ağı çoklu oyuncu için destekleniyor.\n\n[lightgray]Not: Otomatik bir global sunucu listesi yok; eğer birisine IP adresi kullanarak bağlanmak istiyorsan IP adresini istemelisin. @@ -289,12 +289,12 @@ map.publish.confirm = Bu haritayı yayınlamak istediğinize emin misiniz?\n[lig workshop.menu = Select what you would like to do with this item. workshop.info = Nesne Açıklaması changelog = Değişim Listesi (isteğe bağlı): -eula = Steam EULA -missing = This item has been deleted or moved.\n[lightgray]The workshop listing has now been automatically un-linked. +eula = Steam Kullanıvı Sözleşmesi +missing = Bu eşya silinmiş veya taşınmış.\n[lightgray]Workshop listesinden kaldırıldı. publishing = [accent]Yayınlanıyor... -publish.confirm = Bunu yayınlamak istediğinize emin misiniz?\n[lightgray]önce Atölye EULA'sına uyduğunuza emin olun, yoksa yapıtlarınız gözükmeyecektir! +publish.confirm = Bunu yayınlamak istediğinize emin misiniz?\n[lightgray]önce Atölye Sözleşmesine uyduğunuza emin olun, yoksa yapıtlarınız gözükmeyecektir! publish.error = Nesneyi yayınlarken hata oluştu: {0} -steam.error = Failed to initialize Steam services.\nError: {0} +steam.error = Steam hatası.\nHata kodu: {0} editor.brush = Fırça editor.openin = Düzenleyici'de Aç @@ -530,7 +530,7 @@ error.title = [crimson]Bir hata oldu error.crashtitle = Bir hata oldu blocks.input = Giriş blocks.output = Çıkış -blocks.booster = Booster +blocks.booster = Güçlendirici block.unknown = [lightgray]??? blocks.powercapacity = Enerji Kapasitesi blocks.powershot = Enerji/Atış @@ -652,7 +652,7 @@ setting.milliseconds = {0} milliseconds setting.fullscreen.name = Tam Ekran setting.borderlesswindow.name = Kenarsız Pencere[lightgray] (yeniden açmak gerekebilir) setting.fps.name = FPS Göster -setting.blockselectkeys.name = Show Block Select Keys +setting.blockselectkeys.name = Blok seçim tüşlarını göster setting.vsync.name = VSync setting.pixelate.name = Pixelleştir[lightgray] (animasyonları kapatır) setting.minimap.name = Haritayı Göster @@ -681,7 +681,7 @@ category.multiplayer.name = Çok Oyunculu command.attack = Saldır command.rally = Toplan command.retreat = Geri Çekil -placement.blockselectkeys = \n[lightgray]Key: [{0}, +placement.blockselectkeys = \n[lightgray]Tuş: [{0}, keybind.clear_building.name = Binayı Temizle keybind.press = Bir tuşa basın... keybind.press.axis = Bir tuşa ya da yöne basın... @@ -695,22 +695,22 @@ keybind.schematic_select.name = Bölge Seç keybind.schematic_menu.name = Şema Menüsü keybind.schematic_flip_x.name = Şemayı X ekseninde Döndür keybind.schematic_flip_y.name = Şemayı Y Ekseninde Döndür -keybind.category_prev.name = Previous Category -keybind.category_next.name = Next Category -keybind.block_select_left.name = Block Select Left -keybind.block_select_right.name = Block Select Right -keybind.block_select_up.name = Block Select Up -keybind.block_select_down.name = Block Select Down -keybind.block_select_01.name = Category/Block Select 1 -keybind.block_select_02.name = Category/Block Select 2 -keybind.block_select_03.name = Category/Block Select 3 -keybind.block_select_04.name = Category/Block Select 4 -keybind.block_select_05.name = Category/Block Select 5 -keybind.block_select_06.name = Category/Block Select 6 -keybind.block_select_07.name = Category/Block Select 7 -keybind.block_select_08.name = Category/Block Select 8 -keybind.block_select_09.name = Category/Block Select 9 -keybind.block_select_10.name = Category/Block Select 10 +keybind.category_prev.name = Önceki Kategori +keybind.category_next.name = Sonraki Kategori +keybind.block_select_left.name = Sol Blok Seçimi +keybind.block_select_right.name = Sağ Blok Seçimi +keybind.block_select_up.name = Yukarı Blok Seçimi +keybind.block_select_down.name = Aşağı Blok Seçimi +keybind.block_select_01.name = Kategori 1 +keybind.block_select_02.name = Kategori 2 +keybind.block_select_03.name = Kategori 3 +keybind.block_select_04.name = Kategori 4 +keybind.block_select_05.name = Kategori 5 +keybind.block_select_06.name = Kategori 6 +keybind.block_select_07.name = Kategori 7 +keybind.block_select_08.name = Kategori 8 +keybind.block_select_09.name = Kategori 9 +keybind.block_select_10.name = Kategori 10 keybind.fullscreen.name = Tam Ekran keybind.select.name = Seç/Ateş Et keybind.diagonal_placement.name = Çapraz Yerleştirme @@ -718,7 +718,7 @@ keybind.pick.name = Blok Seç keybind.break_block.name = Blok Kır keybind.deselect.name = Seçimleri Kaldır keybind.shoot.name = Ateş Et -keybind.zoom.name = Zum +keybind.zoom.name = Yakınlaştırma/Uzaklaştırma keybind.menu.name = Menü keybind.pause.name = Durdur keybind.pause_building.name = İnşaatı Duraklat/İnşaata Devam Et @@ -732,8 +732,8 @@ keybind.toggle_menus.name = Menüleri Aç/Kapa keybind.chat_history_prev.name = Sohbet geçmişi önceki keybind.chat_history_next.name = Sohbet geçmişi sonraki keybind.chat_scroll.name = Sohbet Kaydırma -keybind.drop_unit.name = Drop Unit -keybind.zoom_minimap.name = Mini Haritada Zum +keybind.drop_unit.name = Birlik Düşürme +keybind.zoom_minimap.name = Mini Haritada Yakınlaştırma/Uzaklaştırma mode.help.title = Modların açıklamaları mode.survival.name = Hayatta Kalma mode.survival.description = Normal oyun oyun modu. Kaynak sınırlı ve dalgalar otomatik olarak gönderilir.\n[gray]Oynamak için haritada düşman doğma noktaları olması gerekir. @@ -747,7 +747,7 @@ mode.attack.description = Düşman üssünü yok et. Dalga yok.\n[gray]Oynamak i mode.custom = Özel Kurallar rules.infiniteresources = Sınırsız Kaynaklar -rules.reactorexplosions = Reactor Explosions +rules.reactorexplosions = Reaktör Patlamaları rules.wavetimer = Dalga Zamanlayıcısı rules.waves = Dalgalar rules.attack = Saldırı Modu @@ -755,7 +755,7 @@ rules.enemyCheat = Sonsuz AI (Kırmızı Takım) Kaynakları rules.unitdrops = Unit Drops rules.unitbuildspeedmultiplier = Birim Üretim Hızı Çarpanı rules.unithealthmultiplier = Birim Canı Çarpanı -rules.blockhealthmultiplier = Block Health Multiplier +rules.blockhealthmultiplier = Blok Canı Çarpanı rules.playerhealthmultiplier = Oyuncu Canı Çarpanı rules.playerdamagemultiplier = Oyuncu Hasarı Çarpanı rules.unitdamagemultiplier = Birim Hasarı Çapanı @@ -773,10 +773,10 @@ rules.title.respawns = Tekrar Canlanmalar rules.title.resourcesbuilding = Kaynaklar & İnşa rules.title.player = Oyuncular rules.title.enemy = Düşmanlar -rules.title.unit = Unitler -rules.title.experimental = Experimental -rules.lighting = Lighting -rules.ambientlight = Ambient Light +rules.title.unit = Birlikler +rules.title.experimental = Deneysel +rules.lighting = Işıklandırma +rules.ambientlight = Ortam Işığı content.item.name = Eşyalar content.liquid.name = Sıvılar @@ -824,7 +824,7 @@ mech.trident-ship.name = Trident mech.trident-ship.weapon = Bomba Bölmesi mech.glaive-ship.name = Glaive mech.glaive-ship.weapon = Alevli Makineli Tüfek -item.corestorable = [lightgray]Storable in Core: {0} +item.corestorable = [lightgray]Çekirdekte depolanabilir mi?: {0} item.explosiveness = [lightgray]Patlama: {0}% item.flammability = [lightgray]Yanıcılık: {0}% item.radioactivity = [lightgray]Radyoaktivite: {0}% From f650963cf40624d9d021539622eb200dabbd87a0 Mon Sep 17 00:00:00 2001 From: GioIacca9 <39232448+GioIacca9@users.noreply.github.com> Date: Sun, 16 Feb 2020 19:06:50 +0100 Subject: [PATCH 04/14] Update block.pyratite-mixer.description --- core/assets/bundles/bundle_pt_PT.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/assets/bundles/bundle_pt_PT.properties b/core/assets/bundles/bundle_pt_PT.properties index f845f98200..80b32b8767 100644 --- a/core/assets/bundles/bundle_pt_PT.properties +++ b/core/assets/bundles/bundle_pt_PT.properties @@ -1130,7 +1130,7 @@ block.phase-weaver.description = Produz tecido de fase usando tório radioativo block.alloy-smelter.description = Combina titânio, chumbo, silicio e cobre para produzir liga de surto. block.cryofluidmixer.description = Mistura água e pó fino de titânio para produzir criofluido. Essencial para o uso do reator a tório. block.blast-mixer.description = Quebra e mistura aglomerados de esporos com piratita para produzir composto de explosão. -block.pyratite-mixer.description = Mistura carvão, cobre e areia em piratita altamente inflamável +block.pyratite-mixer.description = Mistura carvão, chumbo e areia em piratita altamente inflamável block.melter.description = Derrete sucata em escória para processamento posterior ou uso em torretas. block.separator.description = Separa escória em seus minerais componentes, oferece o resultado refriado. block.spore-press.description = Comprime cápsulas de esporos em petróleo. From e7a6dcde3df2d5f473b18ce9ba423f1c28dc751a Mon Sep 17 00:00:00 2001 From: indielm <44037362+indielm@users.noreply.github.com> Date: Mon, 17 Feb 2020 16:02:49 -0500 Subject: [PATCH 05/14] Update servers.json --- servers.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/servers.json b/servers.json index e99d2eb84e..62ce10e30b 100644 --- a/servers.json +++ b/servers.json @@ -5,6 +5,9 @@ { "address": "mindustry.indielm.com:1101" }, + { + "address": "mindustry.indielm.com" + }, { "address": "mindustry.ecansol.com:6597" }, From 2038409283a45c604ac4d38898e50152084bad3e Mon Sep 17 00:00:00 2001 From: Anuken Date: Tue, 18 Feb 2020 11:35:28 -0500 Subject: [PATCH 06/14] Removed schematic replacement dialog --- core/assets/bundles/bundle.properties | 1 - core/src/mindustry/input/InputHandler.java | 17 ++++------------- gradle.properties | 2 +- 3 files changed, 5 insertions(+), 15 deletions(-) diff --git a/core/assets/bundles/bundle.properties b/core/assets/bundles/bundle.properties index 08115dc3e6..7f02ce667b 100644 --- a/core/assets/bundles/bundle.properties +++ b/core/assets/bundles/bundle.properties @@ -39,7 +39,6 @@ be.check = Check for updates schematic = Schematic schematic.add = Save Schematic... schematics = Schematics -schematic.replace = A schematic by that name already exists. Replace it? schematic.import = Import Schematic... schematic.exportfile = Export File schematic.importfile = Import File diff --git a/core/src/mindustry/input/InputHandler.java b/core/src/mindustry/input/InputHandler.java index cd2f3d6d6b..611cec44b6 100644 --- a/core/src/mindustry/input/InputHandler.java +++ b/core/src/mindustry/input/InputHandler.java @@ -255,19 +255,10 @@ public abstract class InputHandler implements InputProcessor, GestureListener{ if(lastSchematic == null) return; ui.showTextInput("$schematic.add", "$name", "", text -> { - Schematic replacement = schematics.all().find(s -> s.name().equals(text)); - if(replacement != null){ - ui.showConfirm("$confirm", "$schematic.replace", () -> { - schematics.overwrite(replacement, lastSchematic); - ui.showInfoFade("$schematic.saved"); - ui.schematics.showInfo(replacement); - }); - }else{ - lastSchematic.tags.put("name", text); - schematics.add(lastSchematic); - ui.showInfoFade("$schematic.saved"); - ui.schematics.showInfo(lastSchematic); - } + lastSchematic.tags.put("name", text); + schematics.add(lastSchematic); + ui.showInfoFade("$schematic.saved"); + ui.schematics.showInfo(lastSchematic); }); } diff --git a/gradle.properties b/gradle.properties index 60187da317..11145e4c88 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,3 +1,3 @@ org.gradle.daemon=true org.gradle.jvmargs=-Xms256m -Xmx1024m -archash=0b2f044e5955ff700650eebecfb3dfcb629d7a8b +archash=d20c0312e740a9845a358fc4571926ad784c0bbc From 0f43690aafbd286006f9d536cb49e5de63e745a4 Mon Sep 17 00:00:00 2001 From: Anuken Date: Tue, 18 Feb 2020 11:43:06 -0500 Subject: [PATCH 07/14] More unlocks? --- core/src/mindustry/world/blocks/production/Separator.java | 1 + core/src/mindustry/world/blocks/production/SolidPump.java | 1 + gradle.properties | 2 +- 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/core/src/mindustry/world/blocks/production/Separator.java b/core/src/mindustry/world/blocks/production/Separator.java index 7361b8f4bb..26d0ae8f46 100644 --- a/core/src/mindustry/world/blocks/production/Separator.java +++ b/core/src/mindustry/world/blocks/production/Separator.java @@ -107,6 +107,7 @@ public class Separator extends Block{ entity.cons.trigger(); if(item != null && entity.items.get(item) < itemCapacity){ + useContent(tile, item); offloadNear(tile, item); } } diff --git a/core/src/mindustry/world/blocks/production/SolidPump.java b/core/src/mindustry/world/blocks/production/SolidPump.java index 13db9f2e2c..d6db8ea3aa 100644 --- a/core/src/mindustry/world/blocks/production/SolidPump.java +++ b/core/src/mindustry/world/blocks/production/SolidPump.java @@ -111,6 +111,7 @@ public class SolidPump extends Pump{ tile.entity.liquids.add(result, maxPump); entity.lastPump = maxPump; entity.warmup = Mathf.lerpDelta(entity.warmup, 1f, 0.02f); + if(tile.entity.timer.get(timerContentCheck, 10)) useContent(tile, result); if(Mathf.chance(entity.delta() * updateEffectChance)) Effects.effect(updateEffect, entity.x + Mathf.range(size * 2f), entity.y + Mathf.range(size * 2f)); }else{ diff --git a/gradle.properties b/gradle.properties index 11145e4c88..dc5c21b2cb 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,3 +1,3 @@ org.gradle.daemon=true org.gradle.jvmargs=-Xms256m -Xmx1024m -archash=d20c0312e740a9845a358fc4571926ad784c0bbc +archash=415c435dc59e9248fdef8362582220d18f9f8e17 From 10f3c722b63fc049f8307fce4a2f0c2339425997 Mon Sep 17 00:00:00 2001 From: Anuken Date: Tue, 18 Feb 2020 12:23:04 -0500 Subject: [PATCH 08/14] iOS fixes --- ios/src/mindustry/ios/IOSLauncher.java | 27 +++++++++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) diff --git a/ios/src/mindustry/ios/IOSLauncher.java b/ios/src/mindustry/ios/IOSLauncher.java index 5e0102db79..b3668330ec 100644 --- a/ios/src/mindustry/ios/IOSLauncher.java +++ b/ios/src/mindustry/ios/IOSLauncher.java @@ -1,12 +1,13 @@ package mindustry.ios; import arc.*; -import com.badlogic.gdx.backends.iosrobovm.*; +import arc.Input.*; import arc.files.*; import arc.func.*; import arc.scene.ui.layout.*; import arc.util.*; import arc.util.io.*; +import com.badlogic.gdx.backends.iosrobovm.*; import mindustry.*; import mindustry.game.EventType.*; import mindustry.game.Saves.*; @@ -42,7 +43,6 @@ public class IOSLauncher extends IOSApplication.Delegate{ public void showFileChooser(boolean open, String extension, Cons cons){ UIDocumentBrowserViewController cont = new UIDocumentBrowserViewController((NSArray)null); - NSArray arr = new NSArray<>(new UIBarButtonItem(Core.bundle.get("cancel"), UIBarButtonItemStyle.Plain, uiBarButtonItem -> cont.dismissViewController(true, () -> {}))); @@ -88,16 +88,37 @@ public class IOSLauncher extends IOSApplication.Delegate{ @Override public void didRequestDocumentCreationWithHandler(UIDocumentBrowserViewController controller, VoidBlock2 importHandler){ + Core.app.post(() -> { + //ask for name + Core.input.getTextInput(new TextInput(){{ + title = Core.bundle.get("name"); + accepted = name -> { + try{ + //write result + Fi result = tmpDirectory.child(name + "." + extension); + cons.get(result); + //import the document + importHandler.invoke(new NSURL(result.absolutePath()), UIDocumentBrowserImportMode.Move); + }catch(Throwable t){ + ui.showException(t); + } + }; + }}); + }); } @Override public void didImportDocument(UIDocumentBrowserViewController controller, NSURL sourceURL, NSURL destinationURL){ + //hide it, done with export + cont.dismissViewController(true, () -> {}); } @Override public void failedToImportDocument(UIDocumentBrowserViewController controller, NSURL documentURL, NSError error){ - + //failed, still hide it but show error message + Core.app.post(() -> ui.showErrorMessage(error.getLocalizedDescription() + "\n" + error.getLocalizedFailureReason())); + cont.dismissViewController(true, () -> {}); } @Override From 378a5d52392825d9e28a51907039e0fe35b6dbd1 Mon Sep 17 00:00:00 2001 From: Anuken Date: Tue, 18 Feb 2020 12:40:53 -0500 Subject: [PATCH 09/14] Removed bloom on iOS --- core/src/mindustry/ui/dialogs/SettingsMenuDialog.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/core/src/mindustry/ui/dialogs/SettingsMenuDialog.java b/core/src/mindustry/ui/dialogs/SettingsMenuDialog.java index 2b4e336d67..af4f6db807 100644 --- a/core/src/mindustry/ui/dialogs/SettingsMenuDialog.java +++ b/core/src/mindustry/ui/dialogs/SettingsMenuDialog.java @@ -330,7 +330,12 @@ public class SettingsMenuDialog extends SettingsDialog{ if(Shaders.shield != null){ graphics.checkPref("animatedshields", !mobile); } - graphics.checkPref("bloom", !mobile, val -> renderer.toggleBloom(val)); + if(!ios){ + graphics.checkPref("bloom", !mobile, val -> renderer.toggleBloom(val)); + }else{ + Core.settings.put("bloom", false); + } + graphics.checkPref("pixelate", false, val -> { if(val){ Events.fire(Trigger.enablePixelation); From 4a55dde5ee40ba9694c166fcaa60b2a26baac81f Mon Sep 17 00:00:00 2001 From: Anuken Date: Tue, 18 Feb 2020 12:40:53 -0500 Subject: [PATCH 10/14] Bugfixes --- .../java/mindustry/annotations/impl/SerializeProcess.java | 2 +- core/assets/bundles/bundle.properties | 2 +- core/src/mindustry/entities/traits/BuilderTrait.java | 8 ++++++-- core/src/mindustry/ui/dialogs/SettingsMenuDialog.java | 7 ++++++- gradle.properties | 2 +- 5 files changed, 15 insertions(+), 6 deletions(-) diff --git a/annotations/src/main/java/mindustry/annotations/impl/SerializeProcess.java b/annotations/src/main/java/mindustry/annotations/impl/SerializeProcess.java index aba76e3f55..bf49845330 100644 --- a/annotations/src/main/java/mindustry/annotations/impl/SerializeProcess.java +++ b/annotations/src/main/java/mindustry/annotations/impl/SerializeProcess.java @@ -21,7 +21,7 @@ public class SerializeProcess extends BaseProcessor{ /** Target class name. */ private static final String className = "Serialization"; /** Name of the base package to put all the generated classes. */ - private static final String data = "eJzFWPtvGzcS/vV+v3+AXeAAbuJuZedhp5v04FfuhKZOzkpjHKqg4O5SEpN9leT6UVX/e78hKWllyxf3cMUZtrQ7HM7jm+HM0H/9Syvyz2IqWaXqojNW3ySFzLppqqq20ZYJnSeP+i8TVUpzi9TVt5gqYWebFEjucrtJ66wqt1CM1EqU6ldhVVOv19cG5o2W2+iq2UatpU0OdX4m7TvdXKpC6vu43gEKaXvOfRKXYkOqI5SiniZaTkrZd8gt1XeYnUe/qhbkvBTGsGH9CfsaPW+7rFQ5MxZ+5uyyUQVTisfz8yDZSMu9RaMACCx3MnZYdKWVlTraYfy4qc3ey22O7LCjGyuPuslE6u9i3u6wLGZff8fmasJbpmpornPZTBhE1NDod8XzjVeWs1dOSY+jTTMI/ukj09J0pR0WYKnlFXPUwccUZpCOt6NEmcO60HANUp33+S543WMyafSZqCSPhGdJGpMcdaosojgdWa3qqXuTmmXh22vZWONx+lrJsoAxE/o2YMp3k6m0jmywDj3cvXgO9m3gjMlG90js729ayWP26lWQ75GO5+RL0J+ItpV1sd7D664s4zhd5MLmM/5+ppsrkZWSAcTFYhFAoi/TR+jgY0rP5/Cbz4SZ8aV823jdPI5jxPHaUvwMdwLitAe2o6QLWRrJlkBfIAOaK1hMm1roRTYIK6fKKZ9zH3qvgJWqlqBio7yWOY+uKqRgblrdFDilDL6xH38cnkSJaUtlecQiWIStFY8T02XGmxl5nlLWUzuD0TgUbSlyhHRcIzWjqEdhnpDC3FJa5K7hZETMXrJn7LffnEUrSSDuDlZU27xprqQ+FgYRwuGvrUDy8khq3egoXvHJXzpRmuG0RnlwzNHgyWAw2BsMvh48pY9n9DEYPKePffwd4O8FPGOWIucCNCxLORXloZ52lazt6XUuWypDPMoEJaaWttM1o7ABSu9Cuth5ALonw9H3J+fDD6cOXX+kz7oqwyn+AsqbvP9ntP93YL1GI2HUTQAVPSe5lkjY97Jq6ZVHKIDTz+RIcpmZiA56KS9c3WOTq3Cg1jROonDarxJXGwk2y5rs08UPQwB4qXLS8w9p32ZUf/k4ulJ1Na2s+XaMn2Q81k1jx+NcVZd74ygGpo+Zk5E35dDKik7RhrjkFMH9Vyf1DfuZeXbGGASPJNVv9ohNdFMxnMsnez8fAc6jRugCogPz60azU5HPSCopQEVe6/IsFybXqrXJaT5rlmxJPx0Cn7xWlqHOhdczlA56dGjkZUORTO/JzdyrIJi/+eYMsZ82eCYsqcIdZqYpOyvfCZ9yITnvZF7qNhRw3JIuSrtbGXbwh47z7Zx9WNZhj1aov/em3mKJQo3GAxRGN4YQnbrRoJXa3vCow/iR0DqkZE1TSlEzUd+Ae4LqIl07UbVlCpRBiq+XvUobPAb58WPfO3pVe832E1fssTMiIQuPmwJQxOxvdyV9dH0mTr0FmKFkmuGYfL6n5wD4r8Aa43CxQlHHPKZZyc9sIgSTR8fIeXg81aI6EVaMxxHMGdbQ7LrQP+V1aEQ/IO6TRKNTNdVIyoJ/AbGeOztssMNehB80NEqKr2AT8k4Zi8Ycz+mt+oxPatOhWwqtb/VK6pOMTAh01zfjbXHYHQTgibvXQCEzTklZPkOj5dHF6N+jh3jMg+1gjZKTw/fwz9WWntTFAkjbqYURD1Swv7+PlYfjGJCDjh5yDxkttowQJKTnQaAuejlKHMivwjOQfzRkzNen77yrrapk79TRQVlsS0dKf5+HbuC98WWHqkrbUtqdLBf4n5h6hN/KgnW2wa7QetaLPnjbbPnD0XLl8E64/szc/qIPdxObsLmb0P9lajmP/3NuOZaN5LqTNHvxcobqOlUsyxcGAQuaoQAEbyJaXw859IYZ+LRqEZo14F75Q7zwnHEa1K7vGZw69/OnFF2UrjqnKAfmON20ru3syi76ur1uxCU1xx4i/tEP8v1O0ddZSKfzAUDQMVxkZAbizz+ggdL92V0u4pTuN8O3PkJha7bD8uTSs9Hy/UyU5vevdoZ8dYo5rv5NRgfr78ylQLyL+9YgrJJZOTp+2egl/9JpYHV+/GSP5ToP8Lt3wJXTvwXaAm2xx+w2v2lgAS0DjQ+i7Oj4BbFeNxlTAHfcnLeeqd56OFz3uej4qBOreFkTWRsGzQwU/IZ7fMi85eDRm7oeVrXdhdCxb70CuqkmXP+CRnJqOTAFdbgFAmsaXpExQZMnbC8uZjWpBRywLRFFwQ0KitCHwe+gnhYdZksLSgTCebzS775iNvcrULS7u/fsACVn8Pzg6d6zF/tvUm927eciunCvTKBB9raFWPSmsTmJe7L7aIYuGnaubFyZOEsXECD1BFOq+y9IuwTfjVN+mjRsVXkQ098BuiSFiw=="; + private static final String data = "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"; @Override public void process(RoundEnvironment env) throws Exception{ diff --git a/core/assets/bundles/bundle.properties b/core/assets/bundles/bundle.properties index 7f02ce667b..070873fc32 100644 --- a/core/assets/bundles/bundle.properties +++ b/core/assets/bundles/bundle.properties @@ -64,7 +64,7 @@ stat.rank = Final Rank: [accent]{0} launcheditems = [accent]Launched Items launchinfo = [unlaunched][[LAUNCH] your core to obtain the items indicated in blue. map.delete = Are you sure you want to delete the map "[accent]{0}[]"? -level.highscore = High Score: [accent]{0} +level.highscore = High Score: [accent]{0}1 level.select = Level Select level.mode = Gamemode: showagain = Don't show again next session diff --git a/core/src/mindustry/entities/traits/BuilderTrait.java b/core/src/mindustry/entities/traits/BuilderTrait.java index a05fc685ec..80176eac1a 100644 --- a/core/src/mindustry/entities/traits/BuilderTrait.java +++ b/core/src/mindustry/entities/traits/BuilderTrait.java @@ -1,14 +1,15 @@ package mindustry.entities.traits; import arc.*; -import arc.struct.Queue; import arc.graphics.g2d.*; import arc.math.*; import arc.math.geom.*; +import arc.struct.Queue; import arc.util.ArcAnnotate.*; import arc.util.*; import mindustry.*; import mindustry.content.*; +import mindustry.entities.type.TileEntity; import mindustry.entities.type.*; import mindustry.game.EventType.*; import mindustry.gen.*; @@ -21,7 +22,7 @@ import java.io.*; import java.util.*; import static mindustry.Vars.*; -import static mindustry.entities.traits.BuilderTrait.BuildDataStatic.*; +import static mindustry.entities.traits.BuilderTrait.BuildDataStatic.tmptr; /** Interface for units that build things.*/ public interface BuilderTrait extends Entity, TeamTrait{ @@ -74,6 +75,9 @@ public interface BuilderTrait extends Entity, TeamTrait{ buildQueue().removeFirst(); return; } + }else if(tile.getTeam() != getTeam()){ + buildQueue().removeFirst(); + return; } if(tile.entity instanceof BuildEntity && !current.initialized){ diff --git a/core/src/mindustry/ui/dialogs/SettingsMenuDialog.java b/core/src/mindustry/ui/dialogs/SettingsMenuDialog.java index 2b4e336d67..af4f6db807 100644 --- a/core/src/mindustry/ui/dialogs/SettingsMenuDialog.java +++ b/core/src/mindustry/ui/dialogs/SettingsMenuDialog.java @@ -330,7 +330,12 @@ public class SettingsMenuDialog extends SettingsDialog{ if(Shaders.shield != null){ graphics.checkPref("animatedshields", !mobile); } - graphics.checkPref("bloom", !mobile, val -> renderer.toggleBloom(val)); + if(!ios){ + graphics.checkPref("bloom", !mobile, val -> renderer.toggleBloom(val)); + }else{ + Core.settings.put("bloom", false); + } + graphics.checkPref("pixelate", false, val -> { if(val){ Events.fire(Trigger.enablePixelation); diff --git a/gradle.properties b/gradle.properties index dc5c21b2cb..d496de7400 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,3 +1,3 @@ org.gradle.daemon=true org.gradle.jvmargs=-Xms256m -Xmx1024m -archash=415c435dc59e9248fdef8362582220d18f9f8e17 +archash=7f149f0747ff41f1bfa80e2153d2b66402ba63c1 From b3e9e12279c8f8fee92318aeaf6306b984762d39 Mon Sep 17 00:00:00 2001 From: iczero Date: Tue, 18 Feb 2020 21:52:42 -0500 Subject: [PATCH 11/14] Reset local player name on disconnect --- core/src/mindustry/core/NetClient.java | 1 + 1 file changed, 1 insertion(+) diff --git a/core/src/mindustry/core/NetClient.java b/core/src/mindustry/core/NetClient.java index 0a15536cc4..c483e8cb26 100644 --- a/core/src/mindustry/core/NetClient.java +++ b/core/src/mindustry/core/NetClient.java @@ -102,6 +102,7 @@ public class NetClient implements ApplicationListener{ state.set(State.menu); logic.reset(); platform.updateRPC(); + player.name = Core.settings.getString("name"); if(quiet) return; From a866af40cb9f5d59942d573a5c3acad0224894af Mon Sep 17 00:00:00 2001 From: Anuken Date: Wed, 19 Feb 2020 10:21:35 -0500 Subject: [PATCH 12/14] iOS fixes --- gradle.properties | 2 +- ios/src/mindustry/ios/IOSLauncher.java | 44 ++++++++++++-------------- 2 files changed, 22 insertions(+), 24 deletions(-) diff --git a/gradle.properties b/gradle.properties index d496de7400..7b4cee4a7e 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,3 +1,3 @@ org.gradle.daemon=true org.gradle.jvmargs=-Xms256m -Xmx1024m -archash=7f149f0747ff41f1bfa80e2153d2b66402ba63c1 +archash=135280caef29618972b83c6919a48259c46f34bd diff --git a/ios/src/mindustry/ios/IOSLauncher.java b/ios/src/mindustry/ios/IOSLauncher.java index b3668330ec..ad79b57858 100644 --- a/ios/src/mindustry/ios/IOSLauncher.java +++ b/ios/src/mindustry/ios/IOSLauncher.java @@ -41,12 +41,32 @@ public class IOSLauncher extends IOSApplication.Delegate{ @Override public void showFileChooser(boolean open, String extension, Cons cons){ + if(!open){ //when exporting, just share it. + //ask for export name + Core.input.getTextInput(new TextInput(){{ + title = Core.bundle.get("filename"); + accepted = name -> { + try{ + //write result + Fi result = tmpDirectory.child(name + "." + extension); + cons.get(result); + + //import the document + shareFile(result); + }catch(Throwable t){ + ui.showException(t); + } + }; + }}); + return; + } + UIDocumentBrowserViewController cont = new UIDocumentBrowserViewController((NSArray)null); NSArray arr = new NSArray<>(new UIBarButtonItem(Core.bundle.get("cancel"), UIBarButtonItemStyle.Plain, uiBarButtonItem -> cont.dismissViewController(true, () -> {}))); - cont.setAllowsDocumentCreation(!open); + cont.setAllowsDocumentCreation(false); cont.setAdditionalLeadingNavigationBarButtonItems(arr); class ChooserDelegate extends NSObject implements UIDocumentBrowserViewControllerDelegate{ @@ -88,37 +108,15 @@ public class IOSLauncher extends IOSApplication.Delegate{ @Override public void didRequestDocumentCreationWithHandler(UIDocumentBrowserViewController controller, VoidBlock2 importHandler){ - Core.app.post(() -> { - //ask for name - Core.input.getTextInput(new TextInput(){{ - title = Core.bundle.get("name"); - accepted = name -> { - try{ - //write result - Fi result = tmpDirectory.child(name + "." + extension); - cons.get(result); - //import the document - importHandler.invoke(new NSURL(result.absolutePath()), UIDocumentBrowserImportMode.Move); - }catch(Throwable t){ - ui.showException(t); - } - }; - }}); - }); } @Override public void didImportDocument(UIDocumentBrowserViewController controller, NSURL sourceURL, NSURL destinationURL){ - //hide it, done with export - cont.dismissViewController(true, () -> {}); } @Override public void failedToImportDocument(UIDocumentBrowserViewController controller, NSURL documentURL, NSError error){ - //failed, still hide it but show error message - Core.app.post(() -> ui.showErrorMessage(error.getLocalizedDescription() + "\n" + error.getLocalizedFailureReason())); - cont.dismissViewController(true, () -> {}); } @Override From b2dd2c8441c6120df22fc13def8f9e2a56a2ccd8 Mon Sep 17 00:00:00 2001 From: Anuken Date: Wed, 19 Feb 2020 10:31:15 -0500 Subject: [PATCH 13/14] Cleanup --- gradle.properties | 2 +- ios/src/mindustry/ios/IOSLauncher.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/gradle.properties b/gradle.properties index 7b4cee4a7e..9ff6821b16 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,3 +1,3 @@ org.gradle.daemon=true org.gradle.jvmargs=-Xms256m -Xmx1024m -archash=135280caef29618972b83c6919a48259c46f34bd +archash=589c7e171a8b558f50b99d374e05942a5909ba4d diff --git a/ios/src/mindustry/ios/IOSLauncher.java b/ios/src/mindustry/ios/IOSLauncher.java index ad79b57858..e4da9160d0 100644 --- a/ios/src/mindustry/ios/IOSLauncher.java +++ b/ios/src/mindustry/ios/IOSLauncher.java @@ -42,7 +42,7 @@ public class IOSLauncher extends IOSApplication.Delegate{ @Override public void showFileChooser(boolean open, String extension, Cons cons){ if(!open){ //when exporting, just share it. - //ask for export name + //ask for export name Core.input.getTextInput(new TextInput(){{ title = Core.bundle.get("filename"); accepted = name -> { From e8ca5fe21184b429d9c40b4686f804830975eafe Mon Sep 17 00:00:00 2001 From: Anuken Date: Wed, 19 Feb 2020 11:03:12 -0500 Subject: [PATCH 14/14] More iOS stuff --- .../ui/dialogs/SchematicsDialog.java | 30 ++++++++++++++----- 1 file changed, 22 insertions(+), 8 deletions(-) diff --git a/core/src/mindustry/ui/dialogs/SchematicsDialog.java b/core/src/mindustry/ui/dialogs/SchematicsDialog.java index 86408921b9..fb29f9fa8e 100644 --- a/core/src/mindustry/ui/dialogs/SchematicsDialog.java +++ b/core/src/mindustry/ui/dialogs/SchematicsDialog.java @@ -1,7 +1,7 @@ package mindustry.ui.dialogs; import arc.*; -import arc.struct.*; +import arc.files.*; import arc.graphics.*; import arc.graphics.Texture.*; import arc.graphics.g2d.*; @@ -10,6 +10,7 @@ import arc.scene.ui.*; import arc.scene.ui.ImageButton.*; import arc.scene.ui.TextButton.*; import arc.scene.ui.layout.*; +import arc.struct.*; import arc.util.*; import mindustry.core.GameState.*; import mindustry.game.*; @@ -214,14 +215,27 @@ public class SchematicsDialog extends FloatingDialog{ Core.app.setClipboardText(schematics.writeBase64(s)); }).marginLeft(12f); t.row(); - t.addImageTextButton("$schematic.exportfile", Icon.export, style, () -> platform.showFileChooser(false, schematicExtension, file -> { - dialog.hide(); - try{ - Schematics.write(s, file); - }catch(Exception e){ - ui.showException(e); + t.addImageTextButton("$schematic.exportfile", Icon.export, style, () -> { + if(!ios){ + platform.showFileChooser(false, schematicExtension, file -> { + dialog.hide(); + try{ + Schematics.write(s, file); + }catch(Throwable e){ + ui.showException(e); + } + }); + }else{ + dialog.hide(); + try{ + Fi file = Core.files.local(s.name() + "." + schematicExtension); + Schematics.write(s, file); + platform.shareFile(file); + }catch(Throwable e){ + ui.showException(e); + } } - })).marginLeft(12f); + }).marginLeft(12f); }); });