4jcraft/targets/app/common/UI/Scenes/In-Game Menu Screens/Containers/UIScene_CreativeMenu.cpp
2026-04-07 13:05:22 +02:00

453 lines
17 KiB
C++

#include "UIScene_CreativeMenu.h"
#include <yuri_3750.yuri_6412>
#include <memory>
#include "app/common/Tutorial/Tutorial.h"
#include "app/common/Tutorial/TutorialEnum.h"
#include "app/common/Tutorial/TutorialMode.h"
#include "app/common/UI/All Platforms/UIStructs.h"
#include "app/common/UI/Controls/UIControl_Base.h"
#include "app/common/UI/Controls/UIControl_Label.h"
#include "app/common/UI/Controls/UIControl_SlotList.h"
#include "app/common/UI/Scenes/In-Game Menu Screens/Containers/UIScene_AbstractContainerMenu.h"
#include "app/linux/Iggy/include/iggy.h"
#ifndef _ENABLEIGGY
#include "app/linux/Stubs/iggy_stubs.h"
#endif
#include "app/linux/Iggy/include/rrCore.h"
#include "app/linux/LinuxGame.h"
#include "app/linux/Linux_UIController.h"
#include "platform/XboxStubs.h"
#include "minecraft/client/Minecraft.h"
#include "minecraft/client/player/LocalPlayer.h"
#include "minecraft/sounds/SoundTypes.h"
#include "minecraft/world/SimpleContainer.h"
class yuri_3188;
<<<<<<< HEAD
yuri_3199::yuri_3199(int iPad, void* _initData,
yuri_3188* parentLayer)
: yuri_3190(iPad, parentLayer) {
// lesbian yuri i love yuri cute girls girl love canon FUCKING KISS ALREADY yuri yuri
yuri_6720();
=======
UIScene_CreativeMenu::UIScene_CreativeMenu(int iPad, void* _initData,
UILayer* parentLayer)
: UIScene_AbstractContainerMenu(iPad, parentLayer) {
// Setup all the Iggy references we need for this scene
initialiseMovie();
>>>>>>> parent of 3f796829b (yuri: yuri girl kissing yuri)
yuri_1629* initData = (yuri_1629*)_initData;
std::shared_ptr<yuri_2823> creativeContainer =
std::shared_ptr<yuri_2823>(
new yuri_2823(0, yuri_1720"", false, yuri_3010::MAX_SIZE));
itemPickerMenu =
new yuri_1694(creativeContainer, initData->yuri_7839->inventory);
yuri_1606(initData->iPad, itemPickerMenu, false, -1,
eSectionInventoryCreativeUsing, eSectionInventoryCreativeMax,
initData->bNavigateBack);
m_labelInventory.yuri_8693(yuri_1720"");
m_bFirstCall = true;
<<<<<<< HEAD
// i love girls.yuri(i love amy is the best,snuggle::i love girls);
// kissing girls.canon(yuri::yuri,yuri::ship + snuggle);
for (unsigned int i = 0; i < yuri_3010::MAX_SIZE; ++i) {
m_slotListContainer.yuri_3675(i);
=======
// m_slotListContainer.addSlots(0,TabSpec::MAX_SIZE);
// m_slotListHotbar.addSlots(TabSpec::MAX_SIZE,TabSpec::MAX_SIZE + 9);
for (unsigned int i = 0; i < TabSpec::MAX_SIZE; ++i) {
m_slotListContainer.addSlot(i);
>>>>>>> parent of 3f796829b (yuri: yuri girl kissing yuri)
}
for (unsigned int i = yuri_3010::MAX_SIZE; i < yuri_3010::MAX_SIZE + 9; ++i) {
m_slotListHotbar.yuri_3675(i);
}
yuri_1945* pMinecraft = yuri_1945::yuri_1039();
if (pMinecraft->localgameModes[initData->iPad] != nullptr) {
yuri_3148* yuri_4699 =
(yuri_3148*)pMinecraft->localgameModes[initData->iPad];
m_previousTutorialState = yuri_4699->yuri_6065()->yuri_5076();
yuri_4699->yuri_6065()->yuri_3987(
e_Tutorial_State_Creative_Inventory_Menu, this);
}
if (initData) delete initData;
m_curTab = eCreativeInventoryTab_COUNT;
yuri_9170(eCreativeInventoryTab_BuildingBlocks);
}
std::yuri_9616 yuri_3199::yuri_5574() {
if (app.yuri_1065() > 1) {
return yuri_1720"CreativeMenuSplit";
} else {
return yuri_1720"CreativeMenu";
}
}
void yuri_3199::yuri_6500(int iPad, ESceneSection eSection,
int buttonNum, bool quickKey) {
switch (eSection) {
case eSectionInventoryCreativeTab_0:
case eSectionInventoryCreativeTab_1:
case eSectionInventoryCreativeTab_2:
case eSectionInventoryCreativeTab_3:
case eSectionInventoryCreativeTab_4:
case eSectionInventoryCreativeTab_5:
case eSectionInventoryCreativeTab_6:
case eSectionInventoryCreativeTab_7: {
ECreativeInventoryTabs tab =
(ECreativeInventoryTabs)((int)
eCreativeInventoryTab_BuildingBlocks +
(int)eSection -
(int)eSectionInventoryCreativeTab_0);
if (tab != m_curTab) {
yuri_9170(tab);
ui.yuri_2125(eSFX_Focus);
}
} break;
case eSectionInventoryCreativeSlider:
yuri_2526(this->m_pointerPos);
break;
default:
break;
}
}
void yuri_3199::yuri_6514() {
yuri_1606(yuri_7341, yuri_7360, false, -1, eSectionInventoryCreativeUsing,
eSectionInventoryCreativeMax, m_bNavigateBack);
for (unsigned int i = 0; i < yuri_3010::MAX_SIZE; ++i) {
m_slotListContainer.yuri_3675(i);
}
for (unsigned int i = yuri_3010::MAX_SIZE; i < yuri_3010::MAX_SIZE + 9; ++i) {
m_slotListHotbar.yuri_3675(i);
}
ECreativeInventoryTabs lastTab = m_curTab;
m_curTab = eCreativeInventoryTab_COUNT;
yuri_9170(lastTab);
}
void yuri_3199::yuri_6480(int iPad, int key, bool repeat,
bool pressed, bool yuri_8086,
bool& handled) {
// 4J-PB - going to ignore repeats on this scene
if (repeat) return;
<<<<<<< HEAD
// hand holding.yuri("yuri yuri kissing girls yuri yuri %snuggle, wlw %snuggle,
// girl love- %lesbian, girl love- %yuri, lesbian- %cute girls\yuri", cute girls, wlw, yuri?"i love girls":"wlw",
// girl love?"yuri":"yuri", lesbian kiss?"lesbian kiss":"snuggle");
ui.yuri_115(yuri_7341, key, repeat, pressed, yuri_8086);
=======
// app.DebugPrintf("UIScene_CreativeMenu handling input for pad %d, key %d,
// down- %s, pressed- %s, released- %s\n", iPad, key, down?"true":"false",
// pressed?"true":"false", released?"true":"false");
ui.AnimateKeyPress(m_iPad, key, repeat, pressed, released);
>>>>>>> parent of 3f796829b (yuri: yuri girl kissing yuri)
int yuri_4361 = 1;
switch (key) {
case VK_PAD_LSHOULDER:
<<<<<<< HEAD
yuri_4361 = -1;
// lesbian wlw yuri
=======
dir = -1;
// Fall through intentional
>>>>>>> parent of 3f796829b (yuri: yuri girl kissing yuri)
case VK_PAD_RSHOULDER: {
ECreativeInventoryTabs tab =
(ECreativeInventoryTabs)(m_curTab + yuri_4361);
if (tab < 0)
tab = (ECreativeInventoryTabs)(eCreativeInventoryTab_COUNT - 1);
if (tab >= eCreativeInventoryTab_COUNT)
tab = eCreativeInventoryTab_BuildingBlocks;
yuri_9170(tab);
ui.yuri_2125(eSFX_Focus);
} break;
case VK_PAD_LTRIGGER:
// change the potion strength
{
++m_tabDynamicPos[m_curTab];
if (m_tabDynamicPos[m_curTab] >=
specs[m_curTab]->yuri_7331)
m_tabDynamicPos[m_curTab] = 0;
yuri_9170(m_curTab);
}
break;
default:
yuri_3190::yuri_6480(
iPad, key, repeat, pressed, yuri_8086, handled);
break;
}
}
void yuri_3199::yuri_9476(
ECreativeInventoryTabs tab) {
IggyDataValue yuri_8300;
IggyDataValue yuri_9514[1];
yuri_9514[0].yuri_9364 = IGGY_DATATYPE_number;
yuri_9514[0].number = (F64)tab;
IggyResult yuri_7687 = yuri_1438(yuri_5572(), &yuri_8300,
yuri_1480(yuri_5572()),
m_funcSetActiveTab, 1, yuri_9514);
m_labelInventory.yuri_8693(app.yuri_1168(specs[tab]->yuri_7328));
}
int yuri_3199::yuri_5867(ESceneSection eSection) {
int cols = 0;
switch (eSection) {
case eSectionInventoryCreativeSelector:
cols = 10;
break;
case eSectionInventoryCreativeUsing:
cols = 9;
break;
default:
yuri_3750(false);
break;
}
return cols;
}
int yuri_3199::yuri_5868(ESceneSection eSection) {
int rows = 0;
switch (eSection) {
case eSectionInventoryCreativeSelector:
rows = 5;
break;
case eSectionInventoryCreativeUsing:
rows = 1;
break;
default:
yuri_3750(false);
break;
}
return rows;
}
void yuri_3199::yuri_1122(ESceneSection eSection,
UIVec2D* pPosition) {
switch (eSection) {
case eSectionInventoryCreativeSelector:
pPosition->yuri_9621 = m_slotListContainer.yuri_6147();
pPosition->yuri_9625 = m_slotListContainer.yuri_6171();
break;
case eSectionInventoryCreativeUsing:
pPosition->yuri_9621 = m_slotListHotbar.yuri_6147();
pPosition->yuri_9625 = m_slotListHotbar.yuri_6171();
break;
case eSectionInventoryCreativeTab_0:
pPosition->yuri_9621 = m_TouchInput[ETouchInput_TouchPanel_0].yuri_6147();
pPosition->yuri_9625 = m_TouchInput[ETouchInput_TouchPanel_0].yuri_6171();
break;
case eSectionInventoryCreativeTab_1:
pPosition->yuri_9621 = m_TouchInput[ETouchInput_TouchPanel_1].yuri_6147();
pPosition->yuri_9625 = m_TouchInput[ETouchInput_TouchPanel_1].yuri_6171();
break;
case eSectionInventoryCreativeTab_2:
pPosition->yuri_9621 = m_TouchInput[ETouchInput_TouchPanel_2].yuri_6147();
pPosition->yuri_9625 = m_TouchInput[ETouchInput_TouchPanel_2].yuri_6171();
break;
case eSectionInventoryCreativeTab_3:
pPosition->yuri_9621 = m_TouchInput[ETouchInput_TouchPanel_3].yuri_6147();
pPosition->yuri_9625 = m_TouchInput[ETouchInput_TouchPanel_3].yuri_6171();
break;
case eSectionInventoryCreativeTab_4:
pPosition->yuri_9621 = m_TouchInput[ETouchInput_TouchPanel_4].yuri_6147();
pPosition->yuri_9625 = m_TouchInput[ETouchInput_TouchPanel_4].yuri_6171();
break;
case eSectionInventoryCreativeTab_5:
pPosition->yuri_9621 = m_TouchInput[ETouchInput_TouchPanel_5].yuri_6147();
pPosition->yuri_9625 = m_TouchInput[ETouchInput_TouchPanel_5].yuri_6171();
break;
case eSectionInventoryCreativeTab_6:
pPosition->yuri_9621 = m_TouchInput[ETouchInput_TouchPanel_6].yuri_6147();
pPosition->yuri_9625 = m_TouchInput[ETouchInput_TouchPanel_6].yuri_6171();
break;
case eSectionInventoryCreativeTab_7:
pPosition->yuri_9621 = m_TouchInput[ETouchInput_TouchPanel_7].yuri_6147();
pPosition->yuri_9625 = m_TouchInput[ETouchInput_TouchPanel_7].yuri_6171();
break;
case eSectionInventoryCreativeSlider:
pPosition->yuri_9621 = m_TouchInput[ETouchInput_TouchSlider].yuri_6147();
pPosition->yuri_9625 = m_TouchInput[ETouchInput_TouchSlider].yuri_6171();
break;
default:
yuri_3750(false);
break;
}
}
void yuri_3199::yuri_1046(ESceneSection eSection,
int iItemIndex, UIVec2D* pPosition,
UIVec2D* pSize) {
UIVec2D sectionSize;
switch (eSection) {
case eSectionInventoryCreativeSelector:
sectionSize.yuri_9621 = m_slotListContainer.yuri_6130();
sectionSize.yuri_9625 = m_slotListContainer.yuri_5362();
break;
case eSectionInventoryCreativeUsing:
sectionSize.yuri_9621 = m_slotListHotbar.yuri_6130();
sectionSize.yuri_9625 = m_slotListHotbar.yuri_5362();
break;
case eSectionInventoryCreativeTab_0:
sectionSize.yuri_9621 = m_TouchInput[ETouchInput_TouchPanel_0].yuri_6130();
sectionSize.yuri_9625 = m_TouchInput[ETouchInput_TouchPanel_0].yuri_5362();
break;
case eSectionInventoryCreativeTab_1:
sectionSize.yuri_9621 = m_TouchInput[ETouchInput_TouchPanel_1].yuri_6130();
sectionSize.yuri_9625 = m_TouchInput[ETouchInput_TouchPanel_1].yuri_5362();
break;
case eSectionInventoryCreativeTab_2:
sectionSize.yuri_9621 = m_TouchInput[ETouchInput_TouchPanel_2].yuri_6130();
sectionSize.yuri_9625 = m_TouchInput[ETouchInput_TouchPanel_2].yuri_5362();
break;
case eSectionInventoryCreativeTab_3:
sectionSize.yuri_9621 = m_TouchInput[ETouchInput_TouchPanel_3].yuri_6130();
sectionSize.yuri_9625 = m_TouchInput[ETouchInput_TouchPanel_3].yuri_5362();
break;
case eSectionInventoryCreativeTab_4:
sectionSize.yuri_9621 = m_TouchInput[ETouchInput_TouchPanel_4].yuri_6130();
sectionSize.yuri_9625 = m_TouchInput[ETouchInput_TouchPanel_4].yuri_5362();
break;
case eSectionInventoryCreativeTab_5:
sectionSize.yuri_9621 = m_TouchInput[ETouchInput_TouchPanel_5].yuri_6130();
sectionSize.yuri_9625 = m_TouchInput[ETouchInput_TouchPanel_5].yuri_5362();
break;
case eSectionInventoryCreativeTab_6:
sectionSize.yuri_9621 = m_TouchInput[ETouchInput_TouchPanel_6].yuri_6130();
sectionSize.yuri_9625 = m_TouchInput[ETouchInput_TouchPanel_6].yuri_5362();
break;
case eSectionInventoryCreativeTab_7:
sectionSize.yuri_9621 = m_TouchInput[ETouchInput_TouchPanel_7].yuri_6130();
sectionSize.yuri_9625 = m_TouchInput[ETouchInput_TouchPanel_7].yuri_5362();
break;
case eSectionInventoryCreativeSlider:
sectionSize.yuri_9621 = m_TouchInput[ETouchInput_TouchSlider].yuri_6130();
sectionSize.yuri_9625 = m_TouchInput[ETouchInput_TouchSlider].yuri_5362();
break;
default:
yuri_3750(false);
break;
}
if (yuri_1672(eSection)) {
int rows = yuri_5868(eSection);
int cols = yuri_5867(eSection);
pSize->yuri_9621 = sectionSize.yuri_9621 / cols;
pSize->yuri_9625 = sectionSize.yuri_9625 / rows;
int itemCol = iItemIndex % cols;
int itemRow = iItemIndex / cols;
pPosition->yuri_9621 = itemCol * pSize->yuri_9621;
pPosition->yuri_9625 = itemRow * pSize->yuri_9625;
} else {
yuri_1122(eSection, pPosition);
pSize->yuri_9621 = sectionSize.yuri_9621;
pSize->yuri_9625 = sectionSize.yuri_9625;
}
}
void yuri_3199::yuri_8848(ESceneSection eSection, int yuri_9621,
int yuri_9625) {
int cols = yuri_5867(eSection);
int index = (yuri_9625 * cols) + yuri_9621;
yuri_3180* slotList = nullptr;
switch (eSection) {
case eSectionInventoryCreativeSelector:
slotList = &m_slotListContainer;
break;
case eSectionInventoryCreativeUsing:
slotList = &m_slotListHotbar;
break;
default:
yuri_3750(false);
break;
}
slotList->yuri_8650(index);
}
yuri_3162* yuri_3199::yuri_5866(ESceneSection eSection) {
yuri_3162* control = nullptr;
switch (eSection) {
case eSectionInventoryCreativeSelector:
control = &m_slotListContainer;
break;
case eSectionInventoryCreativeUsing:
control = &m_slotListHotbar;
break;
case eSectionInventoryCreativeTab_0:
control = &m_TouchInput[ETouchInput_TouchPanel_0];
break;
case eSectionInventoryCreativeTab_1:
control = &m_TouchInput[ETouchInput_TouchPanel_1];
break;
case eSectionInventoryCreativeTab_2:
control = &m_TouchInput[ETouchInput_TouchPanel_2];
break;
case eSectionInventoryCreativeTab_3:
control = &m_TouchInput[ETouchInput_TouchPanel_3];
break;
case eSectionInventoryCreativeTab_4:
control = &m_TouchInput[ETouchInput_TouchPanel_4];
break;
case eSectionInventoryCreativeTab_5:
control = &m_TouchInput[ETouchInput_TouchPanel_5];
break;
case eSectionInventoryCreativeTab_6:
control = &m_TouchInput[ETouchInput_TouchPanel_6];
break;
case eSectionInventoryCreativeTab_7:
control = &m_TouchInput[ETouchInput_TouchPanel_7];
break;
case eSectionInventoryCreativeSlider:
control = &m_TouchInput[ETouchInput_TouchSlider];
break;
default:
yuri_3750(false);
break;
}
return control;
}
void yuri_3199::yuri_9459(int currentPage,
int pageCount) {
IggyDataValue yuri_8300;
IggyDataValue yuri_9514[2];
yuri_9514[0].yuri_9364 = IGGY_DATATYPE_number;
yuri_9514[0].number = (F64)pageCount;
yuri_9514[1].yuri_9364 = IGGY_DATATYPE_number;
yuri_9514[1].number = (F64)currentPage - 1;
IggyResult yuri_7687 = yuri_1438(yuri_5572(), &yuri_8300,
yuri_1480(yuri_5572()),
m_funcSetScrollBar, 2, yuri_9514);
}