diff --git a/annotations/src/main/java/mindustry/annotations/entity/EntityIO.java b/annotations/src/main/java/mindustry/annotations/entity/EntityIO.java index def31f42f3..8472c060cc 100644 --- a/annotations/src/main/java/mindustry/annotations/entity/EntityIO.java +++ b/annotations/src/main/java/mindustry/annotations/entity/EntityIO.java @@ -207,7 +207,7 @@ public class EntityIO{ } }else if(serializer.writers.containsKey(type) && write){ st("$L(write, $L)", serializer.writers.get(type), field); - }else if(serializer.mutatorReaders.containsKey(type) && !write && !field.replace(" = ", "").contains(" ")){ + }else if(serializer.mutatorReaders.containsKey(type) && !write && !field.replace(" = ", "").contains(" ") && !field.isEmpty()){ st("$L$L(read, $L)", field, serializer.mutatorReaders.get(type), field.replace(" = ", "")); }else if(serializer.readers.containsKey(type) && !write){ st("$L$L(read)", field, serializer.readers.get(type)); diff --git a/annotations/src/main/resources/classids.properties b/annotations/src/main/resources/classids.properties deleted file mode 100644 index 42faa6493f..0000000000 --- a/annotations/src/main/resources/classids.properties +++ /dev/null @@ -1,19 +0,0 @@ -#Maps entity names to IDs. Autogenerated. - -alpha=0 -block=1 -draug=2 -mindustry.entities.comp.BulletComp=3 -mindustry.entities.comp.DecalComp=4 -mindustry.entities.comp.EffectComp=5 -mindustry.entities.comp.FireComp=6 -mindustry.entities.comp.PlayerComp=7 -mindustry.entities.comp.PuddleComp=8 -mindustry.entities.comp.TileComp=9 -mindustry.type.Weather.WeatherComp=10 -mindustry.world.blocks.storage.LaunchPad.LaunchPayloadComp=11 -oculon=12 -phantom=13 -titan=14 -vanguard=15 -wraith=16 \ No newline at end of file diff --git a/annotations/src/main/resources/revisions/BlockUnitUnitEntity/0.json b/annotations/src/main/resources/revisions/BlockUnitUnitEntity/0.json deleted file mode 100644 index 46ca7005e0..0000000000 --- a/annotations/src/main/resources/revisions/BlockUnitUnitEntity/0.json +++ /dev/null @@ -1 +0,0 @@ -{fields:[{name:armor,type:float,size:4},{name:controller,type:mindustry.entities.units.UnitController,size:-1},{name:elevation,type:float,size:4},{name:health,type:float,size:4},{name:isShooting,type:boolean,size:1},{name:rotation,type:float,size:4},{name:shield,type:float,size:4},{name:spawnedByCore,type:boolean,size:1},{name:stack,type:mindustry.type.ItemStack,size:-1},{name:statuses,type:arc.struct.Array,size:-1},{name:team,type:mindustry.game.Team,size:-1},{name:tile,type:Tilec,size:-1},{name:type,type:mindustry.type.UnitType,size:-1},{name:vel,type:arc.math.geom.Vec2,size:-1},{name:x,type:float,size:4},{name:y,type:float,size:4}]} \ No newline at end of file diff --git a/annotations/src/main/resources/revisions/BuilderLegsUnitEntity/0.json b/annotations/src/main/resources/revisions/BuilderLegsUnitEntity/0.json deleted file mode 100644 index cb7a5d3e05..0000000000 --- a/annotations/src/main/resources/revisions/BuilderLegsUnitEntity/0.json +++ /dev/null @@ -1 +0,0 @@ -{fields:[{name:armor,type:float,size:4},{name:baseRotation,type:float,size:4},{name:controller,type:mindustry.entities.units.UnitController,size:-1},{name:elevation,type:float,size:4},{name:health,type:float,size:4},{name:isShooting,type:boolean,size:1},{name:requests,type:arc.struct.Queue,size:-1},{name:rotation,type:float,size:4},{name:shield,type:float,size:4},{name:spawnedByCore,type:boolean,size:1},{name:stack,type:mindustry.type.ItemStack,size:-1},{name:statuses,type:arc.struct.Array,size:-1},{name:team,type:mindustry.game.Team,size:-1},{name:type,type:mindustry.type.UnitType,size:-1},{name:vel,type:arc.math.geom.Vec2,size:-1},{name:x,type:float,size:4},{name:y,type:float,size:4}]} \ No newline at end of file diff --git a/annotations/src/main/resources/revisions/BuilderMinerUnitEntity/0.json b/annotations/src/main/resources/revisions/BuilderMinerUnitEntity/0.json deleted file mode 100644 index 7cad47e786..0000000000 --- a/annotations/src/main/resources/revisions/BuilderMinerUnitEntity/0.json +++ /dev/null @@ -1 +0,0 @@ -{fields:[{name:armor,type:float,size:4},{name:controller,type:mindustry.entities.units.UnitController,size:-1},{name:elevation,type:float,size:4},{name:health,type:float,size:4},{name:isShooting,type:boolean,size:1},{name:mineTile,type:mindustry.world.Tile,size:-1},{name:requests,type:arc.struct.Queue,size:-1},{name:rotation,type:float,size:4},{name:shield,type:float,size:4},{name:spawnedByCore,type:boolean,size:1},{name:stack,type:mindustry.type.ItemStack,size:-1},{name:statuses,type:arc.struct.Array,size:-1},{name:team,type:mindustry.game.Team,size:-1},{name:type,type:mindustry.type.UnitType,size:-1},{name:vel,type:arc.math.geom.Vec2,size:-1},{name:x,type:float,size:4},{name:y,type:float,size:4}]} \ No newline at end of file diff --git a/annotations/src/main/resources/revisions/BuilderUnitEntity/0.json b/annotations/src/main/resources/revisions/BuilderUnitEntity/0.json deleted file mode 100644 index 6d45f92336..0000000000 --- a/annotations/src/main/resources/revisions/BuilderUnitEntity/0.json +++ /dev/null @@ -1 +0,0 @@ -{fields:[{name:armor,type:float,size:4},{name:controller,type:mindustry.entities.units.UnitController,size:-1},{name:elevation,type:float,size:4},{name:health,type:float,size:4},{name:isShooting,type:boolean,size:1},{name:requests,type:arc.struct.Queue,size:-1},{name:rotation,type:float,size:4},{name:shield,type:float,size:4},{name:spawnedByCore,type:boolean,size:1},{name:stack,type:mindustry.type.ItemStack,size:-1},{name:statuses,type:arc.struct.Array,size:-1},{name:team,type:mindustry.game.Team,size:-1},{name:type,type:mindustry.type.UnitType,size:-1},{name:vel,type:arc.math.geom.Vec2,size:-1},{name:x,type:float,size:4},{name:y,type:float,size:4}]} \ No newline at end of file diff --git a/annotations/src/main/resources/revisions/BulletEntity/0.json b/annotations/src/main/resources/revisions/BulletEntity/0.json deleted file mode 100644 index c9efe77456..0000000000 --- a/annotations/src/main/resources/revisions/BulletEntity/0.json +++ /dev/null @@ -1 +0,0 @@ -{fields:[{name:collided,type:arc.struct.IntArray,size:-1},{name:damage,type:float,size:4},{name:data,type:java.lang.Object,size:-1},{name:lifetime,type:float,size:4},{name:owner,type:Entityc,size:-1},{name:team,type:mindustry.game.Team,size:-1},{name:time,type:float,size:4},{name:type,type:mindustry.entities.bullet.BulletType,size:-1},{name:vel,type:arc.math.geom.Vec2,size:-1},{name:x,type:float,size:4},{name:y,type:float,size:4}]} \ No newline at end of file diff --git a/annotations/src/main/resources/revisions/CommanderUnitWaterMoveEntity/0.json b/annotations/src/main/resources/revisions/CommanderUnitWaterMoveEntity/0.json deleted file mode 100644 index d1cff2a24e..0000000000 --- a/annotations/src/main/resources/revisions/CommanderUnitWaterMoveEntity/0.json +++ /dev/null @@ -1 +0,0 @@ -{fields:[{name:armor,type:float,size:4},{name:controller,type:mindustry.entities.units.UnitController,size:-1},{name:elevation,type:float,size:4},{name:health,type:float,size:4},{name:isShooting,type:boolean,size:1},{name:rotation,type:float,size:4},{name:shield,type:float,size:4},{name:spawnedByCore,type:boolean,size:1},{name:stack,type:mindustry.type.ItemStack,size:-1},{name:statuses,type:arc.struct.Array,size:-1},{name:team,type:mindustry.game.Team,size:-1},{name:type,type:mindustry.type.UnitType,size:-1},{name:vel,type:arc.math.geom.Vec2,size:-1},{name:x,type:float,size:4},{name:y,type:float,size:4}]} \ No newline at end of file diff --git a/annotations/src/main/resources/revisions/DecalEntity/0.json b/annotations/src/main/resources/revisions/DecalEntity/0.json deleted file mode 100644 index df78246160..0000000000 --- a/annotations/src/main/resources/revisions/DecalEntity/0.json +++ /dev/null @@ -1 +0,0 @@ -{fields:[{name:color,type:arc.graphics.Color,size:-1},{name:lifetime,type:float,size:4},{name:region,type:arc.graphics.g2d.TextureRegion,size:-1},{name:rotation,type:float,size:4},{name:time,type:float,size:4},{name:x,type:float,size:4},{name:y,type:float,size:4}]} \ No newline at end of file diff --git a/annotations/src/main/resources/revisions/EffectEntity/0.json b/annotations/src/main/resources/revisions/EffectEntity/0.json deleted file mode 100644 index 5ce16bf09c..0000000000 --- a/annotations/src/main/resources/revisions/EffectEntity/0.json +++ /dev/null @@ -1 +0,0 @@ -{fields:[{name:color,type:arc.graphics.Color,size:-1},{name:data,type:java.lang.Object,size:-1},{name:effect,type:mindustry.entities.Effect,size:-1},{name:lifetime,type:float,size:4},{name:offsetX,type:float,size:4},{name:offsetY,type:float,size:4},{name:parent,type:Posc,size:-1},{name:rotation,type:float,size:4},{name:time,type:float,size:4},{name:x,type:float,size:4},{name:y,type:float,size:4}]} \ No newline at end of file diff --git a/annotations/src/main/resources/revisions/FireEntity/0.json b/annotations/src/main/resources/revisions/FireEntity/0.json deleted file mode 100644 index a5423a835b..0000000000 --- a/annotations/src/main/resources/revisions/FireEntity/0.json +++ /dev/null @@ -1 +0,0 @@ -{fields:[{name:baseFlammability,type:float,size:4},{name:block,type:mindustry.world.Block,size:-1},{name:lifetime,type:float,size:4},{name:puddleFlammability,type:float,size:4},{name:tile,type:mindustry.world.Tile,size:-1},{name:time,type:float,size:4},{name:x,type:float,size:4},{name:y,type:float,size:4}]} \ No newline at end of file diff --git a/annotations/src/main/resources/revisions/LaunchPayloadEntity/0.json b/annotations/src/main/resources/revisions/LaunchPayloadEntity/0.json deleted file mode 100644 index 13ca6b7f49..0000000000 --- a/annotations/src/main/resources/revisions/LaunchPayloadEntity/0.json +++ /dev/null @@ -1 +0,0 @@ -{fields:[{name:lifetime,type:float,size:4},{name:stacks,type:arc.struct.Array,size:-1},{name:team,type:mindustry.game.Team,size:-1},{name:time,type:float,size:4},{name:x,type:float,size:4},{name:y,type:float,size:4}]} \ No newline at end of file diff --git a/annotations/src/main/resources/revisions/LegsUnitEntity/0.json b/annotations/src/main/resources/revisions/LegsUnitEntity/0.json deleted file mode 100644 index 9eccbed4da..0000000000 --- a/annotations/src/main/resources/revisions/LegsUnitEntity/0.json +++ /dev/null @@ -1 +0,0 @@ -{fields:[{name:armor,type:float,size:4},{name:baseRotation,type:float,size:4},{name:controller,type:mindustry.entities.units.UnitController,size:-1},{name:elevation,type:float,size:4},{name:health,type:float,size:4},{name:isShooting,type:boolean,size:1},{name:rotation,type:float,size:4},{name:shield,type:float,size:4},{name:spawnedByCore,type:boolean,size:1},{name:stack,type:mindustry.type.ItemStack,size:-1},{name:statuses,type:arc.struct.Array,size:-1},{name:team,type:mindustry.game.Team,size:-1},{name:type,type:mindustry.type.UnitType,size:-1},{name:vel,type:arc.math.geom.Vec2,size:-1},{name:x,type:float,size:4},{name:y,type:float,size:4}]} \ No newline at end of file diff --git a/annotations/src/main/resources/revisions/MinerUnitEntity/0.json b/annotations/src/main/resources/revisions/MinerUnitEntity/0.json deleted file mode 100644 index 8f5ad7a649..0000000000 --- a/annotations/src/main/resources/revisions/MinerUnitEntity/0.json +++ /dev/null @@ -1 +0,0 @@ -{fields:[{name:armor,type:float,size:4},{name:controller,type:mindustry.entities.units.UnitController,size:-1},{name:elevation,type:float,size:4},{name:health,type:float,size:4},{name:isShooting,type:boolean,size:1},{name:mineTile,type:mindustry.world.Tile,size:-1},{name:rotation,type:float,size:4},{name:shield,type:float,size:4},{name:spawnedByCore,type:boolean,size:1},{name:stack,type:mindustry.type.ItemStack,size:-1},{name:statuses,type:arc.struct.Array,size:-1},{name:team,type:mindustry.game.Team,size:-1},{name:type,type:mindustry.type.UnitType,size:-1},{name:vel,type:arc.math.geom.Vec2,size:-1},{name:x,type:float,size:4},{name:y,type:float,size:4}]} \ No newline at end of file diff --git a/annotations/src/main/resources/revisions/PlayerEntity/0.json b/annotations/src/main/resources/revisions/PlayerEntity/0.json deleted file mode 100644 index 95165898b4..0000000000 --- a/annotations/src/main/resources/revisions/PlayerEntity/0.json +++ /dev/null @@ -1 +0,0 @@ -{fields:[{name:admin,type:boolean,size:1},{name:color,type:arc.graphics.Color,size:-1},{name:mouseX,type:float,size:4},{name:mouseY,type:float,size:4},{name:name,type:java.lang.String,size:-1},{name:shooting,type:boolean,size:1},{name:team,type:mindustry.game.Team,size:-1},{name:typing,type:boolean,size:1},{name:unit,type:Unitc,size:-1},{name:x,type:float,size:4},{name:y,type:float,size:4}]} \ No newline at end of file diff --git a/annotations/src/main/resources/revisions/PlayerEntity/1.json b/annotations/src/main/resources/revisions/PlayerEntity/1.json deleted file mode 100644 index ef3fe88681..0000000000 --- a/annotations/src/main/resources/revisions/PlayerEntity/1.json +++ /dev/null @@ -1 +0,0 @@ -{version:1,fields:[{name:admin,type:boolean,size:1},{name:boosting,type:boolean,size:1},{name:color,type:arc.graphics.Color,size:-1},{name:mouseX,type:float,size:4},{name:mouseY,type:float,size:4},{name:name,type:java.lang.String,size:-1},{name:shooting,type:boolean,size:1},{name:team,type:mindustry.game.Team,size:-1},{name:typing,type:boolean,size:1},{name:unit,type:Unitc,size:-1},{name:x,type:float,size:4},{name:y,type:float,size:4}]} \ No newline at end of file diff --git a/annotations/src/main/resources/revisions/PuddleEntity/0.json b/annotations/src/main/resources/revisions/PuddleEntity/0.json deleted file mode 100644 index 09114ed8ea..0000000000 --- a/annotations/src/main/resources/revisions/PuddleEntity/0.json +++ /dev/null @@ -1 +0,0 @@ -{fields:[{name:accepting,type:float,size:4},{name:amount,type:float,size:4},{name:generation,type:int,size:4},{name:lastRipple,type:float,size:4},{name:liquid,type:mindustry.type.Liquid,size:-1},{name:tile,type:mindustry.world.Tile,size:-1},{name:updateTime,type:float,size:4},{name:x,type:float,size:4},{name:y,type:float,size:4}]} \ No newline at end of file diff --git a/annotations/src/main/resources/revisions/TileEntity/0.json b/annotations/src/main/resources/revisions/TileEntity/0.json deleted file mode 100644 index c3a6d143c5..0000000000 --- a/annotations/src/main/resources/revisions/TileEntity/0.json +++ /dev/null @@ -1 +0,0 @@ -{fields:[{name:cons,type:mindustry.world.modules.ConsumeModule,size:-1},{name:health,type:float,size:4},{name:items,type:mindustry.world.modules.ItemModule,size:-1},{name:liquids,type:mindustry.world.modules.LiquidModule,size:-1},{name:power,type:mindustry.world.modules.PowerModule,size:-1},{name:team,type:mindustry.game.Team,size:-1},{name:x,type:float,size:4},{name:y,type:float,size:4}]} \ No newline at end of file diff --git a/annotations/src/main/resources/revisions/UnitEntity/0.json b/annotations/src/main/resources/revisions/UnitEntity/0.json deleted file mode 100644 index d1cff2a24e..0000000000 --- a/annotations/src/main/resources/revisions/UnitEntity/0.json +++ /dev/null @@ -1 +0,0 @@ -{fields:[{name:armor,type:float,size:4},{name:controller,type:mindustry.entities.units.UnitController,size:-1},{name:elevation,type:float,size:4},{name:health,type:float,size:4},{name:isShooting,type:boolean,size:1},{name:rotation,type:float,size:4},{name:shield,type:float,size:4},{name:spawnedByCore,type:boolean,size:1},{name:stack,type:mindustry.type.ItemStack,size:-1},{name:statuses,type:arc.struct.Array,size:-1},{name:team,type:mindustry.game.Team,size:-1},{name:type,type:mindustry.type.UnitType,size:-1},{name:vel,type:arc.math.geom.Vec2,size:-1},{name:x,type:float,size:4},{name:y,type:float,size:4}]} \ No newline at end of file diff --git a/annotations/src/main/resources/revisions/WeatherEntity/0.json b/annotations/src/main/resources/revisions/WeatherEntity/0.json deleted file mode 100644 index 84ba06dbcd..0000000000 --- a/annotations/src/main/resources/revisions/WeatherEntity/0.json +++ /dev/null @@ -1 +0,0 @@ -{fields:[{name:intensity,type:float,size:4},{name:life,type:float,size:4},{name:opacity,type:float,size:4},{name:weather,type:mindustry.type.Weather,size:-1},{name:x,type:float,size:4},{name:y,type:float,size:4}]} \ No newline at end of file diff --git a/core/assets/bundles/bundle.properties b/core/assets/bundles/bundle.properties index c34682af72..deeb42f65e 100644 --- a/core/assets/bundles/bundle.properties +++ b/core/assets/bundles/bundle.properties @@ -786,15 +786,12 @@ rules.playerhealthmultiplier = Player Health Multiplier rules.playerdamagemultiplier = Player Damage Multiplier rules.unitdamagemultiplier = Unit Damage Multiplier rules.enemycorebuildradius = Enemy Core No-Build Radius:[lightgray] (tiles) -rules.respawntime = Respawn Time:[lightgray] (sec) rules.wavespacing = Wave Spacing:[lightgray] (sec) rules.buildcostmultiplier = Build Cost Multiplier rules.buildspeedmultiplier = Build Speed Multiplier rules.deconstructrefundmultiplier = Deconstruct Refund Multiplier rules.waitForWaveToEnd = Waves Wait for Enemies rules.dropzoneradius = Drop Zone Radius:[lightgray] (tiles) -rules.respawns = Max respawns per wave -rules.limitedRespawns = Limit Respawns rules.title.waves = Waves rules.title.respawns = Respawns rules.title.resourcesbuilding = Resources & Building diff --git a/core/src/mindustry/game/Gamemode.java b/core/src/mindustry/game/Gamemode.java index 30f7eccf8d..f202daaec8 100644 --- a/core/src/mindustry/game/Gamemode.java +++ b/core/src/mindustry/game/Gamemode.java @@ -16,7 +16,6 @@ public enum Gamemode{ rules.infiniteResources = true; rules.waves = true; rules.waveTimer = false; - rules.respawnTime = 0f; }), attack(rules -> { rules.attackMode = true; @@ -24,7 +23,6 @@ public enum Gamemode{ pvp(rules -> { rules.pvp = true; rules.enemyCoreBuildRadius = 600f; - rules.respawnTime = 60 * 10; rules.buildCostMultiplier = 1f; rules.buildSpeedMultiplier = 1f; rules.playerDamageMultiplier = 0.33f; @@ -39,7 +37,6 @@ public enum Gamemode{ rules.waves = false; rules.enemyCoreBuildRadius = 0f; rules.waveTimer = false; - rules.respawnTime = 0f; }); private final Cons rules; diff --git a/core/src/mindustry/game/Rules.java b/core/src/mindustry/game/Rules.java index 82aa255a9d..9b7bd5ba33 100644 --- a/core/src/mindustry/game/Rules.java +++ b/core/src/mindustry/game/Rules.java @@ -48,8 +48,6 @@ public class Rules{ public float enemyCoreBuildRadius = 400f; /** Radius around enemy wave drop zones.*/ public float dropZoneRadius = 300f; - /** Player respawn time in ticks. */ - public float respawnTime = 60 * 4; /** Time between waves in ticks. */ public float waveSpacing = 60 * 60 * 2; /** How many times longer a boss wave takes. */ @@ -62,10 +60,6 @@ public class Rules{ public @Nullable Sector sector; /** Spawn layout. */ public Array spawns = new Array<>(); - /** Determines if there should be limited respawns. */ - public boolean limitedRespawns = false; - /** How many times player can respawn during one wave. */ - public int respawns = 5; /** Whether to pause the wave timer until all enemies are destroyed. */ public boolean waitEnemies = false; /** Determinates if gamemode is attack mode */ diff --git a/core/src/mindustry/ui/dialogs/CustomRulesDialog.java b/core/src/mindustry/ui/dialogs/CustomRulesDialog.java index f77e437524..629add59f2 100644 --- a/core/src/mindustry/ui/dialogs/CustomRulesDialog.java +++ b/core/src/mindustry/ui/dialogs/CustomRulesDialog.java @@ -133,9 +133,6 @@ public class CustomRulesDialog extends FloatingDialog{ number("$rules.wavespacing", false, f -> rules.waveSpacing = f * 60f, () -> rules.waveSpacing / 60f, () -> true); number("$rules.dropzoneradius", false, f -> rules.dropZoneRadius = f * tilesize, () -> rules.dropZoneRadius / tilesize, () -> true); - title("$rules.title.respawns"); - number("$rules.respawntime", f -> rules.respawnTime = f * 60f, () -> rules.respawnTime / 60f); - title("$rules.title.resourcesbuilding"); check("$rules.infiniteresources", b -> rules.infiniteResources = b, () -> rules.infiniteResources); check("$rules.reactorexplosions", b -> rules.reactorExplosions = b, () -> rules.reactorExplosions); diff --git a/core/src/mindustry/world/blocks/storage/CoreBlock.java b/core/src/mindustry/world/blocks/storage/CoreBlock.java index e505ca32d8..350fb0065c 100644 --- a/core/src/mindustry/world/blocks/storage/CoreBlock.java +++ b/core/src/mindustry/world/blocks/storage/CoreBlock.java @@ -47,7 +47,8 @@ public class CoreBlock extends StorageBlock{ if(!net.client()){ Unitc unit = block.unitType.create(tile.team()); unit.set(entity); - unit.impulse(0f, 2f); + unit.rotation(90f); + unit.impulse(0f, 3f); unit.controller(player); unit.spawnedByCore(true); unit.add();