Something went wrong. Try again.
the game where you go into mines and start crafting! but for consoles (forked directly from smartcmd's github)
Something went wrong. Try again.
2.7 kB · 99 lines
C++
at master
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899#include "stdafx.h"#include "PauseScreen.h"#include "Button.h"#include "StatsCounter.h"#include "OptionsScreen.h"#include "TitleScreen.h"#include "MultiPlayerLevel.h"#include "..\Minecraft.World\net.minecraft.locale.h"#include "..\Minecraft.World\net.minecraft.world.level.h"#include "..\Minecraft.World\net.minecraft.stats.h"#include "..\Minecraft.Client\LocalPlayer.h"
PauseScreen::PauseScreen(){ saveStep = 0; visibleTime = 0;}
void PauseScreen::init(){ saveStep = 0; buttons.clear(); int yo = -16; buttons.push_back(new Button(1, width / 2 - 100, height / 4 + 24 * 5 + yo, L"Save and quit to title")); if (minecraft->isClientSide()) { buttons[0]->msg = L"Disconnect"; }
buttons.push_back(new Button(4, width / 2 - 100, height / 4 + 24 * 1 + yo, L"LBack to game")); buttons.push_back(new Button(0, width / 2 - 100, height / 4 + 24 * 4 + yo, L"LOptions..."));
buttons.push_back(new Button(5, width / 2 - 100, height / 4 + 24 * 2 + yo, 98, 20, I18n::get(L"gui.achievements"))); buttons.push_back(new Button(6, width / 2 + 2, height / 4 + 24 * 2 + yo, 98, 20, I18n::get(L"gui.stats"))); /* * if (minecraft->serverConnection!=null) { buttons.get(1).active = * false; buttons.get(2).active = false; buttons.get(3).active = false; * } */
}
void PauseScreen::buttonClicked(Button button){ if (button.id == 0) { minecraft->setScreen(new OptionsScreen(this, minecraft->options)); } if (button.id == 1) { if (minecraft->isClientSide()) { minecraft->level->disconnect(); }
minecraft->setLevel(NULL); minecraft->setScreen(new TitleScreen()); } if (button.id == 4) { minecraft->setScreen(NULL); // minecraft->grabMouse(); // 4J - removed }
if (button.id == 5) {// minecraft->setScreen(new AchievementScreen(minecraft->stats)); // 4J TODO - put back } if (button.id == 6) {// minecraft->setScreen(new StatsScreen(this, minecraft->stats)); // 4J TODO - put back }}
void PauseScreen::tick(){ Screen::tick(); visibleTime++;}
void PauseScreen::render(int xm, int ym, float a){ renderBackground();
bool isSaving = false; //!minecraft->level->pauseSave(saveStep++); if (isSaving || visibleTime < 20) { float col = ((visibleTime % 10) + a) / 10.0f; col = Mth::sin(col * PI * 2) * 0.2f + 0.8f; int br = (int) (255 * col);
drawString(font, L"Saving level..", 8, height - 16, br << 16 | br << 8 | br); }
drawCenteredString(font, L"Game menu", width / 2, 40, 0xffffff);
Screen::render(xm, ym, a);}