From 01e4aa6c48abeb981a7711d952b701634a90aab8 Mon Sep 17 00:00:00 2001 From: tartaric_acid Date: Fri, 20 Sep 2024 16:19:44 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90=201.20=20=E7=9A=84=E5=90=8C?= =?UTF-8?q?=E6=AD=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../compat/cloth/MenuIntegration.java | 15 +++++ .../compat/tacz/TacCompat.java | 16 +++++ .../compat/tacz/ai/GunAttackStrafingTask.java | 6 +- .../compat/tacz/ai/GunShootTargetTask.java | 33 ++++++---- .../compat/tacz/ai/GunWalkToTarget.java | 4 +- .../compat/tacz/task/TaskGunAttack.java | 6 +- .../compat/tacz/utils/GunBehaviorUtils.java | 60 ++++++++++++++++++ .../utils/GunNearestLivingEntitySensor.java | 37 +++++++++++ .../config/subconfig/MaidConfig.java | 13 ++++ .../sensor/MaidNearestLivingEntitySensor.java | 9 +++ .../entity/monster/EntityFairy.java | 14 ++++ .../touhoulittlemaid/init/InitEntities.java | 2 +- .../init/registry/MobSpawnInfoRegistry.java | 17 +---- .../assets/touhou_little_maid/lang/en_us.json | 6 ++ .../assets/touhou_little_maid/lang/zh_cn.json | 6 ++ .../touhou_little_maid-1.0.0.zip | Bin 14154095 -> 14154321 bytes 16 files changed, 211 insertions(+), 33 deletions(-) create mode 100644 src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/utils/GunBehaviorUtils.java create mode 100644 src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/utils/GunNearestLivingEntitySensor.java diff --git a/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/cloth/MenuIntegration.java b/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/cloth/MenuIntegration.java index 85e800480..10bd71648 100644 --- a/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/cloth/MenuIntegration.java +++ b/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/cloth/MenuIntegration.java @@ -183,6 +183,21 @@ private static void maidConfig(ConfigBuilder root, ConfigEntryBuilder entryBuild } MaidConfig.MAID_EATEN_RETURN_CONTAINER_LIST.set(maidMealContainerList); }).build()); + + maid.addEntry(entryBuilder.startIntField(new TranslatableComponent("config.touhou_little_maid.maid.maid_gun_long_distance"), MaidConfig.MAID_GUN_LONG_DISTANCE.get()) + .setDefaultValue(64).setMin(0).setMax(512).requireRestart() + .setTooltip(new TranslatableComponent("config.touhou_little_maid.maid.maid_gun_long_distance.tooltip")) + .setSaveConsumer(i -> MaidConfig.MAID_GUN_LONG_DISTANCE.set(i)).build()); + + maid.addEntry(entryBuilder.startIntField(new TranslatableComponent("config.touhou_little_maid.maid.maid_gun_medium_distance"), MaidConfig.MAID_GUN_MEDIUM_DISTANCE.get()) + .setDefaultValue(48).setMin(0).setMax(512).requireRestart() + .setTooltip(new TranslatableComponent("config.touhou_little_maid.maid.maid_gun_medium_distance.tooltip")) + .setSaveConsumer(i -> MaidConfig.MAID_GUN_MEDIUM_DISTANCE.set(i)).build()); + + maid.addEntry(entryBuilder.startIntField(new TranslatableComponent("config.touhou_little_maid.maid.maid_gun_near_distance"), MaidConfig.MAID_GUN_NEAR_DISTANCE.get()) + .setDefaultValue(32).setMin(0).setMax(512).requireRestart() + .setTooltip(new TranslatableComponent("config.touhou_little_maid.maid.maid_gun_near_distance.tooltip")) + .setSaveConsumer(i -> MaidConfig.MAID_GUN_NEAR_DISTANCE.set(i)).build()); } private static void chairConfig(ConfigBuilder root, ConfigEntryBuilder entryBuilder) { diff --git a/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/TacCompat.java b/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/TacCompat.java index ce81a11a7..7cdc52b1f 100644 --- a/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/TacCompat.java +++ b/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/TacCompat.java @@ -8,6 +8,8 @@ import com.github.tartaricacid.touhoulittlemaid.compat.tacz.client.GunMaidRender; import com.github.tartaricacid.touhoulittlemaid.compat.tacz.event.GunHurtMaidEvent; import com.github.tartaricacid.touhoulittlemaid.compat.tacz.task.TaskGunAttack; +import com.github.tartaricacid.touhoulittlemaid.compat.tacz.utils.GunNearestLivingEntitySensor; +import com.github.tartaricacid.touhoulittlemaid.entity.passive.EntityMaid; import com.github.tartaricacid.touhoulittlemaid.entity.task.TaskManager; import com.github.tartaricacid.touhoulittlemaid.geckolib3.core.PlayState; import com.github.tartaricacid.touhoulittlemaid.geckolib3.core.builder.ILoopType; @@ -16,6 +18,7 @@ import com.mojang.blaze3d.vertex.PoseStack; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.resources.ResourceLocation; +import net.minecraft.server.level.ServerLevel; import net.minecraft.world.item.ItemStack; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.OnlyIn; @@ -48,6 +51,19 @@ public static boolean isGrenade(ItemStack itemStack) { return false; } + public static boolean isGunTask(EntityMaid maid) { + if (INSTALLED) { + return GunNearestLivingEntitySensor.isGunTask(maid); + } + return false; + } + + public static void doGunTick(ServerLevel world, EntityMaid maid) { + if (INSTALLED) { + GunNearestLivingEntitySensor.doGunTick(world, maid); + } + } + @Nullable public static ResourceLocation getGunId(ItemStack stack) { if (INSTALLED) { diff --git a/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/ai/GunAttackStrafingTask.java b/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/ai/GunAttackStrafingTask.java index 427edb2fa..af3fd1276 100644 --- a/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/ai/GunAttackStrafingTask.java +++ b/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/ai/GunAttackStrafingTask.java @@ -1,5 +1,6 @@ package com.github.tartaricacid.touhoulittlemaid.compat.tacz.ai; +import com.github.tartaricacid.touhoulittlemaid.config.subconfig.MaidConfig; import com.github.tartaricacid.touhoulittlemaid.entity.passive.EntityMaid; import com.google.common.collect.ImmutableMap; import com.tacz.guns.api.item.IGun; @@ -30,7 +31,6 @@ protected boolean checkExtraStartConditions(ServerLevel worldIn, EntityMaid owne return IGun.mainhandHoldGun(owner) && owner.getBrain().getMemory(MemoryModuleType.ATTACK_TARGET) .filter(Entity::isAlive) - .filter(e -> owner.isWithinRestriction(e.blockPosition())) .isPresent(); } @@ -45,8 +45,8 @@ protected void tick(ServerLevel worldIn, EntityMaid owner, long gameTime) { double distance = owner.distanceTo(target); float maxAttackDistance = owner.getRestrictRadius(); - // 如果在最大攻击距离之内,而且看见的时长足够长 - if (distance < maxAttackDistance) { + // 如果在最大攻击距离(128)之内,而且看见的时长足够长 + if (distance < MaidConfig.MAID_GUN_LONG_DISTANCE.get()) { ++this.strafingTime; } else { this.strafingTime = -1; diff --git a/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/ai/GunShootTargetTask.java b/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/ai/GunShootTargetTask.java index 2250529f4..da484da76 100644 --- a/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/ai/GunShootTargetTask.java +++ b/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/ai/GunShootTargetTask.java @@ -1,5 +1,6 @@ package com.github.tartaricacid.touhoulittlemaid.compat.tacz.ai; +import com.github.tartaricacid.touhoulittlemaid.compat.tacz.utils.GunBehaviorUtils; import com.github.tartaricacid.touhoulittlemaid.entity.passive.EntityMaid; import com.google.common.collect.ImmutableMap; import com.tacz.guns.api.TimelessAPI; @@ -14,7 +15,6 @@ import net.minecraft.server.level.ServerLevel; import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.entity.ai.behavior.Behavior; -import net.minecraft.world.entity.ai.behavior.BehaviorUtils; import net.minecraft.world.entity.ai.memory.MemoryModuleType; import net.minecraft.world.entity.ai.memory.MemoryStatus; import net.minecraft.world.item.ItemStack; @@ -35,7 +35,7 @@ protected boolean checkExtraStartConditions(ServerLevel worldIn, EntityMaid owne Optional memory = owner.getBrain().getMemory(MemoryModuleType.ATTACK_TARGET); if (memory.isPresent()) { LivingEntity target = memory.get(); - return IGun.mainhandHoldGun(owner) && BehaviorUtils.canSee(owner, target); + return IGun.mainhandHoldGun(owner) && GunBehaviorUtils.canSee(owner, target); } return false; } @@ -53,9 +53,9 @@ protected void start(ServerLevel worldIn, EntityMaid entityIn, long gameTimeIn) @Override protected void tick(ServerLevel worldIn, EntityMaid owner, long gameTime) { owner.getBrain().getMemory(MemoryModuleType.ATTACK_TARGET).ifPresent((target) -> { - BehaviorUtils.lookAtEntity(owner, target); - - boolean canSee = BehaviorUtils.canSee(owner, target); + //实际上按照原版mc判定是看不见的,强行看见并朝向(没关就是开了?) + owner.getLookControl().setLookAt(target.getX(), target.getY(), target.getZ()); + boolean canSee = GunBehaviorUtils.canSee(owner, target); boolean seeTimeMoreThanZero = this.seeTime > 0; // 如果两者不一致,重置看见时间 @@ -93,6 +93,8 @@ public void performGunAttack(EntityMaid shooter, LivingEntity target, ItemStack float yaw = (float) -Math.toDegrees(Math.atan2(x, z)); float pitch = (float) -Math.toDegrees(Math.atan2(y, Math.sqrt(x * x + z * z))); + float radius = shooter.getRestrictRadius(); + IGunOperator gunOperator = IGunOperator.fromLivingEntity(shooter); ShootResult result = gunOperator.shoot(() -> pitch, () -> yaw); @@ -110,12 +112,21 @@ public void performGunAttack(EntityMaid shooter, LivingEntity target, ItemStack return; } - // 如果是非狙击枪,就不要瞄准了,不然太超模了 - if (!gunIndex.getType().equals(sniper) && gunOperator.getSynIsAiming()) { - gunOperator.aim(false); - // 多加 2 tick,用来平衡延迟 - this.attackCooldown = Math.round(gunData.getAimTime() * 20) + 2; - return; + // 如果是非狙击枪,超出 radius 范围,那么也瞄准 + if (!gunIndex.getType().equals(sniper)) { + float distance = shooter.distanceTo(target); + if (distance <= radius && gunOperator.getSynIsAiming()) { + gunOperator.aim(false); + // 多加 2 tick,用来平衡延迟 + this.attackCooldown = Math.round(gunData.getAimTime() * 20) + 2; + return; + } + if (distance > radius && !gunOperator.getSynIsAiming()) { + gunOperator.aim(true); + // 多加 2 tick,用来平衡延迟 + this.attackCooldown = Math.round(gunData.getAimTime() * 20) + 2; + return; + } } if (result == ShootResult.NOT_DRAW) { diff --git a/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/ai/GunWalkToTarget.java b/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/ai/GunWalkToTarget.java index e4308e340..a8fafaf40 100644 --- a/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/ai/GunWalkToTarget.java +++ b/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/ai/GunWalkToTarget.java @@ -1,5 +1,7 @@ package com.github.tartaricacid.touhoulittlemaid.compat.tacz.ai; +import com.github.tartaricacid.touhoulittlemaid.compat.tacz.utils.GunBehaviorUtils; +import com.github.tartaricacid.touhoulittlemaid.compat.tacz.utils.GunNearestLivingEntitySensor; import com.github.tartaricacid.touhoulittlemaid.entity.passive.EntityMaid; import com.google.common.collect.ImmutableMap; import net.minecraft.server.level.ServerLevel; @@ -29,7 +31,7 @@ public GunWalkToTarget(Function speedModifier) { @Override protected void start(ServerLevel level, EntityMaid maid, long pGameTime) { LivingEntity livingentity = maid.getBrain().getMemory(MemoryModuleType.ATTACK_TARGET).get(); - if (BehaviorUtils.canSee(maid, livingentity) && isWithinRestriction(maid, livingentity)) { + if (GunBehaviorUtils.canSee(maid, livingentity) && isWithinRestriction(maid, livingentity)) { this.clearWalkTarget(maid); } else { this.setWalkAndLookTarget(maid, livingentity); diff --git a/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/task/TaskGunAttack.java b/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/task/TaskGunAttack.java index 92b679013..8c9902399 100644 --- a/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/task/TaskGunAttack.java +++ b/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/task/TaskGunAttack.java @@ -5,6 +5,8 @@ import com.github.tartaricacid.touhoulittlemaid.compat.tacz.ai.GunAttackStrafingTask; import com.github.tartaricacid.touhoulittlemaid.compat.tacz.ai.GunShootTargetTask; import com.github.tartaricacid.touhoulittlemaid.compat.tacz.ai.GunWalkToTarget; +import com.github.tartaricacid.touhoulittlemaid.compat.tacz.utils.GunBehaviorUtils; +import com.github.tartaricacid.touhoulittlemaid.config.subconfig.MaidConfig; import com.github.tartaricacid.touhoulittlemaid.entity.passive.EntityMaid; import com.github.tartaricacid.touhoulittlemaid.init.InitSounds; import com.github.tartaricacid.touhoulittlemaid.util.SoundUtil; @@ -54,7 +56,7 @@ public boolean enableLookAndRandomWalk(EntityMaid maid) { @Override public List>> createBrainTasks(EntityMaid maid) { RunIf supplementedTask = new RunIf<>(this::mainhandHoldGun, - new StartAttacking<>(IAttackTask::findFirstValidAttackTarget)); + new StartAttacking<>(GunBehaviorUtils::findFirstValidAttackTarget)); StopAttackingIfTargetInvalid findTargetTask = new StopAttackingIfTargetInvalid<>( (target) -> !mainhandHoldGun(maid) || farAway(target, maid)); Behavior gunWalkTargetTask = new GunWalkToTarget(0.6f); @@ -80,6 +82,6 @@ private boolean mainhandHoldGun(EntityMaid maid) { } private boolean farAway(LivingEntity target, EntityMaid maid) { - return maid.distanceTo(target) > maid.getRestrictRadius(); + return maid.distanceTo(target) > MaidConfig.MAID_GUN_LONG_DISTANCE.get(); } } diff --git a/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/utils/GunBehaviorUtils.java b/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/utils/GunBehaviorUtils.java new file mode 100644 index 000000000..de84c5a76 --- /dev/null +++ b/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/utils/GunBehaviorUtils.java @@ -0,0 +1,60 @@ +package com.github.tartaricacid.touhoulittlemaid.compat.tacz.utils; + +import com.github.tartaricacid.touhoulittlemaid.config.subconfig.MaidConfig; +import com.github.tartaricacid.touhoulittlemaid.entity.passive.EntityMaid; +import com.tacz.guns.api.TimelessAPI; +import com.tacz.guns.api.item.GunTabType; +import com.tacz.guns.api.item.IGun; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.ai.behavior.BehaviorUtils; +import net.minecraft.world.entity.ai.memory.MemoryModuleType; +import net.minecraft.world.entity.ai.targeting.TargetingConditions; +import net.minecraft.world.item.ItemStack; + +import java.util.List; +import java.util.Locale; +import java.util.Optional; + +public class GunBehaviorUtils { + // 可见性校验工具,来自于 Sensor + // 依据枪械种类,可以区分为远、中、近三类 + private static final TargetingConditions LONG_DISTANCE_TARGET_CONDITIONS = TargetingConditions.forNonCombat().range(MaidConfig.MAID_GUN_LONG_DISTANCE.get()); + private static final TargetingConditions MEDIUM_DISTANCE_TARGET_CONDITIONS = TargetingConditions.forNonCombat().range(MaidConfig.MAID_GUN_MEDIUM_DISTANCE.get()); + private static final TargetingConditions NEAR_DISTANCE_TARGET_CONDITIONS = TargetingConditions.forNonCombat().range(MaidConfig.MAID_GUN_NEAR_DISTANCE.get()); + + //可见性方法,来自于Sensor类 + public static boolean canSee(EntityMaid maid, LivingEntity target) { + ItemStack handItem = maid.getMainHandItem(); + IGun iGun = IGun.getIGunOrNull(handItem); + if (iGun != null) { + ResourceLocation gunId = iGun.getGunId(handItem); + return TimelessAPI.getCommonGunIndex(gunId).map(index -> { + String type = index.getType(); + // 狙击枪?用远距离模式 + String sniper = GunTabType.SNIPER.name().toLowerCase(Locale.ENGLISH); + if (sniper.equals(type)) { + return LONG_DISTANCE_TARGET_CONDITIONS.test(maid, target); + } + // 霰弹枪?手枪?近距离模式 + String shotgun = GunTabType.SHOTGUN.name().toLowerCase(Locale.ENGLISH); + String pistol = GunTabType.PISTOL.name().toLowerCase(Locale.ENGLISH); + if (shotgun.equals(type) || pistol.equals(type)) { + return NEAR_DISTANCE_TARGET_CONDITIONS.test(maid, target); + } + // 其他情况,中等距离 + return MEDIUM_DISTANCE_TARGET_CONDITIONS.test(maid, target); + }).orElse(BehaviorUtils.canSee(maid, target)); + } + return BehaviorUtils.canSee(maid, target); + } + + // 寻找第一个可见目标,使用独立的方法,区别于 IAttackTask + public static Optional findFirstValidAttackTarget(EntityMaid maid) { + if (maid.getBrain().getMemory(MemoryModuleType.NEAREST_LIVING_ENTITIES).isPresent()) { + List list = maid.getBrain().getMemory(MemoryModuleType.NEAREST_LIVING_ENTITIES).get(); + return list.stream().filter(e -> maid.canAttack(e) && GunBehaviorUtils.canSee(maid, e)).findAny(); + } + return Optional.empty(); + } +} diff --git a/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/utils/GunNearestLivingEntitySensor.java b/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/utils/GunNearestLivingEntitySensor.java new file mode 100644 index 000000000..a2051f3bd --- /dev/null +++ b/src/main/java/com/github/tartaricacid/touhoulittlemaid/compat/tacz/utils/GunNearestLivingEntitySensor.java @@ -0,0 +1,37 @@ +package com.github.tartaricacid.touhoulittlemaid.compat.tacz.utils; + +import com.github.tartaricacid.touhoulittlemaid.compat.tacz.task.TaskGunAttack; +import com.github.tartaricacid.touhoulittlemaid.config.subconfig.MaidConfig; +import com.github.tartaricacid.touhoulittlemaid.entity.passive.EntityMaid; +import com.tacz.guns.api.item.IGun; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.ai.Brain; +import net.minecraft.world.entity.ai.memory.MemoryModuleType; +import net.minecraft.world.entity.ai.memory.NearestVisibleLivingEntities; +import net.minecraft.world.entity.schedule.Activity; +import net.minecraft.world.phys.AABB; + +import java.util.Comparator; +import java.util.List; + +public class GunNearestLivingEntitySensor { + public static boolean isGunTask(EntityMaid maid) { + return maid.getTask().getUid().equals(TaskGunAttack.UID) && maid.getScheduleDetail() == Activity.WORK && IGun.mainhandHoldGun(maid); + } + + public static void doGunTick(ServerLevel world, EntityMaid maid) { + AABB aabb; + int searchRange = MaidConfig.MAID_GUN_LONG_DISTANCE.get(); + if (maid.hasRestriction()) { + aabb = new AABB(maid.getRestrictCenter()).inflate(searchRange); + } else { + aabb = maid.getBoundingBox().inflate(searchRange); + } + List list = world.getEntitiesOfClass(LivingEntity.class, aabb, (entity) -> entity != maid && entity.isAlive()); + list.sort(Comparator.comparingDouble(maid::distanceToSqr)); + Brain brain = maid.getBrain(); + brain.setMemory(MemoryModuleType.NEAREST_LIVING_ENTITIES, list); + brain.setMemory(MemoryModuleType.NEAREST_VISIBLE_LIVING_ENTITIES, new NearestVisibleLivingEntities(maid, list)); + } +} diff --git a/src/main/java/com/github/tartaricacid/touhoulittlemaid/config/subconfig/MaidConfig.java b/src/main/java/com/github/tartaricacid/touhoulittlemaid/config/subconfig/MaidConfig.java index 539eb8cb1..ba33c5662 100644 --- a/src/main/java/com/github/tartaricacid/touhoulittlemaid/config/subconfig/MaidConfig.java +++ b/src/main/java/com/github/tartaricacid/touhoulittlemaid/config/subconfig/MaidConfig.java @@ -36,6 +36,10 @@ public final class MaidConfig { public static ForgeConfigSpec.ConfigValue> MAID_HEAL_MEALS_BLOCK_LIST_REGEX; public static ForgeConfigSpec.ConfigValue>> MAID_EATEN_RETURN_CONTAINER_LIST; + public static ForgeConfigSpec.IntValue MAID_GUN_LONG_DISTANCE; + public static ForgeConfigSpec.IntValue MAID_GUN_MEDIUM_DISTANCE; + public static ForgeConfigSpec.IntValue MAID_GUN_NEAR_DISTANCE; + public static void init(ForgeConfigSpec.Builder builder) { builder.push("maid"); @@ -125,6 +129,15 @@ public static void init(ForgeConfigSpec.Builder builder) { builder.comment("These entries configure the container returned after a maid has eaten", "Eg: [\"minecraft:beetroot_soup\", \"minecraft:bowl\"]"); MAID_EATEN_RETURN_CONTAINER_LIST = builder.define("MaidEatenReturnContainerList", Lists.newArrayList()); + builder.comment("Recognition distance of a maid under the gun task, Suitable for sniper rifles"); + MAID_GUN_LONG_DISTANCE = builder.defineInRange("MaidGunLongDistance", 64, 0, 512); + + builder.comment("Recognition distance of a maid under the gun task, Suitable for most types"); + MAID_GUN_MEDIUM_DISTANCE = builder.defineInRange("MaidGunMediumDistance", 48, 0, 512); + + builder.comment("Recognition distance of a maid under the gun task, Suitable for pistols and shotguns"); + MAID_GUN_NEAR_DISTANCE = builder.defineInRange("MaidGunNearDistance", 32, 0, 512); + builder.pop(); } } diff --git a/src/main/java/com/github/tartaricacid/touhoulittlemaid/entity/ai/brain/sensor/MaidNearestLivingEntitySensor.java b/src/main/java/com/github/tartaricacid/touhoulittlemaid/entity/ai/brain/sensor/MaidNearestLivingEntitySensor.java index 3ebbf0375..e23e58f32 100644 --- a/src/main/java/com/github/tartaricacid/touhoulittlemaid/entity/ai/brain/sensor/MaidNearestLivingEntitySensor.java +++ b/src/main/java/com/github/tartaricacid/touhoulittlemaid/entity/ai/brain/sensor/MaidNearestLivingEntitySensor.java @@ -1,5 +1,6 @@ package com.github.tartaricacid.touhoulittlemaid.entity.ai.brain.sensor; +import com.github.tartaricacid.touhoulittlemaid.compat.tacz.TacCompat; import com.github.tartaricacid.touhoulittlemaid.entity.passive.EntityMaid; import com.google.common.collect.ImmutableSet; import net.minecraft.server.level.ServerLevel; @@ -17,7 +18,15 @@ public class MaidNearestLivingEntitySensor extends Sensor { private static final int VERTICAL_SEARCH_RANGE = 4; + @Override protected void doTick(ServerLevel world, EntityMaid maid) { + // 兼容 tac + if (TacCompat.isGunTask(maid)) { + TacCompat.doGunTick(world, maid); + return; + } + + // 正常搜索 float radius = maid.getRestrictRadius(); AABB aabb; if (maid.hasRestriction()) { diff --git a/src/main/java/com/github/tartaricacid/touhoulittlemaid/entity/monster/EntityFairy.java b/src/main/java/com/github/tartaricacid/touhoulittlemaid/entity/monster/EntityFairy.java index e49b56162..ff15ce5bf 100644 --- a/src/main/java/com/github/tartaricacid/touhoulittlemaid/entity/monster/EntityFairy.java +++ b/src/main/java/com/github/tartaricacid/touhoulittlemaid/entity/monster/EntityFairy.java @@ -4,12 +4,15 @@ import com.github.tartaricacid.touhoulittlemaid.entity.ai.goal.FairyAttackGoal; import com.github.tartaricacid.touhoulittlemaid.entity.passive.EntityMaid; import com.github.tartaricacid.touhoulittlemaid.entity.projectile.DanmakuShoot; +import com.github.tartaricacid.touhoulittlemaid.init.InitPoi; import com.github.tartaricacid.touhoulittlemaid.init.InitSounds; +import net.minecraft.core.BlockPos; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.Tag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.network.syncher.EntityDataSerializers; import net.minecraft.network.syncher.SynchedEntityData; +import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; import net.minecraft.world.Difficulty; import net.minecraft.world.DifficultyInstance; @@ -22,6 +25,7 @@ import net.minecraft.world.entity.ai.goal.target.NearestAttackableTargetGoal; import net.minecraft.world.entity.ai.navigation.FlyingPathNavigation; import net.minecraft.world.entity.ai.navigation.PathNavigation; +import net.minecraft.world.entity.ai.village.poi.PoiManager; import net.minecraft.world.entity.animal.FlyingAnimal; import net.minecraft.world.entity.animal.IronGolem; import net.minecraft.world.entity.monster.Monster; @@ -31,6 +35,7 @@ import net.minecraft.world.level.ServerLevelAccessor; import javax.annotation.Nullable; +import java.util.Random; public class EntityFairy extends Monster implements RangedAttackMob, FlyingAnimal, IHasPowerPoint { public static final EntityType TYPE = EntityType.Builder.of(EntityFairy::new, MobCategory.MONSTER) @@ -58,6 +63,15 @@ public static AttributeSupplier.Builder createFairyAttributes() { .add(Attributes.FLYING_SPEED, 0.4); } + public static boolean checkFairySpawnRules(EntityType entityType, ServerLevelAccessor levelAccessor, MobSpawnType spawnType, BlockPos pos, Random randomSource) { + if (Monster.checkMonsterSpawnRules(entityType, levelAccessor, spawnType, pos, randomSource) && levelAccessor instanceof ServerLevel level) { + int scarecrowRange = MiscConfig.SCARECROW_RANGE.get(); + long findCount = level.getPoiManager().getInSquare(type -> type.equals(InitPoi.SCARECROW.get()), pos, scarecrowRange, PoiManager.Occupancy.ANY).count(); + return findCount <= 0; + } + return false; + } + @Override protected void registerGoals() { goalSelector.addGoal(0, new FloatGoal(this)); diff --git a/src/main/java/com/github/tartaricacid/touhoulittlemaid/init/InitEntities.java b/src/main/java/com/github/tartaricacid/touhoulittlemaid/init/InitEntities.java index dc293b133..52e6b2b56 100644 --- a/src/main/java/com/github/tartaricacid/touhoulittlemaid/init/InitEntities.java +++ b/src/main/java/com/github/tartaricacid/touhoulittlemaid/init/InitEntities.java @@ -99,6 +99,6 @@ public static void addEntityAttributeEvent(EntityAttributeCreationEvent event) { @SubscribeEvent public static void addEntitySpawnPlacement(FMLCommonSetupEvent event) { - SpawnPlacements.register(InitEntities.FAIRY.get(), SpawnPlacements.Type.ON_GROUND, Heightmap.Types.MOTION_BLOCKING_NO_LEAVES, Monster::checkMonsterSpawnRules); + SpawnPlacements.register(InitEntities.FAIRY.get(), SpawnPlacements.Type.ON_GROUND, Heightmap.Types.MOTION_BLOCKING_NO_LEAVES, EntityFairy::checkFairySpawnRules); } } diff --git a/src/main/java/com/github/tartaricacid/touhoulittlemaid/init/registry/MobSpawnInfoRegistry.java b/src/main/java/com/github/tartaricacid/touhoulittlemaid/init/registry/MobSpawnInfoRegistry.java index 1f2d2579c..6c4a0b7f0 100644 --- a/src/main/java/com/github/tartaricacid/touhoulittlemaid/init/registry/MobSpawnInfoRegistry.java +++ b/src/main/java/com/github/tartaricacid/touhoulittlemaid/init/registry/MobSpawnInfoRegistry.java @@ -2,12 +2,10 @@ import com.github.tartaricacid.touhoulittlemaid.config.subconfig.MiscConfig; import com.github.tartaricacid.touhoulittlemaid.init.InitEntities; -import com.github.tartaricacid.touhoulittlemaid.init.InitPoi; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; import net.minecraft.world.entity.EntityType; import net.minecraft.world.entity.MobCategory; -import net.minecraft.world.entity.ai.village.poi.PoiManager; import net.minecraft.world.level.biome.MobSpawnSettings; import net.minecraftforge.event.world.WorldEvent; import net.minecraftforge.eventbus.api.SubscribeEvent; @@ -33,21 +31,10 @@ public static void addMobSpawnInfo(WorldEvent.PotentialSpawns event) { if (event.getMobCategory() == MobCategory.MONSTER && dimensionIsOkay(dimension)) { List spawnerData = event.getSpawnerDataList(); boolean canZombieSpawn = spawnerData.stream().anyMatch(data -> data.type.equals(EntityType.ZOMBIE)); - if (SPAWNER_DATA == null) { + if (SPAWNER_DATA == null || SPAWNER_DATA.getWeight().asInt() != spawnProbability) { SPAWNER_DATA = new MobSpawnSettings.SpawnerData(InitEntities.FAIRY.get(), spawnProbability, 2, 4); } - if (!canZombieSpawn) { - return; - } - // 检查稻草人 - int scarecrowRange = MiscConfig.SCARECROW_RANGE.get(); - // 优先判断等于 0 的情况,减少性能消耗 - if (scarecrowRange <= 0) { - event.addSpawnerData(SPAWNER_DATA); - return; - } - long findCount = level.getPoiManager().getInSquare(type -> type.equals(InitPoi.SCARECROW.get()), event.getPos(), scarecrowRange, PoiManager.Occupancy.ANY).count(); - if (findCount <= 0) { + if (canZombieSpawn) { event.addSpawnerData(SPAWNER_DATA); } } diff --git a/src/main/resources/assets/touhou_little_maid/lang/en_us.json b/src/main/resources/assets/touhou_little_maid/lang/en_us.json index a1df0bf39..aaa689342 100644 --- a/src/main/resources/assets/touhou_little_maid/lang/en_us.json +++ b/src/main/resources/assets/touhou_little_maid/lang/en_us.json @@ -371,6 +371,12 @@ "config.touhou_little_maid.maid.maid_heal_meals_block_list_regex.tooltip": "These items cannot be used as a maid's heal meals which match the regex, all words have to match", "config.touhou_little_maid.maid.maid_eaten_return_container_list": "Maid Eaten Return Container List", "config.touhou_little_maid.maid.maid_eaten_return_container_list.tooltip": "These entries configure the container returned after a maid has eaten \nEg: §eminecraft:beetroot_soup§c,§eminecraft:bowl", + "config.touhou_little_maid.maid.maid_gun_long_distance": "Maid Gun Long Distance", + "config.touhou_little_maid.maid.maid_gun_long_distance.tooltip": "Recognition distance of a maid under the gun task, Suitable for sniper rifles", + "config.touhou_little_maid.maid.maid_gun_medium_distance": "Maid Gun Medium Distance", + "config.touhou_little_maid.maid.maid_gun_medium_distance.tooltip": "Recognition distance of a maid under the gun task, Suitable for most types", + "config.touhou_little_maid.maid.maid_gun_near_distance": "Maid Gun Near Distance", + "config.touhou_little_maid.maid.maid_gun_near_distance.tooltip": "Recognition distance of a maid under the gun task, Suitable for pistols and shotguns", "config.touhou_little_maid.chair": "Chair", "config.touhou_little_maid.chair.chair_change_model": "Chair Change Model", "config.touhou_little_maid.chair.chair_change_model.tooltip": "Chair can switch models freely", diff --git a/src/main/resources/assets/touhou_little_maid/lang/zh_cn.json b/src/main/resources/assets/touhou_little_maid/lang/zh_cn.json index a46a6441a..c33b16f49 100644 --- a/src/main/resources/assets/touhou_little_maid/lang/zh_cn.json +++ b/src/main/resources/assets/touhou_little_maid/lang/zh_cn.json @@ -371,6 +371,12 @@ "config.touhou_little_maid.maid.maid_heal_meals_block_list_regex.tooltip": "匹配的物品不能用于女仆的回血餐,请使用正则全词匹配", "config.touhou_little_maid.maid.maid_eaten_return_container_list": "女仆用餐后返回容器的列表", "config.touhou_little_maid.maid.maid_eaten_return_container_list.tooltip": "这些条目配置了女仆用餐后要返回的容器\n例如: §eminecraft:beetroot_soup§c,§eminecraft:bowl", + "config.touhou_little_maid.maid.maid_gun_long_distance": "远距枪械距离", + "config.touhou_little_maid.maid.maid_gun_long_distance.tooltip": "枪械模式下女仆的识别距离,适用于狙击枪", + "config.touhou_little_maid.maid.maid_gun_medium_distance": "中等枪械距离", + "config.touhou_little_maid.maid.maid_gun_medium_distance.tooltip": "枪械模式下女仆的识别距离,适用于大多数枪械", + "config.touhou_little_maid.maid.maid_gun_near_distance": "近枪械距离", + "config.touhou_little_maid.maid.maid_gun_near_distance.tooltip": "枪械模式下女仆的识别距离,适用于手枪和霰弹枪", "config.touhou_little_maid.chair": "坐垫", "config.touhou_little_maid.chair.chair_change_model": "坐垫能否切换模型", "config.touhou_little_maid.chair.chair_change_model.tooltip": "坐垫能否自由切换模型", diff --git a/src/main/resources/assets/touhou_little_maid/tlm_custom_pack/touhou_little_maid-1.0.0.zip b/src/main/resources/assets/touhou_little_maid/tlm_custom_pack/touhou_little_maid-1.0.0.zip index 3ecb5d66023809ee570dc34bf03d02da63639378..de0ee6ffe286ad55c9adbefb4dcf0e6ee0f85702 100644 GIT binary patch delta 72456 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%0AY$#V4s3TcB_4S^hA%~(getKsw;tQi0XyL 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