diff --git a/annotations/src/main/resources/revisions/BuilderUnitEntity/0.json b/annotations/src/main/resources/revisions/BuilderUnitEntity/0.json new file mode 100644 index 0000000000..010ca755c5 --- /dev/null +++ b/annotations/src/main/resources/revisions/BuilderUnitEntity/0.json @@ -0,0 +1 @@ +{fields:[{name:elevation,type:float,size:4},{name:health,type:float,size:4},{name:rotation,type:float,size:4},{name:shield,type:float,size:4},{name:team,type:mindustry.game.Team,size:-1},{name:type,type:mindustry.type.UnitType,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 new file mode 100644 index 0000000000..576dffb934 --- /dev/null +++ b/annotations/src/main/resources/revisions/BulletEntity/0.json @@ -0,0 +1 @@ +{fields:[{name:damage,type:float,size:4},{name:data,type:java.lang.Object,size:-1},{name:lifetime,type:float,size:4},{name:team,type:mindustry.game.Team,size:-1},{name:time,type:float,size:4},{name:type,type:mindustry.entities.bullet.BulletType,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 new file mode 100644 index 0000000000..010ca755c5 --- /dev/null +++ b/annotations/src/main/resources/revisions/CommanderUnitWaterMoveEntity/0.json @@ -0,0 +1 @@ +{fields:[{name:elevation,type:float,size:4},{name:health,type:float,size:4},{name:rotation,type:float,size:4},{name:shield,type:float,size:4},{name:team,type:mindustry.game.Team,size:-1},{name:type,type:mindustry.type.UnitType,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 new file mode 100644 index 0000000000..b8d564d18c --- /dev/null +++ b/annotations/src/main/resources/revisions/DecalEntity/0.json @@ -0,0 +1 @@ +{fields:[{name:color,type:arc.graphics.Color,size:-1},{name:lifetime,type:float,size:4},{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 new file mode 100644 index 0000000000..4e23d76400 --- /dev/null +++ b/annotations/src/main/resources/revisions/EffectEntity/0.json @@ -0,0 +1 @@ +{fields:[{name:color,type:arc.graphics.Color,size:-1},{name:data,type:java.lang.Object,size:-1},{name:lifetime,type:float,size:4},{name:offsetX,type:float,size:4},{name:offsetY,type:float,size:4},{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 new file mode 100644 index 0000000000..a5423a835b --- /dev/null +++ b/annotations/src/main/resources/revisions/FireEntity/0.json @@ -0,0 +1 @@ +{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/LegsUnitEntity/0.json b/annotations/src/main/resources/revisions/LegsUnitEntity/0.json new file mode 100644 index 0000000000..40c3cdbcdf --- /dev/null +++ b/annotations/src/main/resources/revisions/LegsUnitEntity/0.json @@ -0,0 +1 @@ +{fields:[{name:baseRotation,type:float,size:4},{name:elevation,type:float,size:4},{name:health,type:float,size:4},{name:rotation,type:float,size:4},{name:shield,type:float,size:4},{name:team,type:mindustry.game.Team,size:-1},{name:type,type:mindustry.type.UnitType,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 new file mode 100644 index 0000000000..0f5535c862 --- /dev/null +++ b/annotations/src/main/resources/revisions/MinerUnitEntity/0.json @@ -0,0 +1 @@ +{fields:[{name:elevation,type:float,size:4},{name:health,type:float,size:4},{name:mineTile,type:mindustry.world.Tile,size:-1},{name:rotation,type:float,size:4},{name:shield,type:float,size:4},{name:team,type:mindustry.game.Team,size:-1},{name:type,type:mindustry.type.UnitType,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 new file mode 100644 index 0000000000..ec8b6dc412 --- /dev/null +++ b/annotations/src/main/resources/revisions/PlayerEntity/0.json @@ -0,0 +1 @@ +{fields:[{name:admin,type:boolean,size:1},{name:color,type:arc.graphics.Color,size:-1},{name:deathTimer,type:float,size:4},{name:lastText,type:java.lang.String,size:-1},{name:mouseX,type:float,size:4},{name:mouseY,type:float,size:4},{name:name,type:java.lang.String,size:-1},{name:team,type:mindustry.game.Team,size:-1},{name:textFadeTime,type:float,size:4},{name:typing,type:boolean,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 new file mode 100644 index 0000000000..09114ed8ea --- /dev/null +++ b/annotations/src/main/resources/revisions/PuddleEntity/0.json @@ -0,0 +1 @@ +{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 new file mode 100644 index 0000000000..2e02b6b8d2 --- /dev/null +++ b/annotations/src/main/resources/revisions/TileEntity/0.json @@ -0,0 +1 @@ +{fields:[{name:health,type:float,size:4},{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 new file mode 100644 index 0000000000..010ca755c5 --- /dev/null +++ b/annotations/src/main/resources/revisions/UnitEntity/0.json @@ -0,0 +1 @@ +{fields:[{name:elevation,type:float,size:4},{name:health,type:float,size:4},{name:rotation,type:float,size:4},{name:shield,type:float,size:4},{name:team,type:mindustry.game.Team,size:-1},{name:type,type:mindustry.type.UnitType,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 new file mode 100644 index 0000000000..84ba06dbcd --- /dev/null +++ b/annotations/src/main/resources/revisions/WeatherEntity/0.json @@ -0,0 +1 @@ +{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/src/mindustry/core/Logic.java b/core/src/mindustry/core/Logic.java index c56c1d7303..55ef78647e 100644 --- a/core/src/mindustry/core/Logic.java +++ b/core/src/mindustry/core/Logic.java @@ -179,7 +179,7 @@ public class Logic implements ApplicationListener{ if(entry.cooldown < 0 && !entry.weather.isActive()){ float duration = Mathf.random(entry.minDuration, entry.maxDuration); entry.cooldown = duration + Mathf.random(entry.minFrequency, entry.maxFrequency); - entry.weather.create(entry.intensity, duration); + Call.createWeather(entry.weather, entry.intensity, duration); } } } @@ -237,7 +237,11 @@ public class Logic implements ApplicationListener{ universe.update(); } Time.update(); - updateWeather(); + + //weather is serverside + if(!net.client()){ + updateWeather(); + } if(state.rules.waves && state.rules.waveTimer && !state.gameOver){ if(!state.rules.waitForWaveToEnd || state.enemies == 0){ diff --git a/core/src/mindustry/type/Weather.java b/core/src/mindustry/type/Weather.java index 04aae8ec42..8952756e0d 100644 --- a/core/src/mindustry/type/Weather.java +++ b/core/src/mindustry/type/Weather.java @@ -67,6 +67,11 @@ public abstract class Weather extends MappableContent{ return ContentType.weather; } + @Remote + public static void createWeather(Weather weather, float intensity, float duration){ + weather.create(intensity, duration); + } + public static class WeatherEntry{ /** The type of weather used. */ public Weather weather; diff --git a/gradle.properties b/gradle.properties index 663c72687f..bd4bb38d4f 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,3 +1,3 @@ org.gradle.daemon=true org.gradle.jvmargs=-Xms256m -Xmx1024m -archash=96baae84beb618f21b6b01b1da3ce11991df5730 +archash=ef4e114c648101c2d49ab98c1801737450f2a93a