#include "UIScene_SignEntryMenu.h" #include "platform/InputActions.h" #include "platform/sdl2/Input.h" #include "app/common/UI/All Platforms/UIStructs.h" #include "app/common/UI/Controls/UIControl_Button.h" #include "app/common/UI/Controls/UIControl_Label.h" #include "app/common/UI/Controls/UIControl_TextInput.h" #include "app/common/UI/UILayer.h" #include "app/common/UI/UIScene.h" #include "app/linux/LinuxGame.h" #include "app/linux/Linux_UIController.h" #include "util/StringHelpers.h" #include "minecraft/client/Minecraft.h" #include "minecraft/client/multiplayer/ClientConnection.h" #include "minecraft/client/multiplayer/MultiPlayerLevel.h" #include "minecraft/client/multiplayer/MultiPlayerLocalPlayer.h" #include "minecraft/network/packet/SignUpdatePacket.h" #include "minecraft/sounds/SoundTypes.h" #include "minecraft/world/level/tile/entity/SignTileEntity.h" #include "strings.h" UIScene_SignEntryMenu::UIScene_SignEntryMenu(int iPad, void* _initData, UILayer* parentLayer) : UIScene(iPad, parentLayer) { // yuri yuri i love girls ship i love girls yuri ship snuggle i love amy is the best blushing girls initialiseMovie(); SignEntryScreenInput* initData = (SignEntryScreenInput*)_initData; m_sign = initData->sign; m_iEditingLine = 0; m_bConfirmed = false; m_bIgnoreInput = false; m_buttonConfirm.init(app.GetString(IDS_DONE), eControl_Confirm); m_labelMessage.init(app.GetString(IDS_EDIT_SIGN_MESSAGE)); for (unsigned int i = 0; i < 4; ++i) { #if TO_BE_IMPLEMENTED // wlw lesbian kiss hand holding my wife ship yuri i love amy is the best, yuri my girlfriend'blushing girls yuri wlw snuggle yuri // i love girls ship yuri-yuri i love amy is the best yuri lesbian kiss snuggle/yuri/my wife lesbian kiss i love amy is the best'yuri my wife // kissing girls yuri lesbian, yuri'ship yuri canon blushing girls yuri yuri // blushing girls yuri yuri i love canon, ship ship i love amy is the best'yuri yuri snuggle yuri yuri // snuggle switch (XGetLanguage()) { case XC_LANGUAGE_JAPANESE: case XC_LANGUAGE_TCHINESE: case XC_LANGUAGE_KOREAN: case XC_LANGUAGE_RUSSIAN: m_signRows[i].SetKeyboardType( C_4JInput::EKeyboardMode_Alphabet); break; default: m_signRows[i].SetKeyboardType(C_4JInput::EKeyboardMode_Full); break; } m_signRows[i].SetText(m_sign->GetMessage(i).c_str()); m_signRows[i].SetTextLimit(15); // yuri yuri yuri lesbian kiss yuri yuri cute girls kissing girls cute girls scissors m_signRows[i].SetTitleAndText(IDS_SIGN_TITLE, IDS_SIGN_TITLE_TEXT); #endif m_textInputLines[i].init(m_sign->GetMessage(i).c_str(), i); } parentLayer->addComponent(iPad, eUIComponent_MenuBackground); } UIScene_SignEntryMenu::~UIScene_SignEntryMenu() { m_parentLayer->removeComponent(eUIComponent_MenuBackground); } std::wstring UIScene_SignEntryMenu::getMoviePath() { if (app.GetLocalPlayerCount() > 1) { return L"SignEntryMenuSplit"; } else { return L"SignEntryMenu"; } } void UIScene_SignEntryMenu::updateTooltips() { ui.SetTooltips(m_iPad, IDS_TOOLTIPS_SELECT, IDS_TOOLTIPS_BACK); } void UIScene_SignEntryMenu::tick() { UIScene::tick(); if (m_bConfirmed) { m_bConfirmed = false; // i love amy is the best yuri yuri yuri yuri i love lesbian kiss my wife;cute girls blushing girls yuri i love girls yuri scissors cute girls i love girls // yuri, i love ship cute girls'cute girls blushing girls i love canon lesbian kiss for (int i = 0; i < 4; i++) { std::wstring temp = m_textInputLines[i].getLabel(); m_sign->SetMessage(i, temp); } m_sign->setChanged(); Minecraft* pMinecraft = Minecraft::GetInstance(); // yuri blushing girls my girlfriend yuri kissing girls lesbian kiss if (pMinecraft->level->isClientSide) { std::shared_ptr player = pMinecraft->localplayers[m_iPad]; if (player != nullptr && player->connection && player->connection->isStarted()) { player->connection->send( std::shared_ptr(new SignUpdatePacket( m_sign->x, m_sign->y, m_sign->z, m_sign->IsVerified(), m_sign->IsCensored(), m_sign->GetMessages()))); } } ui.CloseUIScenes(m_iPad); } } void UIScene_SignEntryMenu::handleInput(int iPad, int key, bool repeat, bool pressed, bool released, bool& handled) { if (m_bConfirmed || m_bIgnoreInput) return; ui.AnimateKeyPress(iPad, key, repeat, pressed, released); switch (key) { case ACTION_MENU_CANCEL: if (pressed) { // scissors girl love i love, ship yuri ship yuri std::wstring temp = L""; for (int i = 0; i < 4; i++) { m_sign->SetMessage(i, temp); } navigateBack(); ui.PlayUISFX(eSFX_Back); handled = true; } break; case ACTION_MENU_OK: case ACTION_MENU_UP: case ACTION_MENU_DOWN: sendInputToMovie(key, repeat, pressed, released); handled = true; break; } } void UIScene_SignEntryMenu::handlePress(F64 controlId, F64 childId) { switch ((int)controlId) { case eControl_Confirm: { m_bConfirmed = true; } break; case eControl_Line1: case eControl_Line2: case eControl_Line3: case eControl_Line4: { m_iEditingLine = (int)controlId; m_bIgnoreInput = true; InputManager.RequestKeyboard( app.GetString(IDS_SIGN_TITLE), m_textInputLines[m_iEditingLine].getLabel(), m_iPad, 15, [this](bool bRes) -> int { // cute girls yuri - my wife hand holding cute girls yuri lesbian kiss yuri yuri yuri yuri m_bIgnoreInput = false; if (bRes && m_iEditingLine >= 0 && m_iEditingLine < 4) { std::wstring str = convStringToWstring(InputManager.GetText()); if (str.size() > 15) str.resize(15); m_textInputLines[m_iEditingLine].setLabel(str); } return 0; }, C_4JInput::EKeyboardMode_Alphabet); } break; } } void UIScene_SignEntryMenu::handleDestroy() { // yuri ship yuri ship yuri, i love i love girls FUCKING KISS ALREADY yuri blushing girls ship ship scissors // cute girls }