From b1b89290b97160466d5d840f03a23a20b370f6fa Mon Sep 17 00:00:00 2001 From: Anuken Date: Sat, 7 Aug 2021 12:08:30 -0400 Subject: [PATCH] Implemented Anuken/Mindustry-Suggestions/issues/2809 --- .../blocks/production/disassembler.png | Bin 2260 -> 2264 bytes core/src/mindustry/input/Placement.java | 9 ++++++++- gradle.properties | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/core/assets-raw/sprites/blocks/production/disassembler.png b/core/assets-raw/sprites/blocks/production/disassembler.png index 7dbfcb14742caad5cde944dc723cfc0c919f96e7..4e4a4d3433803439bff11a56c0b27d58b65d9bca 100644 GIT binary patch delta 1796 zcmV+f2mAQc5!exsF@KUtL_t(|ob6pbi(EGpJzflU9b8O?EnEyKCc#BW9TpQzaIwXb zA}pjcE<=7miu{bQxJy`4ZLx(5V~k0WD%FxqVW!w(*qy?pj+;1z(ORRqx?j4Q8QXKJ znfIh8>6~{ZJ?Toi_VdxNuLrkx(F^;po{M2lZ|u3^S>R2Bihmc0oyla1`T4ACB3sn4 z0{~kQ)`y++!y>}`e6|%VLkk}}`5%o4`Tea3?R@N%7dR29>mRZR5qwZ-vgedY8v?5r9VFdu{B3MllSgi=r1AsRI zr2pK*CGzvQ>-Yk-rfDe;2d)MIDi)B)&wpEcM>)#GHRMJPMR)|42-dWZnl9>+06F>P zHA)2Uo3bhqTCA-_1Z@{}K>&*U61fPiX4+eXh^j8a5`VbxVj~Q^Z3puIQFUZ55hB|e zj|kfGFEzrY6_n&tVZ4dw&=7WXDO)H2Jp6b$&m}yKyyvAWGz7xKap{p|5`QK-S~UDxd3wSTAI9FX16>AeFof`lR#oOR68*)WxVViZ36iTJwyO>+^Igqqz7p;oJ80p@)M#((7w3pp@{w2nKtMG zmVZ9=pZ@N8&MIIPp$5zFxv3kvKRd(e?j3dblKlC_g(W%s_T8|0uk7Px71HLud)KKOEY zoxMUvL$4AD6hR7C6CrY`l(u`@gM7d_8oEvqtPZhk+G{2sXc!H(j0s85iePmKXVVOH zfA^9PIENwovm0 z<%0vsPncg^u=Bzk^883XtA9x#s%K<%)H=PfCw@2Vzj}@%EDl-J#0zmx2mIBE)p-k` zUk1*+l zL@=!pvo^Tp`l`WjXd;9CSSy~>`eBz~T|Hky^PP}GZ2{iiPOBxX5_iA)a^b&cn;pPr z2_f$3);$(BQG~&8xG?aY(7JC#*U?Z4@3IJaUNmDz+V#VsqoEofop(`$G7op}?=5XG zQr?%43m7^Y`o6Q!2Ce}DyjYWf2oyj*6j=DES%SF=vUXA5cUbtKMCf*k(uV{KA7yp4 m-7RGe$SuKT0b8^qS;GI&P6X@5}hBC#`>Off&7bxmZ8 zI(7hHE5iD)lYUr4n4izKf@NsoV<-Qk5h1_76``Gvo$>-F0(Jd;79oO)V`v~7YWV-x`;C_*&x zBt(!8&}2t+-+!wD0E;3}iCNx?b%+o}eu7p6i!iJJKwSi@Ndl`CA)5RINd&7^ux$YF zT7dMQd$>e?9(NsIpw=`k<>A29AV9?e68ZUWYwsvWnYf1B$e{?2;1a=__EFPCT@oNC zzr03?;C)k8B|?j}wTPhYqAmzPkzXPgq18-#ix5%OMSoZV7hY_Hfj8|y{y(aY>?J~E zJL3^STmGd+xU_j1%QViF6X&~r;+!(bY+|}3^^1*{Z8mXKA+s`FPR0xN)p z{QO#;uv8GP&W#w3;GQAX_p1=0Du9Rl{NDV0)lWd<_;dms`3WggwXkKu zj~^XZpH;sjp&s+_!Qnz)IHI3EekKYvxV`I|9e=#`+m{DqH*|XMfQ+CaKhNy^e6|$F zLVi!=A^>gGWkOAaT3c1Ef~c``EBV0dHzTjkHidjD?OxRpHxI!!!g)jw`FWtmWf^-#qA>`WVU0iKVrb-`*0HCTqvP2JG_*%?lE@2JC<%ii5sb&&xO+Z8j#EL+*A=(KU*Oa7n zVkRP7g0wIs{~aZQcQJYMl;oz7pHN#GMP1u;5ln6=k>nrk+){M+AM%Xe(jn^1nqo*Btj(l z+%=B~rZr;L2De;aH5d*}WUwD=#dBIe>=LXiB}-_&6LP36z}wqtwS;xTyTa3A2_f$3 z*7dZTD8gVkTv#O1x-4%**U?Z4Z?gz_UNmDz+V#VsqoEofowrehG7op}?=5XGQr?%4 z3m7^Y`mVFo2Ce}uJYQb^iko6*fQqL9)jI+Vy&&y_YuDZvSoo+}g1HK^c2VDTSooks h=yr!ran^UqKw|&^002ovPDHLkV1io&P$&QZ diff --git a/core/src/mindustry/input/Placement.java b/core/src/mindustry/input/Placement.java index f4afb96683..55044dc8e0 100644 --- a/core/src/mindustry/input/Placement.java +++ b/core/src/mindustry/input/Placement.java @@ -108,7 +108,13 @@ public class Placement{ points.addAll(result); } + public static boolean isSidePlace(Seq plans){ + return plans.size > 1 && Mathf.mod(Tile.relativeTo(plans.first().x, plans.first().y, plans.get(1).x, plans.get(1).y) - plans.first().rotation, 2) == 1; + } + public static void calculateBridges(Seq plans, ItemBridge bridge){ + if(isSidePlace(plans)) return; + //check for orthogonal placement + unlocked state if(!(plans.first().x == plans.peek().x || plans.first().y == plans.peek().y) || !bridge.unlockedNow()){ return; @@ -170,6 +176,8 @@ public class Placement{ } public static void calculateDuctBridges(Seq plans, DuctBridge bridge){ + if(isSidePlace(plans)) return; + //check for orthogonal placement + unlocked state if(!(plans.first().x == plans.peek().x || plans.first().y == plans.peek().y) || !bridge.unlockedNow()){ return; @@ -180,7 +188,6 @@ public class Placement{ var result = plans1.clear(); var team = player.team(); - var rot = plans.first().rotation; outer: for(int i = 0; i < plans.size;){ diff --git a/gradle.properties b/gradle.properties index fb533c1a2f..dc2ce3354d 100644 --- a/gradle.properties +++ b/gradle.properties @@ -8,4 +8,4 @@ kapt.include.compile.classpath=false kotlin.stdlib.default.dependency=false #needed for android compilation android.useAndroidX=true -archash=e226c78ba913d348c97430e453f038e824c06bcb +archash=28f7dea17ba559a28e79111adc93cf0496ced031