
raid 记录器记录每个 poi 的位置
Closed this issue · 3 comments
Motivation
用于观察/调试袭击塔运行状态
Description
记录每个poi的位置以及到旧的袭击中心的距离
Other information
可能的实现:
RaidLogger.java
public void onPOIDetected(Raid raid, BlockPos pos, double distance)
{
if (!TISAdditionLoggerRegistry.__raid)
{
return;
}
this.log(() -> {
return new BaseText[]{Messenger.c(
tr("poi_detected", raid.getRaidId(), Messenger.coord(pos, DimensionWrapper.of(raid.getWorld())), distance)
)};
});
}
poi_detected 是需要添加的translation
RaidMixin.java
@Inject(
method = "method_20510", at = @At(value = "RETURN")
)
private void onPOIDetected(BlockPos blockPos, CallbackInfoReturnable<Double> cir)
{
RaidLogger.getInstance().onPOIDetected((Raid)(Object)this, blockPos, cir.getReturnValueD());
}
在 #213 中实现
你完全没描述什么这个 feature request 的诉求。poi 指的是什么 poi,要在什么时候记录 poi,用途是 debug 袭击塔的什么地方
因此只能逆向你的 mixin 代码从你的 mixin 实现样例里猜你要表达什么,这是一种很不好的低效沟通行为。
请在这个 issue 里完整描述清楚你的问题、诉求、痛点,以及修改 raid logger 的目的性、必要性、影响范围。不要让我猜
若希望 PR 实现,也请描述实现的思路、必要性、准确性。在此之前,相关 PR 也不会被 review / 合并