From 1d9598006662e97ca50464ae1bfc3ff0d50aaa0d Mon Sep 17 00:00:00 2001 From: Anuken Date: Thu, 13 Aug 2020 19:57:45 -0400 Subject: [PATCH] Bugfixes / Team access --- core/src/mindustry/entities/comp/BuildingComp.java | 1 + core/src/mindustry/entities/comp/UnitComp.java | 1 + core/src/mindustry/logic/LAccess.java | 3 ++- core/src/mindustry/world/blocks/logic/LogicBlock.java | 4 ++-- gradle.properties | 2 +- 5 files changed, 7 insertions(+), 4 deletions(-) diff --git a/core/src/mindustry/entities/comp/BuildingComp.java b/core/src/mindustry/entities/comp/BuildingComp.java index ef5958c3c8..4fb01dd60c 100644 --- a/core/src/mindustry/entities/comp/BuildingComp.java +++ b/core/src/mindustry/entities/comp/BuildingComp.java @@ -1171,6 +1171,7 @@ abstract class BuildingComp implements Posc, Teamc, Healthc, Buildingc, Timerc, public double sense(LAccess sensor){ if(sensor == LAccess.x) return x; if(sensor == LAccess.y) return y; + if(sensor == LAccess.team) return team.id; if(sensor == LAccess.health) return health; if(sensor == LAccess.efficiency) return efficiency(); if(sensor == LAccess.rotation) return rotation; diff --git a/core/src/mindustry/entities/comp/UnitComp.java b/core/src/mindustry/entities/comp/UnitComp.java index d500666ba2..85ed95939e 100644 --- a/core/src/mindustry/entities/comp/UnitComp.java +++ b/core/src/mindustry/entities/comp/UnitComp.java @@ -76,6 +76,7 @@ abstract class UnitComp implements Healthc, Physicsc, Hitboxc, Statusc, Teamc, I if(sensor == LAccess.health) return health; if(sensor == LAccess.x) return x; if(sensor == LAccess.y) return y; + if(sensor == LAccess.team) return team.id; if(sensor == LAccess.shooting) return isShooting() ? 1 : 0; if(sensor == LAccess.shootX) return aimX(); if(sensor == LAccess.shootY) return aimY(); diff --git a/core/src/mindustry/logic/LAccess.java b/core/src/mindustry/logic/LAccess.java index ebe16e8162..2128028153 100644 --- a/core/src/mindustry/logic/LAccess.java +++ b/core/src/mindustry/logic/LAccess.java @@ -23,10 +23,11 @@ public enum LAccess{ shootX, shootY, shooting, + team, //values with parameters are considered controllable enabled("to"), //"to" is standard for single parameter access - shoot("x", "y", "shoot"); + shoot("x", "y", "shoot"),; public final String[] parameters; diff --git a/core/src/mindustry/world/blocks/logic/LogicBlock.java b/core/src/mindustry/world/blocks/logic/LogicBlock.java index ee1c3ef2be..8a0ddb3886 100644 --- a/core/src/mindustry/world/blocks/logic/LogicBlock.java +++ b/core/src/mindustry/world/blocks/logic/LogicBlock.java @@ -125,7 +125,7 @@ public class LogicBlock extends Block{ int bytelen = stream.readInt(); byte[] bytes = new byte[bytelen]; - stream.read(bytes); + stream.readFully(bytes); int total = stream.readInt(); @@ -181,7 +181,7 @@ public class LogicBlock extends Block{ int bytelen = stream.readInt(); byte[] bytes = new byte[bytelen]; - stream.read(bytes); + stream.readFully(bytes); links.clear(); diff --git a/gradle.properties b/gradle.properties index 577b28a80c..f5314ae34c 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,3 +1,3 @@ org.gradle.daemon=true org.gradle.jvmargs=-Xms256m -Xmx1024m -archash=425860b7f549e36a17bc6fa5b26798af5b291480 +archash=a5c0934b3894e9f2fe793800a2adb39606f32cee