TU19: merge Minecraft.Client/GameState

This commit is contained in:
Tropical 2026-03-21 20:25:32 -05:00
parent d9aa793075
commit 1c12bedc86
7 changed files with 127 additions and 86 deletions

View file

@ -2,8 +2,6 @@
#include "CreativeMode.h" #include "CreativeMode.h"
#include "../Player/User.h" #include "../Player/User.h"
#include "../Player/LocalPlayer.h" #include "../Player/LocalPlayer.h"
#include "../Level/MultiPlayerLevel.h"
#include "../Player/MultiPlayerLocalPlayer.h"
#include "../../Minecraft.World/Headers/net.minecraft.world.entity.player.h" #include "../../Minecraft.World/Headers/net.minecraft.world.entity.player.h"
#include "../../Minecraft.World/Headers/net.minecraft.world.item.h" #include "../../Minecraft.World/Headers/net.minecraft.world.item.h"
#include "../../Minecraft.World/Headers/net.minecraft.world.inventory.h" #include "../../Minecraft.World/Headers/net.minecraft.world.inventory.h"

View file

@ -11,8 +11,8 @@ void DemoMode::tick() {
SurvivalMode::tick(); SurvivalMode::tick();
/* 4J - TODO - seems unlikely we need this demo mode anyway /* 4J - TODO - seems unlikely we need this demo mode anyway
__int64 time = minecraft->level->getTime(); int64_t time = minecraft->level->getTime();
__int64 day = (time / Level::TICKS_PER_DAY) + 1; int64_t day = (time / Level::TICKS_PER_DAY) + 1;
demoHasEnded = (time > (500 + Level::TICKS_PER_DAY * DEMO_DAYS)); demoHasEnded = (time > (500 + Level::TICKS_PER_DAY * DEMO_DAYS));
if (demoHasEnded) if (demoHasEnded)
@ -25,13 +25,13 @@ void DemoMode::tick() {
if (day <= (DEMO_DAYS + 1)) if (day <= (DEMO_DAYS + 1))
{ {
minecraft->gui->displayClientMessage(L"demo.day." + minecraft->gui->displayClientMessage(L"demo.day." +
_toString<__int64>(day)); _toString<int64_t>(day));
} }
} }
else if (day == 1) else if (day == 1)
{ {
Options *options = minecraft->options; Options *options = minecraft->options;
std::wstring message; wstring message;
if (time == 100) { if (time == 100) {
minecraft.gui.addMessage("Seed: " + minecraft.level.getSeed()); minecraft.gui.addMessage("Seed: " + minecraft.level.getSeed());

View file

@ -0,0 +1 @@
#include "../Platform/stdafx.h"

View file

@ -0,0 +1,38 @@
#pragma once
#include "../../Minecraft.World/Headers/net.minecraft.world.item.h"
#include "../../Minecraft.World/Blocks/DispenserTile.h"
#include "../../Minecraft.World/Headers/net.minecraft.core.h"
#include "../../Minecraft.World/Level/Events/LevelEvent.h"
class DispenserBootstrap {
public:
static void bootStrap() {
DispenserTile::REGISTRY.add(Item::arrow, new ArrowDispenseBehavior());
DispenserTile::REGISTRY.add(Item::egg, new EggDispenseBehavior());
DispenserTile::REGISTRY.add(Item::snowBall,
new SnowballDispenseBehavior());
DispenserTile::REGISTRY.add(Item::expBottle,
new ExpBottleDispenseBehavior());
DispenserTile::REGISTRY.add(Item::potion, new PotionDispenseBehavior());
DispenserTile::REGISTRY.add(Item::spawnEgg,
new SpawnEggDispenseBehavior());
DispenserTile::REGISTRY.add(Item::fireworks,
new FireworksDispenseBehavior());
DispenserTile::REGISTRY.add(Item::fireball,
new FireballDispenseBehavior());
DispenserTile::REGISTRY.add(Item::boat, new BoatDispenseBehavior());
DispenserTile::REGISTRY.add(Item::bucket_lava,
new FilledBucketDispenseBehavior());
DispenserTile::REGISTRY.add(Item::bucket_water,
new FilledBucketDispenseBehavior());
DispenserTile::REGISTRY.add(Item::bucket_empty,
new EmptyBucketDispenseBehavior());
DispenserTile::REGISTRY.add(Item::flintAndSteel,
new FlintAndSteelDispenseBehavior());
DispenserTile::REGISTRY.add(Item::dye_powder,
new DyeDispenseBehavior());
DispenserTile::REGISTRY.add(Item::items[Tile::tnt_Id],
new TntDispenseBehavior());
}
};

View file

@ -1,7 +1,6 @@
#include "../Platform/stdafx.h" #include "../Platform/stdafx.h"
#include "GameMode.h" #include "GameMode.h"
#include "../Player/LocalPlayer.h" #include "../Player/LocalPlayer.h"
#include "../Level/MultiPlayerLevel.h"
#include "../Rendering/LevelRenderer.h" #include "../Rendering/LevelRenderer.h"
#include "../../Minecraft.World/Headers/net.minecraft.world.level.h" #include "../../Minecraft.World/Headers/net.minecraft.world.level.h"
#include "../../Minecraft.World/Headers/net.minecraft.world.level.tile.h" #include "../../Minecraft.World/Headers/net.minecraft.world.level.tile.h"
@ -47,9 +46,7 @@ bool GameMode::destroyBlock(int x, int y, int z, int face) {
void GameMode::render(float a) {} void GameMode::render(float a) {}
bool GameMode::useItem(std::shared_ptr<Player> player, Level* level, bool GameMode::useItem(std::shared_ptr<Player> player, Level* level,
std::shared_ptr<ItemInstance> item, bool bTestUseOnly) { std::shared_ptr<ItemInstance> item, bool bTestUseOnly) {}
return false;
}
void GameMode::initPlayer(std::shared_ptr<Player> player) {} void GameMode::initPlayer(std::shared_ptr<Player> player) {}
@ -57,8 +54,8 @@ void GameMode::tick() {}
void GameMode::adjustPlayer(std::shared_ptr<Player> player) {} void GameMode::adjustPlayer(std::shared_ptr<Player> player) {}
// bool GameMode::useItemOn(std::shared_ptr<Player> player, Level *level, // bool GameMode::useItemOn(shared_ptr<Player> player, Level *level,
// std::shared_ptr<ItemInstance> item, int x, int y, int z, int face, bool // shared_ptr<ItemInstance> item, int x, int y, int z, int face, bool
// bTestUseOnOnly) // bTestUseOnOnly)
//{ //{
// // 4J-PB - Adding a test only version to allow tooltips to be displayed // // 4J-PB - Adding a test only version to allow tooltips to be displayed
@ -72,7 +69,7 @@ void GameMode::adjustPlayer(std::shared_ptr<Player> player) {}
// case Tile::recordPlayer_Id: // case Tile::recordPlayer_Id:
// case Tile::bed_Id: // special case for a bed // case Tile::bed_Id: // special case for a bed
// if (Tile::tiles[t]->TestUse(level, x, y, z, // if (Tile::tiles[t]->TestUse(level, x, y, z,
//player )) // player ))
// { // {
// return true; // return true;
// } // }
@ -90,7 +87,7 @@ void GameMode::adjustPlayer(std::shared_ptr<Player> player) {}
// else // else
// { // {
// if (Tile::tiles[t]->use(level, x, y, z, player )) return // if (Tile::tiles[t]->use(level, x, y, z, player )) return
//true; // true;
// } // }
// } // }
// //

View file

@ -479,11 +479,11 @@ void StatsCounter::writeStats() {
scores[viewCount].m_commentData.m_mining.m_dirt = scores[viewCount].m_commentData.m_mining.m_dirt =
getValue(Stats::blocksMined[Tile::dirt->id], eDifficulty_Peaceful); getValue(Stats::blocksMined[Tile::dirt->id], eDifficulty_Peaceful);
scores[viewCount].m_commentData.m_mining.m_cobblestone = getValue( scores[viewCount].m_commentData.m_mining.m_cobblestone = getValue(
Stats::blocksMined[Tile::stoneBrick->id], eDifficulty_Peaceful); Stats::blocksMined[Tile::cobblestone->id], eDifficulty_Peaceful);
scores[viewCount].m_commentData.m_mining.m_sand = scores[viewCount].m_commentData.m_mining.m_sand =
getValue(Stats::blocksMined[Tile::sand->id], eDifficulty_Peaceful); getValue(Stats::blocksMined[Tile::sand->id], eDifficulty_Peaceful);
scores[viewCount].m_commentData.m_mining.m_stone = scores[viewCount].m_commentData.m_mining.m_stone =
getValue(Stats::blocksMined[Tile::rock->id], eDifficulty_Peaceful); getValue(Stats::blocksMined[Tile::stone->id], eDifficulty_Peaceful);
scores[viewCount].m_commentData.m_mining.m_gravel = getValue( scores[viewCount].m_commentData.m_mining.m_gravel = getValue(
Stats::blocksMined[Tile::gravel->id], eDifficulty_Peaceful); Stats::blocksMined[Tile::gravel->id], eDifficulty_Peaceful);
scores[viewCount].m_commentData.m_mining.m_clay = scores[viewCount].m_commentData.m_mining.m_clay =
@ -516,11 +516,11 @@ void StatsCounter::writeStats() {
scores[viewCount].m_commentData.m_mining.m_dirt = scores[viewCount].m_commentData.m_mining.m_dirt =
getValue(Stats::blocksMined[Tile::dirt->id], eDifficulty_Easy); getValue(Stats::blocksMined[Tile::dirt->id], eDifficulty_Easy);
scores[viewCount].m_commentData.m_mining.m_cobblestone = getValue( scores[viewCount].m_commentData.m_mining.m_cobblestone = getValue(
Stats::blocksMined[Tile::stoneBrick->id], eDifficulty_Easy); Stats::blocksMined[Tile::cobblestone->id], eDifficulty_Easy);
scores[viewCount].m_commentData.m_mining.m_sand = scores[viewCount].m_commentData.m_mining.m_sand =
getValue(Stats::blocksMined[Tile::sand->id], eDifficulty_Easy); getValue(Stats::blocksMined[Tile::sand->id], eDifficulty_Easy);
scores[viewCount].m_commentData.m_mining.m_stone = scores[viewCount].m_commentData.m_mining.m_stone =
getValue(Stats::blocksMined[Tile::rock->id], eDifficulty_Easy); getValue(Stats::blocksMined[Tile::stone->id], eDifficulty_Easy);
scores[viewCount].m_commentData.m_mining.m_gravel = scores[viewCount].m_commentData.m_mining.m_gravel =
getValue(Stats::blocksMined[Tile::gravel->id], eDifficulty_Easy); getValue(Stats::blocksMined[Tile::gravel->id], eDifficulty_Easy);
scores[viewCount].m_commentData.m_mining.m_clay = scores[viewCount].m_commentData.m_mining.m_clay =
@ -553,11 +553,11 @@ void StatsCounter::writeStats() {
scores[viewCount].m_commentData.m_mining.m_dirt = scores[viewCount].m_commentData.m_mining.m_dirt =
getValue(Stats::blocksMined[Tile::dirt->id], eDifficulty_Normal); getValue(Stats::blocksMined[Tile::dirt->id], eDifficulty_Normal);
scores[viewCount].m_commentData.m_mining.m_cobblestone = getValue( scores[viewCount].m_commentData.m_mining.m_cobblestone = getValue(
Stats::blocksMined[Tile::stoneBrick->id], eDifficulty_Normal); Stats::blocksMined[Tile::cobblestone->id], eDifficulty_Normal);
scores[viewCount].m_commentData.m_mining.m_sand = scores[viewCount].m_commentData.m_mining.m_sand =
getValue(Stats::blocksMined[Tile::sand->id], eDifficulty_Normal); getValue(Stats::blocksMined[Tile::sand->id], eDifficulty_Normal);
scores[viewCount].m_commentData.m_mining.m_stone = scores[viewCount].m_commentData.m_mining.m_stone =
getValue(Stats::blocksMined[Tile::rock->id], eDifficulty_Normal); getValue(Stats::blocksMined[Tile::stone->id], eDifficulty_Normal);
scores[viewCount].m_commentData.m_mining.m_gravel = scores[viewCount].m_commentData.m_mining.m_gravel =
getValue(Stats::blocksMined[Tile::gravel->id], eDifficulty_Normal); getValue(Stats::blocksMined[Tile::gravel->id], eDifficulty_Normal);
scores[viewCount].m_commentData.m_mining.m_clay = scores[viewCount].m_commentData.m_mining.m_clay =
@ -590,11 +590,11 @@ void StatsCounter::writeStats() {
scores[viewCount].m_commentData.m_mining.m_dirt = scores[viewCount].m_commentData.m_mining.m_dirt =
getValue(Stats::blocksMined[Tile::dirt->id], eDifficulty_Hard); getValue(Stats::blocksMined[Tile::dirt->id], eDifficulty_Hard);
scores[viewCount].m_commentData.m_mining.m_cobblestone = getValue( scores[viewCount].m_commentData.m_mining.m_cobblestone = getValue(
Stats::blocksMined[Tile::stoneBrick->id], eDifficulty_Hard); Stats::blocksMined[Tile::cobblestone->id], eDifficulty_Hard);
scores[viewCount].m_commentData.m_mining.m_sand = scores[viewCount].m_commentData.m_mining.m_sand =
getValue(Stats::blocksMined[Tile::sand->id], eDifficulty_Hard); getValue(Stats::blocksMined[Tile::sand->id], eDifficulty_Hard);
scores[viewCount].m_commentData.m_mining.m_stone = scores[viewCount].m_commentData.m_mining.m_stone =
getValue(Stats::blocksMined[Tile::rock->id], eDifficulty_Hard); getValue(Stats::blocksMined[Tile::stone->id], eDifficulty_Hard);
scores[viewCount].m_commentData.m_mining.m_gravel = scores[viewCount].m_commentData.m_mining.m_gravel =
getValue(Stats::blocksMined[Tile::gravel->id], eDifficulty_Hard); getValue(Stats::blocksMined[Tile::gravel->id], eDifficulty_Hard);
scores[viewCount].m_commentData.m_mining.m_clay = scores[viewCount].m_commentData.m_mining.m_clay =
@ -627,9 +627,9 @@ void StatsCounter::writeStats() {
scores[viewCount].m_commentData.m_farming.m_eggs = getValue( scores[viewCount].m_commentData.m_farming.m_eggs = getValue(
Stats::itemsCollected[Item::egg->id], eDifficulty_Peaceful); Stats::itemsCollected[Item::egg->id], eDifficulty_Peaceful);
scores[viewCount].m_commentData.m_farming.m_wheat = scores[viewCount].m_commentData.m_farming.m_wheat =
getValue(Stats::blocksMined[Tile::crops_Id], eDifficulty_Peaceful); getValue(Stats::blocksMined[Tile::wheat_Id], eDifficulty_Peaceful);
scores[viewCount].m_commentData.m_farming.m_mushroom = getValue( scores[viewCount].m_commentData.m_farming.m_mushroom = getValue(
Stats::blocksMined[Tile::mushroom1_Id], eDifficulty_Peaceful); Stats::blocksMined[Tile::mushroom_brown_Id], eDifficulty_Peaceful);
scores[viewCount].m_commentData.m_farming.m_sugarcane = scores[viewCount].m_commentData.m_farming.m_sugarcane =
getValue(Stats::blocksMined[Tile::reeds_Id], eDifficulty_Peaceful); getValue(Stats::blocksMined[Tile::reeds_Id], eDifficulty_Peaceful);
scores[viewCount].m_commentData.m_farming.m_milk = scores[viewCount].m_commentData.m_farming.m_milk =
@ -660,9 +660,9 @@ void StatsCounter::writeStats() {
scores[viewCount].m_commentData.m_farming.m_eggs = scores[viewCount].m_commentData.m_farming.m_eggs =
getValue(Stats::itemsCollected[Item::egg->id], eDifficulty_Easy); getValue(Stats::itemsCollected[Item::egg->id], eDifficulty_Easy);
scores[viewCount].m_commentData.m_farming.m_wheat = scores[viewCount].m_commentData.m_farming.m_wheat =
getValue(Stats::blocksMined[Tile::crops_Id], eDifficulty_Easy); getValue(Stats::blocksMined[Tile::wheat_Id], eDifficulty_Easy);
scores[viewCount].m_commentData.m_farming.m_mushroom = scores[viewCount].m_commentData.m_farming.m_mushroom = getValue(
getValue(Stats::blocksMined[Tile::mushroom1_Id], eDifficulty_Easy); Stats::blocksMined[Tile::mushroom_brown_Id], eDifficulty_Easy);
scores[viewCount].m_commentData.m_farming.m_sugarcane = scores[viewCount].m_commentData.m_farming.m_sugarcane =
getValue(Stats::blocksMined[Tile::reeds_Id], eDifficulty_Easy); getValue(Stats::blocksMined[Tile::reeds_Id], eDifficulty_Easy);
scores[viewCount].m_commentData.m_farming.m_milk = scores[viewCount].m_commentData.m_farming.m_milk =
@ -694,9 +694,9 @@ void StatsCounter::writeStats() {
scores[viewCount].m_commentData.m_farming.m_eggs = scores[viewCount].m_commentData.m_farming.m_eggs =
getValue(Stats::itemsCollected[Item::egg->id], eDifficulty_Normal); getValue(Stats::itemsCollected[Item::egg->id], eDifficulty_Normal);
scores[viewCount].m_commentData.m_farming.m_wheat = scores[viewCount].m_commentData.m_farming.m_wheat =
getValue(Stats::blocksMined[Tile::crops_Id], eDifficulty_Normal); getValue(Stats::blocksMined[Tile::wheat_Id], eDifficulty_Normal);
scores[viewCount].m_commentData.m_farming.m_mushroom = getValue( scores[viewCount].m_commentData.m_farming.m_mushroom = getValue(
Stats::blocksMined[Tile::mushroom1_Id], eDifficulty_Normal); Stats::blocksMined[Tile::mushroom_brown_Id], eDifficulty_Normal);
scores[viewCount].m_commentData.m_farming.m_sugarcane = scores[viewCount].m_commentData.m_farming.m_sugarcane =
getValue(Stats::blocksMined[Tile::reeds_Id], eDifficulty_Normal); getValue(Stats::blocksMined[Tile::reeds_Id], eDifficulty_Normal);
scores[viewCount].m_commentData.m_farming.m_milk = scores[viewCount].m_commentData.m_farming.m_milk =
@ -727,9 +727,9 @@ void StatsCounter::writeStats() {
scores[viewCount].m_commentData.m_farming.m_eggs = scores[viewCount].m_commentData.m_farming.m_eggs =
getValue(Stats::itemsCollected[Item::egg->id], eDifficulty_Hard); getValue(Stats::itemsCollected[Item::egg->id], eDifficulty_Hard);
scores[viewCount].m_commentData.m_farming.m_wheat = scores[viewCount].m_commentData.m_farming.m_wheat =
getValue(Stats::blocksMined[Tile::crops_Id], eDifficulty_Hard); getValue(Stats::blocksMined[Tile::wheat_Id], eDifficulty_Hard);
scores[viewCount].m_commentData.m_farming.m_mushroom = scores[viewCount].m_commentData.m_farming.m_mushroom = getValue(
getValue(Stats::blocksMined[Tile::mushroom1_Id], eDifficulty_Hard); Stats::blocksMined[Tile::mushroom_brown_Id], eDifficulty_Hard);
scores[viewCount].m_commentData.m_farming.m_sugarcane = scores[viewCount].m_commentData.m_farming.m_sugarcane =
getValue(Stats::blocksMined[Tile::reeds_Id], eDifficulty_Hard); getValue(Stats::blocksMined[Tile::reeds_Id], eDifficulty_Hard);
scores[viewCount].m_commentData.m_farming.m_milk = scores[viewCount].m_commentData.m_farming.m_milk =
@ -880,6 +880,8 @@ void StatsCounter::writeStats() {
app.DebugPrintf("Successfully wrote %d leadeboard views\n", app.DebugPrintf("Successfully wrote %d leadeboard views\n",
viewCount); viewCount);
} }
} else {
delete[] scores;
} }
#elif defined _XBOX #elif defined _XBOX
@ -890,32 +892,32 @@ void StatsCounter::writeStats() {
XUSER_PROPERTY killsEasyProperties[LeaderboardManager::eProperty_Kills_Max]; XUSER_PROPERTY killsEasyProperties[LeaderboardManager::eProperty_Kills_Max];
XUSER_PROPERTY XUSER_PROPERTY
killsNormalProperties[LeaderboardManager::eProperty_Kills_Max]; killsNormalProperties[LeaderboardManager::eProperty_Kills_Max];
XUSER_PROPERTY killsHardProperties[LeaderboardManager::eProperty_Kills_Max]; XUSER_PROPERTY killsHardProperties[LeaderboardManager::eProperty_Kills_Max];
XUSER_PROPERTY miningBlocksPeacefulProperties XUSER_PROPERTY miningBlocksPeacefulProperties
[LeaderboardManager::eProperty_Mining_Max]; [LeaderboardManager::eProperty_Mining_Max];
XUSER_PROPERTY XUSER_PROPERTY
miningBlocksEasyProperties[LeaderboardManager::eProperty_Mining_Max]; miningBlocksEasyProperties[LeaderboardManager::eProperty_Mining_Max];
XUSER_PROPERTY XUSER_PROPERTY
miningBlocksNormalProperties[LeaderboardManager::eProperty_Mining_Max]; miningBlocksNormalProperties[LeaderboardManager::eProperty_Mining_Max];
XUSER_PROPERTY XUSER_PROPERTY
miningBlocksHardProperties[LeaderboardManager::eProperty_Mining_Max]; miningBlocksHardProperties[LeaderboardManager::eProperty_Mining_Max];
XUSER_PROPERTY XUSER_PROPERTY
farmingPeacefulProperties[LeaderboardManager::eProperty_Farming_Max]; farmingPeacefulProperties[LeaderboardManager::eProperty_Farming_Max];
XUSER_PROPERTY XUSER_PROPERTY
farmingEasyProperties[LeaderboardManager::eProperty_Farming_Max]; farmingEasyProperties[LeaderboardManager::eProperty_Farming_Max];
XUSER_PROPERTY XUSER_PROPERTY
farmingNormalProperties[LeaderboardManager::eProperty_Farming_Max]; farmingNormalProperties[LeaderboardManager::eProperty_Farming_Max];
XUSER_PROPERTY XUSER_PROPERTY
farmingHardProperties[LeaderboardManager::eProperty_Farming_Max]; farmingHardProperties[LeaderboardManager::eProperty_Farming_Max];
XUSER_PROPERTY travellingPeacefulProperties XUSER_PROPERTY travellingPeacefulProperties
[LeaderboardManager::eProperty_Travelling_Max]; [LeaderboardManager::eProperty_Travelling_Max];
XUSER_PROPERTY XUSER_PROPERTY
travellingEasyProperties[LeaderboardManager::eProperty_Travelling_Max]; travellingEasyProperties[LeaderboardManager::eProperty_Travelling_Max];
XUSER_PROPERTY travellingNormalProperties XUSER_PROPERTY travellingNormalProperties
[LeaderboardManager::eProperty_Travelling_Max]; [LeaderboardManager::eProperty_Travelling_Max];
XUSER_PROPERTY XUSER_PROPERTY
travellingHardProperties[LeaderboardManager::eProperty_Travelling_Max]; travellingHardProperties[LeaderboardManager::eProperty_Travelling_Max];
XUSER_PROPERTY travellingProperties[1]; // arcade leaderboard XUSER_PROPERTY travellingProperties[1]; // arcade leaderboard
if (modifiedBoards & LEADERBOARD_KILLS_EASY) { if (modifiedBoards & LEADERBOARD_KILLS_EASY) {
@ -1118,10 +1120,11 @@ void StatsCounter::writeStats() {
rating = rating =
getValue(Stats::blocksMined[Tile::dirt->id], eDifficulty_Peaceful) + getValue(Stats::blocksMined[Tile::dirt->id], eDifficulty_Peaceful) +
getValue(Stats::blocksMined[Tile::stoneBrick->id], getValue(Stats::blocksMined[Tile::cobblestone->id],
eDifficulty_Peaceful) + eDifficulty_Peaceful) +
getValue(Stats::blocksMined[Tile::sand->id], eDifficulty_Peaceful) + getValue(Stats::blocksMined[Tile::sand->id], eDifficulty_Peaceful) +
getValue(Stats::blocksMined[Tile::rock->id], eDifficulty_Peaceful) + getValue(Stats::blocksMined[Tile::stone->id],
eDifficulty_Peaceful) +
getValue(Stats::blocksMined[Tile::gravel->id], getValue(Stats::blocksMined[Tile::gravel->id],
eDifficulty_Peaceful) + eDifficulty_Peaceful) +
getValue(Stats::blocksMined[Tile::clay->id], eDifficulty_Peaceful) + getValue(Stats::blocksMined[Tile::clay->id], eDifficulty_Peaceful) +
@ -1137,7 +1140,7 @@ void StatsCounter::writeStats() {
&miningBlocksPeacefulProperties &miningBlocksPeacefulProperties
[LeaderboardManager::eProperty_Mining_Stone], [LeaderboardManager::eProperty_Mining_Stone],
PROPERTY_MINED_STONE, PROPERTY_MINED_STONE,
getValue(Stats::blocksMined[Tile::stoneBrick->id], getValue(Stats::blocksMined[Tile::cobblestone->id],
eDifficulty_Peaceful)); eDifficulty_Peaceful));
setLeaderboardProperty( setLeaderboardProperty(
&miningBlocksPeacefulProperties &miningBlocksPeacefulProperties
@ -1148,7 +1151,8 @@ void StatsCounter::writeStats() {
&miningBlocksPeacefulProperties &miningBlocksPeacefulProperties
[LeaderboardManager::eProperty_Mining_Cobblestone], [LeaderboardManager::eProperty_Mining_Cobblestone],
PROPERTY_MINED_COBBLESTONE, PROPERTY_MINED_COBBLESTONE,
getValue(Stats::blocksMined[Tile::rock->id], eDifficulty_Peaceful)); getValue(Stats::blocksMined[Tile::stone->id],
eDifficulty_Peaceful));
setLeaderboardProperty( setLeaderboardProperty(
&miningBlocksPeacefulProperties &miningBlocksPeacefulProperties
[LeaderboardManager::eProperty_Mining_Gravel], [LeaderboardManager::eProperty_Mining_Gravel],
@ -1183,10 +1187,10 @@ void StatsCounter::writeStats() {
rating = rating =
getValue(Stats::blocksMined[Tile::dirt->id], eDifficulty_Easy) + getValue(Stats::blocksMined[Tile::dirt->id], eDifficulty_Easy) +
getValue(Stats::blocksMined[Tile::stoneBrick->id], getValue(Stats::blocksMined[Tile::cobblestone->id],
eDifficulty_Easy) + eDifficulty_Easy) +
getValue(Stats::blocksMined[Tile::sand->id], eDifficulty_Easy) + getValue(Stats::blocksMined[Tile::sand->id], eDifficulty_Easy) +
getValue(Stats::blocksMined[Tile::rock->id], eDifficulty_Easy) + getValue(Stats::blocksMined[Tile::stone->id], eDifficulty_Easy) +
getValue(Stats::blocksMined[Tile::gravel->id], eDifficulty_Easy) + getValue(Stats::blocksMined[Tile::gravel->id], eDifficulty_Easy) +
getValue(Stats::blocksMined[Tile::clay->id], eDifficulty_Easy) + getValue(Stats::blocksMined[Tile::clay->id], eDifficulty_Easy) +
getValue(Stats::blocksMined[Tile::obsidian->id], eDifficulty_Easy); getValue(Stats::blocksMined[Tile::obsidian->id], eDifficulty_Easy);
@ -1200,7 +1204,7 @@ void StatsCounter::writeStats() {
&miningBlocksEasyProperties &miningBlocksEasyProperties
[LeaderboardManager::eProperty_Mining_Stone], [LeaderboardManager::eProperty_Mining_Stone],
PROPERTY_MINED_STONE, PROPERTY_MINED_STONE,
getValue(Stats::blocksMined[Tile::stoneBrick->id], getValue(Stats::blocksMined[Tile::cobblestone->id],
eDifficulty_Easy)); eDifficulty_Easy));
setLeaderboardProperty( setLeaderboardProperty(
&miningBlocksEasyProperties &miningBlocksEasyProperties
@ -1211,7 +1215,7 @@ void StatsCounter::writeStats() {
&miningBlocksEasyProperties &miningBlocksEasyProperties
[LeaderboardManager::eProperty_Mining_Cobblestone], [LeaderboardManager::eProperty_Mining_Cobblestone],
PROPERTY_MINED_COBBLESTONE, PROPERTY_MINED_COBBLESTONE,
getValue(Stats::blocksMined[Tile::rock->id], eDifficulty_Easy)); getValue(Stats::blocksMined[Tile::stone->id], eDifficulty_Easy));
setLeaderboardProperty( setLeaderboardProperty(
&miningBlocksEasyProperties &miningBlocksEasyProperties
[LeaderboardManager::eProperty_Mining_Gravel], [LeaderboardManager::eProperty_Mining_Gravel],
@ -1244,10 +1248,10 @@ void StatsCounter::writeStats() {
rating = rating =
getValue(Stats::blocksMined[Tile::dirt->id], eDifficulty_Normal) + getValue(Stats::blocksMined[Tile::dirt->id], eDifficulty_Normal) +
getValue(Stats::blocksMined[Tile::stoneBrick->id], getValue(Stats::blocksMined[Tile::cobblestone->id],
eDifficulty_Normal) + eDifficulty_Normal) +
getValue(Stats::blocksMined[Tile::sand->id], eDifficulty_Normal) + getValue(Stats::blocksMined[Tile::sand->id], eDifficulty_Normal) +
getValue(Stats::blocksMined[Tile::rock->id], eDifficulty_Normal) + getValue(Stats::blocksMined[Tile::stone->id], eDifficulty_Normal) +
getValue(Stats::blocksMined[Tile::gravel->id], eDifficulty_Normal) + getValue(Stats::blocksMined[Tile::gravel->id], eDifficulty_Normal) +
getValue(Stats::blocksMined[Tile::clay->id], eDifficulty_Normal) + getValue(Stats::blocksMined[Tile::clay->id], eDifficulty_Normal) +
getValue(Stats::blocksMined[Tile::obsidian->id], getValue(Stats::blocksMined[Tile::obsidian->id],
@ -1262,7 +1266,7 @@ void StatsCounter::writeStats() {
&miningBlocksNormalProperties &miningBlocksNormalProperties
[LeaderboardManager::eProperty_Mining_Stone], [LeaderboardManager::eProperty_Mining_Stone],
PROPERTY_MINED_STONE, PROPERTY_MINED_STONE,
getValue(Stats::blocksMined[Tile::stoneBrick->id], getValue(Stats::blocksMined[Tile::cobblestone->id],
eDifficulty_Normal)); eDifficulty_Normal));
setLeaderboardProperty( setLeaderboardProperty(
&miningBlocksNormalProperties &miningBlocksNormalProperties
@ -1273,7 +1277,7 @@ void StatsCounter::writeStats() {
&miningBlocksNormalProperties &miningBlocksNormalProperties
[LeaderboardManager::eProperty_Mining_Cobblestone], [LeaderboardManager::eProperty_Mining_Cobblestone],
PROPERTY_MINED_COBBLESTONE, PROPERTY_MINED_COBBLESTONE,
getValue(Stats::blocksMined[Tile::rock->id], eDifficulty_Normal)); getValue(Stats::blocksMined[Tile::stone->id], eDifficulty_Normal));
setLeaderboardProperty( setLeaderboardProperty(
&miningBlocksNormalProperties &miningBlocksNormalProperties
[LeaderboardManager::eProperty_Mining_Gravel], [LeaderboardManager::eProperty_Mining_Gravel],
@ -1307,10 +1311,10 @@ void StatsCounter::writeStats() {
rating = rating =
getValue(Stats::blocksMined[Tile::dirt->id], eDifficulty_Hard) + getValue(Stats::blocksMined[Tile::dirt->id], eDifficulty_Hard) +
getValue(Stats::blocksMined[Tile::stoneBrick->id], getValue(Stats::blocksMined[Tile::cobblestone->id],
eDifficulty_Hard) + eDifficulty_Hard) +
getValue(Stats::blocksMined[Tile::sand->id], eDifficulty_Hard) + getValue(Stats::blocksMined[Tile::sand->id], eDifficulty_Hard) +
getValue(Stats::blocksMined[Tile::rock->id], eDifficulty_Hard) + getValue(Stats::blocksMined[Tile::stone->id], eDifficulty_Hard) +
getValue(Stats::blocksMined[Tile::gravel->id], eDifficulty_Hard) + getValue(Stats::blocksMined[Tile::gravel->id], eDifficulty_Hard) +
getValue(Stats::blocksMined[Tile::clay->id], eDifficulty_Hard) + getValue(Stats::blocksMined[Tile::clay->id], eDifficulty_Hard) +
getValue(Stats::blocksMined[Tile::obsidian->id], eDifficulty_Hard); getValue(Stats::blocksMined[Tile::obsidian->id], eDifficulty_Hard);
@ -1324,7 +1328,7 @@ void StatsCounter::writeStats() {
&miningBlocksHardProperties &miningBlocksHardProperties
[LeaderboardManager::eProperty_Mining_Stone], [LeaderboardManager::eProperty_Mining_Stone],
PROPERTY_MINED_STONE, PROPERTY_MINED_STONE,
getValue(Stats::blocksMined[Tile::stoneBrick->id], getValue(Stats::blocksMined[Tile::cobblestone->id],
eDifficulty_Hard)); eDifficulty_Hard));
setLeaderboardProperty( setLeaderboardProperty(
&miningBlocksHardProperties &miningBlocksHardProperties
@ -1335,7 +1339,7 @@ void StatsCounter::writeStats() {
&miningBlocksHardProperties &miningBlocksHardProperties
[LeaderboardManager::eProperty_Mining_Cobblestone], [LeaderboardManager::eProperty_Mining_Cobblestone],
PROPERTY_MINED_COBBLESTONE, PROPERTY_MINED_COBBLESTONE,
getValue(Stats::blocksMined[Tile::rock->id], eDifficulty_Hard)); getValue(Stats::blocksMined[Tile::stone->id], eDifficulty_Hard));
setLeaderboardProperty( setLeaderboardProperty(
&miningBlocksHardProperties &miningBlocksHardProperties
[LeaderboardManager::eProperty_Mining_Gravel], [LeaderboardManager::eProperty_Mining_Gravel],
@ -1369,8 +1373,8 @@ void StatsCounter::writeStats() {
rating = rating =
getValue(Stats::itemsCollected[Item::egg->id], getValue(Stats::itemsCollected[Item::egg->id],
eDifficulty_Peaceful) + eDifficulty_Peaceful) +
getValue(Stats::blocksMined[Tile::crops_Id], eDifficulty_Peaceful) + getValue(Stats::blocksMined[Tile::wheat_Id], eDifficulty_Peaceful) +
getValue(Stats::blocksMined[Tile::mushroom1_Id], getValue(Stats::blocksMined[Tile::mushroom_brown_Id],
eDifficulty_Peaceful) + eDifficulty_Peaceful) +
getValue(Stats::blocksMined[Tile::reeds_Id], eDifficulty_Peaceful) + getValue(Stats::blocksMined[Tile::reeds_Id], eDifficulty_Peaceful) +
getValue(Stats::cowsMilked, eDifficulty_Peaceful) + getValue(Stats::cowsMilked, eDifficulty_Peaceful) +
@ -1386,12 +1390,12 @@ void StatsCounter::writeStats() {
&farmingPeacefulProperties &farmingPeacefulProperties
[LeaderboardManager::eProperty_Farming_Wheat], [LeaderboardManager::eProperty_Farming_Wheat],
PROPERTY_COLLECTED_WHEAT, PROPERTY_COLLECTED_WHEAT,
getValue(Stats::blocksMined[Tile::crops_Id], eDifficulty_Peaceful)); getValue(Stats::blocksMined[Tile::wheat_Id], eDifficulty_Peaceful));
setLeaderboardProperty( setLeaderboardProperty(
&farmingPeacefulProperties &farmingPeacefulProperties
[LeaderboardManager::eProperty_Farming_Mushroom], [LeaderboardManager::eProperty_Farming_Mushroom],
PROPERTY_COLLECTED_MUSHROOM, PROPERTY_COLLECTED_MUSHROOM,
getValue(Stats::blocksMined[Tile::mushroom1_Id], getValue(Stats::blocksMined[Tile::mushroom_brown_Id],
eDifficulty_Peaceful)); eDifficulty_Peaceful));
setLeaderboardProperty( setLeaderboardProperty(
&farmingPeacefulProperties &farmingPeacefulProperties
@ -1425,8 +1429,9 @@ void StatsCounter::writeStats() {
rating = rating =
getValue(Stats::itemsCollected[Item::egg->id], eDifficulty_Easy) + getValue(Stats::itemsCollected[Item::egg->id], eDifficulty_Easy) +
getValue(Stats::blocksMined[Tile::crops_Id], eDifficulty_Easy) + getValue(Stats::blocksMined[Tile::wheat_Id], eDifficulty_Easy) +
getValue(Stats::blocksMined[Tile::mushroom1_Id], eDifficulty_Easy) + getValue(Stats::blocksMined[Tile::mushroom_brown_Id],
eDifficulty_Easy) +
getValue(Stats::blocksMined[Tile::reeds_Id], eDifficulty_Easy) + getValue(Stats::blocksMined[Tile::reeds_Id], eDifficulty_Easy) +
getValue(Stats::cowsMilked, eDifficulty_Easy) + getValue(Stats::cowsMilked, eDifficulty_Easy) +
getValue(Stats::itemsCollected[Tile::pumpkin->id], getValue(Stats::itemsCollected[Tile::pumpkin->id],
@ -1439,12 +1444,13 @@ void StatsCounter::writeStats() {
setLeaderboardProperty( setLeaderboardProperty(
&farmingEasyProperties[LeaderboardManager::eProperty_Farming_Wheat], &farmingEasyProperties[LeaderboardManager::eProperty_Farming_Wheat],
PROPERTY_COLLECTED_WHEAT, PROPERTY_COLLECTED_WHEAT,
getValue(Stats::blocksMined[Tile::crops_Id], eDifficulty_Easy)); getValue(Stats::blocksMined[Tile::wheat_Id], eDifficulty_Easy));
setLeaderboardProperty( setLeaderboardProperty(
&farmingEasyProperties &farmingEasyProperties
[LeaderboardManager::eProperty_Farming_Mushroom], [LeaderboardManager::eProperty_Farming_Mushroom],
PROPERTY_COLLECTED_MUSHROOM, PROPERTY_COLLECTED_MUSHROOM,
getValue(Stats::blocksMined[Tile::mushroom1_Id], eDifficulty_Easy)); getValue(Stats::blocksMined[Tile::mushroom_brown_Id],
eDifficulty_Easy));
setLeaderboardProperty( setLeaderboardProperty(
&farmingEasyProperties &farmingEasyProperties
[LeaderboardManager::eProperty_Farming_Sugarcane], [LeaderboardManager::eProperty_Farming_Sugarcane],
@ -1477,8 +1483,8 @@ void StatsCounter::writeStats() {
rating = rating =
getValue(Stats::itemsCollected[Item::egg->id], eDifficulty_Normal) + getValue(Stats::itemsCollected[Item::egg->id], eDifficulty_Normal) +
getValue(Stats::blocksMined[Tile::crops_Id], eDifficulty_Normal) + getValue(Stats::blocksMined[Tile::wheat_Id], eDifficulty_Normal) +
getValue(Stats::blocksMined[Tile::mushroom1_Id], getValue(Stats::blocksMined[Tile::mushroom_brown_Id],
eDifficulty_Normal) + eDifficulty_Normal) +
getValue(Stats::blocksMined[Tile::reeds_Id], eDifficulty_Normal) + getValue(Stats::blocksMined[Tile::reeds_Id], eDifficulty_Normal) +
getValue(Stats::cowsMilked, eDifficulty_Normal) + getValue(Stats::cowsMilked, eDifficulty_Normal) +
@ -1493,12 +1499,12 @@ void StatsCounter::writeStats() {
&farmingNormalProperties &farmingNormalProperties
[LeaderboardManager::eProperty_Farming_Wheat], [LeaderboardManager::eProperty_Farming_Wheat],
PROPERTY_COLLECTED_WHEAT, PROPERTY_COLLECTED_WHEAT,
getValue(Stats::blocksMined[Tile::crops_Id], eDifficulty_Normal)); getValue(Stats::blocksMined[Tile::wheat_Id], eDifficulty_Normal));
setLeaderboardProperty( setLeaderboardProperty(
&farmingNormalProperties &farmingNormalProperties
[LeaderboardManager::eProperty_Farming_Mushroom], [LeaderboardManager::eProperty_Farming_Mushroom],
PROPERTY_COLLECTED_MUSHROOM, PROPERTY_COLLECTED_MUSHROOM,
getValue(Stats::blocksMined[Tile::mushroom1_Id], getValue(Stats::blocksMined[Tile::mushroom_brown_Id],
eDifficulty_Normal)); eDifficulty_Normal));
setLeaderboardProperty( setLeaderboardProperty(
&farmingNormalProperties &farmingNormalProperties
@ -1531,8 +1537,9 @@ void StatsCounter::writeStats() {
rating = rating =
getValue(Stats::itemsCollected[Item::egg->id], eDifficulty_Hard) + getValue(Stats::itemsCollected[Item::egg->id], eDifficulty_Hard) +
getValue(Stats::blocksMined[Tile::crops_Id], eDifficulty_Hard) + getValue(Stats::blocksMined[Tile::wheat_Id], eDifficulty_Hard) +
getValue(Stats::blocksMined[Tile::mushroom1_Id], eDifficulty_Hard) + getValue(Stats::blocksMined[Tile::mushroom_brown_Id],
eDifficulty_Hard) +
getValue(Stats::blocksMined[Tile::reeds_Id], eDifficulty_Hard) + getValue(Stats::blocksMined[Tile::reeds_Id], eDifficulty_Hard) +
getValue(Stats::cowsMilked, eDifficulty_Hard) + getValue(Stats::cowsMilked, eDifficulty_Hard) +
getValue(Stats::itemsCollected[Tile::pumpkin->id], getValue(Stats::itemsCollected[Tile::pumpkin->id],
@ -1545,12 +1552,13 @@ void StatsCounter::writeStats() {
setLeaderboardProperty( setLeaderboardProperty(
&farmingHardProperties[LeaderboardManager::eProperty_Farming_Wheat], &farmingHardProperties[LeaderboardManager::eProperty_Farming_Wheat],
PROPERTY_COLLECTED_WHEAT, PROPERTY_COLLECTED_WHEAT,
getValue(Stats::blocksMined[Tile::crops_Id], eDifficulty_Hard)); getValue(Stats::blocksMined[Tile::wheat_Id], eDifficulty_Hard));
setLeaderboardProperty( setLeaderboardProperty(
&farmingHardProperties &farmingHardProperties
[LeaderboardManager::eProperty_Farming_Mushroom], [LeaderboardManager::eProperty_Farming_Mushroom],
PROPERTY_COLLECTED_MUSHROOM, PROPERTY_COLLECTED_MUSHROOM,
getValue(Stats::blocksMined[Tile::mushroom1_Id], eDifficulty_Hard)); getValue(Stats::blocksMined[Tile::mushroom_brown_Id],
eDifficulty_Hard));
setLeaderboardProperty( setLeaderboardProperty(
&farmingHardProperties &farmingHardProperties
[LeaderboardManager::eProperty_Farming_Sugarcane], [LeaderboardManager::eProperty_Farming_Sugarcane],
@ -1798,11 +1806,11 @@ void StatsCounter::setupStatBoards() {
statBoards.insert(std::make_pair(Stats::blocksMined[Tile::dirt->id], statBoards.insert(std::make_pair(Stats::blocksMined[Tile::dirt->id],
LEADERBOARD_MININGBLOCKS_PEACEFUL)); LEADERBOARD_MININGBLOCKS_PEACEFUL));
statBoards.insert(std::make_pair(Stats::blocksMined[Tile::stoneBrick->id], statBoards.insert(std::make_pair(Stats::blocksMined[Tile::cobblestone->id],
LEADERBOARD_MININGBLOCKS_PEACEFUL)); LEADERBOARD_MININGBLOCKS_PEACEFUL));
statBoards.insert(std::make_pair(Stats::blocksMined[Tile::sand->id], statBoards.insert(std::make_pair(Stats::blocksMined[Tile::sand->id],
LEADERBOARD_MININGBLOCKS_PEACEFUL)); LEADERBOARD_MININGBLOCKS_PEACEFUL));
statBoards.insert(std::make_pair(Stats::blocksMined[Tile::rock->id], statBoards.insert(std::make_pair(Stats::blocksMined[Tile::stone->id],
LEADERBOARD_MININGBLOCKS_PEACEFUL)); LEADERBOARD_MININGBLOCKS_PEACEFUL));
statBoards.insert(std::make_pair(Stats::blocksMined[Tile::gravel->id], statBoards.insert(std::make_pair(Stats::blocksMined[Tile::gravel->id],
LEADERBOARD_MININGBLOCKS_PEACEFUL)); LEADERBOARD_MININGBLOCKS_PEACEFUL));
@ -1813,10 +1821,11 @@ void StatsCounter::setupStatBoards() {
statBoards.insert(std::make_pair(Stats::itemsCollected[Item::egg->id], statBoards.insert(std::make_pair(Stats::itemsCollected[Item::egg->id],
LEADERBOARD_FARMING_PEACEFUL)); LEADERBOARD_FARMING_PEACEFUL));
statBoards.insert(std::make_pair(Stats::blocksMined[Tile::crops_Id], statBoards.insert(std::make_pair(Stats::blocksMined[Tile::wheat_Id],
LEADERBOARD_FARMING_PEACEFUL));
statBoards.insert(std::make_pair(Stats::blocksMined[Tile::mushroom1_Id],
LEADERBOARD_FARMING_PEACEFUL)); LEADERBOARD_FARMING_PEACEFUL));
statBoards.insert(
std::make_pair(Stats::blocksMined[Tile::mushroom_brown_Id],
LEADERBOARD_FARMING_PEACEFUL));
statBoards.insert(std::make_pair(Stats::blocksMined[Tile::reeds_Id], statBoards.insert(std::make_pair(Stats::blocksMined[Tile::reeds_Id],
LEADERBOARD_FARMING_PEACEFUL)); LEADERBOARD_FARMING_PEACEFUL));
statBoards.insert( statBoards.insert(
@ -1884,12 +1893,12 @@ void StatsCounter::WipeLeaderboards() {
if (DEBUG_CLEAR_LEADERBOARDS & LEADERBOARD_MININGBLOCKS_HARD) if (DEBUG_CLEAR_LEADERBOARDS & LEADERBOARD_MININGBLOCKS_HARD)
XUserResetStatsViewAllUsers(STATS_VIEW_MINING_BLOCKS_HARD, NULL); XUserResetStatsViewAllUsers(STATS_VIEW_MINING_BLOCKS_HARD, NULL);
// if( DEBUG_CLEAR_LEADERBOARDS & LEADERBOARD_MININGORE_PEACEFUL ) // if( DEBUG_CLEAR_LEADERBOARDS & LEADERBOARD_MININGORE_PEACEFUL )
// XUserResetStatsViewAllUsers(STATS_VIEW_MINING_ORE_PEACEFUL, NULL); if( // XUserResetStatsViewAllUsers(STATS_VIEW_MINING_ORE_PEACEFUL, NULL);
// DEBUG_CLEAR_LEADERBOARDS & LEADERBOARD_MININGORE_EASY ) // if( DEBUG_CLEAR_LEADERBOARDS & LEADERBOARD_MININGORE_EASY )
// XUserResetStatsViewAllUsers(STATS_VIEW_MINING_ORE_EASY, NULL); if( // XUserResetStatsViewAllUsers(STATS_VIEW_MINING_ORE_EASY, NULL); if(
// DEBUG_CLEAR_LEADERBOARDS & LEADERBOARD_MININGORE_NORMAL ) // DEBUG_CLEAR_LEADERBOARDS & LEADERBOARD_MININGORE_NORMAL )
// XUserResetStatsViewAllUsers(STATS_VIEW_MINING_ORE_NORMAL, NULL); if( // XUserResetStatsViewAllUsers(STATS_VIEW_MINING_ORE_NORMAL, NULL);
// DEBUG_CLEAR_LEADERBOARDS & LEADERBOARD_MININGORE_HARD ) // if( DEBUG_CLEAR_LEADERBOARDS & LEADERBOARD_MININGORE_HARD )
// XUserResetStatsViewAllUsers(STATS_VIEW_MINING_ORE_HARD, NULL); // XUserResetStatsViewAllUsers(STATS_VIEW_MINING_ORE_HARD, NULL);
if (DEBUG_CLEAR_LEADERBOARDS & LEADERBOARD_FARMING_PEACEFUL) if (DEBUG_CLEAR_LEADERBOARDS & LEADERBOARD_FARMING_PEACEFUL)
XUserResetStatsViewAllUsers(STATS_VIEW_FARMING_PEACEFUL, NULL); XUserResetStatsViewAllUsers(STATS_VIEW_FARMING_PEACEFUL, NULL);

View file

@ -3,8 +3,6 @@
#include "DemoMode.h" #include "DemoMode.h"
#include "../Rendering/LevelRenderer.h" #include "../Rendering/LevelRenderer.h"
#include "../Player/LocalPlayer.h" #include "../Player/LocalPlayer.h"
#include "../Level/MultiPlayerLevel.h"
#include "../Player/MultiPlayerLocalPlayer.h"
#include "../../Minecraft.World/Headers/net.minecraft.world.level.h" #include "../../Minecraft.World/Headers/net.minecraft.world.level.h"
#include "../../Minecraft.World/Headers/net.minecraft.world.level.tile.h" #include "../../Minecraft.World/Headers/net.minecraft.world.level.tile.h"
#include "../../Minecraft.World/Headers/net.minecraft.world.entity.player.h" #include "../../Minecraft.World/Headers/net.minecraft.world.entity.player.h"
@ -58,7 +56,7 @@ bool SurvivalMode::destroyBlock(int x, int y, int z, int face) {
std::shared_ptr<ItemInstance> item = minecraft->player->getSelectedItem(); std::shared_ptr<ItemInstance> item = minecraft->player->getSelectedItem();
bool couldDestroy = minecraft->player->canDestroy(Tile::tiles[t]); bool couldDestroy = minecraft->player->canDestroy(Tile::tiles[t]);
if (item != NULL) { if (item != NULL) {
item->mineBlock(minecraft->level, t, x, y, z, minecraft->player); item->mineBlock(t, x, y, z, minecraft->player);
if (item->count == 0) { if (item->count == 0) {
minecraft->player->removeSelectedItem(); minecraft->player->removeSelectedItem();
} }