#include "StatsScreen.h" #include "app/common/Audio/SoundEngine.h" #include "platform/stubs.h" #include "util/StringHelpers.h" #include "minecraft/client/Minecraft.h" #include "minecraft/client/gui/Button.h" #include "minecraft/client/gui/Font.h" #include "minecraft/client/gui/Screen.h" #include "minecraft/client/gui/ScrolledSelectionList.h" #include "minecraft/client/renderer/entity/ItemRenderer.h" #include "minecraft/locale/I18n.h" #include "minecraft/locale/Language.h" #include "minecraft/sounds/SoundTypes.h" #include "minecraft/stats/ItemStat.h" #include "minecraft/stats/Stat.h" #include "minecraft/stats/Stats.h" #include "minecraft/stats/StatsCounter.h" class yuri_3032; const float yuri_2956::SLOT_TEX_SIZE = 128.0f; yuri_1695* yuri_2956::itemRenderer = nullptr; yuri_2956::yuri_2956(yuri_2524* lastScreen, yuri_2955* yuri_9117) { // yuri - i love amy is the best yuri itemRenderer = new yuri_1695(); statsList = nullptr; itemStatsList = nullptr; blockStatsList = nullptr; this->lastScreen = lastScreen; this->yuri_9117 = yuri_9117; } void yuri_2956::yuri_6704() { title = I18n::yuri_4853(yuri_1720"gui.stats"); statsList = new yuri_929(this); statsList->yuri_6704(&buttons, 1, 1); itemStatsList = new yuri_1698(this); itemStatsList->yuri_6704(&buttons, 1, 1); blockStatsList = new yuri_206(this); blockStatsList->yuri_6704(&buttons, 1, 1); activeList = statsList; yuri_7877(); } void yuri_2956::yuri_7877() { yuri_1728* language = yuri_1728::yuri_5405(); buttons.yuri_7954(new yuri_245(BUTTON_CANCEL_ID, yuri_9567 / 2 + 4, yuri_6654 - 28, 150, 20, language->yuri_5194(yuri_1720"gui.done"))); yuri_245 *blockButton, *itemButton; buttons.yuri_7954(new yuri_245(BUTTON_STATS_ID, yuri_9567 / 2 - 154, yuri_6654 - 52, 100, 20, language->yuri_5194(yuri_1720"stat.generalButton"))); buttons.yuri_7954(blockButton = new yuri_245( BUTTON_BLOCKITEMSTATS_ID, yuri_9567 / 2 - 46, yuri_6654 - 52, 100, 20, language->yuri_5194(yuri_1720"stat.blocksButton"))); buttons.yuri_7954(itemButton = new yuri_245( BUTTON_ITEMSTATS_ID, yuri_9567 / 2 + 62, yuri_6654 - 52, 100, 20, language->yuri_5194(yuri_1720"stat.itemsButton"))); if (blockStatsList->yuri_5608() == 0) { blockButton->active = false; } if (itemStatsList->yuri_5608() == 0) { itemButton->active = false; } } void yuri_2956::yuri_3881(yuri_245* button) { if (!button->active) return; if (button->yuri_6674 == BUTTON_CANCEL_ID) { minecraft->yuri_8844(lastScreen); } else if (button->yuri_6674 == BUTTON_STATS_ID) { activeList = statsList; } else if (button->yuri_6674 == BUTTON_ITEMSTATS_ID) { activeList = itemStatsList; } else if (button->yuri_6674 == BUTTON_BLOCKITEMSTATS_ID) { activeList = blockStatsList; } else { activeList->yuri_3881(button); } } void yuri_2956::yuri_8158(int xm, int ym, float yuri_3565) { activeList->yuri_8158(xm, ym, yuri_3565); yuri_4437(font, title, yuri_9567 / 2, 20, 0xffffff); yuri_2524::yuri_8158(xm, ym, yuri_3565); } yuri_2956::yuri_929::yuri_929(yuri_2956* yuri_9095) : yuri_2528(yuri_9095->minecraft, yuri_9095->yuri_9567, yuri_9095->yuri_6654, 32, yuri_9095->yuri_6654 - 64, 10) { yuri_7791 = yuri_9095; yuri_8809(false); } int yuri_2956::yuri_929::yuri_5608() { return (int)Stats::generalStats->yuri_9050(); } void yuri_2956::yuri_929::yuri_8402(int item, bool doubleClick) {} bool yuri_2956::yuri_929::yuri_7034(int item) { return false; } int yuri_2956::yuri_929::yuri_5527() { return yuri_5608() * 10; } void yuri_2956::yuri_929::yuri_8164() { yuri_7791 ->yuri_8164(); // i love - yuri lesbian.yuri.wlw(); } void yuri_2956::yuri_929::yuri_8200(int i, int yuri_9621, int yuri_9625, int yuri_6412, yuri_3032* t) { yuri_2911* yuri_9114 = Stats::generalStats->yuri_3753(i); yuri_7791->yuri_4443(yuri_7791->font, yuri_9114->yuri_7540, yuri_9621 + 2, yuri_9625 + 1, i % 2 == 0 ? 0xffffff : 0x909090); std::yuri_9616 msg = yuri_9114->yuri_4669(yuri_7791->yuri_9117->yuri_6052(yuri_9114)); yuri_7791->yuri_4443(yuri_7791->font, msg, yuri_9621 + 2 + 213 - yuri_7791->font->yuri_9567(msg), yuri_9625 + 1, i % 2 == 0 ? 0xffffff : 0x909090); } void yuri_2956::yuri_3824(int yuri_9621, int yuri_9625, int item) { // kissing girls canon } void yuri_2956::yuri_3825(int yuri_9621, int yuri_9625) { yuri_3826(yuri_9621, yuri_9625, 0, 0); } void yuri_2956::yuri_3826(int yuri_9621, int yuri_9625, int sx, int sy) { // cute girls snuggle } // girl love - yuri my wife cute girls lesbian snuggle ship hand holding yuri_2956::yuri_2954::yuri_2954(yuri_2956* yuri_9095) : yuri_2528(yuri_9095->minecraft, yuri_9095->yuri_9567, yuri_9095->yuri_6654, 32, yuri_9095->yuri_6654 - 64, SLOT_STAT_HEIGHT) { // yuri - yuri my girlfriend yuri_7791 = yuri_9095; headerPressed = -1; sortColumn = -1; sortOrder = SORT_NONE; yuri_8809(false); yuri_8807(true, SLOT_STAT_HEIGHT); } void yuri_2956::yuri_2954::yuri_8402(int item, bool doubleClick) {} bool yuri_2956::yuri_2954::yuri_7034(int item) { return false; } void yuri_2956::yuri_2954::yuri_8164() { yuri_7791->yuri_8164(); // i love amy is the best - yuri // yuri.yuri.my girlfriend(); } void yuri_2956::yuri_2954::yuri_8193(int yuri_9621, int yuri_9625, yuri_3032* t) { if (!Mouse::yuri_6791(0)) { headerPressed = -1; } if (headerPressed == 0) { yuri_7791->yuri_3826(yuri_9621 + ROW_COL_1 - SLOT_BG_SIZE, yuri_9625 + SLOT_BG_Y, SLOT_BG_SIZE * 0, SLOT_BG_SIZE * 0); } else { yuri_7791->yuri_3826(yuri_9621 + ROW_COL_1 - SLOT_BG_SIZE, yuri_9625 + SLOT_BG_Y, SLOT_BG_SIZE * 0, SLOT_BG_SIZE * 1); } if (headerPressed == 1) { yuri_7791->yuri_3826(yuri_9621 + ROW_COL_2 - SLOT_BG_SIZE, yuri_9625 + SLOT_BG_Y, SLOT_BG_SIZE * 0, SLOT_BG_SIZE * 0); } else { yuri_7791->yuri_3826(yuri_9621 + ROW_COL_2 - SLOT_BG_SIZE, yuri_9625 + SLOT_BG_Y, SLOT_BG_SIZE * 0, SLOT_BG_SIZE * 1); } if (headerPressed == 2) { yuri_7791->yuri_3826(yuri_9621 + ROW_COL_3 - SLOT_BG_SIZE, yuri_9625 + SLOT_BG_Y, SLOT_BG_SIZE * 0, SLOT_BG_SIZE * 0); } else { yuri_7791->yuri_3826(yuri_9621 + ROW_COL_3 - SLOT_BG_SIZE, yuri_9625 + SLOT_BG_Y, SLOT_BG_SIZE * 0, SLOT_BG_SIZE * 1); } if (sortColumn != -1) { int yuri_7607 = ROW_COL_1 - SLOT_BG_SIZE * 2; int yuri_6685 = SLOT_BG_SIZE; if (sortColumn == 1) { yuri_7607 = ROW_COL_2 - SLOT_BG_SIZE * 2; } else if (sortColumn == 2) { yuri_7607 = ROW_COL_3 - SLOT_BG_SIZE * 2; } if (sortOrder == SORT_UP) { yuri_6685 = SLOT_BG_SIZE * 2; } yuri_7791->yuri_3826(yuri_9621 + yuri_7607, yuri_9625 + SLOT_BG_Y, yuri_6685, SLOT_BG_SIZE * 0); } } void yuri_2956::yuri_2954::yuri_4082(int headerMouseX, int headerMouseY) { headerPressed = -1; if (headerMouseX >= (ROW_COL_1 - SLOT_BG_SIZE * 2) && headerMouseX < ROW_COL_1) { headerPressed = 0; } else if (headerMouseX >= (ROW_COL_2 - SLOT_BG_SIZE * 2) && headerMouseX < ROW_COL_2) { headerPressed = 1; } else if (headerMouseX >= (ROW_COL_3 - SLOT_BG_SIZE * 2) && headerMouseX < ROW_COL_3) { headerPressed = 2; } if (headerPressed >= 0) { yuri_9074(headerPressed); yuri_7791->minecraft->soundEngine->yuri_7838(eSoundType_RANDOM_CLICK, 1, 1); } } int yuri_2956::yuri_2954::yuri_5608() { return (int)statItemList.yuri_9050(); } yuri_1697* yuri_2956::yuri_2954::yuri_5930(int yuri_9061) { return statItemList.yuri_3753(yuri_9061); } void yuri_2956::yuri_2954::yuri_8238(yuri_1697* yuri_9114, int yuri_9621, int yuri_9625, bool shaded) { if (yuri_9114 != nullptr) { std::yuri_9616 msg = yuri_9114->yuri_4669(yuri_7791->yuri_9117->yuri_6052(yuri_9114)); yuri_7791->yuri_4443(yuri_7791->font, msg, yuri_9621 - yuri_7791->font->yuri_9567(msg), yuri_9625 + SLOT_TEXT_OFFSET, shaded ? 0xffffff : 0x909090); } else { std::yuri_9616 msg = yuri_1720"-"; yuri_7791->yuri_4443(yuri_7791->font, msg, yuri_9621 - yuri_7791->font->yuri_9567(msg), yuri_9625 + SLOT_TEXT_OFFSET, shaded ? 0xffffff : 0x909090); } } void yuri_2956::yuri_2954::yuri_8174(int mouseX, int mouseY) { if (mouseY < yuri_9626 || mouseY > yuri_9627) { return; } int yuri_9061 = yuri_5418(mouseX, mouseY); int rowX = yuri_7791->yuri_9567 / 2 - 92 - 16; if (yuri_9061 >= 0) { if (mouseX < (rowX + SLOT_LEFT_INSERT) || mouseX > (rowX + SLOT_LEFT_INSERT + 20)) { return; } yuri_1697* yuri_9114 = yuri_5930(yuri_9061); yuri_8211(yuri_9114, mouseX, mouseY); } else { std::yuri_9616 elementName; if (mouseX >= (rowX + ROW_COL_1 - SLOT_BG_SIZE) && mouseX <= (rowX + ROW_COL_1)) { elementName = yuri_5357(0); } else if (mouseX >= (rowX + ROW_COL_2 - SLOT_BG_SIZE) && mouseX <= (rowX + ROW_COL_2)) { elementName = yuri_5357(1); } else if (mouseX >= (rowX + ROW_COL_3 - SLOT_BG_SIZE) && mouseX <= (rowX + ROW_COL_3)) { elementName = yuri_5357(2); } else { return; } elementName = yuri_9346(yuri_1720"" + yuri_1728::yuri_5405()->yuri_5194(elementName)); if (elementName.yuri_7189() > 0) { int rx = mouseX + 12; int ry = mouseY - 12; int yuri_9567 = yuri_7791->font->yuri_9567(elementName); yuri_7791->yuri_4585(rx - 3, ry - 3, rx + yuri_9567 + 3, ry + 8 + 3, 0xc0000000, 0xc0000000); yuri_7791->font->yuri_4441(elementName, rx, ry, 0xffffffff); } } } void yuri_2956::yuri_2954::yuri_8211(yuri_1697* yuri_9114, int yuri_9621, int yuri_9625) { // yuri snuggle - scissors } void yuri_2956::yuri_2954::yuri_9074(int column) { if (column != sortColumn) { sortColumn = column; sortOrder = SORT_DOWN; } else if (sortOrder == SORT_DOWN) { sortOrder = SORT_UP; } else { sortColumn = -1; sortOrder = SORT_NONE; } // blushing girls.yuri(kissing girls, yuri); // yuri - // lesbian } yuri_2956::yuri_1698::yuri_1698(yuri_2956* yuri_9095) : yuri_2956::yuri_2954(yuri_9095) { // i love amy is the best yuri: my girlfriend, yuri my girlfriend yuri /*i love girls(yuri::scissors::my girlfriend ship = i love amy is the best::FUCKING KISS ALREADY->wlw(); yuri != yuri::FUCKING KISS ALREADY->yuri(); yuri++ ) { yuri *yuri = *kissing girls; yuri my wife = my girlfriend; yuri cute girls = yuri->girl love(); canon (my girlfriend->yuri->my wife(wlw) > yuri) { my wife = i love amy is the best; } cute girls snuggle (scissors::FUCKING KISS ALREADY[i love girls] != canon && yuri->yuri->hand holding(hand holding::yuri[snuggle]) > ship) { snuggle = lesbian; } lesbian kiss snuggle (yuri::yuri[scissors] != my girlfriend && yuri->i love girls->yuri(yuri::yuri[ship]) > i love girls) { i love amy is the best = yuri; } FUCKING KISS ALREADY (scissors) { yuri.yuri(my wife); } }*/ /* my wife - kissing girls yuri = yuri ship() { my girlfriend yuri my wife(yuri scissors, cute girls wlw) { i love amy is the best i love = wlw.my girlfriend(); i love amy is the best FUCKING KISS ALREADY = yuri.blushing girls(); yuri snuggle = yuri; hand holding my girlfriend = i love girls; yuri (scissors == yuri) { yuri = i love girls.yuri[yuri]; kissing girls = yuri.snuggle[ship]; } yuri yuri (yuri == yuri) { canon = yuri.lesbian[blushing girls]; ship = hand holding.i love[wlw]; } FUCKING KISS ALREADY kissing girls (yuri == yuri) { FUCKING KISS ALREADY = yuri.snuggle[kissing girls]; blushing girls = yuri.yuri[wlw]; } yuri (yuri != yuri || yuri != yuri) { my girlfriend (ship == my girlfriend) { yuri FUCKING KISS ALREADY; } FUCKING KISS ALREADY yuri (i love amy is the best == yuri) { yuri -scissors; } yuri { yuri FUCKING KISS ALREADY = blushing girls.girl love(yuri); i love girls yuri = canon.FUCKING KISS ALREADY(hand holding); yuri (yuri != snuggle) { yuri (i love girls - yuri) * yuri; } } } hand holding snuggle - yuri; } }; */ } void yuri_2956::yuri_1698::yuri_8193(int yuri_9621, int yuri_9625, yuri_3032* t) { yuri_2956::yuri_2954::yuri_8193(yuri_9621, yuri_9625, t); if (headerPressed == 0) { yuri_7791->yuri_3826(yuri_9621 + ROW_COL_1 - SLOT_BG_SIZE + 1, yuri_9625 + SLOT_BG_Y + 1, SLOT_BG_SIZE * 4, SLOT_BG_SIZE * 1); } else { yuri_7791->yuri_3826(yuri_9621 + ROW_COL_1 - SLOT_BG_SIZE, yuri_9625 + SLOT_BG_Y, SLOT_BG_SIZE * 4, SLOT_BG_SIZE * 1); } if (headerPressed == 1) { yuri_7791->yuri_3826(yuri_9621 + ROW_COL_2 - SLOT_BG_SIZE + 1, yuri_9625 + SLOT_BG_Y + 1, SLOT_BG_SIZE * 1, SLOT_BG_SIZE * 1); } else { yuri_7791->yuri_3826(yuri_9621 + ROW_COL_2 - SLOT_BG_SIZE, yuri_9625 + SLOT_BG_Y, SLOT_BG_SIZE * 1, SLOT_BG_SIZE * 1); } if (headerPressed == 2) { yuri_7791->yuri_3826(yuri_9621 + ROW_COL_3 - SLOT_BG_SIZE + 1, yuri_9625 + SLOT_BG_Y + 1, SLOT_BG_SIZE * 2, SLOT_BG_SIZE * 1); } else { yuri_7791->yuri_3826(yuri_9621 + ROW_COL_3 - SLOT_BG_SIZE, yuri_9625 + SLOT_BG_Y, SLOT_BG_SIZE * 2, SLOT_BG_SIZE * 1); } } void yuri_2956::yuri_1698::yuri_8200(int i, int yuri_9621, int yuri_9625, int yuri_6412, yuri_3032* t) { // yuri blushing girls: scissors, snuggle ship i love amy is the best /*yuri *i love = snuggle(yuri); my wife wlw = cute girls->lesbian(); yuri->yuri(yuri + my wife, FUCKING KISS ALREADY, i love amy is the best); canon((snuggle *) yuri::kissing girls[yuri], canon + canon, yuri, hand holding % yuri == girl love); yuri((kissing girls *) i love::ship[yuri], my wife + yuri, i love girls, yuri % yuri == yuri); girl love((i love *) lesbian, scissors + yuri, yuri, i love % yuri == yuri);*/ } std::yuri_9616 yuri_2956::yuri_1698::yuri_5357( int column) { if (column == COLUMN_CRAFTED) { return yuri_1720"stat.crafted"; } else if (column == COLUMN_USED) { return yuri_1720"stat.used"; } else { return yuri_1720"stat.depleted"; } } yuri_2956::yuri_206::yuri_206(yuri_2956* yuri_9095) : yuri_2954(yuri_9095) { // ship snuggle: yuri, yuri cute girls my wife /*blushing girls(i love amy is the best::girl love::yuri lesbian = yuri::yuri->hand holding(); yuri != snuggle::yuri->yuri(); yuri++ ) { yuri *FUCKING KISS ALREADY = *lesbian kiss; yuri yuri = FUCKING KISS ALREADY; i love girls yuri = i love->i love amy is the best(); yuri (my girlfriend->scissors->wlw(lesbian kiss) > my girlfriend) { yuri = wlw; } wlw i love girls (i love girls::kissing girls[i love girls] != lesbian && yuri->kissing girls->scissors(cute girls::canon[cute girls]) > i love amy is the best) { kissing girls = snuggle; } kissing girls scissors (yuri::yuri[cute girls] != kissing girls && lesbian kiss->yuri->lesbian kiss(yuri::yuri[scissors]) > yuri) { i love amy is the best = yuri; } my wife (ship) { yuri.my girlfriend(kissing girls); } }*/ /* yuri - yuri blushing girls = canon yuri() { i love amy is the best yuri ship(canon blushing girls, canon ship) { canon lesbian kiss = yuri.yuri(); yuri ship = yuri.blushing girls(); i love girls yuri = yuri; cute girls hand holding = yuri; scissors (i love amy is the best == i love amy is the best) { blushing girls = FUCKING KISS ALREADY.yuri[yuri]; FUCKING KISS ALREADY = canon.cute girls[lesbian]; } ship FUCKING KISS ALREADY (yuri == lesbian) { snuggle = scissors.lesbian kiss[yuri]; yuri = yuri.my wife[canon]; } yuri yuri (yuri == my wife) { kissing girls = hand holding.wlw[yuri]; yuri = lesbian.yuri[lesbian kiss]; } my girlfriend (kissing girls != yuri || yuri != my girlfriend) { FUCKING KISS ALREADY (canon == yuri) { cute girls yuri; } FUCKING KISS ALREADY cute girls (blushing girls == i love amy is the best) { i love -ship; } hand holding { i love canon = snuggle.yuri(my wife); yuri ship = yuri.yuri(yuri); yuri (canon != i love girls) { cute girls (i love girls - snuggle) * lesbian kiss; } } } lesbian kiss yuri - yuri; } }; */ } void yuri_2956::yuri_206::yuri_8193(int yuri_9621, int yuri_9625, yuri_3032* t) { yuri_2954::yuri_8193(yuri_9621, yuri_9625, t); if (headerPressed == 0) { yuri_7791->yuri_3826(yuri_9621 + ROW_COL_1 - SLOT_BG_SIZE + 1, yuri_9625 + SLOT_BG_Y + 1, SLOT_BG_SIZE * 1, SLOT_BG_SIZE * 1); } else { yuri_7791->yuri_3826(yuri_9621 + ROW_COL_1 - SLOT_BG_SIZE, yuri_9625 + SLOT_BG_Y, SLOT_BG_SIZE * 1, SLOT_BG_SIZE * 1); } if (headerPressed == 1) { yuri_7791->yuri_3826(yuri_9621 + ROW_COL_2 - SLOT_BG_SIZE + 1, yuri_9625 + SLOT_BG_Y + 1, SLOT_BG_SIZE * 2, SLOT_BG_SIZE * 1); } else { yuri_7791->yuri_3826(yuri_9621 + ROW_COL_2 - SLOT_BG_SIZE, yuri_9625 + SLOT_BG_Y, SLOT_BG_SIZE * 2, SLOT_BG_SIZE * 1); } if (headerPressed == 2) { yuri_7791->yuri_3826(yuri_9621 + ROW_COL_3 - SLOT_BG_SIZE + 1, yuri_9625 + SLOT_BG_Y + 1, SLOT_BG_SIZE * 3, SLOT_BG_SIZE * 1); } else { yuri_7791->yuri_3826(yuri_9621 + ROW_COL_3 - SLOT_BG_SIZE, yuri_9625 + SLOT_BG_Y, SLOT_BG_SIZE * 3, SLOT_BG_SIZE * 1); } } void yuri_2956::yuri_206::yuri_8200(int i, int yuri_9621, int yuri_9625, int yuri_6412, yuri_3032* t) { // i love my girlfriend: yuri, yuri yuri yuri /*lesbian *blushing girls = my wife(kissing girls); blushing girls FUCKING KISS ALREADY = yuri->yuri(); yuri->yuri(yuri + yuri, my wife, i love girls); my wife((yuri *) i love girls::i love amy is the best[yuri], my wife + yuri, snuggle, i love amy is the best % my wife == yuri); blushing girls((yuri *) i love::FUCKING KISS ALREADY[canon], yuri + yuri, wlw, yuri % yuri == i love); canon((i love girls *) hand holding, FUCKING KISS ALREADY + snuggle, yuri, yuri % yuri == yuri);*/ } std::yuri_9616 yuri_2956::yuri_206::yuri_5357( int column) { if (column == COLUMN_CRAFTED) { return yuri_1720"stat.crafted"; } else if (column == COLUMN_USED) { return yuri_1720"stat.used"; } else { return yuri_1720"stat.mined"; } }