This commit is contained in:
Anuken
2020-11-28 09:43:35 -05:00
parent 2a6b0fd0ce
commit 8a424111f0
5 changed files with 23 additions and 9 deletions

View File

@@ -135,8 +135,8 @@ public class Logic implements ApplicationListener{
//convert all blocks to neutral, randomly killing them
if(tile.isCenter() && tile.build != null && tile.build.team == state.rules.waveTeam){
Building b = tile.build;
Call.setTeam(b, Team.derelict);
Time.run(Mathf.random(0f, 60f * 6f), () -> {
Call.setTeam(b, Team.derelict);
if(Mathf.chance(0.25)){
b.kill();
}

View File

@@ -77,6 +77,8 @@ abstract class MinerComp implements Itemsc, Posc, Teamc, Rotc, Drawc{
mineTimer = 0;
if(core != null && within(core, mineTransferRange) && core.acceptStack(item, 1, this) == 1 && offloadImmediately()){
//add item to inventory before it is transferred
if(item() == item) addItem(item);
Call.transferItemTo(self(), item, 1,
mineTile.worldx() + Mathf.range(tilesize / 2f),
mineTile.worldy() + Mathf.range(tilesize / 2f), core);

View File

@@ -105,7 +105,7 @@ public abstract class InputHandler implements InputProcessor, GestureListener{
public static void transferItemTo(@Nullable Unit unit, Item item, int amount, float x, float y, Building build){
if(build == null || build.items == null) return;
if(unit != null) unit.stack.amount = Math.max(unit.stack.amount - amount, 0);
if(unit != null && unit.item() == item) unit.stack.amount = Math.max(unit.stack.amount - amount, 0);
for(int i = 0; i < Mathf.clamp(amount / 3, 1, 8); i++){
Time.run(i * 3, () -> createItemTransfer(item, amount, x, y, build, () -> {}));