Closes Anuken/Mindustry-Suggestions/issues/4780 (dumping neoplasm from tanks)

This commit is contained in:
Anuken
2023-11-19 19:09:15 -05:00
parent afc2e15c51
commit b189bfdf44
5 changed files with 27 additions and 2 deletions

View File

@@ -5,6 +5,7 @@ import arc.math.*;
import arc.util.*;
import arc.util.io.*;
import mindustry.content.*;
import mindustry.entities.*;
import mindustry.gen.*;
import mindustry.graphics.*;
import mindustry.logic.*;
@@ -140,6 +141,16 @@ public class PayloadDeconstructor extends PayloadBlock{
float shift = edelta() * deconstructSpeed / deconstructing.buildTime();
float realShift = Math.min(shift, 1f - progress);
//if began deconstruction...
if(progress == 0f && shift > 0f && deconstructing instanceof BuildPayload pay){
var build = pay.build;
//dump liquid on floor (does not respect block configuration with respect to dumping liquids on floor)
if(build.liquids != null && build.liquids.currentAmount() > 0){
float perCell = build.liquids.currentAmount() / (block.size * block.size) * 2f;
tile.getLinkedTiles(other -> Puddles.deposit(other, build.liquids.current(), perCell));
}
}
progress += shift;
time += edelta();