More bugfixes
This commit is contained in:
@@ -44,6 +44,12 @@ public class MapEditor{
|
|||||||
this.brushSize = 1;
|
this.brushSize = 1;
|
||||||
this.tags = tags;
|
this.tags = tags;
|
||||||
|
|
||||||
|
for (int x = 0; x < map.width(); x++) {
|
||||||
|
for (int y = 0; y < map.height(); y++) {
|
||||||
|
map.write(x, y, DataPosition.floor, (byte)Blocks.stone.id);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
drawBlock = Blocks.stone;
|
drawBlock = Blocks.stone;
|
||||||
renderer.resize(map.width(), map.height());
|
renderer.resize(map.width(), map.height());
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ import io.anuke.mindustry.io.Map;
|
|||||||
import io.anuke.mindustry.io.MapIO;
|
import io.anuke.mindustry.io.MapIO;
|
||||||
import io.anuke.mindustry.io.MapMeta;
|
import io.anuke.mindustry.io.MapMeta;
|
||||||
import io.anuke.mindustry.io.MapTileData;
|
import io.anuke.mindustry.io.MapTileData;
|
||||||
|
import io.anuke.mindustry.type.Recipe;
|
||||||
import io.anuke.mindustry.ui.dialogs.FloatingDialog;
|
import io.anuke.mindustry.ui.dialogs.FloatingDialog;
|
||||||
import io.anuke.mindustry.world.Block;
|
import io.anuke.mindustry.world.Block;
|
||||||
import io.anuke.ucore.core.Core;
|
import io.anuke.ucore.core.Core;
|
||||||
@@ -586,6 +587,7 @@ public class MapEditorDialog extends Dialog implements Disposable{
|
|||||||
|
|
||||||
for(Block block : Block.all()){
|
for(Block block : Block.all()){
|
||||||
TextureRegion[] regions = block.getCompactIcon();
|
TextureRegion[] regions = block.getCompactIcon();
|
||||||
|
if((block.synthetic() && (Recipe.getByResult(block) == null || !control.database().isUnlocked(Recipe.getByResult(block)))) && !debug) continue;
|
||||||
|
|
||||||
if(regions.length == 0 || regions[0] == Draw.region("jjfgj")) continue;
|
if(regions.length == 0 || regions[0] == Draw.region("jjfgj")) continue;
|
||||||
|
|
||||||
|
|||||||
@@ -322,7 +322,7 @@ public class MobileInput extends InputHandler implements GestureListener{
|
|||||||
for(PlaceRequest request : selection){
|
for(PlaceRequest request : selection){
|
||||||
Tile tile = request.tile();
|
Tile tile = request.tile();
|
||||||
|
|
||||||
if(tile == null || recipe == null) continue;
|
if(tile == null) continue;
|
||||||
|
|
||||||
if ((!request.remove && validPlace(tile.x, tile.y, request.recipe.result, request.rotation))
|
if ((!request.remove && validPlace(tile.x, tile.y, request.recipe.result, request.rotation))
|
||||||
|| (request.remove && validBreak(tile.x, tile.y))) {
|
|| (request.remove && validBreak(tile.x, tile.y))) {
|
||||||
@@ -337,8 +337,8 @@ public class MobileInput extends InputHandler implements GestureListener{
|
|||||||
drawRequest(request);
|
drawRequest(request);
|
||||||
|
|
||||||
//draw last placed request
|
//draw last placed request
|
||||||
if(!request.remove && request == lastPlaced){
|
if(!request.remove && request == lastPlaced && request.recipe != null){
|
||||||
recipe.result.drawPlace(tile.x, tile.y, rotation, validPlace(tile.x, tile.y, recipe.result, rotation));
|
request.recipe.result.drawPlace(tile.x, tile.y, rotation, validPlace(tile.x, tile.y, request.recipe.result, rotation));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -12,9 +12,10 @@ import io.anuke.ucore.scene.ui.layout.Table;
|
|||||||
import io.anuke.ucore.util.Bundles;
|
import io.anuke.ucore.util.Bundles;
|
||||||
import io.anuke.ucore.util.Log;
|
import io.anuke.ucore.util.Log;
|
||||||
import io.anuke.ucore.util.Strings;
|
import io.anuke.ucore.util.Strings;
|
||||||
|
import io.anuke.ucore.util.ThreadArray;
|
||||||
|
|
||||||
public class Item implements Comparable<Item>, UnlockableContent{
|
public class Item implements Comparable<Item>, UnlockableContent{
|
||||||
private static final Array<Item> items = new Array<>();
|
private static final ThreadArray<Item> items = new ThreadArray<>();
|
||||||
|
|
||||||
public final int id;
|
public final int id;
|
||||||
public final String name;
|
public final String name;
|
||||||
|
|||||||
@@ -207,7 +207,8 @@ public abstract class BaseBlock {
|
|||||||
Tile other;
|
Tile other;
|
||||||
Tile in;
|
Tile in;
|
||||||
|
|
||||||
for(Item item : Item.all()){
|
for(int ii = 0; ii < Item.all().size; ii ++){
|
||||||
|
Item item = Item.getByID(ii);
|
||||||
other = tile.getNearby(nearby[i]);
|
other = tile.getNearby(nearby[i]);
|
||||||
in = tile.getNearby(Edges.getInsideEdges(size)[i]);
|
in = tile.getNearby(Edges.getInsideEdges(size)[i]);
|
||||||
|
|
||||||
|
|||||||
@@ -343,9 +343,9 @@ public class Block extends BaseBlock implements Content{
|
|||||||
return 0;
|
return 0;
|
||||||
}else{
|
}else{
|
||||||
float result = 0f;
|
float result = 0f;
|
||||||
for(Item item : Item.all()){
|
for (int i = 0; i < Item.all().size; i++) {
|
||||||
int amount = tile.entity.items.getItem(item);
|
int amount = tile.entity.items.items[i];
|
||||||
result += item.flammability*amount;
|
result += Item.getByID(i).flammability*amount;
|
||||||
}
|
}
|
||||||
if(hasLiquids){
|
if(hasLiquids){
|
||||||
result += tile.entity.liquids.amount * tile.entity.liquids.liquid.flammability/3f;
|
result += tile.entity.liquids.amount * tile.entity.liquids.liquid.flammability/3f;
|
||||||
|
|||||||
@@ -17,7 +17,6 @@ import io.anuke.ucore.graphics.Draw;
|
|||||||
import io.anuke.ucore.util.Geometry;
|
import io.anuke.ucore.util.Geometry;
|
||||||
import io.anuke.ucore.util.Mathf;
|
import io.anuke.ucore.util.Mathf;
|
||||||
|
|
||||||
import static io.anuke.mindustry.Vars.headless;
|
|
||||||
import static io.anuke.mindustry.Vars.world;
|
import static io.anuke.mindustry.Vars.world;
|
||||||
|
|
||||||
public class Floor extends Block{
|
public class Floor extends Block{
|
||||||
@@ -141,7 +140,7 @@ public class Floor extends Block{
|
|||||||
|
|
||||||
Draw.rect(variantRegions[Mathf.randomSeed(tile.id(), 0, Math.max(0, variantRegions.length-1))], tile.worldx(), tile.worldy());
|
Draw.rect(variantRegions[Mathf.randomSeed(tile.id(), 0, Math.max(0, variantRegions.length-1))], tile.worldx(), tile.worldy());
|
||||||
|
|
||||||
if(tile.cliffs != 0){
|
if(tile.cliffs != 0 && cliffRegions != null){
|
||||||
for(int i = 0; i < 4; i ++){
|
for(int i = 0; i < 4; i ++){
|
||||||
if((tile.cliffs & (1 << i*2)) != 0) {
|
if((tile.cliffs & (1 << i*2)) != 0) {
|
||||||
Draw.colorl(i > 1 ? 0.6f : 1f);
|
Draw.colorl(i > 1 ? 0.6f : 1f);
|
||||||
|
|||||||
Reference in New Issue
Block a user