mirror of
https://github.com/Anuken/Mindustry.git
synced 2025-01-20 09:17:19 +07:00
Cease node dumbness (#6670)
* Cease. * Mobile players are second rate citizens * Undo config on ratelimit, revert PowerNode for loop * Fix being unable to drop items into core vaults when there are over 1k of the item already
This commit is contained in:
parent
12e1f328e8
commit
2bfc23c216
@ -344,7 +344,14 @@ public abstract class InputHandler implements InputProcessor, GestureListener{
|
||||
public static void tileConfig(@Nullable Player player, Building build, @Nullable Object value){
|
||||
if(build == null) return;
|
||||
if(net.server() && (!Units.canInteract(player, build) ||
|
||||
!netServer.admins.allowAction(player, ActionType.configure, build.tile, action -> action.config = value))) throw new ValidateException(player, "Player cannot configure a tile.");
|
||||
!netServer.admins.allowAction(player, ActionType.configure, build.tile, action -> action.config = value))){
|
||||
var packet = new TileConfigCallPacket(); //undo the config on the client
|
||||
packet.player = player;
|
||||
packet.build = build;
|
||||
packet.value = build.config();
|
||||
player.con.send(packet, true);
|
||||
throw new ValidateException(player, "Player cannot configure a tile.");
|
||||
}
|
||||
build.configured(player == null || player.dead() ? null : player.unit(), value);
|
||||
Core.app.post(() -> Events.fire(new ConfigEvent(build, player, value)));
|
||||
}
|
||||
|
@ -355,7 +355,7 @@ public class PowerNode extends PowerBlock{
|
||||
|
||||
@Override
|
||||
public void placed(){
|
||||
if(net.client()) return;
|
||||
if(net.client() || power.links.size > 0) return;
|
||||
|
||||
getPotentialLinks(tile, team, other -> {
|
||||
if(!power.links.contains(other.pos())){
|
||||
@ -384,15 +384,15 @@ public class PowerNode extends PowerBlock{
|
||||
return false;
|
||||
}
|
||||
|
||||
if(this == other){
|
||||
if(other.power.links.size == 0){
|
||||
if(this == other){ //double tapped
|
||||
if(other.power.links.size == 0 || Core.input.shift()){ //find links
|
||||
int[] total = {0};
|
||||
getPotentialLinks(tile, team, link -> {
|
||||
if(!insulated(this, link) && total[0]++ < maxNodes){
|
||||
configure(link.pos());
|
||||
}
|
||||
});
|
||||
}else{
|
||||
}else{ //clear links
|
||||
while(power.links.size > 0){
|
||||
configure(power.links.get(0));
|
||||
}
|
||||
|
@ -84,7 +84,7 @@ public class StorageBlock extends Block{
|
||||
|
||||
@Override
|
||||
public int getMaximumAccepted(Item item){
|
||||
return itemCapacity;
|
||||
return linkedCore != null ? linkedCore.getMaximumAccepted(item) : itemCapacity;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
Loading…
Reference in New Issue
Block a user