From dbd31b9031ba2c989283808d131e2268dbca2174 Mon Sep 17 00:00:00 2001 From: TranquillyUnpleasant <62061444+TranquillyUnpleasant@users.noreply.github.com> Date: Mon, 27 Sep 2021 23:46:28 +0500 Subject: [PATCH] Cryo tiles (#6054) * Cryo tile * tile name * Shader * Icon and property --- .../blocks/environment/pooled-cryofluid.png | Bin 0 -> 1335 bytes core/assets/bundles/bundle.properties | 1 + core/assets/icons/icons.properties | 1 + core/assets/shaders/cryofluid.frag | 35 ++++++++++++++++++ core/src/mindustry/content/Blocks.java | 18 ++++++++- core/src/mindustry/graphics/CacheLayer.java | 3 +- core/src/mindustry/graphics/Shaders.java | 3 +- 7 files changed, 58 insertions(+), 3 deletions(-) create mode 100644 core/assets-raw/sprites/blocks/environment/pooled-cryofluid.png create mode 100644 core/assets/shaders/cryofluid.frag diff --git a/core/assets-raw/sprites/blocks/environment/pooled-cryofluid.png b/core/assets-raw/sprites/blocks/environment/pooled-cryofluid.png new file mode 100644 index 0000000000000000000000000000000000000000..9d50189fd901faa4516b6d23738f91ce5e1797d0 GIT binary patch literal 1335 zcmV-71<3k|P) zaB^>EX>4U6ba`-PAZ2)IW&i+q+U=KHmgFW3hTmC5mVhLL#Bwl~bFzahKR-6EuIlbd zW|BPQq0BL0AxpA8L3M}m$L}-zhKov0A*p#TIY(Tnq{0;wkJnYso?<%t^WwdP=NEZ+ zEHFfZQLaa;TfaiCA1~ZK=y;U}-z)6f&|bI=%JRIt_2(cV=Sxm$8!F?Pajy@ zTk#BK-(uGn-bU7Qcorl>mbyYqn1_(Wv-c|kSvN_=SkSX%=#eDMMJQlMQg$Rr$jj&5 zV~o!UdP(v<3!k(9n0-n<*DaS%xy(C9n0&iH`hD`x6hAqZM@0O(V0xSSn&dgV&pEEI zt0^O+c~?{ncXrl0P&|-wIbX|YhFdYWvlTRtH8#NMvBd+eQ6UDE87NVwN|VMpHfjhl z@nFNq+yH9HT#O4hxj3QGWCOh}4t|YC0Js)(E=@c{y)${j&+66}^>?7V#A9ivm1 zl`}6f&L)6R$zouG{RLPlDeA|PqlT)ACRNR9>OqUvEIDP(Ia^+bTs5&|YT3-(id7d+ zuAbf8y?8BL1ZSX@T&#F0rB)6Vjw)!2`jQj9coT=4sPsne{CQ5gWU(YpW+tO ze~KIb9l5a3{TJi{(0%3h4Yj_0=h{i^+J!5pQLy_)XGa}*ofc=2Sl1(t!GAc0e{0}v z=xyk2=xyk2=xyk2=zn2ICjNlHKZfB?gNB}t>560<0004mX+uL$Nkc;*aB^>EX>4Tx z0C=2zkv&MmP!xqvTcs*34t9_tn4vmZ5EXIMDionYs1;guFnQ@8G-*guTpR`0f`dPc zRR4rtTK|H-_>74h8BdjDT z#OK6g1~o|h$aUG}H_kbWYY7*5n`d(!Ey()lA#h$5yuo&qkMnXWrgz=XSGse ztv>k+LwRjwnd?+TNMaF75FtQD4P{hdAx^tSiitFxCp`R7$1jpgCRZ7Z91EyIh2;3b z|KRs*&BEk_n-od_-7mKNF#-g4fo9#dzmILZc>)BUfh(=;uQq_0PtxmcEp`O-Zvz+C zZB5<-E_Z;zCtWfmM+#8+3kBf)jJ_!c4BP^JYwp}y=Qw=;GBm5y4RCM>j20<--Q(Ro zopby5PHTQYNaS*s&*o<300006VoOIv00000008+zyMF)x010qNS#tmY3ljhU3ljkV znw%H_000McNliru);0s;a80s;a80s;a80t?e517_3mVhsQQ002ovPDHLkV1lOSSS 0.55 && noise < 0.56) { + color.rgb = S2; + } else if (noise > 0.50 && noise < 0.60){ + color.rgb = S1; + } + + gl_FragColor = color; +} diff --git a/core/src/mindustry/content/Blocks.java b/core/src/mindustry/content/Blocks.java index d944f433f0..acd40284f6 100644 --- a/core/src/mindustry/content/Blocks.java +++ b/core/src/mindustry/content/Blocks.java @@ -35,7 +35,7 @@ public class Blocks implements ContentList{ public static Block //environment - air, spawn, cliff, deepwater, water, taintedWater, deepTaintedWater, tar, slag, stone, craters, charr, sand, darksand, dirt, mud, ice, snow, darksandTaintedWater, space, + air, spawn, cliff, deepwater, water, taintedWater, deepTaintedWater, tar, slag, cryofluid, stone, craters, charr, sand, darksand, dirt, mud, ice, snow, darksandTaintedWater, space, dacite, stoneWall, dirtWall, sporeWall, iceWall, daciteWall, sporePine, snowPine, pine, shrubs, whiteTree, whiteTreeDead, sporeCluster, iceSnow, sandWater, darksandWater, duneWall, sandWall, moss, sporeMoss, shale, shaleWall, shaleBoulder, sandBoulder, daciteBoulder, boulder, snowBoulder, basaltBoulder, grass, salt, @@ -196,6 +196,22 @@ public class Blocks implements ContentList{ cacheLayer = CacheLayer.tar; }}; + cryofluid = new Floor("pooled-cryofluid"){{ + drownTime = 150f; + status = StatusEffects.freezing; + statusDuration = 240f; + speedMultiplier = 0.5f; + variants = 0; + liquidDrop = Liquids.cryofluid; + liquidMultiplier = 0.5f; + isLiquid = true; + cacheLayer = CacheLayer.cryofluid; + + emitLight = true; + lightRadius = 20f; + lightColor = Color.cyan.cpy().a(0.19f); + }}; + slag = new Floor("molten-slag"){{ drownTime = 150f; status = StatusEffects.melting; diff --git a/core/src/mindustry/graphics/CacheLayer.java b/core/src/mindustry/graphics/CacheLayer.java index a68b7f6e06..3921612853 100644 --- a/core/src/mindustry/graphics/CacheLayer.java +++ b/core/src/mindustry/graphics/CacheLayer.java @@ -10,7 +10,7 @@ import static mindustry.Vars.*; public class CacheLayer{ public static CacheLayer - water, mud, tar, slag, space, normal, walls; + water, mud, cryofluid, tar, slag, space, normal, walls; public static CacheLayer[] all = {}; @@ -37,6 +37,7 @@ public class CacheLayer{ mud = new ShaderLayer(Shaders.mud), tar = new ShaderLayer(Shaders.tar), slag = new ShaderLayer(Shaders.slag), + cryofluid = new ShaderLayer(Shaders.cryofluid), space = new ShaderLayer(Shaders.space), normal = new CacheLayer(), walls = new CacheLayer() diff --git a/core/src/mindustry/graphics/Shaders.java b/core/src/mindustry/graphics/Shaders.java index 7ea78a2549..33026d6fe1 100644 --- a/core/src/mindustry/graphics/Shaders.java +++ b/core/src/mindustry/graphics/Shaders.java @@ -21,7 +21,7 @@ public class Shaders{ public static UnitBuildShader build; public static DarknessShader darkness; public static LightShader light; - public static SurfaceShader water, mud, tar, slag, space, caustics; + public static SurfaceShader water, mud, tar, slag, cryofluid, space, caustics; public static PlanetShader planet; public static PlanetGridShader planetGrid; public static AtmosphereShader atmosphere; @@ -47,6 +47,7 @@ public class Shaders{ mud = new SurfaceShader("mud"); tar = new SurfaceShader("tar"); slag = new SurfaceShader("slag"); + cryofluid = new SurfaceShader("cryofluid"); space = new SpaceShader("space"); //caustics = new SurfaceShader("caustics"){ // @Override