继续修改部分tooltip方法

This commit is contained in:
17146 2025-05-09 22:39:30 +08:00 committed by Light_Quanta
parent e8a27a99cf
commit 43afba3b4c
No known key found for this signature in database
GPG key ID: 11A39A1B8C890959
3 changed files with 21 additions and 6 deletions

View file

@ -1,7 +1,7 @@
package com.atsuishio.superbwarfare.client.tooltip; package com.atsuishio.superbwarfare.client.tooltip;
import com.atsuishio.superbwarfare.client.tooltip.component.GunImageComponent; import com.atsuishio.superbwarfare.client.tooltip.component.GunImageComponent;
import com.atsuishio.superbwarfare.init.ModPerks; import com.atsuishio.superbwarfare.perk.Perk;
import com.atsuishio.superbwarfare.tools.FormatTool; import com.atsuishio.superbwarfare.tools.FormatTool;
import net.minecraft.ChatFormatting; import net.minecraft.ChatFormatting;
import net.minecraft.network.chat.Component; import net.minecraft.network.chat.Component;
@ -15,8 +15,13 @@ public class ClientLauncherImageTooltip extends ClientGunImageTooltip {
@Override @Override
protected Component getDamageComponent() { protected Component getDamageComponent() {
double damage = data.damage(); double damage = data.damage();
int perkLevel = data.perk.getLevel(ModPerks.MICRO_MISSILE);
if (perkLevel > 0) damage *= 1.1f + perkLevel * 0.1f; for (var type : Perk.Type.values()) {
var instance = data.perk.getInstance(type);
if (instance != null) {
damage = instance.perk().getDisplayDamage(damage, data, instance);
}
}
double explosionDamage = data.explosionDamage(); double explosionDamage = data.explosionDamage();

View file

@ -1,7 +1,7 @@
package com.atsuishio.superbwarfare.client.tooltip; package com.atsuishio.superbwarfare.client.tooltip;
import com.atsuishio.superbwarfare.client.tooltip.component.GunImageComponent; import com.atsuishio.superbwarfare.client.tooltip.component.GunImageComponent;
import com.atsuishio.superbwarfare.init.ModPerks; import com.atsuishio.superbwarfare.perk.Perk;
import com.atsuishio.superbwarfare.tools.FormatTool; import com.atsuishio.superbwarfare.tools.FormatTool;
import net.minecraft.ChatFormatting; import net.minecraft.ChatFormatting;
import net.minecraft.network.chat.Component; import net.minecraft.network.chat.Component;
@ -15,8 +15,13 @@ public class ClientSecondaryCataclysmImageTooltip extends ClientEnergyImageToolt
@Override @Override
protected Component getDamageComponent() { protected Component getDamageComponent() {
double damage = data.damage(); double damage = data.damage();
int perkLevel = data.perk.getLevel(ModPerks.MICRO_MISSILE);
if (perkLevel > 0) damage *= 1.1f + perkLevel * 0.1f; for (var type : Perk.Type.values()) {
var instance = data.perk.getInstance(type);
if (instance != null) {
damage = instance.perk().getDisplayDamage(damage, data, instance);
}
}
double explosionDamage = data.explosionDamage(); double explosionDamage = data.explosionDamage();

View file

@ -27,4 +27,9 @@ public class MicroMissile extends AmmoPerk {
projectile.setExplosionDamage(damage); projectile.setExplosionDamage(damage);
} }
} }
@Override
public double getDisplayDamage(double damage, GunData data, PerkInstance instance) {
return damage * (1.1f + instance.level() * 0.1f);
}
} }