public static void grantCriterion(EntityPlayerMP player, ResourceLocation advancementId, String criterion) { PlayerAdvancements advancements = player.getAdvancements(); AdvancementManager manager = player.getServerWorld().getAdvancementManager(); Advancement advancement = manager.getAdvancement(advancementId); if(advancement != null) { advancements.grantCriterion(advancement, criterion); } }
CorporeaRequestTrigger.INSTANCE.trigger(event.getPlayer(), event.getPlayer().getServerWorld(), index.getPos(), CorporeaHelper.lastRequestExtractions);
private boolean hasRelicAlready(EntityPlayer player, int relic) { if(relic < 0 || relic > relicStacks.length || !(player instanceof EntityPlayerMP)) return true; EntityPlayerMP mpPlayer = (EntityPlayerMP) player; Item item = relicStacks[relic].getItem(); ResourceLocation advId = ((IRelic) item).getAdvancement(); if(advId != null) { Advancement adv = mpPlayer.getServerWorld().getAdvancementManager().getAdvancement(advId); return adv != null && mpPlayer.getAdvancements().getProgress(adv).isDone(); } return false; }
@Nullable @Override public World getWorldFromMessage(@NotNull final MessageContext context) { return context.getServerHandler().player.getServerWorld(); }
@Override public void checkForPacketEnqueueTrap(Packet packetIn) { PacketThreadUtil.checkThreadAndEnqueue(packetIn, NetHandlerPlayServer.class.cast(this), player.getServerWorld()); }
@Override public void onMessage(IPacketID id, MessageBinnie message, MessageContext ctx) { EntityPlayerMP player = ctx.getServerHandler().player; checkThreadAndEnqueue(id, message, ctx, player.getServerWorld()); } }
@SubscribeEvent public static void onServerTickEvent(ServerTickEvent event) { if(event.phase == Phase.END) { updateTimer++; if(updateTimer > 20) { updateTimer = 0; Iterator<Entry<EntityPlayerMP, List<EntityCapabilityTracker>>> it = TRACKER_MAP.entrySet().iterator(); while(it.hasNext()) { Entry<EntityPlayerMP, List<EntityCapabilityTracker>> entry = it.next(); EntityPlayerMP player = entry.getKey(); if(!player.getServerWorld().getMinecraftServer().getPlayerList().getPlayers().contains(player)) it.remove(); } } } }
@Override public boolean isWatcherValid() { if (entityPlayer instanceof EntityPlayerMP) { return ((EntityPlayerMP) entityPlayer).getServerWorld().getPlayerEntityByUUID(entityPlayer.getUniqueID()) != null; } return false; } }
@Override public IMessage onMessage(final T message, MessageContext context) { final EntityPlayerMP player = context.getServerHandler().player; player.getServerWorld().addScheduledTask(() -> handle(message, player)); return null; }
@Override public IMessage onMessage(MessageDrinkWaterInWorld message, MessageContext ctx) { if (Side.SERVER == ctx.side) { final EntityPlayerMP player = ctx.getServerHandler().player; player.getServerWorld().addScheduledTask(() -> DrinkHandler.tryDrinkWaterInWorld(player, false)); } return null; } }
@Override public IMessage onMessage(ClientPlayerStateChangeMessage message, MessageContext ctx) { EntityPlayerMP player = ctx.getServerHandler().player; message.stateBytes.retain(); SmartMovingNetworkHandler.sendServerPlayerStateChange(message.stateBytes.duplicate(), player); player.getServerWorld().addScheduledTask(() -> { message.writeToPlayerState(((SmartMovingServerPlayer) player).getState()); }); return null; } }
@Override public IMessage onMessage(PacketKnappingUpdate message, MessageContext ctx) { EntityPlayerMP serverPlayer = ctx.getServerHandler().player; if (serverPlayer.openContainer instanceof ContainerKnapping) { ContainerKnapping container = (ContainerKnapping) serverPlayer.openContainer; serverPlayer.getServerWorld().addScheduledTask(() -> container.onUpdate(message.slotIdx) ); } // No reply message return null; } }
@Override public IMessage handleMessage(MessageContext context) { EntityPlayerMP player = context.getServerHandler().player; player.getServerWorld().addScheduledTask(() -> { PsiArmorEvent.post(new PsiArmorEvent(player, PsiArmorEvent.JUMP)); }); return null; }
@Override public IMessage onMessage(PacketChiselButton message, MessageContext ctx) { EntityPlayerMP player = ctx.getServerHandler().player; ctx.getServerHandler().player.getServerWorld().addScheduledTask( () -> chiselAll(player, message.slotIds) ); return null; } }
@Override public void handleCommand(MinecraftServer server, ICommandSender sender, String[] args) throws CommandException { if (!(sender instanceof EntityPlayerMP)) { return; } EntityPlayerMP player = (EntityPlayerMP) sender; RayTraceResult trace = RayTracer.retrace(player, 100); Chunk chunk = player.world.getChunkFromBlockCoords(trace.getBlockPos()); player.getServerWorld().getChunkProvider().queueUnload(chunk); CommandHandler.logAdminCommand(sender, this, "chat.cofh.command.unloadchunk.success", chunk.x, chunk.z); }
@Override public IMessage onMessage(MessageUpdateValueContainer message, MessageContext ctx) { if(ctx.getServerHandler().player.isCreative()) { World world = ctx.getServerHandler().player.getServerWorld(); TileEntity tileEntity = world.getTileEntity(message.pos); if(tileEntity instanceof IValueContainer) { ((IValueContainer) tileEntity).updateEntries(message.entryMap); TileEntityUtil.syncToClient(tileEntity); } } return null; } }
@SubscribeEvent public void onPacket(ServerCustomPacketEvent event) { PacketBufferForestry data = new PacketBufferForestry(event.getPacket().payload()); EntityPlayerMP player = ((NetHandlerPlayServer) event.getHandler()).player; byte packetIdOrdinal = data.readByte(); PacketIdServer packetId = PacketIdServer.VALUES[packetIdOrdinal]; IForestryPacketHandlerServer packetHandler = packetId.getPacketHandler(); checkThreadAndEnqueue(packetHandler, data, player, player.getServerWorld()); }
@Override public void onPacketData(PacketBufferForestry data, EntityPlayerMP player) { BlockPos pos = data.readBlockPos(); EnumFacing facing = EnumFacing.byIndex(data.readShort()); IFilterRuleType rule = AlleleManager.filterRegistry.getRuleOrDefault(data.readShort()); IFilterLogic logic = TileUtil.getInterface(player.world, pos, GeneticCapabilities.FILTER_LOGIC, null); if (logic != null) { if (logic.setRule(facing, rule)) { logic.getNetworkHandler().sendToPlayers(logic, player.getServerWorld(), player); } } } }
@SubscribeEvent public void onPacket(ServerCustomPacketEvent event) { PacketBufferEC data = new PacketBufferEC(event.getPacket().payload()); EntityPlayerMP player = ((NetHandlerPlayServer) event.getHandler()).player; byte packetIdOrdinal = data.readByte(); PacketId packetId = PacketId.values()[packetIdOrdinal]; IPacketHandlerServer packetHandler = packetId.getHandlerServer(); checkThreadAndEnqueue(packetHandler, data, player, player.getServerWorld()); }
@Override public void wakeUpPlayer(boolean immediately, boolean updateWorldFlag, boolean setSpawn) { VampirismMod.log.d(TAG, "Waking up player"); if (this.isPlayerSleeping() && player instanceof EntityPlayerMP) { ((EntityPlayerMP) player).getServerWorld().getEntityTracker().sendToTrackingAndSelf(player, new SPacketAnimation(player, 2)); } player.wakeUpPlayer(immediately, false, setSpawn); this.sleepingInCoffin = false; player.noClip = true; if (updateWorldFlag) { DaySleepHelper.updateAllPlayersSleeping(player.world); } if (player instanceof EntityPlayerMP && ((EntityPlayerMP) player).connection != null) { ((EntityPlayerMP) player).connection.setPlayerLocation(player.posX, player.posY, player.posZ, player.rotationYaw, player.rotationPitch); } }