Bugfixes
This commit is contained in:
@@ -8,7 +8,7 @@ buildscript{
|
|||||||
}
|
}
|
||||||
|
|
||||||
dependencies{
|
dependencies{
|
||||||
classpath 'com.android.tools.build:gradle:3.5.2'
|
classpath 'com.android.tools.build:gradle:3.4.1'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -104,7 +104,7 @@ public abstract class ClientLauncher extends ApplicationCore implements Platform
|
|||||||
public void resize(int width, int height){
|
public void resize(int width, int height){
|
||||||
if(assets == null) return;
|
if(assets == null) return;
|
||||||
|
|
||||||
if(!assets.isFinished()){
|
if(!finished){
|
||||||
Draw.proj().setOrtho(0, 0, width, height);
|
Draw.proj().setOrtho(0, 0, width, height);
|
||||||
}else{
|
}else{
|
||||||
super.resize(width, height);
|
super.resize(width, height);
|
||||||
|
|||||||
@@ -484,7 +484,7 @@ public class NetServer implements ApplicationListener{
|
|||||||
for(BuildRequest req : requests){
|
for(BuildRequest req : requests){
|
||||||
if(req == null) continue;
|
if(req == null) continue;
|
||||||
Tile tile = world.tile(req.x, req.y);
|
Tile tile = world.tile(req.x, req.y);
|
||||||
if(tile == null) continue;
|
if(tile == null || (!req.breaking && req.block == null)) continue;
|
||||||
//auto-skip done requests
|
//auto-skip done requests
|
||||||
if(req.breaking && tile.block() == Blocks.air){
|
if(req.breaking && tile.block() == Blocks.air){
|
||||||
continue;
|
continue;
|
||||||
|
|||||||
@@ -75,7 +75,7 @@ public class Rules{
|
|||||||
/** Blocks that cannot be placed. */
|
/** Blocks that cannot be placed. */
|
||||||
public ObjectSet<Block> bannedBlocks = new ObjectSet<>();
|
public ObjectSet<Block> bannedBlocks = new ObjectSet<>();
|
||||||
/** Whether everything is dark. Enables lights. Experimental. */
|
/** Whether everything is dark. Enables lights. Experimental. */
|
||||||
public boolean lighting = true;
|
public boolean lighting = false;
|
||||||
/** Ambient light color, used when lighting is enabled. */
|
/** Ambient light color, used when lighting is enabled. */
|
||||||
public Color ambientLight = new Color(0.01f, 0.01f, 0.04f, 0.99f);
|
public Color ambientLight = new Color(0.01f, 0.01f, 0.04f, 0.99f);
|
||||||
|
|
||||||
|
|||||||
@@ -455,7 +455,7 @@ public abstract class InputHandler implements InputProcessor, GestureListener{
|
|||||||
}
|
}
|
||||||
|
|
||||||
protected void drawRequest(BuildRequest request){
|
protected void drawRequest(BuildRequest request){
|
||||||
drawRequest(request.x, request.y, request.block, request.rotation);
|
request.block.drawRequest(request, allRequests(), validPlace(request.x, request.y, request.block, request.rotation));
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Draws a placement icon for a specific block. */
|
/** Draws a placement icon for a specific block. */
|
||||||
|
|||||||
@@ -80,7 +80,7 @@ public class Packets{
|
|||||||
buffer.put(mobile ? (byte)1 : 0);
|
buffer.put(mobile ? (byte)1 : 0);
|
||||||
buffer.putInt(color);
|
buffer.putInt(color);
|
||||||
buffer.put(Base64Coder.decode(uuid));
|
buffer.put(Base64Coder.decode(uuid));
|
||||||
buffer.putInt(mods.size);
|
buffer.put((byte)mods.size);
|
||||||
for(int i = 0; i < mods.size; i++){
|
for(int i = 0; i < mods.size; i++){
|
||||||
TypeIO.writeString(buffer, mods.get(i));
|
TypeIO.writeString(buffer, mods.get(i));
|
||||||
}
|
}
|
||||||
@@ -97,7 +97,7 @@ public class Packets{
|
|||||||
byte[] idbytes = new byte[8];
|
byte[] idbytes = new byte[8];
|
||||||
buffer.get(idbytes);
|
buffer.get(idbytes);
|
||||||
uuid = new String(Base64Coder.encode(idbytes));
|
uuid = new String(Base64Coder.encode(idbytes));
|
||||||
int totalMods = buffer.getInt();
|
int totalMods = buffer.get();
|
||||||
mods = new Array<>(totalMods);
|
mods = new Array<>(totalMods);
|
||||||
for(int i = 0; i < totalMods; i++){
|
for(int i = 0; i < totalMods; i++){
|
||||||
mods.add(TypeIO.readString(buffer));
|
mods.add(TypeIO.readString(buffer));
|
||||||
|
|||||||
@@ -720,10 +720,12 @@ public class Block extends BlockStorage{
|
|||||||
Color color = content instanceof Item ? ((Item)content).color : content instanceof Liquid ? ((Liquid)content).color : null;
|
Color color = content instanceof Item ? ((Item)content).color : content instanceof Liquid ? ((Liquid)content).color : null;
|
||||||
if(color == null) return;
|
if(color == null) return;
|
||||||
|
|
||||||
|
float prev = Draw.scl;
|
||||||
|
|
||||||
Draw.color(color);
|
Draw.color(color);
|
||||||
Draw.scl *= req.animScale;
|
Draw.scl *= req.animScale;
|
||||||
Draw.rect(region, req.drawx(), req.drawy());
|
Draw.rect(region, req.drawx(), req.drawy());
|
||||||
Draw.scl /= req.animScale;
|
Draw.scl = prev;
|
||||||
Draw.color();
|
Draw.color();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -116,7 +116,7 @@ public abstract class BlockStorage extends UnlockableContent{
|
|||||||
Tile other = proximity.get((i + dump) % proximity.size);
|
Tile other = proximity.get((i + dump) % proximity.size);
|
||||||
Tile in = Edges.getFacingEdge(tile, other);
|
Tile in = Edges.getFacingEdge(tile, other);
|
||||||
|
|
||||||
other = other.block().getLiquidDestination(other, tile);
|
other = other.block().getLiquidDestination(other, in);
|
||||||
|
|
||||||
if(other != null && other.getTeam() == tile.getTeam() && other.block().hasLiquids && canDumpLiquid(tile, other, liquid) && other.entity.liquids != null){
|
if(other != null && other.getTeam() == tile.getTeam() && other.block().hasLiquids && canDumpLiquid(tile, other, liquid) && other.entity.liquids != null){
|
||||||
float ofract = other.entity.liquids.get(liquid) / other.block().liquidCapacity;
|
float ofract = other.entity.liquids.get(liquid) / other.block().liquidCapacity;
|
||||||
|
|||||||
@@ -140,7 +140,7 @@ public class ItemLiquidGenerator extends PowerGenerator{
|
|||||||
if(entity.generateTime > 0f){
|
if(entity.generateTime > 0f){
|
||||||
entity.generateTime -= Math.min(1f / itemDuration * entity.delta(), entity.generateTime);
|
entity.generateTime -= Math.min(1f / itemDuration * entity.delta(), entity.generateTime);
|
||||||
|
|
||||||
if(randomlyExplode && Mathf.chance(entity.delta() * 0.06 * Mathf.clamp(entity.explosiveness - 0.5f))){
|
if(randomlyExplode && state.rules.reactorExplosions && Mathf.chance(entity.delta() * 0.06 * Mathf.clamp(entity.explosiveness - 0.5f))){
|
||||||
//this block is run last so that in the event of a block destruction, no code relies on the block type
|
//this block is run last so that in the event of a block destruction, no code relies on the block type
|
||||||
Core.app.post(() -> {
|
Core.app.post(() -> {
|
||||||
entity.damage(Mathf.random(11f));
|
entity.damage(Mathf.random(11f));
|
||||||
|
|||||||
Reference in New Issue
Block a user