Sensor operating on incorrect tile of a tileable display (#11069)
* Sensor operating on incorrect tile of a tileable display * Moved rootDisplay to LogicDisplayBuild
This commit is contained in:
@@ -73,6 +73,8 @@ public class LogicDisplay extends Block{
|
||||
}
|
||||
|
||||
public class LogicDisplayBuild extends Building{
|
||||
//The root display (bottom left corner of display for tileable displays)
|
||||
public LogicDisplayBuild rootDisplay = this;
|
||||
public @Nullable FrameBuffer buffer;
|
||||
public float color = Color.whiteFloatBits;
|
||||
public float stroke = 1f;
|
||||
@@ -111,8 +113,8 @@ public class LogicDisplay extends Block{
|
||||
public double sense(LAccess sensor){
|
||||
return switch(sensor){
|
||||
case displayWidth, displayHeight -> displaySize;
|
||||
case bufferSize -> commands.size;
|
||||
case operations -> operations;
|
||||
case bufferSize -> rootDisplay.commands.size;
|
||||
case operations -> rootDisplay.operations;
|
||||
default -> super.sense(sensor);
|
||||
};
|
||||
}
|
||||
|
||||
@@ -118,8 +118,6 @@ public class TileableLogicDisplay extends LogicDisplay{
|
||||
}
|
||||
|
||||
public class TileableLogicDisplayBuild extends LogicDisplayBuild{
|
||||
//bottom left corner of display
|
||||
public TileableLogicDisplayBuild rootDisplay = this;
|
||||
//size of display area
|
||||
public int tilesWidth = 1, tilesHeight = 1, originX, originY;
|
||||
public @Nullable Seq<MergeBuffer> prevBuffers;
|
||||
|
||||
Reference in New Issue
Block a user