去营业妨碍化哨兵

This commit is contained in:
Atsuihsio 2024-07-14 16:26:13 +08:00
parent d208f9e8ab
commit a5833194ee
31 changed files with 8293 additions and 7565 deletions

View file

@ -35,28 +35,21 @@ public class SentinelItemModel extends GeoModel<SentinelItem> {
CoreGeoBone scope = getAnimationProcessor().getBone("scope2");
CoreGeoBone ammo = getAnimationProcessor().getBone("ammobar");
CoreGeoBone cb = getAnimationProcessor().getBone("chamber2");
CoreGeoBone b1 = getAnimationProcessor().getBone("b1");
CoreGeoBone b2 = getAnimationProcessor().getBone("b2");
CoreGeoBone b3 = getAnimationProcessor().getBone("b3");
CoreGeoBone b4 = getAnimationProcessor().getBone("b4");
CoreGeoBone b5 = getAnimationProcessor().getBone("b5");
Player player = Minecraft.getInstance().player;
if (player == null) return;
ItemStack stack = player.getMainHandItem();
if (!stack.is(TargetModTags.Items.GUN)) return;
double p = 0;
p = player.getPersistentData().getDouble("zoom_pos");
double p = player.getPersistentData().getDouble("zoom_pos");
double zp = 0;
zp = player.getPersistentData().getDouble("zoom_pos_z");
double zp = player.getPersistentData().getDouble("zoom_pos_z");
gun.setPosX(3.08f * (float) p);
gun.setPosX(2.928f * (float) p);
gun.setPosY(-1.03f * (float) p - (float) (0.2f * zp));
gun.setPosY(-0.062f * (float) p - (float) (0.1f * zp));
gun.setPosZ(10f * (float) p + (float) (0.5f * zp));
gun.setPosZ(10f * (float) p + (float) (0.3f * zp));
gun.setRotZ((float) (0.05f * zp));
@ -100,7 +93,7 @@ public class SentinelItemModel extends GeoModel<SentinelItem> {
CoreGeoBone charge = getAnimationProcessor().getBone("charge");
charge.setRotZ(charge.getRotZ() + times * 0.03f);
charge.setRotZ(charge.getRotZ() + times * 0.05f);
if ((stack.getOrCreateTag().getDouble("power") > 0)) {
charge.setScaleX(1);
@ -115,10 +108,8 @@ public class SentinelItemModel extends GeoModel<SentinelItem> {
float PosX = (float)player.getPersistentData().getDouble("gun_move_posX");
float PosY = (float)player.getPersistentData().getDouble("gun_move_posY");
double y = 0;
double x = 0;
y = player.getPersistentData().getDouble("y");
x = player.getPersistentData().getDouble("x");
double y = player.getPersistentData().getDouble("y");
double x = player.getPersistentData().getDouble("x");
root.setPosX(PosX);
@ -169,5 +160,13 @@ public class SentinelItemModel extends GeoModel<SentinelItem> {
if ((stack.getOrCreateTag().getDouble("ammo") <= 5)) {
ammo.setScaleX((float) (stack.getOrCreateTag().getDouble("ammo") / 5));
}
CoreGeoBone camera = getAnimationProcessor().getBone("camera");
player.getPersistentData().putDouble("camera_rot_x", Mth.RAD_TO_DEG * camera.getRotX());
player.getPersistentData().putDouble("camera_rot_y", Mth.RAD_TO_DEG * camera.getRotY());
player.getPersistentData().putDouble("camera_rot_z", Mth.RAD_TO_DEG * camera.getRotZ());
}
}

View file

@ -15,6 +15,7 @@ import net.minecraft.server.level.ServerLevel;
import net.minecraft.server.level.ServerPlayer;
import net.minecraft.sounds.SoundEvent;
import net.minecraft.sounds.SoundSource;
import net.minecraft.util.Mth;
import net.minecraft.world.InteractionHand;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemStack;
@ -135,8 +136,8 @@ public class GunEventHandler {
if (player.getMainHandItem().getItem() == TargetModItems.SENTINEL.get()) {
stack.getOrCreateTag().putBoolean("zoom_fire", (player.getCapability(TargetModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new TargetModVariables.PlayerVariables())).zooming);
if (stack.getOrCreateTag().getDouble("power") > 20) {
stack.getOrCreateTag().putDouble("power", (stack.getOrCreateTag().getDouble("power") - 20));
if (stack.getOrCreateTag().getDouble("power") > 3000) {
stack.getOrCreateTag().putDouble("power", stack.getOrCreateTag().getDouble("power") - 3000);
} else {
stack.getOrCreateTag().putDouble("power", 0);
}
@ -779,9 +780,11 @@ public class GunEventHandler {
tag.putInt("sentinel_charge_time", tag.getInt("sentinel_charge_time") - 1);
}
if (tag.getInt("sentinel_charge_time") == 17) {
tag.putDouble("power", Mth.clamp(tag.getDouble("power") + 24000,0,240000));
}
if (tag.getInt("sentinel_charge_time") == 1) {
tag.putDouble("power",100);
tag.putBoolean("sentinel_is_charging", false);
}
}

View file

@ -62,7 +62,7 @@ public class SentinelItem extends GunItem implements GeoItem, AnimatedItem {
@Override
public int getBarWidth(ItemStack pStack) {
return Math.round((float) ItemNBTTool.getInt(pStack, TAG_POWER, 0) * 13.0F / 100F);
return Math.round((float) ItemNBTTool.getInt(pStack, TAG_POWER, 0) * 13.0F / 240000F);
}
@Override
@ -117,11 +117,11 @@ public class SentinelItem extends GunItem implements GeoItem, AnimatedItem {
}
if (stack.getOrCreateTag().getBoolean("is_empty_reloading")) {
return event.setAndContinue(RawAnimation.begin().thenPlay("animation.sentinel.reload"));
return event.setAndContinue(RawAnimation.begin().thenPlay("animation.sentinel.reload_empty"));
}
if (stack.getOrCreateTag().getBoolean("is_normal_reloading")) {
return event.setAndContinue(RawAnimation.begin().thenPlay("animation.sentinel.reload2"));
return event.setAndContinue(RawAnimation.begin().thenPlay("animation.sentinel.reload_normal"));
}
@ -178,7 +178,7 @@ public class SentinelItem extends GunItem implements GeoItem, AnimatedItem {
if (tag.getDouble("power") > 0) {
tag.putDouble("add_damage", 0.2857142857142857 * tag.getDouble("damage") * tag.getDouble("damageadd"));
tag.putDouble("power", tag.getDouble("power") - 0.025);
tag.putDouble("power", tag.getDouble("power") - 5);
} else {
tag.putDouble("add_damage", 0);
}

File diff suppressed because it is too large Load diff

View file

@ -26,9 +26,9 @@
},
"firstperson_righthand": {
"translation": [
4.75,
-5.75,
-42.5
2.75,
-9,
-40.25
],
"scale": [
4,
@ -44,7 +44,7 @@
],
"translation": [
0.25,
6.75,
-80,
-0.25
],
"scale": [

Binary file not shown.

Before

Width:  |  Height:  |  Size: 142 KiB

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 356 KiB

After

Width:  |  Height:  |  Size: 100 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 7.7 KiB

View file

@ -16,6 +16,6 @@
"burst": 0,
"auto": 1,
"burst_size": 1,
"normal_reload_time": 61,
"empty_reload_time": 82
"normal_reload_time": 64,
"empty_reload_time": 85
}

View file

@ -16,6 +16,6 @@
"burst": 0,
"auto": 0,
"burst_size": 1,
"normal_reload_time": 83,
"empty_reload_time": 99
"normal_reload_time": 86,
"empty_reload_time": 102
}

View file

@ -16,6 +16,6 @@
"burst": 0,
"auto": 1,
"burst_size": 1,
"normal_reload_time": 51,
"empty_reload_time": 66
"normal_reload_time": 54,
"empty_reload_time": 69
}

View file

@ -17,6 +17,6 @@
"burst": 0,
"auto": 1,
"burst_size": 1,
"normal_reload_time": 70,
"empty_reload_time": 92
"normal_reload_time": 73,
"empty_reload_time": 95
}

View file

@ -16,6 +16,6 @@
"burst": 0,
"auto": 1,
"burst_size": 1,
"normal_reload_time": 53,
"empty_reload_time": 61
"normal_reload_time": 56,
"empty_reload_time": 64
}

View file

@ -15,5 +15,5 @@
"burst": 0,
"auto": 0,
"burst_size": 1,
"empty_reload_time": 61
"empty_reload_time": 64
}

View file

@ -20,6 +20,6 @@
"burst": 0,
"auto": 0,
"burst_size": 1,
"normal_reload_time": 65,
"empty_reload_time": 83
"normal_reload_time": 68,
"empty_reload_time": 86
}

View file

@ -16,6 +16,6 @@
"burst": 0,
"auto": 1,
"burst_size": 1,
"normal_reload_time": 53,
"empty_reload_time": 61
"normal_reload_time": 56,
"empty_reload_time": 64
}

View file

@ -17,6 +17,6 @@
"burst": 0,
"auto": 1,
"burst_size": 1,
"normal_reload_time": 111,
"empty_reload_time": 129
"normal_reload_time": 114,
"empty_reload_time": 133
}

View file

@ -13,5 +13,5 @@
"burst": 0,
"auto": 0,
"burst_size": 1,
"empty_reload_time": 61
"empty_reload_time": 64
}

View file

@ -19,6 +19,6 @@
"burst": 0,
"auto": 0,
"burst_size": 1,
"normal_reload_time": 61,
"empty_reload_time": 83
"normal_reload_time": 64,
"empty_reload_time": 86
}

View file

@ -19,6 +19,6 @@
"burst": 0,
"auto": 1,
"burst_size": 1,
"normal_reload_time": 55,
"empty_reload_time": 78
"normal_reload_time": 58,
"empty_reload_time": 81
}

View file

@ -13,5 +13,5 @@
"burst": 0,
"auto": 0,
"burst_size": 1,
"empty_reload_time": 97
"empty_reload_time": 100
}

View file

@ -17,6 +17,6 @@
"burst": 0,
"auto": 1,
"burst_size": 1,
"normal_reload_time": 70,
"empty_reload_time": 92
"normal_reload_time": 73,
"empty_reload_time": 95
}

View file

@ -17,6 +17,6 @@
"burst": 0,
"auto": 0,
"burst_size": 1,
"normal_reload_time": 53,
"empty_reload_time": 73
"normal_reload_time": 59,
"empty_reload_time": 85
}

View file

@ -16,6 +16,6 @@
"burst": 0,
"auto": 0,
"burst_size": 1,
"normal_reload_time": 51,
"empty_reload_time": 72
"normal_reload_time": 54,
"empty_reload_time": 75
}

View file

@ -16,6 +16,6 @@
"burst": 0,
"auto": 0,
"burst_size": 1,
"normal_reload_time": 53,
"empty_reload_time": 67
"normal_reload_time": 56,
"empty_reload_time": 70
}

View file

@ -13,5 +13,5 @@
"burst": 0,
"auto": 0,
"burst_size": 1,
"empty_reload_time": 55
"empty_reload_time": 58
}

View file

@ -16,5 +16,5 @@
"burst": 0,
"auto": 0,
"burst_size": 1,
"empty_reload_time": 62
"empty_reload_time": 65
}

View file

@ -16,6 +16,6 @@
"burst": 1,
"auto": 1,
"burst_size": 3,
"normal_reload_time": 43,
"empty_reload_time": 61
"normal_reload_time": 46,
"empty_reload_time": 64
}