SPacketDoneTranslation.java 文件源码

java
阅读 19 收藏 0 点赞 0 评论 0

项目:PurificatiMagicae 作者:
@Override
public IMessage onMessage(SPacketDoneTranslation message, MessageContext ctx)
{
    EntityPlayerMP p = ctx.getServerHandler().player;
    p.getServerWorld().addScheduledTask(() ->
    {
        TileEntity te = p.getEntityWorld().getTileEntity(message.pos);
        if (te != null && te instanceof TileTranslationDesk)
        {
            TileTranslationDesk ttd = (TileTranslationDesk) te;
            ItemStack papyrus = ttd.handler.getStackInSlot(0);
            if (!papyrus.isEmpty())
            {
                IIfEntryStore store = p.getCapability(CapabilityRegistry.ENTRY_STORE_CAP, null);
                for (Pair<IfEntry, IRSTranslatePapyrus> pair : PurMag.INSTANCE.getIfRegistry().getAllResearchableSteps(IRSTranslatePapyrus.class, p, store))
                {
                    if (pair.getLeft().getId().equals(message.expected))
                    {
                        if (pair.getRight().isSuitable(papyrus))
                        {
                            store.unlockStepAndSync(pair.getLeft().getId(), ctx.getServerHandler().player);
                        }
                    }
                }
            }
        }
    });
    return null;
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号