mirror of
https://github.com/Anuken/Mindustry.git
synced 2025-03-09 04:09:07 +07:00
Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
b0f449371e
BIN
core/assets-raw/sprites/blocks/logic/world-switch-on.png
Normal file
BIN
core/assets-raw/sprites/blocks/logic/world-switch-on.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 164 B |
BIN
core/assets-raw/sprites/blocks/logic/world-switch.png
Normal file
BIN
core/assets-raw/sprites/blocks/logic/world-switch.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 389 B |
@ -348,15 +348,15 @@ command.rebuild = Reconstrueix
|
||||
command.assist = Assisteix al jugador
|
||||
command.move = Mou
|
||||
command.boost = Sobrevola
|
||||
command.loadUnits = Load Units
|
||||
command.loadBlocks = Load Blocks
|
||||
command.unloadPayload = Unload Payload
|
||||
stance.stop = Cancel Orders
|
||||
stance.shoot = Stance: Shoot
|
||||
stance.holdfire = Stance: Hold Fire
|
||||
stance.pursuetarget = Stance: Pursue Target
|
||||
stance.patrol = Stance: Patrol Path
|
||||
stance.ram = Stance: Ram\n[lightgray]Straight line movement, no pathfinding
|
||||
command.loadUnits = Carrega unitats
|
||||
command.loadBlocks = Carrega blocs
|
||||
command.unloadPayload = Descarrega
|
||||
stance.stop = Cancel·la les ordres
|
||||
stance.shoot = Comportament: Dispara
|
||||
stance.holdfire = Comportament: Mantén el foc
|
||||
stance.pursuetarget = Comportament: Persegueix l’objectiu
|
||||
stance.patrol = Comportament: Patrulla el camí
|
||||
stance.ram = Comportament: Senzill\n[lightgray]Mou-te en línia recta, sense encaminador
|
||||
openlink = Obre l’enllaç
|
||||
copylink = Copia l’enllaç
|
||||
back = Enrere
|
||||
@ -655,7 +655,7 @@ marker.shapetext.name = Forma del text
|
||||
marker.minimap.name = Minimapa
|
||||
marker.shape.name = Forma
|
||||
marker.text.name = Text
|
||||
marker.line.name = Line
|
||||
marker.line.name = Línia
|
||||
marker.background = Fons
|
||||
marker.outline = Contorn
|
||||
|
||||
@ -970,9 +970,9 @@ ability.movelightning = Moviment llampec
|
||||
ability.shieldarc = Escut de descàrregues
|
||||
ability.suppressionfield = Regen Suppression Field
|
||||
ability.energyfield = Camp de força
|
||||
ability.energyfield.sametypehealmultiplier = [lightgray]Same Type Healing: [white]{0}%
|
||||
ability.energyfield.maxtargets = [lightgray]Max Targets: [white]{0}
|
||||
ability.regen = Regeneration
|
||||
ability.energyfield.sametypehealmultiplier = [lightgray]Mateix tipus de guarició: [white]{0} %
|
||||
ability.energyfield.maxtargets = [lightgray]Objectius màx.: [white]{0}
|
||||
ability.regen = Regeneració
|
||||
|
||||
bar.onlycoredeposit = Només es permet depositar al nucli.
|
||||
bar.drilltierreq = Cal una perforadora millor.
|
||||
@ -1067,7 +1067,7 @@ setting.backgroundpause.name = Pausa automàtica quan s’estigui en segon pla
|
||||
setting.buildautopause.name = Pausa automàtica quan es construeixi
|
||||
setting.doubletapmine.name = Dos tocs/clics per a extreure recursos
|
||||
setting.commandmodehold.name = Mantén per al mode de comandament
|
||||
setting.distinctcontrolgroups.name = Limit One Control Group Per Unit
|
||||
setting.distinctcontrolgroups.name = Limita a un grup de control per unitat
|
||||
setting.modcrashdisable.name = Desactiva els mods quan no es pugui iniciar el joc
|
||||
setting.animatedwater.name = Animacions del terreny
|
||||
setting.animatedshields.name = Animacions dels escuts
|
||||
@ -1114,7 +1114,7 @@ setting.position.name = Mostra la posició del jugador
|
||||
setting.mouseposition.name = Mostra la posició del ratolí
|
||||
setting.musicvol.name = Volum de la música
|
||||
setting.atmosphere.name = Mostra l’atmosfera del planeta
|
||||
setting.drawlight.name = Draw Darkness/Lighting
|
||||
setting.drawlight.name = Dibuixa la foscor/llum
|
||||
setting.ambientvol.name = Volum del so ambiental
|
||||
setting.mutemusic.name = Silencia la música
|
||||
setting.sfxvol.name = Volums dels efectes de so
|
||||
@ -1141,7 +1141,7 @@ keybind.title = Personalització dels controls
|
||||
keybinds.mobile = [scarlet]La majoria de dreceres no estan disponibles en les versions per a pantalles tàctils. Només està inclòs el moviment bàsic.
|
||||
category.general.name = General
|
||||
category.view.name = Control de la vista i altres
|
||||
category.command.name = Unit Command
|
||||
category.command.name = Ordre d’unitat
|
||||
category.multiplayer.name = Multijugador
|
||||
category.blocks.name = Selecció d’estructures per construir
|
||||
placement.blockselectkeys = \n[lightgray]Tecles: [{0},
|
||||
@ -1159,23 +1159,23 @@ keybind.mouse_move.name = Segueix el ratolí
|
||||
keybind.pan.name = Desplaça la vista
|
||||
keybind.boost.name = Sobrevola
|
||||
keybind.command_mode.name = Mode de comandament
|
||||
keybind.command_queue.name = Unit Command Queue
|
||||
keybind.create_control_group.name = Create Control Group
|
||||
keybind.cancel_orders.name = Cancel Orders
|
||||
keybind.unit_stance_shoot.name = Unit Stance: Shoot
|
||||
keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
|
||||
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
|
||||
keybind.unit_stance_patrol.name = Unit Stance: Patrol
|
||||
keybind.unit_stance_ram.name = Unit Stance: Ram
|
||||
keybind.unit_command_move = Unit Command: Move
|
||||
keybind.unit_command_repair = Unit Command: Repair
|
||||
keybind.unit_command_rebuild = Unit Command: Rebuild
|
||||
keybind.unit_command_assist = Unit Command: Assist
|
||||
keybind.unit_command_mine = Unit Command: Mine
|
||||
keybind.unit_command_boost = Unit Command: Boost
|
||||
keybind.unit_command_load_units = Unit Command: Load Units
|
||||
keybind.unit_command_load_blocks = Unit Command: Load Blocks
|
||||
keybind.unit_command_unload_payload = Unit Command: Unload Payload
|
||||
keybind.command_queue.name = Cua d’ordres d’unitat
|
||||
keybind.create_control_group.name = Crea un grup de control
|
||||
keybind.cancel_orders.name = Cancel·la les ordres
|
||||
keybind.unit_stance_shoot.name = Comportament: Dispara
|
||||
keybind.unit_stance_hold_fire.name = Comportament: Mantén el foc
|
||||
keybind.unit_stance_pursue_target.name = Comportament: Persegueix l’objectiu
|
||||
keybind.unit_stance_patrol.name = Comportament: Patrulla
|
||||
keybind.unit_stance_ram.name = Comportament: Senzill
|
||||
keybind.unit_command_move = Comportament: Mou
|
||||
keybind.unit_command_repair = Comportament: Repara
|
||||
keybind.unit_command_rebuild = Comportament: Reconstrueix
|
||||
keybind.unit_command_assist = Comportament: Assisteix
|
||||
keybind.unit_command_mine = Comportament: Extrau
|
||||
keybind.unit_command_boost = Comportament: Sobrevola
|
||||
keybind.unit_command_load_units = Comportament: Carrega unitats
|
||||
keybind.unit_command_load_blocks = Comportament: Carrega blocs
|
||||
keybind.unit_command_unload_payload = Comportament: Descarrega
|
||||
keybind.rebuild_select.name = Reconstrueix la regió
|
||||
keybind.schematic_select.name = Selecciona una regió
|
||||
keybind.schematic_menu.name = Menú de plànols
|
||||
@ -1239,7 +1239,7 @@ mode.pvp.description = Lluiteu contra altres jugadors localment.\n[gray]Cal que
|
||||
mode.attack.name = Atac
|
||||
mode.attack.description = Destruïu la base enemiga. \n[gray]Cal que al mapa hi hagi un nucli vermell.
|
||||
mode.custom = Regles personalitzades
|
||||
rules.invaliddata = Invalid clipboard data.
|
||||
rules.invaliddata = Dades del porta-retalls no vàlides.
|
||||
rules.hidebannedblocks = Amaga els blocs no permesos
|
||||
|
||||
rules.infiniteresources = Recursos infinits
|
||||
@ -2274,10 +2274,10 @@ lst.cutscene = Manipula la càmera del jugador.
|
||||
lst.setflag = Estableix un senyal global que es podrà llegir en tots els processadors.
|
||||
lst.getflag = Obtén un senyal global.
|
||||
lst.setprop = Estableix una propietat d’una unitat o estructura.
|
||||
lst.effect = Create a particle effect.
|
||||
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
|
||||
lst.makemarker = Create a new logic marker in the world.\nAn ID to identify this marker must be provided.\nMarkers currently limited to 20,000 per world.
|
||||
lst.setmarker = Set a property for a marker.\nThe ID used must be the same as in the Make Marker instruction.
|
||||
lst.effect = Crea un efecte de particula.
|
||||
lst.sync = Sincronitza una variable a través de la xarxa.\nS’invoca com a molt 10 vegades per segon.
|
||||
lst.makemarker = Crea una marca lògica al món.\nS’ha de donar un ID per a identificar-la.\nEs poden establir fins a 20.000 marcadors per món.
|
||||
lst.setmarker = Estableix una propietat per a la marca.\nL’ID que es faci servir ha de ser el mateix que el de la instrucció de crear la marca.
|
||||
|
||||
logic.nounitbuild = [red]Aquí no es permet construir blocs de tipus lògic.
|
||||
|
||||
|
@ -586,3 +586,4 @@
|
||||
63096=fast|status-fast-ui
|
||||
63095=ranai|ranai
|
||||
63094=cat|cat
|
||||
63093=world-switch|block-world-switch-ui
|
||||
|
@ -160,7 +160,7 @@ public class Blocks{
|
||||
//logic
|
||||
message, switchBlock, microProcessor, logicProcessor, hyperProcessor, largeLogicDisplay, logicDisplay, memoryCell, memoryBank,
|
||||
canvas, reinforcedMessage,
|
||||
worldProcessor, worldCell, worldMessage,
|
||||
worldProcessor, worldCell, worldMessage, worldSwitch,
|
||||
|
||||
//campaign
|
||||
launchPad, interplanetaryAccelerator
|
||||
@ -5944,6 +5944,13 @@ public class Blocks{
|
||||
privileged = true;
|
||||
}};
|
||||
|
||||
worldSwitch = new SwitchBlock("world-switch"){{
|
||||
requirements(Category.logic, BuildVisibility.editorOnly, with());
|
||||
|
||||
targetable = false;
|
||||
privileged = true;
|
||||
}};
|
||||
|
||||
//endregion
|
||||
}
|
||||
}
|
||||
|
@ -8,6 +8,8 @@ import mindustry.gen.*;
|
||||
import mindustry.world.*;
|
||||
import mindustry.world.meta.*;
|
||||
|
||||
import static mindustry.Vars.state;
|
||||
|
||||
public class SwitchBlock extends Block{
|
||||
public Sound clickSound = Sounds.click;
|
||||
|
||||
@ -25,7 +27,26 @@ public class SwitchBlock extends Block{
|
||||
config(Boolean.class, (SwitchBuild entity, Boolean b) -> entity.enabled = b);
|
||||
}
|
||||
|
||||
public boolean accessible(){
|
||||
return !privileged || state.rules.editor;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean canBreak(Tile tile){
|
||||
return accessible();
|
||||
}
|
||||
|
||||
public class SwitchBuild extends Building{
|
||||
@Override
|
||||
public void damage(float damage){
|
||||
if(privileged) return;
|
||||
super.damage(damage);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean collide(Bullet other){
|
||||
return !privileged;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean configTapped(){
|
||||
|
@ -910,6 +910,37 @@ public class ServerControl implements ApplicationListener{
|
||||
}
|
||||
});
|
||||
|
||||
handler.register("loadautosave", "Loads the last auto-save.", arg -> {
|
||||
if(state.isGame()){
|
||||
err("Already hosting. Type 'stop' to stop hosting first.");
|
||||
return;
|
||||
}
|
||||
|
||||
Fi newestSave = saveDirectory.findAll(f -> f.name().startsWith("auto_")).min(Fi::lastModified);
|
||||
|
||||
if(newestSave == null){
|
||||
err("No auto-saves found! Type `config autosave true` to enable auto-saves.");
|
||||
return;
|
||||
}
|
||||
|
||||
if(!SaveIO.isSaveValid(newestSave)){
|
||||
err("No (valid) save data found for slot.");
|
||||
return;
|
||||
}
|
||||
|
||||
Core.app.post(() -> {
|
||||
try{
|
||||
SaveIO.load(newestSave);
|
||||
state.rules.sector = null;
|
||||
info("Save loaded.");
|
||||
state.set(State.playing);
|
||||
netServer.openServer();
|
||||
}catch(Throwable t){
|
||||
err("Failed to load save. Outdated or corrupt file.");
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
handler.register("load", "<slot>", "Load a save from a slot.", arg -> {
|
||||
if(state.isGame()){
|
||||
err("Already hosting. Type 'stop' to stop hosting first.");
|
||||
|
@ -89,7 +89,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Chaotic Neutral",
|
||||
"address": ["c-n.ddns.net:7012", "c-n.ddns.net:7013", "c-n.ddns.net:7014", "c-n.ddns.net:7015", "c-n.ddns.net:7016", "c-n.ddns.net:7017", "37.187.73.180:7021"]
|
||||
"address": ["c-n.ddns.net:7012", "c-n.ddns.net:7013", "c-n.ddns.net:7014", "c-n.ddns.net:7015", "c-n.ddns.net:7016", "c-n.ddns.net:7017", "c-n.ddns.net:7003", "37.187.73.180:7021"]
|
||||
},
|
||||
{
|
||||
"name": "io",
|
||||
@ -121,7 +121,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Fish",
|
||||
"address": ["162.248.101.95", "162.248.100.98", "162.248.100.133", "162.248.102.204"]
|
||||
"address": ["162.248.101.95", "162.248.100.98", "162.248.100.133", "162.248.102.204", "c-n.ddns.net:7003"]
|
||||
},
|
||||
{
|
||||
"name": "The Devil",
|
||||
@ -210,7 +210,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Cyandustry",
|
||||
"address": ["91.218.66.162:8000","91.218.66.162:7000", "91.218.66.162:7500", "91.218.66.162:7600"]
|
||||
"address": ["136.243.14.186:7000","136.243.14.186:7001", "136.243.14.186:7002", "136.243.14.186:7003", "136.243.14.186:7004", "136.243.14.186:7005", "136.243.14.186:7006"]
|
||||
},
|
||||
{
|
||||
"name": "Four Family",
|
||||
@ -255,5 +255,9 @@
|
||||
{
|
||||
"name": "MineCore",
|
||||
"address": ["194.247.42.11:27792"]
|
||||
},
|
||||
{
|
||||
"name": "Atomic",
|
||||
"address": ["129.146.33.189:25709", "atomic-lab.ddns.net:30315"]
|
||||
}
|
||||
]
|
||||
|
Loading…
Reference in New Issue
Block a user