Skip to content

Commit

Permalink
Keybind for boosted jump toggle (#1664)
Browse files Browse the repository at this point in the history
  • Loading branch information
YoungOnionMC authored Aug 8, 2024
1 parent 6212db7 commit 85caae5
Show file tree
Hide file tree
Showing 5 changed files with 52 additions and 23 deletions.
4 changes: 4 additions & 0 deletions src/generated/resources/assets/gtceu/lang/en_ud.json
Original file line number Diff line number Diff line change
Expand Up @@ -2864,6 +2864,8 @@
"gtceu.key.armor_charging": "ǝןbbo⟘ ʎɹoʇuǝʌuI oʇ buıbɹɐɥƆ ɹoɯɹⱯ",
"gtceu.key.armor_hover": "ǝןbbo⟘ ɹǝʌoH ɹoɯɹⱯ",
"gtceu.key.armor_mode_switch": "ɥɔʇıʍS ǝpoW ɹoɯɹⱯ",
"gtceu.key.enable_boots": "dɯnſ pǝʇsooᗺ ǝןqɐuƎ",
"gtceu.key.enable_jetpack": "ʞɔɐdʇǝſ ǝןqɐuƎ",
"gtceu.key.tool_aoe_change": "ɥɔʇıʍS ǝpoW ƎoⱯ ןoo⟘",
"gtceu.large_boiler": "ɹǝןıoᗺ ǝbɹɐꞀ",
"gtceu.large_chemical_reactor": "ɹoʇɔɐǝᴚ ןɐɔıɯǝɥƆ ǝbɹɐꞀ",
Expand Down Expand Up @@ -5647,6 +5649,8 @@
"metaarmor.message.nightvision.disabled": "ɟɟOɔ§ :uoısıΛʇɥbıNq§",
"metaarmor.message.nightvision.enabled": "uOɐ§ :uoısıΛʇɥbıNq§",
"metaarmor.message.nightvision.error": "¡ɹǝʍod ɥbnouǝ ʇoNɔ§",
"metaarmor.nms.boosted_jump.disabled": "pǝןqɐsıᗡ ʇsooᗺ dɯnſ :ǝʇınS ™ǝןɔsnWouɐN",
"metaarmor.nms.boosted_jump.enabled": "pǝןqɐuƎ ʇsooᗺ dɯnſ :ǝʇınS ™ǝןɔsnWouɐN",
"metaarmor.nms.nightvision.disabled": "pǝןqɐsıᗡ uoısıΛʇɥbıN :ǝʇınS ™ǝןɔsnWouɐN",
"metaarmor.nms.nightvision.enabled": "pǝןqɐuƎ uoısıΛʇɥbıN :ǝʇınS ™ǝןɔsnWouɐN",
"metaarmor.nms.nightvision.error": "¡ɹǝʍod ɥbnouǝ ʇoNɔ§ :ǝʇınS ™ǝןɔsnWouɐN",
Expand Down
4 changes: 4 additions & 0 deletions src/generated/resources/assets/gtceu/lang/en_us.json
Original file line number Diff line number Diff line change
Expand Up @@ -2864,6 +2864,8 @@
"gtceu.key.armor_charging": "Armor Charging to Inventory Toggle",
"gtceu.key.armor_hover": "Armor Hover Toggle",
"gtceu.key.armor_mode_switch": "Armor Mode Switch",
"gtceu.key.enable_boots": "Enable Boosted Jump",
"gtceu.key.enable_jetpack": "Enable Jetpack",
"gtceu.key.tool_aoe_change": "Tool AoE Mode Switch",
"gtceu.large_boiler": "Large Boiler",
"gtceu.large_chemical_reactor": "Large Chemical Reactor",
Expand Down Expand Up @@ -5647,6 +5649,8 @@
"metaarmor.message.nightvision.disabled": "§bNightVision: §cOff",
"metaarmor.message.nightvision.enabled": "§bNightVision: §aOn",
"metaarmor.message.nightvision.error": "§cNot enough power!",
"metaarmor.nms.boosted_jump.disabled": "NanoMuscle™ Suite: Jump Boost Disabled",
"metaarmor.nms.boosted_jump.enabled": "NanoMuscle™ Suite: Jump Boost Enabled",
"metaarmor.nms.nightvision.disabled": "NanoMuscle™ Suite: NightVision Disabled",
"metaarmor.nms.nightvision.enabled": "NanoMuscle™ Suite: NightVision Enabled",
"metaarmor.nms.nightvision.error": "NanoMuscle™ Suite: §cNot enough power!",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ public class QuarkTechSuite extends ArmorLogicSuite implements IStepAssist {
protected static final Map<MobEffect, Integer> potionRemovalCost = new IdentityHashMap<>();
private float charge = 0.0F;
private static final byte RUNNING_TIMER = 10; // .5 seconds
private static final byte JUMPING_TIMER = 10; // .5 seconds
private static final double LEGGING_ACCEL = 0.085D;

@OnlyIn(Dist.CLIENT)
Expand Down Expand Up @@ -78,6 +79,7 @@ public void onArmorTick(Level world, Player player, ItemStack itemStack) {
int nightVisionTimer = data.contains("nightVisionTimer") ? data.getInt("nightVisionTimer") :
ArmorUtils.NIGHTVISION_DURATION;
byte runningTimer = data.contains("runningTimer") ? data.getByte("runningTimer") : RUNNING_TIMER;
byte boostedJumpTimer = data.contains("boostedJumpTimer") ? data.getByte("boostedJumpTimer") : JUMPING_TIMER;

if (!player.getItemBySlot(EquipmentSlot.CHEST).is(GTItems.QUANTUM_CHESTPLATE.get()) &&
!player.getItemBySlot(EquipmentSlot.CHEST).is(GTItems.QUANTUM_CHESTPLATE_ADVANCED.get())) {
Expand Down Expand Up @@ -159,36 +161,50 @@ public void onArmorTick(Level world, Player player, ItemStack itemStack) {
} else if (type == ArmorItem.Type.BOOTS) {
boolean canUseEnergy = item.canUse(energyPerUse / 100);
boolean jumping = KeyBind.VANILLA_JUMP.isKeyDown(player);
if (!world.isClientSide) {
boolean onGround = !data.contains("onGround") || data.getBoolean("onGround");
if (onGround && !player.onGround() && jumping) {
item.discharge(energyPerUse / 100, item.getTier(), true, false, false);
ret = true;
}
boolean boostedJump = data.contains("boostedJump") && data.getBoolean("boostedJump");
if (boostedJumpTimer == 0 && KeyBind.BOOTS_ENABLE.isKeyDown(player)) {
boostedJump = !boostedJump;
boostedJumpTimer = JUMPING_TIMER;
player.displayClientMessage(Component
.translatable("metaarmor.nms.boosted_jump." + (boostedJump ? "enabled" : "disabled")), true);
}
if (boostedJump) {
if (!world.isClientSide) {
boolean onGround = !data.contains("onGround") || data.getBoolean("onGround");
if (onGround && !player.onGround() && jumping) {
item.discharge(energyPerUse / 100, item.getTier(), true, false, false);
ret = true;
}

if (player.onGround() != onGround) {
data.putBoolean("onGround", player.onGround());
}
} else {
if (canUseEnergy && player.onGround()) {
this.charge = 1.0F;
}
if (player.onGround() != onGround) {
data.putBoolean("onGround", player.onGround());
}
} else {
if (canUseEnergy && player.onGround()) {
this.charge = 1.0F;
}

Vec3 delta = player.getDeltaMovement();
if (delta.y >= 0.0D && this.charge > 0.0F && !player.isInWater()) {
if (jumping) {
if (this.charge == 1.0F) {
player.setDeltaMovement(delta.x * 3.6D, delta.y, delta.z * 3.6D);
Vec3 delta = player.getDeltaMovement();
if (delta.y >= 0.0D && this.charge > 0.0F && !player.isInWater()) {
if (jumping) {
if (this.charge == 1.0F) {
player.setDeltaMovement(delta.x * 3.6D, delta.y, delta.z * 3.6D);
}
// gives an arc path for movement force
player.addDeltaMovement(new Vec3(0.0, this.charge * 0.32, 0.0));
this.charge = (float) (this.charge * 0.7D);
} else if (this.charge < 1.0F) {
this.charge = 0.0F;
}
// gives an arc path for movement force
player.addDeltaMovement(new Vec3(0.0, this.charge * 0.32, 0.0));
this.charge = (float) (this.charge * 0.7D);
} else if (this.charge < 1.0F) {
this.charge = 0.0F;
}
}
}
updateStepHeight(player);
data.putBoolean("boostedJump", boostedJump);

if (boostedJumpTimer > 0) boostedJumpTimer--;

data.putInt("boostedJumpTimer", boostedJumpTimer);
}

if (ret) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -267,6 +267,8 @@ public static void init(RegistrateLangProvider provider) {
provider.add("metaitem.liquid_fuel_jetpack.tooltip", "Uses Combustion Generator Fuels for Thrust");
provider.add("metaarmor.nms.nightvision.enabled", "NanoMuscle™ Suite: NightVision Enabled");
provider.add("metaarmor.nms.nightvision.disabled", "NanoMuscle™ Suite: NightVision Disabled");
provider.add("metaarmor.nms.boosted_jump.enabled", "NanoMuscle™ Suite: Jump Boost Enabled");
provider.add("metaarmor.nms.boosted_jump.disabled", "NanoMuscle™ Suite: Jump Boost Disabled");
provider.add("metaarmor.nms.nightvision.error", "NanoMuscle™ Suite: §cNot enough power!");
provider.add("metaarmor.qts.nightvision.enabled", "QuarkTech™ Suite: NightVision Enabled");
provider.add("metaarmor.qts.nightvision.disabled", "QuarkTech™ Suite: NightVision Disabled");
Expand Down Expand Up @@ -1189,6 +1191,8 @@ public static void init(RegistrateLangProvider provider) {
provider.add("fluid.tile.water", "Water");
provider.add("gtceu.key.armor_mode_switch", "Armor Mode Switch");
provider.add("gtceu.key.armor_hover", "Armor Hover Toggle");
provider.add("gtceu.key.enable_jetpack", "Enable Jetpack");
provider.add("gtceu.key.enable_boots", "Enable Boosted Jump");
provider.add("gtceu.key.armor_charging", "Armor Charging to Inventory Toggle");
provider.add("gtceu.key.tool_aoe_change", "Tool AoE Mode Switch");
provider.add("gtceu.debug.f3_h.enabled",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ public enum KeyBind {
ARMOR_MODE_SWITCH("gtceu.key.armor_mode_switch", KeyConflictContext.IN_GAME, InputConstants.KEY_M),
ARMOR_HOVER("gtceu.key.armor_hover", KeyConflictContext.IN_GAME, InputConstants.KEY_H),
JETPACK_ENABLE("gtceu.key.enable_jetpack", KeyConflictContext.IN_GAME, InputConstants.KEY_G),
BOOTS_ENABLE("gtceu.key.enable_boots", KeyConflictContext.IN_GAME, InputConstants.KEY_PERIOD),
ARMOR_CHARGING("gtceu.key.armor_charging", KeyConflictContext.IN_GAME, InputConstants.KEY_N),
TOOL_AOE_CHANGE("gtceu.key.tool_aoe_change", KeyConflictContext.IN_GAME, InputConstants.KEY_V);

Expand Down

0 comments on commit 85caae5

Please sign in to comment.