Allow logic itemDrop to @air
This commit is contained in:
@@ -487,13 +487,22 @@ public class LExecutor{
|
|||||||
case itemDrop -> {
|
case itemDrop -> {
|
||||||
if(ai.itemTimer > 0) return;
|
if(ai.itemTimer > 0) return;
|
||||||
|
|
||||||
Building build = exec.building(p1);
|
//clear item when dropping to @air
|
||||||
int dropped = Math.min(unit.stack.amount, exec.numi(p2));
|
if(exec.obj(p1) == Blocks.air){
|
||||||
if(build != null && build.team == unit.team && build.isValid() && dropped > 0 && unit.within(build, logicItemTransferRange + build.block.size * tilesize/2f)){
|
//only server-side; no need to call anything, as items are synced in snapshots
|
||||||
int accepted = build.acceptStack(unit.item(), dropped, unit);
|
if(!net.client()){
|
||||||
if(accepted > 0){
|
unit.clearItem();
|
||||||
Call.transferItemTo(unit, unit.item(), accepted, unit.x, unit.y, build);
|
}
|
||||||
ai.itemTimer = LogicAI.transferDelay;
|
ai.itemTimer = LogicAI.transferDelay;
|
||||||
|
}else{
|
||||||
|
Building build = exec.building(p1);
|
||||||
|
int dropped = Math.min(unit.stack.amount, exec.numi(p2));
|
||||||
|
if(build != null && build.team == unit.team && build.isValid() && dropped > 0 && unit.within(build, logicItemTransferRange + build.block.size * tilesize/2f)){
|
||||||
|
int accepted = build.acceptStack(unit.item(), dropped, unit);
|
||||||
|
if(accepted > 0){
|
||||||
|
Call.transferItemTo(unit, unit.item(), accepted, unit.x, unit.y, build);
|
||||||
|
ai.itemTimer = LogicAI.transferDelay;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,4 +11,4 @@ android.useAndroidX=true
|
|||||||
#used for slow jitpack builds; TODO see if this actually works
|
#used for slow jitpack builds; TODO see if this actually works
|
||||||
http.socketTimeout=80000
|
http.socketTimeout=80000
|
||||||
http.connectionTimeout=80000
|
http.connectionTimeout=80000
|
||||||
archash=f9d704c4e88dfc9772e1e956268cfe8414f7b133
|
archash=95a66af563dfad96ecc4992bd0ab36b07a14e28b
|
||||||
|
|||||||
Reference in New Issue
Block a user