Duo range buff + graphite ammo buff

This commit is contained in:
Anuken
2025-04-05 12:59:26 -04:00
parent 9647b4fff6
commit 8771504cbe
8 changed files with 26 additions and 42 deletions

View File

@@ -1231,7 +1231,6 @@ setting.bloomblur.name = Bloom Blur
setting.effects.name = Display Effects setting.effects.name = Display Effects
setting.destroyedblocks.name = Display Destroyed Blocks setting.destroyedblocks.name = Display Destroyed Blocks
setting.blockstatus.name = Display Block Status setting.blockstatus.name = Display Block Status
setting.displayselection.name = Display Block Configs on Hover
setting.conveyorpathfinding.name = Conveyor Placement Pathfinding setting.conveyorpathfinding.name = Conveyor Placement Pathfinding
setting.sensitivity.name = Controller Sensitivity setting.sensitivity.name = Controller Sensitivity
setting.saveinterval.name = Save Interval setting.saveinterval.name = Save Interval

View File

@@ -3075,17 +3075,26 @@ public class Blocks{
Items.graphite, new BasicBulletType(3.5f, 18){{ Items.graphite, new BasicBulletType(3.5f, 18){{
width = 9f; width = 9f;
height = 12f; height = 12f;
reloadMultiplier = 0.6f;
ammoMultiplier = 4; ammoMultiplier = 4;
lifetime = 60f; lifetime = 60f;
rangeChange = 16f;
hitColor = backColor = trailColor = Color.valueOf("858a9b");
frontColor = Color.valueOf("dae1ee");
}}, }},
Items.silicon, new BasicBulletType(3f, 12){{ Items.silicon, new BasicBulletType(3f, 12){{
width = 7f; width = 7f;
height = 9f; height = 9f;
homingPower = 0.1f; homingPower = 0.2f;
reloadMultiplier = 1.5f; reloadMultiplier = 1.5f;
ammoMultiplier = 5; ammoMultiplier = 5;
lifetime = 60f; lifetime = 60f;
trailLength = 5;
trailWidth = 1.5f;
hitColor = backColor = trailColor = Color.valueOf("707594");
frontColor = Color.valueOf("999ba0");
}} }}
); );
@@ -3107,7 +3116,7 @@ public class Blocks{
recoil = 0.5f; recoil = 0.5f;
shootY = 3f; shootY = 3f;
reload = 20f; reload = 20f;
range = 110; range = 160;
shootCone = 15f; shootCone = 15f;
ammoUseEffect = Fx.casing1; ammoUseEffect = Fx.casing1;
health = 250; health = 250;
@@ -3116,7 +3125,7 @@ public class Blocks{
coolant = consumeCoolant(0.1f); coolant = consumeCoolant(0.1f);
researchCostMultiplier = 0.05f; researchCostMultiplier = 0.05f;
limitRange(); limitRange(5f);
}}; }};
scatter = new ItemTurret("scatter"){{ scatter = new ItemTurret("scatter"){{

View File

@@ -1203,10 +1203,13 @@ abstract class BuildingComp implements Posc, Teamc, Healthc, Buildingc, Timerc,
block.drawOverlay(x, y, rotation); block.drawOverlay(x, y, rotation);
} }
public void drawItemSelection(UnlockableContent selection){ public void drawItemSelection(@Nullable UnlockableContent selection){
if(selection != null && Core.settings.getBool("displayselection", true)){ if(selection != null){
TextureRegion region = selection.fullIcon; float dx = x - block.size * tilesize/2f, dy = y + block.size * tilesize/2f, s = iconSmall / 4f;
Draw.rect(region, x, y + block.size * tilesize / 2f + 4, 8f * region.ratio(), 8f); Draw.mixcol(Color.darkGray, 1f);
Draw.rect(selection.fullIcon, dx, dy - 1, s, s);
Draw.reset();
Draw.rect(selection.fullIcon, dx, dy, s, s);
} }
} }

View File

@@ -400,7 +400,7 @@ public class SettingsMenuDialog extends BaseDialog{
graphics.sliderPref("unitlaseropacity", 100, 0, 100, 5, s -> s + "%"); graphics.sliderPref("unitlaseropacity", 100, 0, 100, 5, s -> s + "%");
graphics.sliderPref("bridgeopacity", 100, 0, 100, 5, s -> s + "%"); graphics.sliderPref("bridgeopacity", 100, 0, 100, 5, s -> s + "%");
graphics.sliderPref("maxmagnificationmultiplierpercent", 100, 100, 200, 25, s -> { graphics.sliderPref("maxmagnificationmultiplierpercent", 100, 100, 200, 25, s -> {
if(ui.settings != null){ if(ui.settings != null){
Core.settings.put("maxzoomingamemultiplier", (float)s / 100.0f); Core.settings.put("maxzoomingamemultiplier", (float)s / 100.0f);
@@ -468,7 +468,6 @@ public class SettingsMenuDialog extends BaseDialog{
graphics.checkPref("drawlight", true); graphics.checkPref("drawlight", true);
graphics.checkPref("destroyedblocks", true); graphics.checkPref("destroyedblocks", true);
graphics.checkPref("blockstatus", false); graphics.checkPref("blockstatus", false);
graphics.checkPref("displayselection", true);
graphics.checkPref("playerchat", true); graphics.checkPref("playerchat", true);
if(!mobile){ if(!mobile){
graphics.checkPref("coreitems", true); graphics.checkPref("coreitems", true);

View File

@@ -341,14 +341,7 @@ public class LandingPad extends Block{
@Override @Override
public void drawSelect(){ public void drawSelect(){
if(config != null){ drawItemSelection(config);
float dx = x - size * tilesize/2f, dy = y + size * tilesize/2f, s = iconSmall / 4f;
Draw.mixcol(Color.darkGray, 1f);
Draw.rect(config.fullIcon, dx, dy - 1, s, s);
Draw.reset();
Draw.rect(config.fullIcon, dx, dy, s, s);
}
} }
@Override @Override

View File

@@ -1,6 +1,5 @@
package mindustry.world.blocks.payloads; package mindustry.world.blocks.payloads;
import arc.graphics.*;
import arc.graphics.g2d.*; import arc.graphics.g2d.*;
import arc.math.*; import arc.math.*;
import arc.scene.ui.layout.*; import arc.scene.ui.layout.*;
@@ -158,13 +157,7 @@ public class PayloadRouter extends PayloadConveyor{
@Override @Override
public void drawSelect(){ public void drawSelect(){
if(sorted != null){ drawItemSelection(sorted);
float dx = x - size * tilesize/2f, dy = y + size * tilesize/2f, s = iconSmall / 4f;
Draw.mixcol(Color.darkGray, 1f);
Draw.rect(sorted.fullIcon, dx, dy - 1, s, s);
Draw.reset();
Draw.rect(sorted.fullIcon, dx, dy, s, s);
}
} }
@Override @Override

View File

@@ -231,13 +231,7 @@ public class BeamDrill extends Block{
@Override @Override
public void drawSelect(){ public void drawSelect(){
if(lastItem != null){ drawItemSelection(lastItem);
float dx = x - size * tilesize/2f, dy = y + size * tilesize/2f, s = iconSmall / 4f;
Draw.mixcol(Color.darkGray, 1f);
Draw.rect(lastItem.fullIcon, dx, dy - 1, s, s);
Draw.reset();
Draw.rect(lastItem.fullIcon, dx, dy, s, s);
}
} }
@Override @Override
@@ -247,7 +241,7 @@ public class BeamDrill extends Block{
if(lasers[0] == null) updateLasers(); if(lasers[0] == null) updateLasers();
warmup = Mathf.approachDelta(warmup, Mathf.num(efficiency > 0), 1f / 60f); warmup = Mathf.approachDelta(warmup, Mathf.num(efficiency > 0), 1f / 60f);
updateFacing(); updateFacing();
float multiplier = Mathf.lerp(1f, optionalBoostIntensity, optionalEfficiency); float multiplier = Mathf.lerp(1f, optionalBoostIntensity, optionalEfficiency);

View File

@@ -261,13 +261,7 @@ public class Drill extends Block{
@Override @Override
public void drawSelect(){ public void drawSelect(){
if(dominantItem != null){ drawItemSelection(dominantItem);
float dx = x - size * tilesize/2f, dy = y + size * tilesize/2f, s = iconSmall / 4f;
Draw.mixcol(Color.darkGray, 1f);
Draw.rect(dominantItem.fullIcon, dx, dy - 1, s, s);
Draw.reset();
Draw.rect(dominantItem.fullIcon, dx, dy, s, s);
}
} }
@Override @Override