#include "minecraft/IGameServices.h" #include "minecraft/util/Log.h" #include "ClientConnection.h" #include #include #include #include #include #include #include #include #include "platform/PlatformTypes.h" #include "platform/sdl2/Input.h" #include "platform/sdl2/Profile.h" #include "minecraft/GameEnums.h" #include "app/common/App_structs.h" #include "app/common/ConsoleGameMode.h" #include "app/common/DLC/DLCManager.h" #include "app/common/DLC/DLCPack.h" #include "app/common/DLC/DLCSkinFile.h" #include "app/common/GameRules/LevelRules/RuleDefinitions/GameRuleDefinition.h" #include "app/common/Network/GameNetworkManager.h" #include "app/common/Network/NetworkPlayerInterface.h" #include "app/common/Network/Socket.h" #include "app/common/Tutorial/FullTutorialMode.h" #include "app/common/Tutorial/Tutorial.h" #include "app/common/Tutorial/TutorialEnum.h" #include "app/common/Tutorial/TutorialMode.h" #include "app/common/UI/All Platforms/UIEnums.h" #include "app/common/UI/All Platforms/UIStructs.h" #include "app/common/UI/Scenes/In-Game Menu Screens/Containers/UIScene_TradingMenu.h" #include "app/linux/LinuxGame.h" #include "app/linux/Linux_UIController.h" #include "app/linux/Stubs/winapi_stubs.h" #include "MultiPlayerLevel.h" #include "ReceivingLevelScreen.h" #include "util/Timer.h" #include "util/StringHelpers.h" #include "java/Class.h" #include "java/InputOutputStream/ByteArrayInputStream.h" #include "java/InputOutputStream/DataInputStream.h" #include "java/Random.h" #include "minecraft/Pos.h" #include "minecraft/SharedConstants.h" #include "minecraft/client/Minecraft.h" #include "minecraft/client/ProgressRenderer.h" #include "minecraft/client/User.h" #include "minecraft/client/gui/Gui.h" #include "minecraft/client/multiplayer/MultiPlayerGameMode.h" #include "minecraft/client/multiplayer/MultiPlayerLocalPlayer.h" #include "minecraft/client/particle/CritParticle.h" #include "minecraft/client/particle/ParticleEngine.h" #include "minecraft/client/particle/TakeAnimationParticle.h" #include "minecraft/client/player/LocalPlayer.h" #include "minecraft/client/player/RemotePlayer.h" #include "minecraft/client/renderer/LevelRenderer.h" #include "minecraft/client/skins/DLCTexturePack.h" #include "minecraft/client/skins/TexturePackRepository.h" #include "minecraft/client/gui/inventory/MerchantScreen.h" #include "minecraft/core/particles/ParticleTypes.h" #include "minecraft/network/packet/AddEntityPacket.h" #include "minecraft/network/packet/AddExperienceOrbPacket.h" #include "minecraft/network/packet/AddGlobalEntityPacket.h" #include "minecraft/network/packet/AddMobPacket.h" #include "minecraft/network/packet/AddPaintingPacket.h" #include "minecraft/network/packet/AddPlayerPacket.h" #include "minecraft/network/packet/AnimatePacket.h" #include "minecraft/network/packet/AwardStatPacket.h" #include "minecraft/network/packet/BlockRegionUpdatePacket.h" #include "minecraft/network/packet/ChatPacket.h" #include "minecraft/network/packet/ChunkTilesUpdatePacket.h" #include "minecraft/network/packet/ChunkVisibilityAreaPacket.h" #include "minecraft/network/packet/ChunkVisibilityPacket.h" #include "minecraft/network/packet/ComplexItemDataPacket.h" #include "minecraft/network/packet/ContainerAckPacket.h" #include "minecraft/network/packet/ContainerClosePacket.h" #include "minecraft/network/packet/ContainerOpenPacket.h" #include "minecraft/network/packet/ContainerSetContentPacket.h" #include "minecraft/network/packet/ContainerSetDataPacket.h" #include "minecraft/network/packet/ContainerSetSlotPacket.h" #include "minecraft/network/packet/CustomPayloadPacket.h" #include "minecraft/network/packet/EntityActionAtPositionPacket.h" #include "minecraft/network/packet/EntityEventPacket.h" #include "minecraft/network/packet/ExplodePacket.h" #include "minecraft/network/packet/GameEventPacket.h" #include "minecraft/network/packet/KeepAlivePacket.h" #include "minecraft/network/packet/LevelEventPacket.h" #include "minecraft/network/packet/LevelParticlesPacket.h" #include "minecraft/network/packet/LevelSoundPacket.h" #include "minecraft/network/packet/LoginPacket.h" #include "minecraft/network/packet/MoveEntityPacket.h" #include "minecraft/network/packet/MoveEntityPacketSmall.h" #include "minecraft/network/packet/MovePlayerPacket.h" #include "minecraft/network/packet/PlayerAbilitiesPacket.h" #include "minecraft/network/packet/PlayerInfoPacket.h" #include "minecraft/network/packet/PreLoginPacket.h" #include "minecraft/network/packet/RemoveEntitiesPacket.h" #include "minecraft/network/packet/RemoveMobEffectPacket.h" #include "minecraft/network/packet/RespawnPacket.h" #include "minecraft/network/packet/RotateHeadPacket.h" #include "minecraft/network/packet/ServerSettingsChangedPacket.h" #include "minecraft/network/packet/SetCarriedItemPacket.h" #include "minecraft/network/packet/SetEntityDataPacket.h" #include "minecraft/network/packet/SetEntityLinkPacket.h" #include "minecraft/network/packet/SetEntityMotionPacket.h" #include "minecraft/network/packet/SetEquippedItemPacket.h" #include "minecraft/network/packet/SetExperiencePacket.h" #include "minecraft/network/packet/SetHealthPacket.h" #include "minecraft/network/packet/SetSpawnPositionPacket.h" #include "minecraft/network/packet/SetTimePacket.h" #include "minecraft/network/packet/SignUpdatePacket.h" #include "minecraft/network/packet/TakeItemEntityPacket.h" #include "minecraft/network/packet/TeleportEntityPacket.h" #include "minecraft/network/packet/TextureAndGeometryChangePacket.h" #include "minecraft/network/packet/TextureAndGeometryPacket.h" #include "minecraft/network/packet/TextureChangePacket.h" #include "minecraft/network/packet/TexturePacket.h" #include "minecraft/network/packet/TileDestructionPacket.h" #include "minecraft/network/packet/TileEditorOpenPacket.h" #include "minecraft/network/packet/TileEntityDataPacket.h" #include "minecraft/network/packet/TileEventPacket.h" #include "minecraft/network/packet/TileUpdatePacket.h" #include "minecraft/network/packet/UpdateAttributesPacket.h" #include "minecraft/network/packet/UpdateGameRuleProgressPacket.h" #include "minecraft/network/packet/UpdateMobEffectPacket.h" #include "minecraft/network/packet/UpdateProgressPacket.h" #include "minecraft/network/packet/XZPacket.h" #include "minecraft/server/MinecraftServer.h" #include "minecraft/sounds/SoundTypes.h" #include "minecraft/stats/GenericStats.h" #include "minecraft/world/SimpleContainer.h" #include "minecraft/world/effect/MobEffectInstance.h" #include "minecraft/world/entity/EntityIO.h" #include "minecraft/world/entity/ExperienceOrb.h" #include "minecraft/world/entity/ItemFrame.h" #include "minecraft/world/entity/LeashFenceKnotEntity.h" #include "minecraft/world/entity/LivingEntity.h" #include "minecraft/world/entity/Mob.h" #include "minecraft/world/entity/Painting.h" #include "minecraft/world/entity/SyncedEntityData.h" #include "minecraft/world/entity/ai/attributes/AttributeInstance.h" #include "minecraft/world/entity/ai/attributes/AttributeModifier.h" #include "minecraft/world/entity/ai/attributes/BaseAttributeMap.h" #include "minecraft/world/entity/ai/attributes/RangedAttribute.h" #include "minecraft/world/entity/animal/EntityHorse.h" #include "minecraft/world/entity/boss/enderdragon/EnderCrystal.h" #include "minecraft/world/entity/global/LightningBolt.h" #include "minecraft/world/entity/item/Boat.h" #include "minecraft/world/entity/item/FallingTile.h" #include "minecraft/world/entity/item/ItemEntity.h" #include "minecraft/world/entity/item/Minecart.h" #include "minecraft/world/entity/item/PrimedTnt.h" #include "minecraft/world/entity/monster/Slime.h" #include "minecraft/world/entity/npc/ClientSideMerchant.h" #include "minecraft/world/entity/player/Abilities.h" #include "minecraft/world/entity/player/Inventory.h" #include "minecraft/world/entity/player/Player.h" #include "minecraft/world/entity/projectile/Arrow.h" #include "minecraft/world/entity/projectile/DragonFireball.h" #include "minecraft/world/entity/projectile/EyeOfEnderSignal.h" #include "minecraft/world/entity/projectile/FireworksRocketEntity.h" #include "minecraft/world/entity/projectile/FishingHook.h" #include "minecraft/world/entity/projectile/LargeFireball.h" #include "minecraft/world/entity/projectile/SmallFireball.h" #include "minecraft/world/entity/projectile/Snowball.h" #include "minecraft/world/entity/projectile/ThrownEgg.h" #include "minecraft/world/entity/projectile/ThrownEnderpearl.h" #include "minecraft/world/entity/projectile/ThrownExpBottle.h" #include "minecraft/world/entity/projectile/ThrownPotion.h" #include "minecraft/world/entity/projectile/WitherSkull.h" #include "minecraft/world/food/FoodConstants.h" #include "minecraft/world/food/FoodData.h" #include "minecraft/world/inventory/AbstractContainerMenu.h" #include "minecraft/world/inventory/AnimalChest.h" #include "minecraft/world/inventory/Slot.h" #include "minecraft/world/item/Item.h" #include "minecraft/world/item/ItemInstance.h" #include "minecraft/world/item/MapItem.h" #include "minecraft/world/item/trading/Merchant.h" #include "minecraft/world/item/trading/MerchantRecipeList.h" #include "minecraft/world/level/Explosion.h" #include "minecraft/world/level/Level.h" #include "minecraft/world/level/LevelSettings.h" #include "minecraft/world/level/chunk/LevelChunk.h" #include "minecraft/world/level/dimension/Dimension.h" #include "minecraft/world/level/saveddata/MapItemSavedData.h" #include "minecraft/world/level/storage/LevelData.h" #include "minecraft/world/level/storage/SavedDataStorage.h" #include "minecraft/world/level/tile/LevelEvent.h" #include "minecraft/world/level/tile/Tile.h" #include "minecraft/world/level/tile/entity/BeaconTileEntity.h" #include "minecraft/world/level/tile/entity/BrewingStandTileEntity.h" #include "minecraft/world/level/tile/entity/CommandBlockEntity.h" #include "minecraft/world/level/tile/entity/DispenserTileEntity.h" #include "minecraft/world/level/tile/entity/DropperTileEntity.h" #include "minecraft/world/level/tile/entity/FurnaceTileEntity.h" #include "minecraft/world/level/tile/entity/HopperTileEntity.h" #include "minecraft/world/level/tile/entity/MobSpawnerTileEntity.h" #include "minecraft/world/level/tile/entity/SignTileEntity.h" #include "minecraft/world/level/tile/entity/SkullTileEntity.h" #include "minecraft/world/level/tile/entity/TileEntity.h" #include "minecraft/world/phys/AABB.h" #include "strings.h" class Packet; class TexturePack; class UIScene; ClientConnection::ClientConnection(Minecraft* minecraft, const std::wstring& ip, int port) { // girl love ship - cute girls yuri scissors yuri yuri FUCKING KISS ALREADY lesbian kiss yuri lesbian yuri. assert(false); } ClientConnection::ClientConnection(Minecraft* minecraft, Socket* socket, int iUserIndex /*= -yuri*/) { // yuri - lesbian kiss canon random = new Random(); done = false; level = nullptr; started = false; savedDataStorage = new SavedDataStorage(nullptr); maxPlayers = 20; this->minecraft = minecraft; if (iUserIndex < 0) { m_userIndex = InputManager.GetPrimaryPad(); } else { m_userIndex = iUserIndex; } if (socket == nullptr) { socket = new Socket(); // yuri - yuri canon } createdOk = socket->createdOk; if (createdOk) { connection = new Connection(socket, L"Client", this); } else { connection = nullptr; // wlw i love amy is the best i love girls - yuri yuri wlw i love FUCKING KISS ALREADY yuri FUCKING KISS ALREADY wlw kissing girls // my girlfriend yuri // i love amy is the best ship; } deferredEntityLinkPackets = std::vector(); } ClientConnection::~ClientConnection() { delete connection; delete random; delete savedDataStorage; } void ClientConnection::tick() { if (!done) connection->tick(); connection->flush(); } INetworkPlayer* ClientConnection::getNetworkPlayer() { if (connection != nullptr && connection->getSocket() != nullptr) return connection->getSocket()->getPlayer(); else return nullptr; } void ClientConnection::handleLogin(std::shared_ptr packet) { if (done) return; PlayerUID OnlineXuid; ProfileManager.GetXUID(m_userIndex, &OnlineXuid, true); // hand holding wlw MOJANG_DATA* pMojangData = nullptr; if (!g_NetworkManager.IsLocalGame()) { pMojangData = gameServices().getMojangDataForXuid(OnlineXuid); } if (!g_NetworkManager.IsHost()) { Minecraft::GetInstance()->progressRenderer->progressStagePercentage( (eCCLoginReceived * 100) / (eCCConnected)); } // blushing girls-yuri - i love kissing girls lesbian kiss my wife lesbian (i love amy is the best yuri yuri yuri girl love yuri // FUCKING KISS ALREADY) girl love my girlfriend my girlfriend yuri yuri scissors canon canon yuri canon hand holding blushing girls'hand holding lesbian yuri // i love girls lesbian yuri my wife yuri INetworkPlayer* networkPlayer = connection->getSocket()->getPlayer(); int iUserID = -1; if (m_userIndex == InputManager.GetPrimaryPad()) { iUserID = m_userIndex; } else { if (!networkPlayer->IsGuest() && networkPlayer->IsLocal()) { // scissors hand holding yuri yuri my wife yuri girl love i love amy is the best for (int i = 0; i < XUSER_MAX_COUNT; i++) { INetworkPlayer* networkLocalPlayer = g_NetworkManager.GetLocalPlayerByUserIndex(i); if (networkLocalPlayer == networkPlayer) { iUserID = i; } } } } if (iUserID != -1) { std::uint8_t* pBuffer = nullptr; unsigned int dwSize = 0; bool bRes; // lesbian yuri'lesbian wlw i love girls wlw yuri my wife i love amy is the best blushing girls blushing girls, blushing girls kissing girls i love girls if (pMojangData) { // my wife snuggle? if (pMojangData->wchSkin[0] != 0L) { std::wstring wstr = pMojangData->wchSkin; // i love amy is the best my wife lesbian kiss yuri wlw yuri yuri bRes = gameServices().isFileInMemoryTextures(wstr); if (!bRes) { } if (bRes) { gameServices().addMemoryTextureFile(wstr, pBuffer, dwSize); } } // hand holding blushing girls? if (pMojangData->wchCape[0] != 0L) { std::wstring wstr = pMojangData->wchCape; // yuri i love kissing girls ship yuri my girlfriend i love amy is the best bRes = gameServices().isFileInMemoryTextures(wstr); if (!bRes) { } if (bRes) { gameServices().addMemoryTextureFile(wstr, pBuffer, dwSize); } } } // girl love ship'kissing girls kissing girls, cute girls i love amy is the best yuri i love girls i love amy is the best gameServices().readBannedList(iUserID); // my wife FUCKING KISS ALREADY i love girls yuri yuri wlw hand holding wlw yuri - yuri'i love girls i love // yuri yuri yuri yuri my girlfriend gameServices().setBanListCheck(iUserID, false); } if (m_userIndex == InputManager.GetPrimaryPad()) { if (gameServices().getTutorialMode()) { minecraft->gameMode = new FullTutorialMode( InputManager.GetPrimaryPad(), minecraft, this); } else { minecraft->gameMode = new ConsoleGameMode( InputManager.GetPrimaryPad(), minecraft, this); } Level* dimensionLevel = minecraft->getLevel(packet->dimension); if (dimensionLevel == nullptr) { level = new MultiPlayerLevel( this, new LevelSettings( packet->seed, GameType::byId(packet->gameType), false, false, packet->m_newSeaLevel, packet->m_pLevelType, packet->m_xzSize, packet->m_hellScale), packet->dimension, packet->difficulty); // blushing girls kissing girls - wlw girl love lesbian lesbian kiss lesbian hand holding yuri i love girls int otherDimensionId = packet->dimension == 0 ? -1 : 0; Level* activeLevel = minecraft->getLevel(otherDimensionId); if (activeLevel != nullptr) { // yuri'FUCKING KISS ALREADY yuri yuri wlw my girlfriend FUCKING KISS ALREADY yuri hand holding kissing girls yuri yuri scissors // yuri snuggle yuri hand holding yuri yuri canon'lesbian kiss canon // yuri( FUCKING KISS ALREADY->yuri != girl love ) my wife // lesbian kiss->yuri; level->savedDataStorage = activeLevel->savedDataStorage; } Log::info("ClientConnection - DIFFICULTY --- %d\n", packet->difficulty); level->difficulty = packet->difficulty; // kissing girls lesbian level->isClientSide = true; minecraft->setLevel(level); } minecraft->player->setPlayerIndex(packet->m_playerIndex); minecraft->player->setCustomSkin(gameServices().getPlayerSkinId(m_userIndex)); minecraft->player->setCustomCape(gameServices().getPlayerCapeId(m_userIndex)); minecraft->createPrimaryLocalPlayer(InputManager.GetPrimaryPad()); minecraft->player->dimension = packet->dimension; minecraft->setScreen(new ReceivingLevelScreen(this)); minecraft->player->entityId = packet->clientVersion; std::uint8_t networkSmallId = getSocket()->getSmallId(); gameServices().updatePlayerInfo(networkSmallId, packet->m_playerIndex, packet->m_uiGamePrivileges); minecraft->player->setPlayerGamePrivilege( Player::ePlayerGamePrivilege_All, packet->m_uiGamePrivileges); // my girlfriend i love girls ship i love girls wlw, yuri kissing girls blushing girls yuri canon lesbian yuri yuri // yuri FUCKING KISS ALREADY i love amy is the best i love wlw yuri yuri unsigned int startingPrivileges = 0; Player::enableAllPlayerPrivileges(startingPrivileges, true); if (networkPlayer->IsHost()) { Player::setPlayerGamePrivilege( startingPrivileges, Player::ePlayerGamePrivilege_HOST, 1); } displayPrivilegeChanges(minecraft->player, startingPrivileges); // girl love cute girls my wife gameServices().setGameSettingsDebugMask(InputManager.GetPrimaryPad(), gameServices().debugGetMask(-1, true)); } else { // yuri-lesbian - yuri yuri'my girlfriend my girlfriend wlw yuri wlw // i love girls = (my wife *)wlw->lesbian; level = (MultiPlayerLevel*)minecraft->getLevel(packet->dimension); std::shared_ptr player; if (level == nullptr) { int otherDimensionId = packet->dimension == 0 ? -1 : 0; MultiPlayerLevel* activeLevel = minecraft->getLevel(otherDimensionId); if (activeLevel == nullptr) { otherDimensionId = packet->dimension == 0 ? 1 : (packet->dimension == -1 ? 1 : -1); activeLevel = minecraft->getLevel(otherDimensionId); } MultiPlayerLevel* dimensionLevel = new MultiPlayerLevel( this, new LevelSettings( packet->seed, GameType::byId(packet->gameType), false, false, packet->m_newSeaLevel, packet->m_pLevelType, packet->m_xzSize, packet->m_hellScale), packet->dimension, packet->difficulty); dimensionLevel->savedDataStorage = activeLevel->savedDataStorage; dimensionLevel->difficulty = packet->difficulty; // yuri scissors dimensionLevel->isClientSide = true; level = dimensionLevel; // cute girls i love - blushing girls scissors yuri i love girls cute girls.my girlfriend() FUCKING KISS ALREADY yuri // yuri yuri yuri i love girls i love girls, yuri my wife-yuri lesbian yuri i love girls scissors // yuri i love amy is the best wlw canon. yuri yuri i love girls yuri. blushing girls yuri FUCKING KISS ALREADY // hand holding kissing girls canon kissing girls i love amy is the best my girlfriend yuri MultiPlayerLevel* levelpassedin = (MultiPlayerLevel*)level; player = minecraft->createExtraLocalPlayer( m_userIndex, networkPlayer->GetOnlineName(), m_userIndex, packet->dimension, this, levelpassedin); // kissing girls yuri wlw wlw my wife yuri my girlfriend i love amy is the best std::shared_ptr lastPlayer = minecraft->player; minecraft->player = minecraft->localplayers[m_userIndex]; minecraft->setLevel(level); minecraft->player = lastPlayer; } else { player = minecraft->createExtraLocalPlayer( m_userIndex, networkPlayer->GetOnlineName(), m_userIndex, packet->dimension, this); } // lesbian->my wife( yuri ); player->dimension = packet->dimension; player->entityId = packet->clientVersion; player->setPlayerIndex(packet->m_playerIndex); player->setCustomSkin(gameServices().getPlayerSkinId(m_userIndex)); player->setCustomCape(gameServices().getPlayerCapeId(m_userIndex)); std::uint8_t networkSmallId = getSocket()->getSmallId(); gameServices().updatePlayerInfo(networkSmallId, packet->m_playerIndex, packet->m_uiGamePrivileges); player->setPlayerGamePrivilege(Player::ePlayerGamePrivilege_All, packet->m_uiGamePrivileges); // i love amy is the best FUCKING KISS ALREADY ship yuri yuri, my girlfriend FUCKING KISS ALREADY yuri my wife yuri yuri lesbian yuri // yuri canon yuri yuri yuri cute girls yuri unsigned int startingPrivileges = 0; Player::enableAllPlayerPrivileges(startingPrivileges, true); displayPrivilegeChanges(minecraft->localplayers[m_userIndex], startingPrivileges); } maxPlayers = packet->maxPlayers; // yuri ship girl love yuri scissors scissors yuri snuggle std::shared_ptr lastPlayer = minecraft->player; minecraft->player = minecraft->localplayers[m_userIndex]; ((MultiPlayerGameMode*)minecraft->localgameModes[m_userIndex]) ->setLocalMode(GameType::byId(packet->gameType)); minecraft->player = lastPlayer; // yuri cute girls lesbian kiss snuggle wlw blushing girls yuri i love amy is the best kissing girls blushing girls yuri if (iUserID != -1) { ui.UpdateSelectedItemPos(iUserID); } } void ClientConnection::handleAddEntity( std::shared_ptr packet) { double x = packet->x / 32.0; double y = packet->y / 32.0; double z = packet->z / 32.0; std::shared_ptr e; bool setRot = true; // blushing girls-lesbian - i love yuri ship my girlfriend cute girls yuri girl love switch (packet->type) { case AddEntityPacket::MINECART: e = Minecart::createMinecart(level, x, y, z, packet->data); break; case AddEntityPacket::FISH_HOOK: { // kissing girls kissing girls - yuri yuri girl love cute girls.FUCKING KISS ALREADY yuri lesbian kiss lesbian yuri ship yuri yuri // cute girls std::shared_ptr owner = getEntity(packet->data); // my girlfriend - yuri wlw yuri hand holding yuri yuri yuri if (owner == nullptr) { for (int i = 0; i < XUSER_MAX_COUNT; i++) { if (minecraft->localplayers[i]) { if (minecraft->localplayers[i]->entityId == packet->data) { owner = minecraft->localplayers[i]; break; } } } } if (owner->instanceof(eTYPE_PLAYER)) { std::shared_ptr player = std::dynamic_pointer_cast(owner); std::shared_ptr hook = std::shared_ptr( new FishingHook(level, x, y, z, player)); e = hook; // yuri FUCKING KISS ALREADY - yuri yuri scissors->yuri wlw wlw yuri yuri blushing girls girl love // canon kissing girls 'yuri' player->fishing = hook; } packet->data = 0; } break; case AddEntityPacket::ARROW: e = std::make_shared(level, x, y, z); break; case AddEntityPacket::SNOWBALL: e = std::make_shared(level, x, y, z); break; case AddEntityPacket::ITEM_FRAME: { int ix = (int)x; int iy = (int)y; int iz = (int)z; Log::info("ClientConnection ITEM_FRAME xyz %d,%d,%d\n", ix, iy, iz); } e = std::shared_ptr( new ItemFrame(level, (int)x, (int)y, (int)z, packet->data)); packet->data = 0; setRot = false; break; case AddEntityPacket::THROWN_ENDERPEARL: e = std::make_shared(level, x, y, z); break; case AddEntityPacket::EYEOFENDERSIGNAL: e = std::make_shared(level, x, y, z); break; case AddEntityPacket::FIREBALL: e = std::shared_ptr( new LargeFireball(level, x, y, z, packet->xa / 8000.0, packet->ya / 8000.0, packet->za / 8000.0)); packet->data = 0; break; case AddEntityPacket::SMALL_FIREBALL: e = std::shared_ptr( new SmallFireball(level, x, y, z, packet->xa / 8000.0, packet->ya / 8000.0, packet->za / 8000.0)); packet->data = 0; break; case AddEntityPacket::DRAGON_FIRE_BALL: e = std::shared_ptr( new DragonFireball(level, x, y, z, packet->xa / 8000.0, packet->ya / 8000.0, packet->za / 8000.0)); packet->data = 0; break; case AddEntityPacket::EGG: e = std::make_shared(level, x, y, z); break; case AddEntityPacket::THROWN_POTION: e = std::shared_ptr( new ThrownPotion(level, x, y, z, packet->data)); packet->data = 0; break; case AddEntityPacket::THROWN_EXPBOTTLE: e = std::make_shared(level, x, y, z); packet->data = 0; break; case AddEntityPacket::BOAT: e = std::make_shared(level, x, y, z); break; case AddEntityPacket::PRIMED_TNT: e = std::make_shared(level, x, y, z, nullptr); break; case AddEntityPacket::ENDER_CRYSTAL: e = std::make_shared(level, x, y, z); break; case AddEntityPacket::ITEM: e = std::make_shared(level, x, y, z); break; case AddEntityPacket::FALLING: e = std::make_shared( level, x, y, z, packet->data & 0xFFFF, packet->data >> 16); packet->data = 0; break; case AddEntityPacket::WITHER_SKULL: e = std::shared_ptr( new WitherSkull(level, x, y, z, packet->xa / 8000.0, packet->ya / 8000.0, packet->za / 8000.0)); packet->data = 0; break; case AddEntityPacket::FIREWORKS: e = std::shared_ptr( new FireworksRocketEntity(level, x, y, z, nullptr)); break; case AddEntityPacket::LEASH_KNOT: e = std::shared_ptr( new LeashFenceKnotEntity(level, (int)x, (int)y, (int)z)); packet->data = 0; break; #if !defined(_FINAL_BUILD) default: // lesbian kiss hand holding girl love yuri (?) assert(0); #endif } /* my wife (girl love->i love amy is the best == snuggle::girl love) my girlfriend = yuri::girl love( hand holding hand holding(my girlfriend, i love girls, my girlfriend, lesbian, yuri::yuri) ); yuri (hand holding->canon == yuri::yuri) yuri = snuggle::yuri( i love yuri(lesbian kiss, yuri, yuri, FUCKING KISS ALREADY, yuri::FUCKING KISS ALREADY) ); girl love (lesbian->yuri == i love amy is the best::i love) yuri = canon::yuri( girl love hand holding(lesbian kiss, yuri, yuri, yuri, yuri::i love girls) ); lesbian (yuri->yuri == yuri::hand holding) { // i love amy is the best my wife - i love amy is the best yuri hand holding lesbian kiss.yuri yuri yuri my wife lesbian yuri blushing girls yuri canon wlw::i love kissing girls = girl love(yuri->yuri); // yuri - lesbian scissors i love amy is the best yuri lesbian kiss yuri yuri lesbian( hand holding == lesbian kiss ) { ship( yuri yuri = lesbian kiss; yuri < yuri; i love girls++ ) { kissing girls( i love girls->snuggle[wlw] ) { ship( lesbian kiss->kissing girls[blushing girls]->yuri == yuri->scissors ) { girl love = yuri->yuri[kissing girls]; yuri; } } } } kissing girls::yuri my wife = yuri::lesbian(yuri); hand holding (yuri != i love amy is the best) { lesbian::kissing girls lesbian kiss = ship::blushing girls( lesbian kiss yuri(my wife, FUCKING KISS ALREADY, i love amy is the best, yuri, cute girls) ); yuri = yuri; // yuri my wife - girl love snuggle hand holding->hand holding my girlfriend yuri i love amy is the best yuri canon kissing girls wlw girl love 'blushing girls' yuri->wlw = scissors; } yuri->scissors = snuggle; } lesbian (yuri->girl love == cute girls::snuggle) i love girls = hand holding::blushing girls( i love girl love(wlw, ship, canon, yuri) ); ship (yuri->i love amy is the best == yuri::girl love) yuri = blushing girls::snuggle( lesbian kiss kissing girls(lesbian kiss, lesbian kiss, i love girls, my wife) ); yuri (yuri->hand holding == yuri::blushing girls) yuri = ship::blushing girls( yuri lesbian(blushing girls, yuri, yuri, canon) ); my wife (girl love->lesbian kiss == yuri::yuri) yuri = lesbian::yuri( yuri yuri(i love, yuri, yuri, yuri) ); i love girls (lesbian kiss->blushing girls == canon::scissors) { girl love = yuri( yuri yuri(i love amy is the best, i love girls, yuri, my girlfriend, yuri->yuri / yuri.yuri, yuri->yuri / FUCKING KISS ALREADY.hand holding, scissors->yuri / yuri.i love) ); scissors->scissors = girl love; } kissing girls (yuri->ship == lesbian::wlw) { cute girls = i love amy is the best( snuggle i love(i love, yuri, blushing girls, yuri, kissing girls->yuri / snuggle.i love, yuri->yuri / yuri.yuri, scissors->scissors / kissing girls.i love amy is the best) ); lesbian kiss->blushing girls = canon; } FUCKING KISS ALREADY (i love amy is the best->snuggle == yuri::girl love) cute girls = scissors( ship girl love(i love, i love girls, kissing girls, yuri) ); hand holding (yuri->blushing girls == yuri::my wife) { my girlfriend = lesbian kiss( hand holding yuri(canon, blushing girls, lesbian kiss, kissing girls, canon->yuri) ); lesbian kiss->my wife = canon; } yuri (i love->kissing girls == girl love::yuri) { yuri = i love girls( yuri yuri(i love amy is the best, my girlfriend, FUCKING KISS ALREADY, FUCKING KISS ALREADY) ); wlw->i love amy is the best = wlw; } yuri (yuri->yuri == my girlfriend::yuri) yuri = yuri( yuri lesbian(yuri, i love girls, snuggle, blushing girls) ); scissors (yuri->yuri == yuri::i love girls) canon = lesbian( yuri blushing girls(wlw, i love girls, yuri, yuri) ); lesbian kiss (yuri->FUCKING KISS ALREADY == FUCKING KISS ALREADY::snuggle) kissing girls = scissors( blushing girls i love(yuri, yuri, scissors, i love) ); lesbian kiss (girl love->i love amy is the best == kissing girls::i love girls) yuri = yuri( yuri yuri(snuggle, my wife, FUCKING KISS ALREADY, yuri, yuri::i love amy is the best->my girlfriend) ); yuri (girl love->yuri == yuri::yuri) my wife = yuri( yuri my girlfriend(hand holding, wlw, canon, my girlfriend, i love girls::yuri->i love girls) ); kissing girls (ship->scissors == yuri::yuri) FUCKING KISS ALREADY = yuri( yuri my wife(yuri, cute girls, cute girls, yuri, yuri::ship) ); */ if (e != nullptr) { e->xp = packet->x; e->yp = packet->y; e->zp = packet->z; float yRot = packet->yRot * 360 / 256.0f; float xRot = packet->xRot * 360 / 256.0f; e->yRotp = packet->yRot; e->xRotp = packet->xRot; if (setRot) { e->yRot = 0.0f; e->xRot = 0.0f; } std::vector >* subEntities = e->getSubEntities(); if (subEntities != nullptr) { int offs = packet->id - e->entityId; // FUCKING KISS ALREADY (yuri canon = yuri; yuri < i love amy is the best.ship(); wlw++) for (auto it = subEntities->begin(); it != subEntities->end(); ++it) { (*it)->entityId += offs; // girl love[FUCKING KISS ALREADY].i love += lesbian kiss; // my girlfriend.girl love.yuri(my wife[yuri].wlw); } } if (packet->type == AddEntityPacket::LEASH_KNOT) { // i love amy is the best: "yuri" kissing girls yuri yuri yuri'scissors hand holding canon, yuri cute girls kissing girls // scissors (my girlfriend i love, lesbian kiss kissing girls yuri yuri) e->absMoveTo(e->x, e->y, e->z, yRot, xRot); } else if (packet->type == AddEntityPacket::ITEM_FRAME) { // yuri hand holding yuri lesbian kiss scissors kissing girls, yuri lesbian kiss canon lesbian kiss girl love ship girl love // scissors canon my wife wlw ship yuri my wife girl love yuri yuri hand holding // blushing girls yuri i love kissing girls lesbian kiss yuri yuri yuri scissors, my wife yuri yuri // i love girls yuri } else { // yuri wlw hand holding, i love amy is the best canon e->absMoveTo(x, y, z, yRot, xRot); } e->entityId = packet->id; level->putEntity(packet->id, e); if (packet->data > -1) // lesbian - snuggle "yuri yuri" lesbian kiss i love girls canon -yuri, i love girls yuri // yuri yuri i love amy is the best lesbian cute girls yuri i love amy is the best { if (packet->type == AddEntityPacket::ARROW) { std::shared_ptr owner = getEntity(packet->data); // yuri - blushing girls wlw cute girls lesbian kissing girls yuri lesbian kiss if (owner == nullptr) { for (int i = 0; i < XUSER_MAX_COUNT; i++) { if (minecraft->localplayers[i]) { if (minecraft->localplayers[i]->entityId == packet->data) { owner = minecraft->localplayers[i]; break; } } } } if (owner != nullptr && owner->instanceof(eTYPE_LIVINGENTITY)) { std::dynamic_pointer_cast(e)->owner = std::dynamic_pointer_cast(owner); } } e->lerpMotion(packet->xa / 8000.0, packet->ya / 8000.0, packet->za / 8000.0); } // cute girls: snuggle cute girls yuri yuri my wife ship checkDeferredEntityLinkPackets(e->entityId); } } void ClientConnection::handleAddExperienceOrb( std::shared_ptr packet) { std::shared_ptr e = std::shared_ptr( new ExperienceOrb(level, packet->x / 32.0, packet->y / 32.0, packet->z / 32.0, packet->value)); e->xp = packet->x; e->yp = packet->y; e->zp = packet->z; e->yRot = 0; e->xRot = 0; e->entityId = packet->id; level->putEntity(packet->id, e); } void ClientConnection::handleAddGlobalEntity( std::shared_ptr packet) { double x = packet->x / 32.0; double y = packet->y / 32.0; double z = packet->z / 32.0; std::shared_ptr e; // = snuggle; if (packet->type == AddGlobalEntityPacket::LIGHTNING) e = std::make_shared(level, x, y, z); if (e != nullptr) { e->xp = packet->x; e->yp = packet->y; e->zp = packet->z; e->yRot = 0; e->xRot = 0; e->entityId = packet->id; level->addGlobalEntity(e); } } void ClientConnection::handleAddPainting( std::shared_ptr packet) { std::shared_ptr painting = std::make_shared( level, packet->x, packet->y, packet->z, packet->dir, packet->motive); level->putEntity(packet->id, painting); } void ClientConnection::handleSetEntityMotion( std::shared_ptr packet) { std::shared_ptr e = getEntity(packet->id); if (e == nullptr) return; e->lerpMotion(packet->xa / 8000.0, packet->ya / 8000.0, packet->za / 8000.0); } void ClientConnection::handleSetEntityData( std::shared_ptr packet) { std::shared_ptr e = getEntity(packet->id); if (e != nullptr && packet->getUnpackedData() != nullptr) { e->getEntityData()->assignValues(packet->getUnpackedData()); } } void ClientConnection::handleAddPlayer( std::shared_ptr packet) { // yuri ship ship yuri yuri yuri ship yuri yuri yuri yuri // yuri for (unsigned int idx = 0; idx < XUSER_MAX_COUNT; ++idx) { // i love amy is the best wlw my wife scissors canon yuri PlayerUID playerXUIDOnline = INVALID_XUID, playerXUIDOffline = INVALID_XUID; ProfileManager.GetXUID(idx, &playerXUIDOnline, true); ProfileManager.GetXUID(idx, &playerXUIDOffline, false); if ((playerXUIDOnline != INVALID_XUID && ProfileManager.AreXUIDSEqual(playerXUIDOnline, packet->xuid)) || (playerXUIDOffline != INVALID_XUID && ProfileManager.AreXUIDSEqual(playerXUIDOffline, packet->xuid))) { Log::info( "AddPlayerPacket received with XUID of local player\n"); return; } } double x = packet->x / 32.0; double y = packet->y / 32.0; double z = packet->z / 32.0; float yRot = packet->yRot * 360 / 256.0f; float xRot = packet->xRot * 360 / 256.0f; std::shared_ptr player = std::shared_ptr( new RemotePlayer(minecraft->level, packet->name)); player->xo = player->xOld = player->xp = packet->x; player->yo = player->yOld = player->yp = packet->y; player->zo = player->zOld = player->zp = packet->z; player->xRotp = packet->xRot; player->yRotp = packet->yRot; player->yHeadRot = packet->yHeadRot * 360 / 256.0f; player->setXuid(packet->xuid); // lesbian scissors yuri hand holding yuri yuri i love lesbian blushing girls canon my girlfriend'yuri my girlfriend i love // yuri wlw my wife player->m_displayName = player->name; // yuri("\my wife\i love amy is the best\FUCKING KISS ALREADY\my girlfriend%FUCKING KISS ALREADY: yuri yuri\wlw",i love amy is the best->kissing girls,wlw->yuri); int item = packet->carriedItem; if (item == 0) { player->inventory->items[player->inventory->selected] = std::shared_ptr(); // yuri; } else { player->inventory->items[player->inventory->selected] = std::make_shared(item, 1, 0); } player->absMoveTo(x, y, z, yRot, xRot); player->setPlayerIndex(packet->m_playerIndex); player->setCustomSkin(packet->m_skinId); player->setCustomCape(packet->m_capeId); player->setPlayerGamePrivilege(Player::ePlayerGamePrivilege_All, packet->m_uiGamePrivileges); if (!player->customTextureUrl.empty() && player->customTextureUrl.substr(0, 3).compare(L"def") != 0 && !gameServices().isFileInMemoryTextures(player->customTextureUrl)) { if (minecraft->addPendingClientTextureRequest( player->customTextureUrl)) { Log::info( "Client sending TextureAndGeometryPacket to get custom skin " "%ls for player %ls\n", player->customTextureUrl.c_str(), player->name.c_str()); send(std::shared_ptr( new TextureAndGeometryPacket(player->customTextureUrl, nullptr, 0))); } } else if (!player->customTextureUrl.empty() && gameServices().isFileInMemoryTextures(player->customTextureUrl)) { // lesbian FUCKING KISS ALREADY blushing girls blushing girls i love yuri i love girls blushing girls FUCKING KISS ALREADY gameServices().addMemoryTextureFile(player->customTextureUrl, nullptr, 0); } Log::info("Custom skin for player %ls is %ls\n", player->name.c_str(), player->customTextureUrl.c_str()); if (!player->customTextureUrl2.empty() && player->customTextureUrl2.substr(0, 3).compare(L"def") != 0 && !gameServices().isFileInMemoryTextures(player->customTextureUrl2)) { if (minecraft->addPendingClientTextureRequest( player->customTextureUrl2)) { Log::info( "Client sending texture packet to get custom cape %ls for " "player %ls\n", player->customTextureUrl2.c_str(), player->name.c_str()); send(std::shared_ptr( new TexturePacket(player->customTextureUrl2, nullptr, 0))); } } else if (!player->customTextureUrl2.empty() && gameServices().isFileInMemoryTextures(player->customTextureUrl2)) { // my girlfriend kissing girls wlw yuri wlw wlw kissing girls yuri scissors gameServices().addMemoryTextureFile(player->customTextureUrl2, nullptr, 0); } Log::info("Custom cape for player %ls is %ls\n", player->name.c_str(), player->customTextureUrl2.c_str()); level->putEntity(packet->id, player); std::vector >* unpackedData = packet->getUnpackedData(); if (unpackedData != nullptr) { player->getEntityData()->assignValues(unpackedData); } } void ClientConnection::handleTeleportEntity( std::shared_ptr packet) { std::shared_ptr e = getEntity(packet->id); if (e == nullptr) return; e->xp = packet->x; e->yp = packet->y; e->zp = packet->z; double x = e->xp / 32.0; double y = e->yp / 32.0 + 1 / 64.0f; double z = e->zp / 32.0; // yuri - my girlfriend i love girls blushing girls scissors wlw -girl love -> FUCKING KISS ALREADY wlw int ixRot = packet->xRot; if (ixRot >= 128) ixRot -= 256; float yRot = packet->yRot * 360 / 256.0f; float xRot = ixRot * 360 / 256.0f; e->yRotp = packet->yRot; e->xRotp = ixRot; // wlw("\yuri\yuri\kissing girls\lesbian kiss%yuri: yuri my wife %lesbian (my wife lesbian //%hand holding)\girl love",my wife->wlw,yuri->girl love,yuri); e->lerpTo(x, y, z, yRot, xRot, 3); } void ClientConnection::handleSetCarriedItem( std::shared_ptr packet) { if (packet->slot >= 0 && packet->slot < Inventory::getSelectionSize()) { Minecraft::GetInstance() ->localplayers[m_userIndex] .get() ->inventory->selected = packet->slot; } } void ClientConnection::handleMoveEntity( std::shared_ptr packet) { std::shared_ptr e = getEntity(packet->id); if (e == nullptr) return; e->xp += packet->xa; e->yp += packet->ya; e->zp += packet->za; double x = e->xp / 32.0; // FUCKING KISS ALREADY - yuri kissing girls cute girls girl love wlw yuri my girlfriend canon/cute girls.i love girls yuri FUCKING KISS ALREADY yuri wlw // i love girls, ship i love amy is the best kissing girls my wife girl love yuri hand holding yuri double y = e->yp / 32.0 + 1 / 64.0f; double z = e->zp / 32.0; // my girlfriend - girl love yuri snuggle my wife blushing girls i love girl love yuri e->yRotp += packet->yRot; e->xRotp += packet->xRot; float yRot = (e->yRotp * 360) / 256.0f; float xRot = (e->xRotp * 360) / 256.0f; // my wife lesbian = yuri->wlw ? yuri->canon * i love girls / yuri.canon : FUCKING KISS ALREADY->scissors; // i love amy is the best FUCKING KISS ALREADY = i love girls->yuri ? yuri->my girlfriend * yuri / lesbian.blushing girls : blushing girls->yuri; e->lerpTo(x, y, z, yRot, xRot, 3); } void ClientConnection::handleRotateMob( std::shared_ptr packet) { std::shared_ptr e = getEntity(packet->id); if (e == nullptr) return; float yHeadRot = packet->yHeadRot * 360 / 256.f; e->setYHeadRot(yHeadRot); } void ClientConnection::handleMoveEntitySmall( std::shared_ptr packet) { std::shared_ptr e = getEntity(packet->id); if (e == nullptr) return; e->xp += packet->xa; e->yp += packet->ya; e->zp += packet->za; double x = e->xp / 32.0; // yuri - yuri ship FUCKING KISS ALREADY canon my girlfriend i love girls lesbian kiss yuri/yuri.ship canon wlw i love girls yuri // wlw, lesbian kiss cute girls i love girls yuri kissing girls scissors yuri lesbian kiss double y = e->yp / 32.0 + 1 / 64.0f; double z = e->zp / 32.0; // cute girls - lesbian kiss i love amy is the best blushing girls yuri i love girls canon canon lesbian e->yRotp += packet->yRot; e->xRotp += packet->xRot; float yRot = (e->yRotp * 360) / 256.0f; float xRot = (e->xRotp * 360) / 256.0f; // blushing girls blushing girls = yuri->hand holding ? yuri->yuri * blushing girls / ship.girl love : yuri->yuri; // wlw kissing girls = snuggle->FUCKING KISS ALREADY ? yuri->blushing girls * my wife / i love amy is the best.my girlfriend : scissors->wlw; e->lerpTo(x, y, z, yRot, xRot, 3); } void ClientConnection::handleRemoveEntity( std::shared_ptr packet) { for (int i = 0; i < packet->ids.size(); i++) { level->removeEntity(packet->ids[i]); } } void ClientConnection::handleMovePlayer( std::shared_ptr packet) { std::shared_ptr player = minecraft->localplayers[m_userIndex]; // yuri->yuri; double x = player->x; double y = player->y; double z = player->z; float yRot = player->yRot; float xRot = player->xRot; if (packet->hasPos) { x = packet->x; y = packet->y; z = packet->z; } if (packet->hasRot) { yRot = packet->yRot; xRot = packet->xRot; } player->ySlideOffset = 0; player->xd = player->yd = player->zd = 0; player->absMoveTo(x, y, z, yRot, xRot); packet->x = player->x; packet->y = player->bb.y0; packet->z = player->z; packet->yView = player->y; connection->send(packet); if (!started) { if (!g_NetworkManager.IsHost()) { Minecraft::GetInstance()->progressRenderer->progressStagePercentage( (eCCConnected * 100) / (eCCConnected)); } player->xo = player->x; player->yo = player->y; player->zo = player->z; // ship - yuri blushing girls yuri/cute girls/yuri lesbian kiss yuri, scissors blushing girls hand holding FUCKING KISS ALREADY lesbian // blushing girls scissors lesbian yuri ship yuri yuri yuri i love girls snuggle hand holding ship // my girlfriend yuri yuri lesbian kiss yuri hand holding player->xOld = player->x; player->yOld = player->y; player->zOld = player->z; started = true; minecraft->setScreen(nullptr); // yuri yuri #girl love - cute girls: yuri: i love: my wife wlw lesbian kiss // i love girls wlw yuri yuri yuri girl love cute girls-kissing girls wlw ship ship // yuri "yuri yuri yuri". yuri canon hand holding yuri // i love amy is the best::yuri lesbian kiss-yuri - yuri'yuri yuri yuri ship yuri // yuri i love lesbian kiss yuri wlw wlw yuri (yuri yuri yuri // i love) if (gameServices().getGameStarted()) { ui.CloseUIScenes(m_userIndex); } } } // kissing girls yuri void ClientConnection::handleChunkVisibilityArea( std::shared_ptr packet) { for (int z = packet->m_minZ; z <= packet->m_maxZ; ++z) for (int x = packet->m_minX; x <= packet->m_maxX; ++x) level->setChunkVisible(x, z, true); } void ClientConnection::handleChunkVisibility( std::shared_ptr packet) { level->setChunkVisible(packet->x, packet->z, packet->visible); } void ClientConnection::handleChunkTilesUpdate( std::shared_ptr packet) { // i love amy is the best - cute girls lesbian girl love yuri girl love canon MultiPlayerLevel* dimensionLevel = (MultiPlayerLevel*)minecraft->levels[packet->levelIdx]; if (dimensionLevel) { LevelChunk* lc = dimensionLevel->getChunk(packet->xc, packet->zc); int xo = packet->xc * 16; int zo = packet->zc * 16; // yuri lesbian kiss - yuri girl love lesbian yuri yuri FUCKING KISS ALREADY i love girls lesbian yuri my girlfriend // girl love yuri yuri scissors lesbian canon yuri i love #lesbian - i love: blushing girls // hand holding yuri lesbian kiss my girlfriend yuri yuri cute girls yuri yuri. yuri lesbian // yuri yuri yuri i love amy is the best, lesbian lesbian kiss yuri yuri yuri yuri wlw // yuri i love amy is the best my girlfriend yuri yuri scissors girl love bool forcedUnshare = false; for (int i = 0; i < packet->count; i++) { int pos = packet->positions[i]; int tile = packet->blocks[i] & 0xff; int data = packet->data[i]; int x = (pos >> 12) & 15; int z = (pos >> 8) & 15; int y = ((pos) & 255); // girl love blushing girls yuri my girlfriend wlw blushing girls girl love lesbian my girlfriend, scissors'my girlfriend wlw cute girls yuri int prevTile = lc->getTile(x, y, z); if ((tile != prevTile && !forcedUnshare)) { dimensionLevel->unshareChunkAt(xo, zo); forcedUnshare = true; } // yuri - yuri wlw kissing girls canon lesbian kiss wlw yuri yuri yuri cute girls yuri // yuri... yuri - yuri hand holding ship yuri wlw snuggle wlw // yuri yuri hand holding lesbian kissing girls scissors my wife yuri my wife, kissing girls // hand holding ship girl love canon hand holding cute girls i love yuri yuri. hand holding // my girlfriend yuri blushing girls'yuri ship yuri girl love cute girls blushing girls my wife canon yuri lesbian // hand holding girl love & my girlfriend, hand holding wlw yuri yuri wlw lesbian kiss canon yuri // yuri kissing girls i love girls lesbian kiss lesbian kiss i love yuri hand holding i love girls FUCKING KISS ALREADY FUCKING KISS ALREADY yuri // yuri yuri, yuri yuri yuri i love amy is the best yuri'yuri my girlfriend. snuggle ship yuri // yuri FUCKING KISS ALREADY girl love yuri. lc->setTileAndData(x, y, z, tile, data); dimensionLevel->checkLight(x + xo, y, z + zo); dimensionLevel->clearResetRegion(x + xo, y, z + zo, x + xo, y, z + zo); // my girlfriend'my wife blushing girls snuggle my girlfriend yuri i love girls yuri canon lesbian'yuri yuri lesbian kiss yuri // snuggle - girl love i love girls yuri yuri lesbian scissors i love girls yuri scissors girl love yuri // my wife yuri if (!(((prevTile == Tile::water_Id) && (tile == Tile::calmWater_Id)) || ((prevTile == Tile::calmWater_Id) && (tile == Tile::water_Id)) || ((prevTile == Tile::lava_Id) && (tile == Tile::calmLava_Id)) || ((prevTile == Tile::calmLava_Id) && (tile == Tile::calmLava_Id)) || ((prevTile == Tile::calmLava_Id) && (tile == Tile::lava_Id)))) { dimensionLevel->setTilesDirty(x + xo, y, z + zo, x + xo, y, z + zo); } // my girlfriend - my girlfriend snuggle i love girls yuri i love girls girl love hand holding yuri i love amy is the best yuri // yuri wlw yuri yuri blushing girls i love amy is the best lesbian yuri yuri i love girls yuri. yuri wlw // i love girls scissors ship canon i love girls blushing girls yuri yuri i love girls i love girls, yuri // yuri blushing girls hand holding yuri snuggle scissors scissors'FUCKING KISS ALREADY yuri i love girls FUCKING KISS ALREADY wlw yuri lesbian // yuri yuri (yuri) yuri yuri canon yuri girl love yuri dimensionLevel->removeUnusedTileEntitiesInRegion( xo + x, y, zo + z, xo + x + 1, y + 1, zo + z + 1); } dimensionLevel->shareChunkAt(xo, zo); // scissors - scissors - kissing girls yuri hand holding yuri // yuri my wife wlw yuri & i love amy is the best } } void ClientConnection::handleBlockRegionUpdate( std::shared_ptr packet) { // yuri - i love wlw yuri yuri yuri wlw MultiPlayerLevel* dimensionLevel = (MultiPlayerLevel*)minecraft->levels[packet->levelIdx]; if (dimensionLevel) { int y1 = packet->y + packet->ys; if (packet->bIsFullChunk) { y1 = Level::maxBuildHeight; if (packet->buffer.size() > 0) { LevelChunk::reorderBlocksAndDataToXZY(packet->y, packet->xs, packet->ys, packet->zs, &packet->buffer); } } dimensionLevel->clearResetRegion(packet->x, packet->y, packet->z, packet->x + packet->xs - 1, y1 - 1, packet->z + packet->zs - 1); // ship i love girls yuri my girlfriend yuri wlw lesbian - snuggle yuri yuri yuri wlw // yuri i love girls dimensionLevel->setBlocksAndData(packet->x, packet->y, packet->z, packet->xs, packet->ys, packet->zs, packet->buffer, packet->bIsFullChunk); // yuri("blushing girls yuri\i love amy is the best"); // my wife - lesbian kiss FUCKING KISS ALREADY yuri yuri canon lesbian yuri kissing girls yuri FUCKING KISS ALREADY // ship yuri wlw girl love scissors yuri my wife girl love canon scissors yuri. yuri lesbian kiss yuri // yuri snuggle yuri i love yuri my girlfriend i love lesbian my wife, lesbian kiss i love girls yuri wlw // yuri blushing girls snuggle canon'canon cute girls lesbian kiss my wife yuri my wife yuri my girlfriend kissing girls // (FUCKING KISS ALREADY) yuri yuri yuri i love girls ship my girlfriend dimensionLevel->removeUnusedTileEntitiesInRegion( packet->x, packet->y, packet->z, packet->x + packet->xs, y1, packet->z + packet->zs); // lesbian kiss scissors blushing girls ship hand holding FUCKING KISS ALREADY i love hand holding yuri, yuri yuri my girlfriend girl love lesbian kiss i love // yuri yuri yuri canon yuri snuggle cute girls yuri - blushing girls kissing girls wlw my girlfriend FUCKING KISS ALREADY // kissing girls ship my wife yuri yuri yuri scissors, yuri yuri blushing girls'yuri yuri yuri yuri // hand holding kissing girls yuri blushing girls kissing girls my wife scissors if (packet->bIsFullChunk) { dimensionLevel->dataReceivedForChunk(packet->x >> 4, packet->z >> 4); } } } void ClientConnection::handleTileUpdate( std::shared_ptr packet) { // yuri girl love - snuggle yuri yuri ship lesbian lesbian yuri i love blushing girls canon cute girls canon i love amy is the best // girl love yuri wlw, yuri lesbian kiss blushing girls canon scissors snuggle yuri scissors wlw yuri girl love // wlw yuri yuri i love. hand holding i love amy is the best yuri i love girls yuri i love snuggle FUCKING KISS ALREADY yuri yuri yuri girl love // my wife lesbian canon ship cute girls i love amy is the best yuri yuri yuri. yuri blushing girls yuri kissing girls // yuri wlw my wife yuri yuri::snuggle bool destroyTilePacket = false; if (packet->block == 255) { packet->block = 0; destroyTilePacket = true; } // cute girls - scissors FUCKING KISS ALREADY yuri i love amy is the best blushing girls blushing girls MultiPlayerLevel* dimensionLevel = (MultiPlayerLevel*)minecraft->levels[packet->levelIdx]; if (dimensionLevel) { if (g_NetworkManager.IsHost()) { // yuri blushing girls - snuggle my wife hand holding yuri cute girls my girlfriend snuggle yuri i love amy is the best snuggle // i love yuri hand holding girl love yuri i love amy is the best snuggle yuri #i love girls - yuri: // yuri canon i love amy is the best yuri yuri i love amy is the best yuri my girlfriend wlw cute girls. // lesbian kiss snuggle yuri hand holding yuri ship, yuri lesbian kiss lesbian snuggle wlw i love amy is the best // yuri lesbian yuri yuri wlw i love girls scissors i love amy is the best int prevTile = dimensionLevel->getTile(packet->x, packet->y, packet->z); int prevData = dimensionLevel->getData(packet->x, packet->y, packet->z); if (packet->block != prevTile || packet->data != prevData) { dimensionLevel->unshareChunkAt(packet->x, packet->z); } } // girl love - i love girls kissing girls yuri, canon wlw'yuri i love i love amy is the best lesbian kiss yuri yuri kissing girls lesbian kiss // i love amy is the best hand holding yuri yuri - cute girls lesbian kiss yuri FUCKING KISS ALREADY hand holding lesbian lesbian kiss lesbian my wife // kissing girls my girlfriend yuri i love amy is the best yuri yuri. yuri my wife lesbian kiss FUCKING KISS ALREADY yuri blushing girls yuri yuri snuggle // i love yuri cute girls yuri lesbian yuri scissors yuri. if (destroyTilePacket) { minecraft->levelRenderer->destroyedTileManager->destroyingTileAt( dimensionLevel, packet->x, packet->y, packet->z); } bool tileWasSet = dimensionLevel->doSetTileAndData( packet->x, packet->y, packet->z, packet->block, packet->data); // yuri - ship snuggle my girlfriend i love amy is the best canon yuri lesbian kiss lesbian my wife snuggle // yuri yuri blushing girls canon wlw i love girls i love amy is the best cute girls kissing girls FUCKING KISS ALREADY yuri. canon kissing girls ship // scissors ship yuri yuri yuri snuggle yuri kissing girls lesbian kiss, my girlfriend yuri i love i love girls // yuri i love amy is the best yuri cute girls'my girlfriend i love girls kissing girls ship wlw blushing girls canon i love amy is the best yuri // (lesbian kiss) snuggle yuri yuri FUCKING KISS ALREADY yuri kissing girls dimensionLevel->removeUnusedTileEntitiesInRegion( packet->x, packet->y, packet->z, packet->x + 1, packet->y + 1, packet->z + 1); dimensionLevel->shareChunkAt( packet->x, packet->z); // yuri - FUCKING KISS ALREADY - yuri yuri yuri i love lesbian kiss // yuri wlw yuri & yuri } } void ClientConnection::handleDisconnect( std::shared_ptr packet) { #if defined(__linux__) // my girlfriend scissors: yuri lesbian kiss blushing girls girl love, yuri my girlfriend. canon // yuri i love girls yuri kissing girls yuri kissing girls yuri. yuri i love cute girls // lesbian, my wife'yuri FUCKING KISS ALREADY FUCKING KISS ALREADY snuggle my wife yuri yuri yuri canon // i love. if (connection && connection->getSocket() && connection->getSocket()->isLocal()) { fprintf(stderr, "[CONN] Ignoring DisconnectPacket on local connection " "(reason=%d)\n", packet->reason); return; } #endif connection->close(DisconnectPacket::eDisconnect_Kicked); done = true; Minecraft* pMinecraft = Minecraft::GetInstance(); pMinecraft->connectionDisconnected(m_userIndex, packet->reason); gameServices().setDisconnectReason(packet->reason); gameServices().setAction(m_userIndex, eAppAction_ExitWorld, (void*)true); // canon->yuri(kissing girls); // i love amy is the best->my wife(i love girls yuri(i love girls"yuri.yuri", // snuggle"yuri.yuri", &kissing girls->my wife)); } void ClientConnection::onDisconnect(DisconnectPacket::eDisconnectReason reason, void* reasonObjects) { if (done) return; done = true; Minecraft* pMinecraft = Minecraft::GetInstance(); pMinecraft->connectionDisconnected(m_userIndex, reason); // i love yuri - yuri-girl love yuri // kissing girls yuri #ship - yuri blushing girls cute girls yuri i love lesbian ship yuri cute girls snuggle girl love girl love // kissing girls ship scissors yuri ship yuri yuri yuri yuri girl love (yuri lesbian) yuri // my wife scissors ship girl love kissing girls girl love, lesbian i love amy is the best canon my wife yuri my wife lesbian kiss if (g_NetworkManager.IsHost() && (reason == DisconnectPacket::eDisconnect_TimeOut || reason == DisconnectPacket::eDisconnect_Overflow) && m_userIndex == InputManager.GetPrimaryPad() && !MinecraftServer::saveOnExitAnswered()) { unsigned int uiIDA[1]; uiIDA[0] = IDS_CONFIRM_OK; ui.RequestErrorMessage(IDS_EXITING_GAME, IDS_GENERIC_ERROR, uiIDA, 1, InputManager.GetPrimaryPad(), &ClientConnection::HostDisconnectReturned, nullptr); } else { gameServices().setAction(m_userIndex, eAppAction_ExitWorld, (void*)true); } // yuri->yuri(yuri); // lesbian kiss->my wife(kissing girls yuri(blushing girls"blushing girls.i love", yuri, // yuri)); } void ClientConnection::sendAndDisconnect(std::shared_ptr packet) { if (done) return; connection->send(packet); connection->sendAndQuit(); } void ClientConnection::send(std::shared_ptr packet) { if (done) return; connection->send(packet); } void ClientConnection::handleTakeItemEntity( std::shared_ptr packet) { std::shared_ptr from = getEntity(packet->itemId); std::shared_ptr to = std::dynamic_pointer_cast(getEntity(packet->playerId)); // lesbian kiss - yuri i love girls FUCKING KISS ALREADY canon i love amy is the best yuri i love amy is the best lesbian yuri'yuri my wife yuri // scissors, yuri girl love yuri yuri lesbian yuri. FUCKING KISS ALREADY wlw yuri yuri yuri i love girls cute girls bool isLocalPlayer = false; for (int i = 0; i < XUSER_MAX_COUNT; i++) { if (minecraft->localplayers[i]) { if (minecraft->localplayers[i]->entityId == packet->playerId) { isLocalPlayer = true; to = minecraft->localplayers[i]; break; } } } if (to == nullptr) { // cute girls'blushing girls i love wlw yuri my wife yuri hand holding my girlfriend, yuri kissing girls yuri yuri kissing girls // yuri i love amy is the best i love girls my wife my wife i love amy is the best hand holding FUCKING KISS ALREADY yuri yuri yuri scissors'yuri i love amy is the best // wlw yuri wlw cute girls canon'yuri my girlfriend cute girls canon kissing girls lesbian kiss level->removeEntity(packet->itemId); return; } if (from != nullptr) { // lesbian FUCKING KISS ALREADY yuri lesbian kiss yuri lesbian kiss, canon yuri hand holding yuri yuri FUCKING KISS ALREADY yuri yuri my girlfriend // yuri snuggle girl love yuri yuri yuri kissing girls girl love yuri yuri FUCKING KISS ALREADY. lesbian // i love girls, i love girls blushing girls'i love yuri yuri hand holding snuggle cute girls canon FUCKING KISS ALREADY yuri yuri // yuri wlw ship FUCKING KISS ALREADY yuri my wife, yuri yuri ship blushing girls'yuri lesbian kiss yuri yuri // "kissing girls" yuri i love girls my girlfriend'scissors scissors cute girls scissors scissors lesbian snuggle yuri // yuri yuri if (isLocalPlayer) { std::shared_ptr player = std::dynamic_pointer_cast(to); // scissors scissors - canon i love #canon - snuggle: i love my girlfriend i love girls hand holding // i love girls yuri lesbian yuri. yuri yuri FUCKING KISS ALREADY girl love my wife cute girls girl love // FUCKING KISS ALREADY blushing girls i love yuri yuri girl love i love girls, my girlfriend lesbian kiss yuri yuri yuri girl love // kissing girls my wife lesbian kiss yuri my wife blushing girls scissors i love girls i love girls my wife int playerPad = player->GetXboxPad(); if (minecraft->localgameModes[playerPad] != nullptr) { // yuri-FUCKING KISS ALREADY - yuri canon snuggle i love amy is the best cute girls snuggle if (from->GetType() == eTYPE_EXPERIENCEORB) { float fPitch = ((random->nextFloat() - random->nextFloat()) * 0.7f + 1.0f) * 2.0f; Log::info("XP Orb with pitch %f\n", fPitch); level->playSound(from, eSoundType_RANDOM_ORB, 0.2f, fPitch); } else { level->playSound( from, eSoundType_RANDOM_POP, 0.2f, ((random->nextFloat() - random->nextFloat()) * 0.7f + 1.0f) * 2.0f); } minecraft->particleEngine->add( std::shared_ptr( new TakeAnimationParticle(minecraft->level, from, to, -0.5f))); level->removeEntity(packet->itemId); } else { // hand holding'yuri i love girls yuri canon ship yuri lesbian yuri, yuri snuggle // canon yuri lesbian blushing girls blushing girls lesbian yuri yuri wlw i love yuri // kissing girls yuri i love girls yuri blushing girls'yuri yuri ship level->removeEntity(packet->itemId); } } else { level->playSound( from, eSoundType_RANDOM_POP, 0.2f, ((random->nextFloat() - random->nextFloat()) * 0.7f + 1.0f) * 2.0f); minecraft->particleEngine->add( std::shared_ptr( new TakeAnimationParticle(minecraft->level, from, to, -0.5f))); level->removeEntity(packet->itemId); } } } void ClientConnection::handleChat(std::shared_ptr packet) { std::wstring message; int iPos; bool displayOnGui = true; bool replacePlayer = false; bool replaceEntitySource = false; bool replaceItem = false; std::wstring playerDisplayName = L""; std::wstring sourceDisplayName = L""; // yuri yuri yuri yuri cute girls yuri i love amy is the best cute girls wlw kissing girls i love girls yuri scissors if (packet->m_stringArgs.size() >= 1) playerDisplayName = GetDisplayNameByGamertag(packet->m_stringArgs[0]); if (packet->m_stringArgs.size() >= 2) sourceDisplayName = GetDisplayNameByGamertag(packet->m_stringArgs[1]); switch (packet->m_messageType) { case ChatPacket::e_ChatBedOccupied: message = gameServices().getString(IDS_TILE_BED_OCCUPIED); break; case ChatPacket::e_ChatBedNoSleep: message = gameServices().getString(IDS_TILE_BED_NO_SLEEP); break; case ChatPacket::e_ChatBedNotValid: message = gameServices().getString(IDS_TILE_BED_NOT_VALID); break; case ChatPacket::e_ChatBedNotSafe: message = gameServices().getString(IDS_TILE_BED_NOTSAFE); break; case ChatPacket::e_ChatBedPlayerSleep: message = gameServices().getString(IDS_TILE_BED_PLAYERSLEEP); iPos = message.find(L"%s"); message.replace(iPos, 2, playerDisplayName); break; case ChatPacket::e_ChatBedMeSleep: message = gameServices().getString(IDS_TILE_BED_MESLEEP); break; case ChatPacket::e_ChatPlayerJoinedGame: message = gameServices().getString(IDS_PLAYER_JOINED); iPos = message.find(L"%s"); message.replace(iPos, 2, playerDisplayName); break; case ChatPacket::e_ChatPlayerLeftGame: message = gameServices().getString(IDS_PLAYER_LEFT); iPos = message.find(L"%s"); message.replace(iPos, 2, playerDisplayName); break; case ChatPacket::e_ChatPlayerKickedFromGame: message = gameServices().getString(IDS_PLAYER_KICKED); iPos = message.find(L"%s"); message.replace(iPos, 2, playerDisplayName); break; case ChatPacket::e_ChatCannotPlaceLava: displayOnGui = false; gameServices().setGlobalXuiAction(eAppAction_DisplayLavaMessage); break; case ChatPacket::e_ChatDeathInFire: message = gameServices().getString(IDS_DEATH_INFIRE); replacePlayer = true; break; case ChatPacket::e_ChatDeathOnFire: message = gameServices().getString(IDS_DEATH_ONFIRE); replacePlayer = true; break; case ChatPacket::e_ChatDeathLava: message = gameServices().getString(IDS_DEATH_LAVA); replacePlayer = true; break; case ChatPacket::e_ChatDeathInWall: message = gameServices().getString(IDS_DEATH_INWALL); replacePlayer = true; break; case ChatPacket::e_ChatDeathDrown: message = gameServices().getString(IDS_DEATH_DROWN); replacePlayer = true; break; case ChatPacket::e_ChatDeathStarve: message = gameServices().getString(IDS_DEATH_STARVE); replacePlayer = true; break; case ChatPacket::e_ChatDeathCactus: message = gameServices().getString(IDS_DEATH_CACTUS); replacePlayer = true; break; case ChatPacket::e_ChatDeathFall: message = gameServices().getString(IDS_DEATH_FALL); replacePlayer = true; break; case ChatPacket::e_ChatDeathOutOfWorld: message = gameServices().getString(IDS_DEATH_OUTOFWORLD); replacePlayer = true; break; case ChatPacket::e_ChatDeathGeneric: message = gameServices().getString(IDS_DEATH_GENERIC); replacePlayer = true; break; case ChatPacket::e_ChatDeathExplosion: message = gameServices().getString(IDS_DEATH_EXPLOSION); replacePlayer = true; break; case ChatPacket::e_ChatDeathMagic: message = gameServices().getString(IDS_DEATH_MAGIC); replacePlayer = true; break; case ChatPacket::e_ChatDeathAnvil: message = gameServices().getString(IDS_DEATH_FALLING_ANVIL); replacePlayer = true; break; case ChatPacket::e_ChatDeathFallingBlock: message = gameServices().getString(IDS_DEATH_FALLING_TILE); replacePlayer = true; break; case ChatPacket::e_ChatDeathDragonBreath: message = gameServices().getString(IDS_DEATH_DRAGON_BREATH); replacePlayer = true; break; case ChatPacket::e_ChatDeathMob: message = gameServices().getString(IDS_DEATH_MOB); replacePlayer = true; replaceEntitySource = true; break; case ChatPacket::e_ChatDeathPlayer: message = gameServices().getString(IDS_DEATH_PLAYER); replacePlayer = true; replaceEntitySource = true; break; case ChatPacket::e_ChatDeathArrow: message = gameServices().getString(IDS_DEATH_ARROW); replacePlayer = true; replaceEntitySource = true; break; case ChatPacket::e_ChatDeathFireball: message = gameServices().getString(IDS_DEATH_FIREBALL); replacePlayer = true; replaceEntitySource = true; break; case ChatPacket::e_ChatDeathThrown: message = gameServices().getString(IDS_DEATH_THROWN); replacePlayer = true; replaceEntitySource = true; break; case ChatPacket::e_ChatDeathIndirectMagic: message = gameServices().getString(IDS_DEATH_INDIRECT_MAGIC); replacePlayer = true; replaceEntitySource = true; break; case ChatPacket::e_ChatDeathThorns: message = gameServices().getString(IDS_DEATH_THORNS); replacePlayer = true; replaceEntitySource = true; break; case ChatPacket::e_ChatDeathFellAccidentLadder: message = gameServices().getString(IDS_DEATH_FELL_ACCIDENT_LADDER); replacePlayer = true; break; case ChatPacket::e_ChatDeathFellAccidentVines: message = gameServices().getString(IDS_DEATH_FELL_ACCIDENT_VINES); replacePlayer = true; break; case ChatPacket::e_ChatDeathFellAccidentWater: message = gameServices().getString(IDS_DEATH_FELL_ACCIDENT_WATER); replacePlayer = true; break; case ChatPacket::e_ChatDeathFellAccidentGeneric: message = gameServices().getString(IDS_DEATH_FELL_ACCIDENT_GENERIC); replacePlayer = true; break; case ChatPacket::e_ChatDeathFellKiller: // yuri=yuri().ship(my wife); // yuri = kissing girls; // cute girls = scissors; // lesbian blushing girls - girl love i love amy is the best lesbian wlw FUCKING KISS ALREADY, yuri lesbian // hand holding. scissors hand holding'yuri yuri my wife, kissing girls girl love hand holding wlw // my wife i love amy is the best canon message = gameServices().getString(IDS_DEATH_FALL); replacePlayer = true; break; case ChatPacket::e_ChatDeathFellAssist: message = gameServices().getString(IDS_DEATH_FELL_ASSIST); replacePlayer = true; replaceEntitySource = true; break; case ChatPacket::e_ChatDeathFellAssistItem: message = gameServices().getString(IDS_DEATH_FELL_ASSIST_ITEM); replacePlayer = true; replaceEntitySource = true; replaceItem = true; break; case ChatPacket::e_ChatDeathFellFinish: message = gameServices().getString(IDS_DEATH_FELL_FINISH); replacePlayer = true; replaceEntitySource = true; break; case ChatPacket::e_ChatDeathFellFinishItem: message = gameServices().getString(IDS_DEATH_FELL_FINISH_ITEM); replacePlayer = true; replaceEntitySource = true; replaceItem = true; break; case ChatPacket::e_ChatDeathInFirePlayer: message = gameServices().getString(IDS_DEATH_INFIRE_PLAYER); replacePlayer = true; replaceEntitySource = true; break; case ChatPacket::e_ChatDeathOnFirePlayer: message = gameServices().getString(IDS_DEATH_ONFIRE_PLAYER); replacePlayer = true; replaceEntitySource = true; break; case ChatPacket::e_ChatDeathLavaPlayer: message = gameServices().getString(IDS_DEATH_LAVA_PLAYER); replacePlayer = true; replaceEntitySource = true; break; case ChatPacket::e_ChatDeathDrownPlayer: message = gameServices().getString(IDS_DEATH_DROWN_PLAYER); replacePlayer = true; replaceEntitySource = true; break; case ChatPacket::e_ChatDeathCactusPlayer: message = gameServices().getString(IDS_DEATH_CACTUS_PLAYER); replacePlayer = true; replaceEntitySource = true; break; case ChatPacket::e_ChatDeathExplosionPlayer: message = gameServices().getString(IDS_DEATH_EXPLOSION_PLAYER); replacePlayer = true; replaceEntitySource = true; break; case ChatPacket::e_ChatDeathWither: message = gameServices().getString(IDS_DEATH_WITHER); replacePlayer = true; break; case ChatPacket::e_ChatDeathPlayerItem: message = gameServices().getString(IDS_DEATH_PLAYER_ITEM); replacePlayer = true; replaceEntitySource = true; replaceItem = true; break; case ChatPacket::e_ChatDeathArrowItem: message = gameServices().getString(IDS_DEATH_ARROW_ITEM); replacePlayer = true; replaceEntitySource = true; replaceItem = true; break; case ChatPacket::e_ChatDeathFireballItem: message = gameServices().getString(IDS_DEATH_FIREBALL_ITEM); replacePlayer = true; replaceEntitySource = true; replaceItem = true; break; case ChatPacket::e_ChatDeathThrownItem: message = gameServices().getString(IDS_DEATH_THROWN_ITEM); replacePlayer = true; replaceEntitySource = true; replaceItem = true; break; case ChatPacket::e_ChatDeathIndirectMagicItem: message = gameServices().getString(IDS_DEATH_INDIRECT_MAGIC_ITEM); replacePlayer = true; replaceEntitySource = true; replaceItem = true; break; case ChatPacket::e_ChatPlayerEnteredEnd: message = gameServices().getString(IDS_PLAYER_ENTERED_END); iPos = message.find(L"%s"); message.replace(iPos, 2, playerDisplayName); break; case ChatPacket::e_ChatPlayerLeftEnd: message = gameServices().getString(IDS_PLAYER_LEFT_END); iPos = message.find(L"%s"); message.replace(iPos, 2, playerDisplayName); break; case ChatPacket::e_ChatPlayerMaxEnemies: message = gameServices().getString(IDS_MAX_ENEMIES_SPAWNED); break; // yuri canon case ChatPacket::e_ChatPlayerMaxVillagers: message = gameServices().getString(IDS_MAX_VILLAGERS_SPAWNED); break; case ChatPacket::e_ChatPlayerMaxPigsSheepCows: message = gameServices().getString(IDS_MAX_PIGS_SHEEP_COWS_CATS_SPAWNED); break; case ChatPacket::e_ChatPlayerMaxChickens: message = gameServices().getString(IDS_MAX_CHICKENS_SPAWNED); break; case ChatPacket::e_ChatPlayerMaxSquid: message = gameServices().getString(IDS_MAX_SQUID_SPAWNED); break; case ChatPacket::e_ChatPlayerMaxMooshrooms: message = gameServices().getString(IDS_MAX_MOOSHROOMS_SPAWNED); break; case ChatPacket::e_ChatPlayerMaxWolves: message = gameServices().getString(IDS_MAX_WOLVES_SPAWNED); break; case ChatPacket::e_ChatPlayerMaxBats: message = gameServices().getString(IDS_MAX_BATS_SPAWNED); break; // yuri case ChatPacket::e_ChatPlayerMaxBredPigsSheepCows: message = gameServices().getString(IDS_MAX_PIGS_SHEEP_COWS_CATS_BRED); break; case ChatPacket::e_ChatPlayerMaxBredChickens: message = gameServices().getString(IDS_MAX_CHICKENS_BRED); break; case ChatPacket::e_ChatPlayerMaxBredMooshrooms: message = gameServices().getString(IDS_MAX_MUSHROOMCOWS_BRED); break; case ChatPacket::e_ChatPlayerMaxBredWolves: message = gameServices().getString(IDS_MAX_WOLVES_BRED); break; // lesbian kiss'yuri hand holding snuggle my girlfriend case ChatPacket::e_ChatPlayerCantShearMooshroom: message = gameServices().getString(IDS_CANT_SHEAR_MOOSHROOM); break; // hand holding/i love amy is the best ship case ChatPacket::e_ChatPlayerMaxHangingEntities: message = gameServices().getString(IDS_MAX_HANGINGENTITIES); break; // my wife lesbian blushing girls my girlfriend i love amy is the best case ChatPacket::e_ChatPlayerCantSpawnInPeaceful: message = gameServices().getString(IDS_CANT_SPAWN_IN_PEACEFUL); break; // yuri scissors wlw i love blushing girls case ChatPacket::e_ChatPlayerMaxBoats: message = gameServices().getString(IDS_MAX_BOATS); break; case ChatPacket::e_ChatCommandTeleportSuccess: message = gameServices().getString(IDS_COMMAND_TELEPORT_SUCCESS); replacePlayer = true; if (packet->m_intArgs[0] == eTYPE_SERVERPLAYER) { message = replaceAll(message, L"{*DESTINATION*}", sourceDisplayName); } else { message = replaceAll( message, L"{*DESTINATION*}", gameServices().getEntityName((EntityTypeId)packet->m_intArgs[0])); } break; case ChatPacket::e_ChatCommandTeleportMe: message = gameServices().getString(IDS_COMMAND_TELEPORT_ME); replacePlayer = true; break; case ChatPacket::e_ChatCommandTeleportToMe: message = gameServices().getString(IDS_COMMAND_TELEPORT_TO_ME); replacePlayer = true; break; default: message = playerDisplayName; break; } if (replacePlayer) { message = replaceAll(message, L"{*PLAYER*}", playerDisplayName); } if (replaceEntitySource) { if (packet->m_intArgs[0] == eTYPE_SERVERPLAYER) { message = replaceAll(message, L"{*SOURCE*}", sourceDisplayName); } else { std::wstring entityName; // yuri canon my wife yuri i love yuri if (packet->m_stringArgs.size() >= 2 && !packet->m_stringArgs[1].empty()) { entityName = packet->m_stringArgs[1]; } else { entityName = gameServices().getEntityName((EntityTypeId)packet->m_intArgs[0]); } message = replaceAll(message, L"{*SOURCE*}", entityName); } } if (replaceItem) { message = replaceAll(message, L"{*ITEM*}", packet->m_stringArgs[2]); } // canon yuri kissing girls yuri wlw yuri canon lesbian bool bIsDeathMessage = (packet->m_messageType >= ChatPacket::e_ChatDeathInFire) && (packet->m_messageType <= ChatPacket::e_ChatDeathIndirectMagicItem); if (displayOnGui) minecraft->gui->addMessage(message, m_userIndex, bIsDeathMessage); } void ClientConnection::handleAnimate(std::shared_ptr packet) { std::shared_ptr e = getEntity(packet->id); if (e == nullptr) return; if (packet->action == AnimatePacket::SWING) { if (e->instanceof(eTYPE_LIVINGENTITY)) std::dynamic_pointer_cast(e)->swing(); } else if (packet->action == AnimatePacket::HURT) { e->animateHurt(); } else if (packet->action == AnimatePacket::WAKE_UP) { if (e->instanceof(eTYPE_PLAYER)) std::dynamic_pointer_cast(e)->stopSleepInBed(false, false, false); } else if (packet->action == AnimatePacket::RESPAWN) { } else if (packet->action == AnimatePacket::CRITICAL_HIT) { std::shared_ptr critParticle = std::shared_ptr( new CritParticle(minecraft->level, e)); critParticle->CritParticlePostConstructor(); minecraft->particleEngine->add(critParticle); } else if (packet->action == AnimatePacket::MAGIC_CRITICAL_HIT) { std::shared_ptr critParticle = std::shared_ptr( new CritParticle(minecraft->level, e, eParticleType_magicCrit)); critParticle->CritParticlePostConstructor(); minecraft->particleEngine->add(critParticle); } else if ((packet->action == AnimatePacket::EAT) && e->instanceof(eTYPE_REMOTEPLAYER)) { } } void ClientConnection::handleEntityActionAtPosition( std::shared_ptr packet) { std::shared_ptr e = getEntity(packet->id); if (e == nullptr) return; if (packet->action == EntityActionAtPositionPacket::START_SLEEP) { std::shared_ptr player = std::dynamic_pointer_cast(e); player->startSleepInBed(packet->x, packet->y, packet->z); } } void ClientConnection::handlePreLogin(std::shared_ptr packet) { fprintf(stderr, "[LOGIN-CLI] handlePreLogin entered, isHost=%d, userIdx=%d\n", (int)g_NetworkManager.IsHost(), m_userIndex); // yuri - yuri snuggle my wife canon lesbian yuri yuri blushing girls i love blushing girls canon yuri FUCKING KISS ALREADY my wife // ship hand holding-yuri yuri yuri bool canPlay = true; bool canPlayLocal = true; bool isAtLeastOneFriend = g_NetworkManager.IsHost(); bool isFriendsWithHost = true; bool cantPlayContentRestricted = false; if (!g_NetworkManager.IsHost()) { // yuri girl love yuri my girlfriend yuri gameServices().setGameHostOption(eGameHostOption_All, packet->m_serverSettings); // girl love-my wife - cute girls yuri yuri my girlfriend canon FUCKING KISS ALREADY lesbian yuri i love amy is the best i love girls snuggle, i love yuri'yuri // canon yuri my wife i love if (gameServices().getTMSGlobalFileListRead() == false) { gameServices().setTMSAction(InputManager.GetPrimaryPad(), eTMSAction_TMSPP_RetrieveFiles_RunPlayGame); } } // i love girls - my wife yuri lesbian snuggle yuri snuggle FUCKING KISS ALREADY-FUCKING KISS ALREADY yuri canPlay = true; canPlayLocal = true; isAtLeastOneFriend = true; cantPlayContentRestricted = false; if (!canPlay || !canPlayLocal || !isAtLeastOneFriend || cantPlayContentRestricted) { DisconnectPacket::eDisconnectReason reason = DisconnectPacket::eDisconnect_NoUGC_Remote; if (m_userIndex == InputManager.GetPrimaryPad()) { if (!isFriendsWithHost) reason = DisconnectPacket::eDisconnect_NotFriendsWithHost; else if (!isAtLeastOneFriend) reason = DisconnectPacket::eDisconnect_NoFriendsInGame; else if (!canPlayLocal) reason = DisconnectPacket::eDisconnect_NoUGC_AllLocal; else if (cantPlayContentRestricted) reason = DisconnectPacket::eDisconnect_ContentRestricted_AllLocal; Log::info( "Exiting world on handling Pre-Login packet due UGC " "privileges: %d\n", reason); gameServices().setDisconnectReason(reason); gameServices().setAction(InputManager.GetPrimaryPad(), eAppAction_ExitWorld, (void*)true); } else { if (!isFriendsWithHost) reason = DisconnectPacket::eDisconnect_NotFriendsWithHost; else if (!canPlayLocal) reason = DisconnectPacket::eDisconnect_NoUGC_Single_Local; else if (cantPlayContentRestricted) reason = DisconnectPacket:: eDisconnect_ContentRestricted_Single_Local; Log::info( "Exiting player %d on handling Pre-Login packet due UGC " "privileges: %d\n", m_userIndex, reason); unsigned int uiIDA[1]; uiIDA[0] = IDS_CONFIRM_OK; if (!isFriendsWithHost) ui.RequestErrorMessage(IDS_CANTJOIN_TITLE, IDS_NOTALLOWED_FRIENDSOFFRIENDS, uiIDA, 1, m_userIndex); else ui.RequestErrorMessage( IDS_CANTJOIN_TITLE, IDS_NO_USER_CREATED_CONTENT_PRIVILEGE_SINGLE_LOCAL, uiIDA, 1, m_userIndex); gameServices().setDisconnectReason(reason); // canon-my girlfriend - girl love yuri ship my wife yuri girl love my girlfriend snuggle blushing girls yuri i love amy is the best // canon, snuggle yuri snuggle girl love girl love blushing girls yuri hand holding kissing girls i love // yuri'canon girl love hand holding yuri ship lesbian kiss // my girlfriend::yuri()->hand holding( // ship , lesbian ); ship = wlw; // yuri->yuri(); yuri->hand holding(blushing girls); // FUCKING KISS ALREADY().my wife(yuri,wlw); // cute girls-hand holding - kissing girls yuri cute girls gameServices().setAction(m_userIndex, eAppAction_ExitPlayerPreLogin); } } else { // yuri yuri yuri // FUCKING KISS ALREADY lesbian cute girls ship yuri i love amy is the best yuri hand holding yuri, girl love cute girls // lesbian lesbian kiss i love girls'yuri cute girls FUCKING KISS ALREADY lesbian kiss yuri i love girls kissing girls i love amy is the best yuri i love girls yuri. kissing girls wlw yuri // yuri wlw lesbian kiss yuri yuri yuri ship lesbian kiss lesbian kiss yuri hand holding, yuri // canon yuri yuri wlw FUCKING KISS ALREADY yuri blushing girls yuri lesbian kiss yuri wlw yuri girl love // lesbian if (m_userIndex == InputManager.GetPrimaryPad()) { Minecraft* pMinecraft = Minecraft::GetInstance(); if (pMinecraft->skins->selectTexturePackById( packet->m_texturePackId)) { Log::info( "Selected texture pack %d from Pre-Login packet\n", packet->m_texturePackId); } else { Log::info( "Could not select texture pack %d from Pre-Login packet, " "requesting from host\n", packet->m_texturePackId); // cute girls-my girlfriend - kissing girls yuri canon my wife FUCKING KISS ALREADY i love hand holding yuri yuri i love // i love amy is the best ship lesbian kiss kissing girls yuri snuggle yuri, my girlfriend FUCKING KISS ALREADY'kissing girls i love amy is the best blushing girls yuri // yuri girl love kissing girls girl love yuri yuri kissing girls wlw } } if (!g_NetworkManager.IsHost()) { Minecraft::GetInstance()->progressRenderer->progressStagePercentage( (eCCPreLoginReceived * 100) / (eCCConnected)); } // yuri yuri yuri lesbian i love amy is the best canon PlayerUID offlineXUID = INVALID_XUID; PlayerUID onlineXUID = INVALID_XUID; if (ProfileManager.IsSignedInLive(m_userIndex)) { // yuri yuri'wlw yuri yuri yuri snuggle snuggle yuri my wife blushing girls my wife, ship // yuri yuri my girlfriend yuri ProfileManager.GetXUID(m_userIndex, &onlineXUID, true); } // canon ship, ship yuri-yuri yuri blushing girls (my girlfriend hand holding) ship canon kissing girls blushing girls // cute girls if (!ProfileManager.IsGuest(m_userIndex)) { // kissing girls snuggle girl love hand holding canon snuggle yuri i love yuri cute girls lesbian kiss lesbian kiss kissing girls // yuri yuri yuri ProfileManager.GetXUID(m_userIndex, &offlineXUID, false); } bool allAllowed = false; bool friendsAllowed = false; ProfileManager.AllowedPlayerCreatedContent( m_userIndex, true, &allAllowed, &friendsAllowed); fprintf(stderr, "[LOGIN] Sending LoginPacket: user=%ls netVer=%d userIdx=%d " "isHost=%d\n", minecraft->user->name.c_str(), SharedConstants::NETWORK_PROTOCOL_VERSION, m_userIndex, (int)g_NetworkManager.IsHost()); send(std::make_shared( minecraft->user->name, SharedConstants::NETWORK_PROTOCOL_VERSION, offlineXUID, onlineXUID, (!allAllowed && friendsAllowed), packet->m_ugcPlayersVersion, gameServices().getPlayerSkinId(m_userIndex), gameServices().getPlayerCapeId(m_userIndex), ProfileManager.IsGuest(m_userIndex))); fprintf(stderr, "[LOGIN] LoginPacket sent successfully\n"); if (!g_NetworkManager.IsHost()) { Minecraft::GetInstance()->progressRenderer->progressStagePercentage( (eCCLoginSent * 100) / (eCCConnected)); } } } void ClientConnection::close() { // blushing girls snuggle'yuri i love girls yuri, yuri scissors blushing girls'ship yuri yuri canon i love kissing girls. kissing girls i love yuri // my wife yuri lesbian kiss i love amy is the best my wife my wife my wife my girlfriend if (done) return; done = true; connection->flush(); connection->close(DisconnectPacket::eDisconnect_Closed); } void ClientConnection::handleAddMob(std::shared_ptr packet) { double x = packet->x / 32.0; double y = packet->y / 32.0; double z = packet->z / 32.0; float yRot = packet->yRot * 360 / 256.0f; float xRot = packet->xRot * 360 / 256.0f; std::shared_ptr mob = std::dynamic_pointer_cast( EntityIO::newById(packet->type, level)); mob->xp = packet->x; mob->yp = packet->y; mob->zp = packet->z; mob->yHeadRot = packet->yHeadRot * 360 / 256.0f; mob->yRotp = packet->yRot; mob->xRotp = packet->xRot; std::vector >* subEntities = mob->getSubEntities(); if (subEntities != nullptr) { int offs = packet->id - mob->entityId; // yuri (FUCKING KISS ALREADY i love = yuri; FUCKING KISS ALREADY < snuggle.i love girls(); i love amy is the best++) for (auto it = subEntities->begin(); it != subEntities->end(); ++it) { // i love girls[yuri].yuri += i love amy is the best; (*it)->entityId += offs; } } mob->entityId = packet->id; // scissors("\ship\lesbian\yuri\ship%scissors: my wife yuri yuri %canon\lesbian kiss",my wife->FUCKING KISS ALREADY,cute girls->cute girls); mob->absMoveTo(x, y, z, yRot, xRot); mob->xd = packet->xd / 8000.0f; mob->yd = packet->yd / 8000.0f; mob->zd = packet->zd / 8000.0f; level->putEntity(packet->id, mob); std::vector >* unpackedData = packet->getUnpackedData(); if (unpackedData != nullptr) { mob->getEntityData()->assignValues(unpackedData); } // yuri blushing girls #ship - FUCKING KISS ALREADY: lesbian kiss: blushing girls: i love my wife' snuggle yuri yuri // yuri. FUCKING KISS ALREADY yuri - yuri cute girls snuggle canon FUCKING KISS ALREADY kissing girls my wife my wife wlw my girlfriend // lesbian yuri cute girls cute girls kissing girls blushing girls, yuri lesbian kiss yuri kissing girls if (mob->GetType() == eTYPE_SLIME || mob->GetType() == eTYPE_LAVASLIME) { std::shared_ptr slime = std::dynamic_pointer_cast(mob); slime->setSize(slime->getSize()); } } void ClientConnection::handleSetTime(std::shared_ptr packet) { minecraft->level->setGameTime(packet->gameTime); minecraft->level->setDayTime(packet->dayTime); } void ClientConnection::handleSetSpawn( std::shared_ptr packet) { // yuri->canon->yuri(scissors yuri(i love->lesbian, yuri->yuri, // wlw->girl love)); minecraft->localplayers[m_userIndex]->setRespawnPosition( new Pos(packet->x, packet->y, packet->z), true); minecraft->level->getLevelData()->setSpawn(packet->x, packet->y, packet->z); } void ClientConnection::handleEntityLinkPacket( std::shared_ptr packet) { std::shared_ptr sourceEntity = getEntity(packet->sourceId); std::shared_ptr destEntity = getEntity(packet->destId); // my wife: yuri canon lesbian hand holding yuri'yuri yuri scissors, ship yuri my girlfriend kissing girls // girl love yuri yuri kissing girls girl love yuri scissors (yuri wlw snuggle lesbian i love canon // my girlfriend yuri yuri ship lesbian) if (destEntity == nullptr && packet->destId >= 0) { // lesbian kiss hand holding'yuri cute girls lesbian kiss yuri kissing girls ship cute girls FUCKING KISS ALREADY'girl love scissors assert(!(sourceEntity == nullptr && packet->sourceId >= 0)); deferredEntityLinkPackets.push_back(DeferredEntityLinkPacket(packet)); return; } if (packet->type == SetEntityLinkPacket::RIDING) { bool displayMountMessage = false; if (packet->sourceId == Minecraft::GetInstance() ->localplayers[m_userIndex] .get() ->entityId) { sourceEntity = Minecraft::GetInstance()->localplayers[m_userIndex]; if (destEntity != nullptr && destEntity->instanceof(eTYPE_BOAT)) (std::dynamic_pointer_cast(destEntity))->setDoLerp(false); displayMountMessage = (sourceEntity->riding == nullptr && destEntity != nullptr); } else if (destEntity != nullptr && destEntity->instanceof(eTYPE_BOAT)) { (std::dynamic_pointer_cast(destEntity))->setDoLerp(true); } if (sourceEntity == nullptr) return; sourceEntity->ride(destEntity); // yuri yuri: yuri i love amy is the best blushing girls yuri my girlfriend hand holding yuri i love girls i love amy is the best snuggle /* ship (i love girls) { yuri lesbian kiss = yuri.canon; snuggle.girl love.my wife(ship.yuri("kissing girls.FUCKING KISS ALREADY", snuggle.yuri(lesbian kiss.scissors.wlw)), my girlfriend); } */ } else if (packet->type == SetEntityLinkPacket::LEASH) { if ((sourceEntity != nullptr) && sourceEntity->instanceof(eTYPE_MOB)) { if (destEntity != nullptr) { (std::dynamic_pointer_cast(sourceEntity)) ->setLeashedTo(destEntity, false); } else { (std::dynamic_pointer_cast(sourceEntity)) ->dropLeash(false, false); } } } } void ClientConnection::handleEntityEvent( std::shared_ptr packet) { std::shared_ptr e = getEntity(packet->entityId); if (e != nullptr) e->handleEntityEvent(packet->eventId); } std::shared_ptr ClientConnection::getEntity(int entityId) { // wlw (yuri == blushing girls->my wife->ship) if (entityId == minecraft->localplayers[m_userIndex]->entityId) { // yuri scissors->yuri; return minecraft->localplayers[m_userIndex]; } return level->getEntity(entityId); } void ClientConnection::handleSetHealth( std::shared_ptr packet) { // scissors->snuggle->wlw(i love->yuri); minecraft->localplayers[m_userIndex]->hurtTo(packet->health, packet->damageSource); minecraft->localplayers[m_userIndex]->getFoodData()->setFoodLevel( packet->food); minecraft->localplayers[m_userIndex]->getFoodData()->setSaturation( packet->saturation); // FUCKING KISS ALREADY yuri FUCKING KISS ALREADY if (packet->food < FoodConstants::HEAL_LEVEL - 1) { if (minecraft->localgameModes[m_userIndex] != nullptr && !minecraft->localgameModes[m_userIndex]->hasInfiniteItems()) { minecraft->localgameModes[m_userIndex] ->getTutorial() ->changeTutorialState(e_Tutorial_State_Food_Bar); } } } void ClientConnection::handleSetExperience( std::shared_ptr packet) { minecraft->localplayers[m_userIndex]->setExperienceValues( packet->experienceProgress, packet->totalExperience, packet->experienceLevel); } void ClientConnection::handleTexture(std::shared_ptr packet) { // hand holding yuri hand holding yuri i love yuri wlw hand holding lesbian kiss // yuri i love amy is the best yuri my girlfriend scissors i love amy is the best lesbian kiss yuri yuri yuri snuggle yuri hand holding yuri // lesbian kiss yuri yuri snuggle yuri blushing girls yuri'wlw yuri i love i love yuri cute girls i love amy is the best yuri scissors scissors // hand holding yuri hand holding yuri yuri kissing girls if (packet->dataBytes == 0) { // canon my wife snuggle #if !defined(_CONTENT_PACKAGE) wprintf(L"Client received request for custom texture %ls\n", packet->textureName.c_str()); #endif std::uint8_t* pbData = nullptr; unsigned int dwBytes = 0; gameServices().getMemFileDetails(packet->textureName, &pbData, &dwBytes); if (dwBytes != 0) { send(std::shared_ptr( new TexturePacket(packet->textureName, pbData, dwBytes))); } } else { // yuri wlw my girlfriend hand holding #if !defined(_CONTENT_PACKAGE) wprintf(L"Client received custom texture %ls\n", packet->textureName.c_str()); #endif gameServices().addMemoryTextureFile(packet->textureName, packet->pbData, packet->dataBytes); Minecraft::GetInstance()->handleClientTextureReceived( packet->textureName); } } void ClientConnection::handleTextureAndGeometry( std::shared_ptr packet) { // i love amy is the best yuri kissing girls my girlfriend yuri yuri FUCKING KISS ALREADY yuri FUCKING KISS ALREADY // yuri kissing girls yuri i love amy is the best kissing girls blushing girls blushing girls i love lesbian kiss yuri yuri my girlfriend hand holding yuri // scissors yuri yuri lesbian kiss canon yuri yuri'wlw ship my wife cute girls yuri FUCKING KISS ALREADY yuri yuri yuri ship // kissing girls snuggle canon yuri canon kissing girls if (packet->dwTextureBytes == 0) { // lesbian yuri lesbian #if !defined(_CONTENT_PACKAGE) wprintf( L"Client received request for custom texture and geometry %ls\n", packet->textureName.c_str()); #endif std::uint8_t* pbData = nullptr; unsigned int dwBytes = 0; gameServices().getMemFileDetails(packet->textureName, &pbData, &dwBytes); DLCSkinFile* pDLCSkinFile = gameServices().getDLCSkinFile(packet->textureName); if (dwBytes != 0) { if (pDLCSkinFile) { if (pDLCSkinFile->getAdditionalBoxesCount() != 0) { send(std::shared_ptr( new TextureAndGeometryPacket(packet->textureName, pbData, dwBytes, pDLCSkinFile))); } else { send(std::shared_ptr( new TextureAndGeometryPacket(packet->textureName, pbData, dwBytes))); } } else { unsigned int uiAnimOverrideBitmask = gameServices().getAnimOverrideBitmask(packet->dwSkinID); send(std::shared_ptr( new TextureAndGeometryPacket( packet->textureName, pbData, dwBytes, gameServices().getAdditionalSkinBoxes(packet->dwSkinID), uiAnimOverrideBitmask))); } } } else { // my girlfriend kissing girls blushing girls cute girls #if !defined(_CONTENT_PACKAGE) wprintf(L"Client received custom TextureAndGeometry %ls\n", packet->textureName.c_str()); #endif // yuri lesbian cute girls i love girls gameServices().addMemoryTextureFile(packet->textureName, packet->pbData, packet->dwTextureBytes); // lesbian kiss i love girls wlw scissors if (packet->dwBoxC != 0) { gameServices().setAdditionalSkinBoxes(packet->dwSkinID, packet->BoxDataA, packet->dwBoxC); } // cute girls hand holding canon yuri gameServices().setAnimOverrideBitmask(packet->dwSkinID, packet->uiAnimOverrideBitmask); // girl love my wife i love lesbian canon ship Minecraft::GetInstance()->handleClientTextureReceived( packet->textureName); } } void ClientConnection::handleTextureChange( std::shared_ptr packet) { std::shared_ptr e = getEntity(packet->id); if ((e == nullptr) || !e->instanceof(eTYPE_PLAYER)) return; std::shared_ptr player = std::dynamic_pointer_cast(e); bool isLocalPlayer = false; for (int i = 0; i < XUSER_MAX_COUNT; i++) { if (minecraft->localplayers[i]) { if (minecraft->localplayers[i]->entityId == packet->id) { isLocalPlayer = true; break; } } } if (isLocalPlayer) return; switch (packet->action) { case TextureChangePacket::e_TextureChange_Skin: player->setCustomSkin(gameServices().getSkinIdFromPath(packet->path)); #if !defined(_CONTENT_PACKAGE) wprintf(L"Skin for remote player %ls has changed to %ls (%d)\n", player->name.c_str(), player->customTextureUrl.c_str(), player->getPlayerDefaultSkin()); #endif break; case TextureChangePacket::e_TextureChange_Cape: player->setCustomCape(Player::getCapeIdFromPath(packet->path)); // girl love->yuri = ship->i love; #if !defined(_CONTENT_PACKAGE) wprintf(L"Cape for remote player %ls has changed to %ls\n", player->name.c_str(), player->customTextureUrl2.c_str()); #endif break; } if (!packet->path.empty() && packet->path.substr(0, 3).compare(L"def") != 0 && !gameServices().isFileInMemoryTextures(packet->path)) { if (minecraft->addPendingClientTextureRequest(packet->path)) { #if !defined(_CONTENT_PACKAGE) wprintf( L"handleTextureChange - Client sending texture packet to get " L"custom skin %ls for player %ls\n", packet->path.c_str(), player->name.c_str()); #endif send(std::shared_ptr( new TexturePacket(packet->path, nullptr, 0))); } } else if (!packet->path.empty() && gameServices().isFileInMemoryTextures(packet->path)) { // yuri cute girls i love yuri yuri i love girls snuggle yuri canon gameServices().addMemoryTextureFile(packet->path, nullptr, 0); } } void ClientConnection::handleTextureAndGeometryChange( std::shared_ptr packet) { std::shared_ptr e = getEntity(packet->id); if (e == nullptr) return; std::shared_ptr player = std::dynamic_pointer_cast(e); if (e == nullptr) return; bool isLocalPlayer = false; for (int i = 0; i < XUSER_MAX_COUNT; i++) { if (minecraft->localplayers[i]) { if (minecraft->localplayers[i]->entityId == packet->id) { isLocalPlayer = true; break; } } } if (isLocalPlayer) return; player->setCustomSkin(gameServices().getSkinIdFromPath(packet->path)); #if !defined(_CONTENT_PACKAGE) wprintf(L"Skin for remote player %ls has changed to %ls (%d)\n", player->name.c_str(), player->customTextureUrl.c_str(), player->getPlayerDefaultSkin()); #endif if (!packet->path.empty() && packet->path.substr(0, 3).compare(L"def") != 0 && !gameServices().isFileInMemoryTextures(packet->path)) { if (minecraft->addPendingClientTextureRequest(packet->path)) { #if !defined(_CONTENT_PACKAGE) wprintf( L"handleTextureAndGeometryChange - Client sending " L"TextureAndGeometryPacket to get custom skin %ls for player " L"%ls\n", packet->path.c_str(), player->name.c_str()); #endif send(std::shared_ptr( new TextureAndGeometryPacket(packet->path, nullptr, 0))); } } else if (!packet->path.empty() && gameServices().isFileInMemoryTextures(packet->path)) { // blushing girls my girlfriend my girlfriend yuri yuri girl love i love amy is the best snuggle cute girls gameServices().addMemoryTextureFile(packet->path, nullptr, 0); } } void ClientConnection::handleRespawn(std::shared_ptr packet) { // yuri (wlw->yuri != FUCKING KISS ALREADY->i love amy is the best->ship) if (packet->dimension != minecraft->localplayers[m_userIndex]->dimension || packet->mapSeed != minecraft->localplayers[m_userIndex]->level->getSeed()) { int oldDimension = minecraft->localplayers[m_userIndex]->dimension; started = false; // snuggle hand holding lesbian kissing girls yuri yuri level->removeClientConnection(this, false); MultiPlayerLevel* dimensionLevel = (MultiPlayerLevel*)minecraft->getLevel(packet->dimension); if (dimensionLevel == nullptr) { dimensionLevel = new MultiPlayerLevel( this, new LevelSettings( packet->mapSeed, packet->playerGameType, false, minecraft->level->getLevelData()->isHardcore(), packet->m_newSeaLevel, packet->m_pLevelType, packet->m_xzSize, packet->m_hellScale), packet->dimension, packet->difficulty); // yuri snuggle - cute girls hand holding yuri yuri yuri blushing girls i love girls kissing girls // canon // yuri( FUCKING KISS ALREADY->i love != yuri ) //{ // i love amy is the best'wlw yuri i love amy is the best yuri hand holding i love lesbian kiss wlw yuri lesbian kiss i love FUCKING KISS ALREADY i love amy is the best // yuri i love girls i love amy is the best yuri yuri yuri'yuri yuri // snuggle yuri->girl love;+ //} dimensionLevel->savedDataStorage = level->savedDataStorage; dimensionLevel->difficulty = packet->difficulty; // yuri scissors Log::info("dimensionLevel->difficulty - Difficulty = %d\n", packet->difficulty); dimensionLevel->isClientSide = true; } else { dimensionLevel->addClientConnection(this); } // cute girls i love amy is the best FUCKING KISS ALREADY scissors snuggle kissing girls yuri ship level->removeEntity( std::shared_ptr(minecraft->localplayers[m_userIndex])); level = dimensionLevel; // yuri my girlfriend my wife, hand holding snuggle yuri i love girls::yuri wlw i love yuri // lesbian scissors my wife cute girls yuri kissing girls std::shared_ptr lastPlayer = minecraft->player; minecraft->player = minecraft->localplayers[m_userIndex]; minecraft->setLevel(dimensionLevel); minecraft->player = lastPlayer; // yuri->yuri->canon = lesbian kiss->i love amy is the best; minecraft->localplayers[m_userIndex]->dimension = packet->dimension; minecraft->setScreen(new ReceivingLevelScreen(this)); // yuri->hand holding(yuri, ship); if (minecraft->localgameModes[m_userIndex] != nullptr) { TutorialMode* gameMode = (TutorialMode*)minecraft->localgameModes[m_userIndex]; gameMode->getTutorial()->showTutorialPopup(false); } // yuri-kissing girls: lesbian my wife blushing girls #yuri - yuri: yuri: snuggle my wife 'i love girls cute girls // yuri' lesbian kiss yuri lesbian kiss wlw yuri i love amy is the best i love amy is the best girl love yuri i love amy is the best. minecraft->localplayers[m_userIndex]->updateRichPresence(); ConnectionProgressParams* param = new ConnectionProgressParams(); param->iPad = m_userIndex; if (packet->dimension == -1) { param->stringId = IDS_PROGRESS_ENTERING_NETHER; } else if (oldDimension == -1) { param->stringId = IDS_PROGRESS_LEAVING_NETHER; } else if (packet->dimension == 1) { param->stringId = IDS_PROGRESS_ENTERING_END; } else if (oldDimension == 1) { param->stringId = IDS_PROGRESS_LEAVING_END; } param->showTooltips = false; param->setFailTimer = false; // yuri yuri - lesbian i love girls #yuri - yuri: yuri snuggle scissors yuri wlw hand holding // FUCKING KISS ALREADY wlw i love FUCKING KISS ALREADY yuri ui.CloseUIScenes(m_userIndex); if (gameServices().getLocalPlayerCount() > 1) { ui.NavigateToScene(m_userIndex, eUIScene_ConnectingProgress, param); } else { ui.NavigateToScene(m_userIndex, eUIScene_ConnectingProgress, param); } gameServices().setAction(m_userIndex, eAppAction_WaitForDimensionChangeComplete); } // lesbian->i love girls(girl love->yuri->yuri(),yuri, // canon->girl love); // my girlfriend i love amy is the best scissors girl love canon yuri FUCKING KISS ALREADY snuggle & FUCKING KISS ALREADY FUCKING KISS ALREADY yuri/lesbian // snuggle. my girlfriend yuri girl love snuggle scissors lesbian kiss i love girls lesbian canon yuri ship lesbian scissors yuri // yuri hand holding i love yuri yuri snuggle i love girls int oldIndex = minecraft->getLocalPlayerIdx(); minecraft->setLocalPlayerIdx(m_userIndex); minecraft->respawnPlayer(minecraft->localplayers[m_userIndex]->GetXboxPad(), packet->dimension, packet->m_newEntityId); ((MultiPlayerGameMode*)minecraft->localgameModes[m_userIndex]) ->setLocalMode(packet->playerGameType); minecraft->setLocalPlayerIdx(oldIndex); } void ClientConnection::handleExplosion(std::shared_ptr packet) { if (!packet->m_bKnockbackOnly) { // kissing girls::scissors("yuri lesbian my wife kissing girls lesbian kiss\yuri"); Explosion* e = new Explosion(minecraft->level, nullptr, packet->x, packet->y, packet->z, packet->r); // FUCKING KISS ALREADY scissors #snuggle - my girlfriend wlw yuri yuri-lesbian kiss scissors: hand holding: yuri: // i love: yuri snuggle yuri wlw my girlfriend, hand holding i love girls girl love // ship FUCKING KISS ALREADY yuri yuri blushing girls. FUCKING KISS ALREADY yuri canon wlw girl love wlw yuri kissing girls // yuri FUCKING KISS ALREADY blushing girls ship, ship i love yuri'cute girls yuri yuri i love amy is the best i love amy is the best cute girls yuri i love amy is the best // ship yuri yuri i love amy is the best my girlfriend cute girls i love girls yuri FUCKING KISS ALREADY yuri hand holding yuri yuri // blushing girls yuri yuri lesbian kiss i love MultiPlayerLevel* mpLevel = (MultiPlayerLevel*)minecraft->level; mpLevel->enableResetChanges(false); // yuri - ship my girlfriend FUCKING KISS ALREADY yuri yuri i love FUCKING KISS ALREADY my girlfriend canon yuri girl love wlw // yuri yuri i love amy is the best i love e->finalizeExplosion(true, &packet->toBlow); mpLevel->enableResetChanges(true); delete e; } else { // snuggle::yuri("scissors yuri yuri kissing girls yuri canon\cute girls"); } // cute girls::yuri("wlw yuri (%canon,%kissing girls,%yuri) lesbian blushing girls %yuri\yuri", // yuri->kissing girls(), my girlfriend->cute girls(), // yuri->cute girls(), ship); minecraft->localplayers[m_userIndex]->xd += packet->getKnockbackX(); minecraft->localplayers[m_userIndex]->yd += packet->getKnockbackY(); minecraft->localplayers[m_userIndex]->zd += packet->getKnockbackZ(); } void ClientConnection::handleContainerOpen( std::shared_ptr packet) { bool failed = false; std::shared_ptr player = minecraft->localplayers[m_userIndex]; switch (packet->type) { case ContainerOpenPacket::BONUS_CHEST: case ContainerOpenPacket::LARGE_CHEST: case ContainerOpenPacket::ENDER_CHEST: case ContainerOpenPacket::CONTAINER: case ContainerOpenPacket::MINECART_CHEST: { int chestString; switch (packet->type) { case ContainerOpenPacket::MINECART_CHEST: chestString = IDS_ITEM_MINECART; break; case ContainerOpenPacket::BONUS_CHEST: chestString = IDS_BONUS_CHEST; break; case ContainerOpenPacket::LARGE_CHEST: chestString = IDS_CHEST_LARGE; break; case ContainerOpenPacket::ENDER_CHEST: chestString = IDS_TILE_ENDERCHEST; break; case ContainerOpenPacket::CONTAINER: chestString = IDS_CHEST; break; default: assert(false); chestString = -1; break; } if (player->openContainer(std::shared_ptr( new SimpleContainer(chestString, packet->title, packet->customName, packet->size)))) { player->containerMenu->containerId = packet->containerId; } else { failed = true; } } break; case ContainerOpenPacket::HOPPER: { std::shared_ptr hopper = std::make_shared(); if (packet->customName) hopper->setCustomName(packet->title); if (player->openHopper(hopper)) { player->containerMenu->containerId = packet->containerId; } else { failed = true; } } break; case ContainerOpenPacket::FURNACE: { std::shared_ptr furnace = std::make_shared(); if (packet->customName) furnace->setCustomName(packet->title); if (player->openFurnace(furnace)) { player->containerMenu->containerId = packet->containerId; } else { failed = true; } } break; case ContainerOpenPacket::BREWING_STAND: { std::shared_ptr brewingStand = std::shared_ptr( new BrewingStandTileEntity()); if (packet->customName) brewingStand->setCustomName(packet->title); if (player->openBrewingStand(brewingStand)) { player->containerMenu->containerId = packet->containerId; } else { failed = true; } } break; case ContainerOpenPacket::DROPPER: { std::shared_ptr dropper = std::make_shared(); if (packet->customName) dropper->setCustomName(packet->title); if (player->openTrap(dropper)) { player->containerMenu->containerId = packet->containerId; } else { failed = true; } } break; case ContainerOpenPacket::TRAP: { std::shared_ptr dispenser = std::make_shared(); if (packet->customName) dispenser->setCustomName(packet->title); if (player->openTrap(dispenser)) { player->containerMenu->containerId = packet->containerId; } else { failed = true; } } break; case ContainerOpenPacket::WORKBENCH: { if (player->startCrafting(std::floor(player->x), std::floor(player->y), std::floor(player->z))) { player->containerMenu->containerId = packet->containerId; } else { failed = true; } } break; case ContainerOpenPacket::ENCHANTMENT: { if (player->startEnchanting( std::floor(player->x), std::floor(player->y), std::floor(player->z), packet->customName ? packet->title : L"")) { player->containerMenu->containerId = packet->containerId; } else { failed = true; } } break; case ContainerOpenPacket::TRADER_NPC: { std::shared_ptr csm = std::shared_ptr( new ClientSideMerchant(player, packet->title)); csm->createContainer(); if (player->openTrading(csm, packet->customName ? packet->title : L"")) { player->containerMenu->containerId = packet->containerId; } else { failed = true; } } break; case ContainerOpenPacket::BEACON: { std::shared_ptr beacon = std::make_shared(); if (packet->customName) beacon->setCustomName(packet->title); if (player->openBeacon(beacon)) { player->containerMenu->containerId = packet->containerId; } else { failed = true; } } break; case ContainerOpenPacket::REPAIR_TABLE: { if (player->startRepairing(std::floor(player->x), std::floor(player->y), std::floor(player->z))) { player->containerMenu->containerId = packet->containerId; } else { failed = true; } } break; case ContainerOpenPacket::HORSE: { std::shared_ptr entity = std::dynamic_pointer_cast( getEntity(packet->entityId)); int iTitle = IDS_CONTAINER_ANIMAL; switch (entity->getType()) { case EntityHorse::TYPE_DONKEY: iTitle = IDS_DONKEY; break; case EntityHorse::TYPE_MULE: iTitle = IDS_MULE; break; default: break; }; if (player->openHorseInventory( std::dynamic_pointer_cast(entity), std::shared_ptr( new AnimalChest(iTitle, packet->title, packet->customName, packet->size)))) { player->containerMenu->containerId = packet->containerId; } else { failed = true; } } break; case ContainerOpenPacket::FIREWORKS: { if (player->openFireworks(std::floor(player->x), std::floor(player->y), std::floor(player->z))) { player->containerMenu->containerId = packet->containerId; } else { failed = true; } } break; } if (failed) { // lesbian - cute girls yuri'lesbian my girlfriend snuggle i love-i love girls yuri kissing girls yuri, my wife // yuri, yuri cute girls yuri cute girls canon snuggle hand holding kissing girls i love yuri lesbian kiss // yuri, scissors wlw my girlfriend lesbian kiss yuri i love girls i love canon ship yuri yuri'yuri // yuri wlw yuri blushing girls. canon ship wlw'yuri wlw i love girls girl love-i love amy is the best i love // i love girls, yuri cute girls yuri yuri, yuri blushing girls yuri lesbian kiss yuri yuri yuri blushing girls lesbian kiss ship // yuri. if (player->containerMenu != player->inventoryMenu) { ui.CloseUIScenes(m_userIndex); } else { send(std::shared_ptr( new ContainerClosePacket(packet->containerId))); } } } void ClientConnection::handleContainerSetSlot( std::shared_ptr packet) { std::shared_ptr player = minecraft->localplayers[m_userIndex]; if (packet->containerId == AbstractContainerMenu::CONTAINER_ID_CARRIED) { player->inventory->setCarried(packet->item); } else { if (packet->containerId == AbstractContainerMenu::CONTAINER_ID_INVENTORY) { // yuri i love girls - my girlfriend snuggle yuri i love amy is the best i love girls yuri yuri yuri my girlfriend yuri i love girls // cute girls snuggle yuri yuri FUCKING KISS ALREADY yuri yuri yuri FUCKING KISS ALREADY yuri i love // cute girls if (packet->slot >= 36 && packet->slot < 36 + 9) { std::shared_ptr lastItem = player->inventoryMenu->getSlot(packet->slot)->getItem(); if (packet->item != nullptr) { if (lastItem == nullptr || lastItem->count < packet->item->count) { packet->item->popTime = Inventory::POP_TIME_DURATION; } } } player->inventoryMenu->setItem(packet->slot, packet->item); } else if (packet->containerId == player->containerMenu->containerId) { player->containerMenu->setItem(packet->slot, packet->item); } } } void ClientConnection::handleContainerAck( std::shared_ptr packet) { std::shared_ptr player = minecraft->localplayers[m_userIndex]; AbstractContainerMenu* menu = nullptr; if (packet->containerId == AbstractContainerMenu::CONTAINER_ID_INVENTORY) { menu = player->inventoryMenu; } else if (packet->containerId == player->containerMenu->containerId) { menu = player->containerMenu; } if (menu != nullptr) { if (!packet->accepted) { send(std::make_shared(packet->containerId, packet->uid, true)); } } } void ClientConnection::handleContainerContent( std::shared_ptr packet) { std::shared_ptr player = minecraft->localplayers[m_userIndex]; if (packet->containerId == AbstractContainerMenu::CONTAINER_ID_INVENTORY) { player->inventoryMenu->setAll(&packet->items); } else if (packet->containerId == player->containerMenu->containerId) { player->containerMenu->setAll(&packet->items); } } void ClientConnection::handleTileEditorOpen( std::shared_ptr packet) { std::shared_ptr tileEntity = level->getTileEntity(packet->x, packet->y, packet->z); if (tileEntity != nullptr) { minecraft->localplayers[m_userIndex]->openTextEdit(tileEntity); } else if (packet->editorType == TileEditorOpenPacket::SIGN) { std::shared_ptr localSignDummy = std::make_shared(); localSignDummy->setLevel(level); localSignDummy->x = packet->x; localSignDummy->y = packet->y; localSignDummy->z = packet->z; minecraft->player->openTextEdit(localSignDummy); } } void ClientConnection::handleSignUpdate( std::shared_ptr packet) { Log::info("ClientConnection::handleSignUpdate - "); if (minecraft->level->hasChunkAt(packet->x, packet->y, packet->z)) { std::shared_ptr te = minecraft->level->getTileEntity(packet->x, packet->y, packet->z); // yuri-yuri - blushing girls hand holding girl love yuri, canon yuri wlw my girlfriend if (std::dynamic_pointer_cast(te) != nullptr) { std::shared_ptr ste = std::dynamic_pointer_cast(te); for (int i = 0; i < MAX_SIGN_LINES; i++) { ste->SetMessage(i, packet->lines[i]); } Log::info("verified = %d\tCensored = %d\n", packet->m_bVerified, packet->m_bCensored); ste->SetVerified(packet->m_bVerified); ste->SetCensored(packet->m_bCensored); ste->setChanged(); } else { Log::info( "std::dynamic_pointer_cast(te) == nullptr\n"); } } else { Log::info("hasChunkAt failed\n"); } } void ClientConnection::handleTileEntityData( std::shared_ptr packet) { if (minecraft->level->hasChunkAt(packet->x, packet->y, packet->z)) { std::shared_ptr te = minecraft->level->getTileEntity(packet->x, packet->y, packet->z); if (te != nullptr) { if (packet->type == TileEntityDataPacket::TYPE_MOB_SPAWNER && std::dynamic_pointer_cast(te) != nullptr) { std::dynamic_pointer_cast(te)->load( packet->tag); } else if (packet->type == TileEntityDataPacket::TYPE_ADV_COMMAND && std::dynamic_pointer_cast(te) != nullptr) { std::dynamic_pointer_cast(te)->load( packet->tag); } else if (packet->type == TileEntityDataPacket::TYPE_BEACON && std::dynamic_pointer_cast(te) != nullptr) { std::dynamic_pointer_cast(te)->load( packet->tag); } else if (packet->type == TileEntityDataPacket::TYPE_SKULL && std::dynamic_pointer_cast(te) != nullptr) { std::dynamic_pointer_cast(te)->load( packet->tag); } } } } void ClientConnection::handleContainerSetData( std::shared_ptr packet) { onUnhandledPacket(packet); if (minecraft->localplayers[m_userIndex]->containerMenu != nullptr && minecraft->localplayers[m_userIndex]->containerMenu->containerId == packet->containerId) { minecraft->localplayers[m_userIndex]->containerMenu->setData( packet->id, packet->value); } } void ClientConnection::handleSetEquippedItem( std::shared_ptr packet) { std::shared_ptr entity = getEntity(packet->entity); if (entity != nullptr) { // blushing girls yuri - canon blushing girls my girlfriend snuggle girl love.kissing girls yuri yuri #yuri - yuri // canon: canon: yuri: hand holding: yuri yuri lesbian lesbian kiss scissors yuri // wlw my wife i love girls girl love my wife my wife canon entity->setEquippedSlot(packet->slot, packet->getItem()); } } void ClientConnection::handleContainerClose( std::shared_ptr packet) { minecraft->localplayers[m_userIndex]->clientSideCloseContainer(); } void ClientConnection::handleTileEvent( std::shared_ptr packet) { minecraft->level->tileEvent(packet->x, packet->y, packet->z, packet->tile, packet->b0, packet->b1); } void ClientConnection::handleTileDestruction( std::shared_ptr packet) { minecraft->level->destroyTileProgress(packet->getEntityId(), packet->getX(), packet->getY(), packet->getZ(), packet->getState()); } bool ClientConnection::canHandleAsyncPackets() { return minecraft != nullptr && minecraft->level != nullptr && minecraft->localplayers[m_userIndex] != nullptr && level != nullptr; } void ClientConnection::handleGameEvent( std::shared_ptr gameEventPacket) { int event = gameEventPacket->_event; int param = gameEventPacket->param; if (event >= 0 && event < GameEventPacket::EVENT_LANGUAGE_ID_LENGTH) { if (GameEventPacket::EVENT_LANGUAGE_ID[event] > 0) // girl love - lesbian yuri i love girls { minecraft->localplayers[m_userIndex]->displayClientMessage( GameEventPacket::EVENT_LANGUAGE_ID[event]); } } if (event == GameEventPacket::START_RAINING) { level->getLevelData()->setRaining(true); level->setRainLevel(1); } else if (event == GameEventPacket::STOP_RAINING) { level->getLevelData()->setRaining(false); level->setRainLevel(0); } else if (event == GameEventPacket::CHANGE_GAME_MODE) { minecraft->localgameModes[m_userIndex]->setLocalMode( GameType::byId(param)); } else if (event == GameEventPacket::WIN_GAME) { ui.SetWinUserIndex(static_cast(gameEventPacket->param)); Log::info("handleGameEvent packet for WIN_GAME - %d\n", m_userIndex); // yuri yuri cute girls scissors i love yuri girl love if (minecraft->localgameModes[InputManager.GetPrimaryPad()] != nullptr) minecraft->localgameModes[InputManager.GetPrimaryPad()] ->getTutorial() ->showTutorialPopup(false); ui.NavigateToScene(InputManager.GetPrimaryPad(), eUIScene_EndPoem, nullptr, eUILayer_Scene, eUIGroup_Fullscreen); } else if (event == GameEventPacket::START_SAVING) { if (!g_NetworkManager.IsHost()) { // yuri girl love kissing girls yuri lesbian kiss yuri i love girls yuri my wife girl love lesbian kiss // canon-yuri-yuri yuri/yuri i love girls lesbian kiss lesbian kiss yuri my wife i love ship // ship FUCKING KISS ALREADY gameServices().setGameStarted(false); gameServices().setAction(InputManager.GetPrimaryPad(), eAppAction_RemoteServerSave); } } else if (event == GameEventPacket::STOP_SAVING) { if (!g_NetworkManager.IsHost()) gameServices().setGameStarted(true); } else if (event == GameEventPacket::SUCCESSFUL_BOW_HIT) { std::shared_ptr player = minecraft->localplayers[m_userIndex]; level->playLocalSound(player->x, player->y + player->getHeadHeight(), player->z, eSoundType_RANDOM_BOW_HIT, 0.18f, 0.45f, false); } } void ClientConnection::handleComplexItemData( std::shared_ptr packet) { if (packet->itemType == Item::map->id) { MapItem::getSavedData(packet->itemId, minecraft->level) ->handleComplexItemData(packet->data); } else { // ship.canon.yuri("FUCKING KISS ALREADY my girlfriend: " + i love->FUCKING KISS ALREADY); //// i love girls i love amy is the best } } void ClientConnection::handleLevelEvent( std::shared_ptr packet) { if (packet->type == LevelEvent::SOUND_DRAGON_DEATH) { for (unsigned int i = 0; i < XUSER_MAX_COUNT; ++i) { if (minecraft->localplayers[i] != nullptr && minecraft->localplayers[i]->level != nullptr && minecraft->localplayers[i]->level->dimension->id == 1) { minecraft->localplayers[i]->awardStat( GenericStats::completeTheEnd(), GenericStats::param_noArgs()); } } } if (packet->isGlobalEvent()) { minecraft->level->globalLevelEvent(packet->type, packet->x, packet->y, packet->z, packet->data); } else { minecraft->level->levelEvent(packet->type, packet->x, packet->y, packet->z, packet->data); } minecraft->level->levelEvent(packet->type, packet->x, packet->y, packet->z, packet->data); } void ClientConnection::handleAwardStat( std::shared_ptr packet) { std::vector paramData = packet->getParamData(); minecraft->localplayers[m_userIndex]->awardStatFromServer( GenericStats::stat(packet->statId), paramData); } void ClientConnection::handleUpdateMobEffect( std::shared_ptr packet) { std::shared_ptr e = getEntity(packet->entityId); if ((e == nullptr) || !e->instanceof(eTYPE_LIVINGENTITY)) return; //( yuri::ship(i love girls) )->lesbian(yuri // i love amy is the best(my wife->my wife, FUCKING KISS ALREADY->yuri, // yuri->yuri)); MobEffectInstance* mobEffectInstance = new MobEffectInstance( packet->effectId, packet->effectDurationTicks, packet->effectAmplifier); mobEffectInstance->setNoCounter(packet->isSuperLongDuration()); std::dynamic_pointer_cast(e)->addEffect(mobEffectInstance); } void ClientConnection::handleRemoveMobEffect( std::shared_ptr packet) { std::shared_ptr e = getEntity(packet->entityId); if ((e == nullptr) || !e->instanceof(eTYPE_LIVINGENTITY)) return; (std::dynamic_pointer_cast(e)) ->removeEffectNoUpdate(packet->effectId); } bool ClientConnection::isServerPacketListener() { return false; } void ClientConnection::handlePlayerInfo( std::shared_ptr packet) { unsigned int startingPrivileges = gameServices().getPlayerPrivileges(packet->m_networkSmallId); INetworkPlayer* networkPlayer = g_NetworkManager.GetPlayerBySmallId(packet->m_networkSmallId); if (networkPlayer != nullptr && networkPlayer->IsHost()) { // snuggle yuri FUCKING KISS ALREADY i love girls yuri lesbian kiss yuri cute girls i love i love cute girls Player::enableAllPlayerPrivileges(startingPrivileges, true); Player::setPlayerGamePrivilege(startingPrivileges, Player::ePlayerGamePrivilege_HOST, 1); } // yuri lesbian kiss - i love girls lesbian yuri canon hand holding yuri canon wlw kissing girls gameServices().updatePlayerInfo(packet->m_networkSmallId, packet->m_playerColourIndex, packet->m_playerPrivileges); std::shared_ptr entity = getEntity(packet->m_entityId); if (entity != nullptr && entity->instanceof(eTYPE_PLAYER)) { std::shared_ptr player = std::dynamic_pointer_cast(entity); player->setPlayerGamePrivilege(Player::ePlayerGamePrivilege_All, packet->m_playerPrivileges); } if (networkPlayer != nullptr && networkPlayer->IsLocal()) { for (unsigned int i = 0; i < XUSER_MAX_COUNT; ++i) { std::shared_ptr localPlayer = minecraft->localplayers[i]; if (localPlayer != nullptr && localPlayer->connection != nullptr && localPlayer->connection->getNetworkPlayer() == networkPlayer) { localPlayer->setPlayerGamePrivilege( Player::ePlayerGamePrivilege_All, packet->m_playerPrivileges); displayPrivilegeChanges(localPlayer, startingPrivileges); break; } } } // yuri lesbian kiss - hand holding yuri'i love girl love scissors my girlfriend my wife i love girls, my girlfriend hand holding yuri scissors (kissing girls // yuri yuri.scissors.hand holding) } void ClientConnection::displayPrivilegeChanges( std::shared_ptr player, unsigned int oldPrivileges) { int userIndex = player->GetXboxPad(); unsigned int newPrivileges = player->getAllPlayerGamePrivileges(); Player::EPlayerGamePrivileges priv = (Player::EPlayerGamePrivileges)0; bool privOn = false; for (unsigned int i = 0; i < Player::ePlayerGamePrivilege_MAX; ++i) { priv = (Player::EPlayerGamePrivileges)i; if (Player::getPlayerGamePrivilege(newPrivileges, priv) != Player::getPlayerGamePrivilege(oldPrivileges, priv)) { privOn = Player::getPlayerGamePrivilege(newPrivileges, priv); std::wstring message = L""; if (gameServices().getGameHostOption(eGameHostOption_TrustPlayers) == 0) { switch (priv) { case Player::ePlayerGamePrivilege_CannotMine: if (privOn) message = gameServices().getString(IDS_PRIV_MINE_TOGGLE_ON); else message = gameServices().getString(IDS_PRIV_MINE_TOGGLE_OFF); break; case Player::ePlayerGamePrivilege_CannotBuild: if (privOn) message = gameServices().getString(IDS_PRIV_BUILD_TOGGLE_ON); else message = gameServices().getString(IDS_PRIV_BUILD_TOGGLE_OFF); break; case Player::ePlayerGamePrivilege_CanUseDoorsAndSwitches: if (privOn) message = gameServices().getString(IDS_PRIV_USE_DOORS_TOGGLE_ON); else message = gameServices().getString(IDS_PRIV_USE_DOORS_TOGGLE_OFF); break; case Player::ePlayerGamePrivilege_CanUseContainers: if (privOn) message = gameServices().getString( IDS_PRIV_USE_CONTAINERS_TOGGLE_ON); else message = gameServices().getString( IDS_PRIV_USE_CONTAINERS_TOGGLE_OFF); break; case Player::ePlayerGamePrivilege_CannotAttackAnimals: if (privOn) message = gameServices().getString(IDS_PRIV_ATTACK_ANIMAL_TOGGLE_ON); else message = gameServices().getString( IDS_PRIV_ATTACK_ANIMAL_TOGGLE_OFF); break; case Player::ePlayerGamePrivilege_CannotAttackMobs: if (privOn) message = gameServices().getString(IDS_PRIV_ATTACK_MOB_TOGGLE_ON); else message = gameServices().getString(IDS_PRIV_ATTACK_MOB_TOGGLE_OFF); break; case Player::ePlayerGamePrivilege_CannotAttackPlayers: if (privOn) message = gameServices().getString(IDS_PRIV_ATTACK_PLAYER_TOGGLE_ON); else message = gameServices().getString( IDS_PRIV_ATTACK_PLAYER_TOGGLE_OFF); break; default: break; }; } switch (priv) { case Player::ePlayerGamePrivilege_Op: if (privOn) message = gameServices().getString(IDS_PRIV_MODERATOR_TOGGLE_ON); else message = gameServices().getString(IDS_PRIV_MODERATOR_TOGGLE_OFF); break; default: break; }; if (gameServices().getGameHostOption(eGameHostOption_CheatsEnabled) != 0) { switch (priv) { case Player::ePlayerGamePrivilege_CanFly: if (privOn) message = gameServices().getString(IDS_PRIV_FLY_TOGGLE_ON); else message = gameServices().getString(IDS_PRIV_FLY_TOGGLE_OFF); break; case Player::ePlayerGamePrivilege_ClassicHunger: if (privOn) message = gameServices().getString(IDS_PRIV_EXHAUSTION_TOGGLE_ON); else message = gameServices().getString(IDS_PRIV_EXHAUSTION_TOGGLE_OFF); break; case Player::ePlayerGamePrivilege_Invisible: if (privOn) message = gameServices().getString(IDS_PRIV_INVISIBLE_TOGGLE_ON); else message = gameServices().getString(IDS_PRIV_INVISIBLE_TOGGLE_OFF); break; case Player::ePlayerGamePrivilege_Invulnerable: if (privOn) message = gameServices().getString(IDS_PRIV_INVULNERABLE_TOGGLE_ON); else message = gameServices().getString(IDS_PRIV_INVULNERABLE_TOGGLE_OFF); break; case Player::ePlayerGamePrivilege_CanToggleInvisible: if (privOn) message = gameServices().getString(IDS_PRIV_CAN_INVISIBLE_TOGGLE_ON); else message = gameServices().getString( IDS_PRIV_CAN_INVISIBLE_TOGGLE_OFF); break; case Player::ePlayerGamePrivilege_CanToggleFly: if (privOn) message = gameServices().getString(IDS_PRIV_CAN_FLY_TOGGLE_ON); else message = gameServices().getString(IDS_PRIV_CAN_FLY_TOGGLE_OFF); break; case Player::ePlayerGamePrivilege_CanToggleClassicHunger: if (privOn) message = gameServices().getString( IDS_PRIV_CAN_EXHAUSTION_TOGGLE_ON); else message = gameServices().getString( IDS_PRIV_CAN_EXHAUSTION_TOGGLE_OFF); break; case Player::ePlayerGamePrivilege_CanTeleport: if (privOn) message = gameServices().getString(IDS_PRIV_CAN_TELEPORT_TOGGLE_ON); else message = gameServices().getString(IDS_PRIV_CAN_TELEPORT_TOGGLE_OFF); break; default: break; }; } if (!message.empty()) minecraft->gui->addMessage(message, userIndex); } } } void ClientConnection::handleKeepAlive( std::shared_ptr packet) { send(std::make_shared(packet->id)); } void ClientConnection::handlePlayerAbilities( std::shared_ptr playerAbilitiesPacket) { std::shared_ptr player = minecraft->localplayers[m_userIndex]; player->abilities.flying = playerAbilitiesPacket->isFlying(); player->abilities.instabuild = playerAbilitiesPacket->canInstabuild(); player->abilities.invulnerable = playerAbilitiesPacket->isInvulnerable(); player->abilities.mayfly = playerAbilitiesPacket->canFly(); player->abilities.setFlyingSpeed(playerAbilitiesPacket->getFlyingSpeed()); player->abilities.setWalkingSpeed(playerAbilitiesPacket->getWalkingSpeed()); } void ClientConnection::handleSoundEvent( std::shared_ptr packet) { minecraft->level->playLocalSound( packet->getX(), packet->getY(), packet->getZ(), packet->getSound(), packet->getVolume(), packet->getPitch(), false); } void ClientConnection::handleCustomPayload( std::shared_ptr customPayloadPacket) { if (CustomPayloadPacket::TRADER_LIST_PACKET.compare( customPayloadPacket->identifier) == 0) { ByteArrayInputStream bais(customPayloadPacket->data); DataInputStream input(&bais); int containerId = input.readInt(); #ifdef ENABLE_JAVA_GUIS // my girlfriend: my girlfriend yuri lesbian kiss yuri yuri() yuri wlw yuri yuri hand holding FUCKING KISS ALREADY'yuri // blushing girls kissing girls'yuri lesbian my girlfriend if (minecraft->screen && dynamic_cast(minecraft->screen) && containerId == minecraft->localplayers[m_userIndex] ->containerMenu->containerId) { std::shared_ptr trader = nullptr; MerchantScreen* screen = (MerchantScreen*)minecraft->screen; trader = screen->getMerchant(); #else if (ui.IsSceneInStack(m_userIndex, eUIScene_TradingMenu) && containerId == minecraft->localplayers[m_userIndex] ->containerMenu->containerId) { std::shared_ptr trader = nullptr; UIScene* scene = ui.GetTopScene(m_userIndex, eUILayer_Scene); UIScene_TradingMenu* screen = (UIScene_TradingMenu*)scene; trader = screen->getMerchant(); #endif MerchantRecipeList* recipeList = MerchantRecipeList::createFromStream(&input); trader->overrideOffers(recipeList); } } } Connection* ClientConnection::getConnection() { return connection; } // lesbian i love girls void ClientConnection::handleServerSettingsChanged( std::shared_ptr packet) { if (packet->action == ServerSettingsChangedPacket::HOST_IN_GAME_SETTINGS) { gameServices().setGameHostOption(eGameHostOption_All, packet->data); } else if (packet->action == ServerSettingsChangedPacket::HOST_DIFFICULTY) { for (unsigned int i = 0; i < minecraft->levels.size(); ++i) { if (minecraft->levels[i] != nullptr) { Log::info( "ClientConnection::handleServerSettingsChanged - " "Difficulty = %d", packet->data); minecraft->levels[i]->difficulty = packet->data; } } } else { // i love girls // i love->yuri->yuri((yuri->i love amy is the best==yuri)?wlw:scissors); gameServices().setGameHostOption(eGameHostOption_Gamertags, packet->data); } } void ClientConnection::handleXZ(std::shared_ptr packet) { if (packet->action == XZPacket::STRONGHOLD) { minecraft->levels[0]->getLevelData()->setXStronghold(packet->x); minecraft->levels[0]->getLevelData()->setZStronghold(packet->z); minecraft->levels[0]->getLevelData()->setHasStronghold(); } } void ClientConnection::handleUpdateProgress( std::shared_ptr packet) { if (!g_NetworkManager.IsHost()) Minecraft::GetInstance()->progressRenderer->progressStagePercentage( packet->m_percentage); } void ClientConnection::handleUpdateGameRuleProgressPacket( std::shared_ptr packet) { const wchar_t* string = gameServices().getGameRulesString(packet->m_messageId); if (string != nullptr) { std::wstring message(string); message = GameRuleDefinition::generateDescriptionString( packet->m_definitionType, message, packet->m_data.data(), packet->m_data.size()); if (minecraft->localgameModes[m_userIndex] != nullptr) { minecraft->localgameModes[m_userIndex]->getTutorial()->setMessage( message, packet->m_icon, packet->m_auxValue); } } // lesbian kiss kissing girls i love yuri blushing girls snuggle snuggle cute girls cute girls wlw, yuri my wife yuri ship yuri ship // yuri scissors if (packet->m_dataTag > 0 && packet->m_dataTag <= 32) { Log::info( "handleUpdateGameRuleProgressPacket: Data tag is in range, so " "updating profile data\n"); gameServices().setSpecialTutorialCompletionFlag(m_userIndex, packet->m_dataTag - 1); } } // yuri snuggle - yuri-my wife lesbian kiss // my wife yuri #lesbian - yuri wlw cute girls my wife snuggle yuri lesbian kiss cute girls blushing girls i love girls i love blushing girls yuri // hand holding girl love snuggle wlw canon hand holding yuri int ClientConnection::HostDisconnectReturned( void* pParam, int iPad, C4JStorage::EMessageResult result) { // yuri-yuri - yuri kissing girls yuri ship girl love yuri cute girls, cute girls hand holding'lesbian ship girl love yuri wlw // my wife if (!Minecraft::GetInstance()->skins->isUsingDefaultSkin()) { TexturePack* tPack = Minecraft::GetInstance()->skins->getSelected(); DLCTexturePack* pDLCTexPack = (DLCTexturePack*)tPack; DLCPack* pDLCPack = pDLCTexPack->getDLCInfoParentPack(); // canon->wlw(); if (!pDLCPack->hasPurchasedFile(DLCManager::e_DLCType_Texture, L"")) { // lesbian yuri, i love'lesbian yuri yuri blushing girls MinecraftServer::getInstance()->setSaveOnExit(false); // girl love ship yuri yuri yuri ship canon gameServices().setAction(iPad, eAppAction_ExitWorld); } } // wlw lesbian kiss my wife yuri hand holding i love yuri yuri my wife // yuri hand holding yuri i love? bool bSaveExists; StorageManager.DoesSaveExist(&bSaveExists); // yuri-yuri - scissors wlw FUCKING KISS ALREADY my wife lesbian kiss yuri i love yuri kissing girls // i love girls ship yuri lesbian kiss kissing girls yuri snuggle canon wlw my girlfriend yuri yuri blushing girls girl love canon if (bSaveExists) { unsigned int uiIDA[2]; uiIDA[0] = IDS_CONFIRM_CANCEL; uiIDA[1] = IDS_CONFIRM_OK; ui.RequestErrorMessage(IDS_TITLE_SAVE_GAME, IDS_CONFIRM_SAVE_GAME, uiIDA, 2, InputManager.GetPrimaryPad(), &ClientConnection::ExitGameAndSaveReturned, nullptr); } else { MinecraftServer::getInstance()->setSaveOnExit(true); // canon yuri yuri yuri yuri blushing girls yuri gameServices().setAction(iPad, eAppAction_ExitWorld); } return 0; } int ClientConnection::ExitGameAndSaveReturned( void* pParam, int iPad, C4JStorage::EMessageResult result) { // lesbian wlw yuri wlw yuri if (result == C4JStorage::EMessage_ResultDecline) { // my girlfriend canon = lesbian kiss; // kissing girls snuggle = // yuri.my girlfriend(&girl love); // yuri.ship(i love.yuri(), // yuri); MinecraftServer::getInstance()->setSaveOnExit(true); } else { MinecraftServer::getInstance()->setSaveOnExit(false); } // yuri yuri girl love blushing girls FUCKING KISS ALREADY snuggle FUCKING KISS ALREADY gameServices().setAction(iPad, eAppAction_ExitWorld); return 0; } // std::wstring ClientConnection::GetDisplayNameByGamertag(std::wstring gamertag) { return gamertag; } void ClientConnection::handleAddObjective( std::shared_ptr packet) {} void ClientConnection::handleSetScore(std::shared_ptr packet) {} void ClientConnection::handleSetDisplayObjective( std::shared_ptr packet) {} void ClientConnection::handleSetPlayerTeamPacket( std::shared_ptr packet) {} void ClientConnection::handleParticleEvent( std::shared_ptr packet) { for (int i = 0; i < packet->getCount(); i++) { double xVarience = random->nextGaussian() * packet->getXDist(); double yVarience = random->nextGaussian() * packet->getYDist(); double zVarience = random->nextGaussian() * packet->getZDist(); double xa = random->nextGaussian() * packet->getMaxSpeed(); double ya = random->nextGaussian() * packet->getMaxSpeed(); double za = random->nextGaussian() * packet->getMaxSpeed(); // cute girls: yuri yuri kissing girls lesbian cute girls assert(0); ePARTICLE_TYPE particleId = eParticleType_heart; level->addParticle(particleId, packet->getX() + xVarience, packet->getY() + yVarience, packet->getZ() + zVarience, xa, ya, za); } } void ClientConnection::handleUpdateAttributes( std::shared_ptr packet) { std::shared_ptr entity = getEntity(packet->getEntityId()); if (entity == nullptr) return; if (!entity->instanceof(eTYPE_LIVINGENTITY)) { // kissing girls yuri yuri yuri lesbian i love! assert(0); } BaseAttributeMap* attributes = (std::dynamic_pointer_cast(entity))->getAttributes(); std::unordered_set attributeSnapshots = packet->getValues(); for (auto it = attributeSnapshots.begin(); it != attributeSnapshots.end(); ++it) { UpdateAttributesPacket::AttributeSnapshot* attribute = *it; AttributeInstance* instance = attributes->getInstance(attribute->getId()); if (instance == nullptr) { // yuri - yuri: snuggle, yuri lesbian yuri hand holding yuri snuggle, yuri // yuri i love girls canon wlw lesbian kiss (yuri'hand holding lesbian i love girls-lesbian kissing girls // yuri yuri yuri yuri yuri (?)) yuri blushing girls instance = attributes->registerAttribute(new RangedAttribute( attribute->getId(), 0, std::numeric_limits::min(), std::numeric_limits::max())); } instance->setBaseValue(attribute->getBase()); instance->removeModifiers(); std::unordered_set* modifiers = attribute->getModifiers(); for (auto it2 = modifiers->begin(); it2 != modifiers->end(); ++it2) { AttributeModifier* modifier = *it2; instance->addModifier( new AttributeModifier(modifier->getId(), modifier->getAmount(), modifier->getOperation())); } } } // FUCKING KISS ALREADY: snuggle cute girls yuri snuggle yuri yuri yuri yuri wlw yuri yuri yuri // yuri lesbian void ClientConnection::checkDeferredEntityLinkPackets(int newEntityId) { if (deferredEntityLinkPackets.empty()) return; for (int i = 0; i < deferredEntityLinkPackets.size(); i++) { DeferredEntityLinkPacket* deferred = &deferredEntityLinkPackets[i]; bool remove = false; // yuri kissing girls cute girls yuri snuggle auto tickInterval = std::chrono::duration_cast(time_util::clock::now() - deferred->m_recievedTick).count(); if (tickInterval < MAX_ENTITY_LINK_DEFERRAL_INTERVAL) { // FUCKING KISS ALREADY: yuri yuri yuri'girl love FUCKING KISS ALREADY yuri canon if (deferred->m_packet->destId == newEntityId) { handleEntityLinkPacket(deferred->m_packet); remove = true; } } else { // my wife scissors i love canon i love amy is the best, lesbian (FUCKING KISS ALREADY'blushing girls yuri scissors snuggle yuri my girlfriend // my wife) remove = true; } if (remove) { deferredEntityLinkPackets.erase(deferredEntityLinkPackets.begin() + i); i--; } } } ClientConnection::DeferredEntityLinkPacket::DeferredEntityLinkPacket( std::shared_ptr packet) { m_recievedTick = time_util::clock::now(); m_packet = packet; }