feat: remove bonus chests
This commit is contained in:
1 parent
7272b62d38
commit
ca003f1afa
30 files changed
+8
-246
No files matched your search
@@ -25,7 +25,6 @@
|
||||
#define GAME_HOST_OPTION_BITMASK_GAMETYPE 0x00000030
|
||||
#define GAME_HOST_OPTION_BITMASK_LEVELTYPE 0x00000040
|
||||
#define GAME_HOST_OPTION_BITMASK_STRUCTURES 0x00000080
|
||||
#define GAME_HOST_OPTION_BITMASK_BONUSCHEST 0x00000100
|
||||
#define GAME_HOST_OPTION_BITMASK_BEENINCREATIVE 0x00000200
|
||||
#define GAME_HOST_OPTION_BITMASK_PVP 0x00000400
|
||||
#define GAME_HOST_OPTION_BITMASK_TRUSTPLAYERS 0x00000800
|
||||
|
||||
@@ -604,7 +604,6 @@ enum eGameHostOption
|
||||
eGameHostOption_GameType,
|
||||
eGameHostOption_LevelType, // flat or default
|
||||
eGameHostOption_Structures,
|
||||
eGameHostOption_BonusChest,
|
||||
eGameHostOption_HasBeenInCreative,
|
||||
eGameHostOption_PvP,
|
||||
eGameHostOption_TrustPlayers,
|
||||
|
||||
@@ -7379,18 +7379,6 @@ void CMinecraftApp::SetGameHostOption(unsigned int &uiHostSettings, eGameHostOpt
|
||||
uiHostSettings&=~GAME_HOST_OPTION_BITMASK_STRUCTURES;
|
||||
}
|
||||
|
||||
break;
|
||||
case eGameHostOption_BonusChest:
|
||||
if(uiVal!=0)
|
||||
{
|
||||
uiHostSettings|=GAME_HOST_OPTION_BITMASK_BONUSCHEST;
|
||||
}
|
||||
else
|
||||
{
|
||||
// off
|
||||
uiHostSettings&=~GAME_HOST_OPTION_BITMASK_BONUSCHEST;
|
||||
}
|
||||
|
||||
break;
|
||||
case eGameHostOption_HasBeenInCreative:
|
||||
if(uiVal!=0)
|
||||
@@ -7563,9 +7551,6 @@ unsigned int CMinecraftApp::GetGameHostOption(unsigned int uiHostSettings, eGame
|
||||
case eGameHostOption_Structures:
|
||||
return (uiHostSettings&GAME_HOST_OPTION_BITMASK_STRUCTURES);
|
||||
break;
|
||||
case eGameHostOption_BonusChest:
|
||||
return (uiHostSettings&GAME_HOST_OPTION_BITMASK_BONUSCHEST);
|
||||
break;
|
||||
case eGameHostOption_HasBeenInCreative:
|
||||
return (uiHostSettings&GAME_HOST_OPTION_BITMASK_BEENINCREATIVE);
|
||||
break;
|
||||
|
||||
@@ -67,7 +67,6 @@ UIScene_CreateWorldMenu::UIScene_CreateWorldMenu(int iPad, void *initData, UILay
|
||||
m_MoreOptionsParams.bGenerateOptions=TRUE;
|
||||
m_MoreOptionsParams.bStructures=TRUE;
|
||||
m_MoreOptionsParams.bFlatWorld=FALSE;
|
||||
m_MoreOptionsParams.bBonusChest=FALSE;
|
||||
m_MoreOptionsParams.bPVP = TRUE;
|
||||
m_MoreOptionsParams.bTrust = TRUE;
|
||||
m_MoreOptionsParams.bFireSpreads = TRUE;
|
||||
@@ -1162,7 +1161,6 @@ void UIScene_CreateWorldMenu::CreateGame(UIScene_CreateWorldMenu* pClass, DWORD
|
||||
app.SetGameHostOption(eGameHostOption_GameType,pClass->m_bGameModeSurvival?GameType::SURVIVAL->getId():GameType::CREATIVE->getId() );
|
||||
app.SetGameHostOption(eGameHostOption_LevelType,pClass->m_MoreOptionsParams.bFlatWorld );
|
||||
app.SetGameHostOption(eGameHostOption_Structures,pClass->m_MoreOptionsParams.bStructures );
|
||||
app.SetGameHostOption(eGameHostOption_BonusChest,pClass->m_MoreOptionsParams.bBonusChest );
|
||||
|
||||
app.SetGameHostOption(eGameHostOption_PvP,pClass->m_MoreOptionsParams.bPVP);
|
||||
app.SetGameHostOption(eGameHostOption_TrustPlayers,pClass->m_MoreOptionsParams.bTrust );
|
||||
|
||||
@@ -297,9 +297,6 @@ void UIScene_LaunchMoreOptionsMenu::handleCheckboxToggled(F64 controlId, bool se
|
||||
case eLaunchCheckbox_FlatWorld:
|
||||
m_params->bFlatWorld = selected;
|
||||
break;
|
||||
case eLaunchCheckbox_BonusChest:
|
||||
m_params->bBonusChest = selected;
|
||||
break;
|
||||
case eLaunchCheckbox_DisableSaving:
|
||||
m_params->bDisableSaving = selected;
|
||||
break;
|
||||
@@ -344,9 +341,6 @@ void UIScene_LaunchMoreOptionsMenu::handleFocusChange(F64 controlId, F64 childId
|
||||
case eLaunchCheckbox_FlatWorld:
|
||||
stringId = IDS_GAMEOPTION_SUPERFLAT;
|
||||
break;
|
||||
case eLaunchCheckbox_BonusChest:
|
||||
stringId = IDS_GAMEOPTION_BONUS_CHEST;
|
||||
break;
|
||||
#ifdef _LARGE_WORLDS
|
||||
case eControl_EditSeed:
|
||||
stringId = IDS_GAMEOPTION_SEED;
|
||||
|
||||
@@ -19,7 +19,6 @@ private:
|
||||
eLaunchCheckbox_ResetNether,
|
||||
eLaunchCheckbox_Structures,
|
||||
eLaunchCheckbox_FlatWorld,
|
||||
eLaunchCheckbox_BonusChest,
|
||||
eLaunchCheckbox_DisableSaving,
|
||||
|
||||
eLaunchCheckboxes_Count,
|
||||
@@ -63,7 +62,6 @@ private:
|
||||
UI_MAP_ELEMENT( m_labelWorldSize, "WorldSize")
|
||||
UI_MAP_ELEMENT( m_sliderWorldSize, "WorldSizeSlider")
|
||||
UI_MAP_ELEMENT( m_checkboxes[eLaunchCheckbox_Structures], "CheckboxStructures")
|
||||
UI_MAP_ELEMENT( m_checkboxes[eLaunchCheckbox_BonusChest], "CheckboxBonusChest")
|
||||
UI_MAP_ELEMENT( m_checkboxes[eLaunchCheckbox_FlatWorld], "CheckboxFlatWorld")
|
||||
UI_END_MAP_CHILD_ELEMENTS()
|
||||
|
||||
@@ -84,7 +82,6 @@ private:
|
||||
UI_MAP_ELEMENT( m_labelWorldOptions, "WorldOptions")
|
||||
UI_MAP_ELEMENT( m_checkboxes[eLaunchCheckbox_Structures], "CheckboxStructures")
|
||||
UI_MAP_ELEMENT( m_checkboxes[eLaunchCheckbox_FlatWorld], "CheckboxFlatWorld")
|
||||
UI_MAP_ELEMENT( m_checkboxes[eLaunchCheckbox_BonusChest], "CheckboxBonusChest")
|
||||
}
|
||||
|
||||
UI_MAP_ELEMENT( m_labelDescription, "Description")
|
||||
|
||||
@@ -79,6 +79,10 @@ UIScene_LeaderboardsMenu::UIScene_LeaderboardsMenu(int iPad, void *initData, UIL
|
||||
|
||||
ReadStats(-1);
|
||||
|
||||
#ifdef _WINDOWS64
|
||||
m_labelInfo.setLabel(app.GetString(IDS_LEADERBOARD_NORESULTS));
|
||||
#endif
|
||||
|
||||
#if ( defined __PS3__ || defined __ORBIS__ || defined __PSVITA__ )
|
||||
addTimer( PLAYER_ONLINE_TIMER_ID, PLAYER_ONLINE_TIMER_TIME );
|
||||
#endif
|
||||
|
||||
@@ -243,7 +243,6 @@ typedef struct _LaunchMoreOptionsMenuInitData
|
||||
BOOL bGenerateOptions;
|
||||
BOOL bStructures;
|
||||
BOOL bFlatWorld;
|
||||
BOOL bBonusChest;
|
||||
|
||||
BOOL bPVP;
|
||||
BOOL bTrust;
|
||||
|
||||
@@ -1461,7 +1461,6 @@ void CScene_LoadGameSettings::LoadLevelGen(LevelGenerationOptions *levelGen)
|
||||
// TU12: Content: Gameplay: New "Mass Effect World" remembers and uses the settings of another - lately created - World.
|
||||
app.SetGameHostOption(eGameHostOption_LevelType,m_MoreOptionsParams.bFlatWorld);
|
||||
app.SetGameHostOption(eGameHostOption_Structures,m_MoreOptionsParams.bStructures);
|
||||
app.SetGameHostOption(eGameHostOption_BonusChest,m_MoreOptionsParams.bBonusChest);
|
||||
|
||||
app.SetGameHostOption(eGameHostOption_PvP,m_MoreOptionsParams.bPVP);
|
||||
app.SetGameHostOption(eGameHostOption_TrustPlayers,m_MoreOptionsParams.bTrust );
|
||||
|
||||
@@ -964,7 +964,6 @@ void CScene_MultiGameCreate::CreateGame(CScene_MultiGameCreate* pClass, DWORD dw
|
||||
app.SetGameHostOption(eGameHostOption_GameType,pClass->m_bGameModeSurvival?GameType::SURVIVAL->getId():GameType::CREATIVE->getId());
|
||||
app.SetGameHostOption(eGameHostOption_LevelType,pClass->m_MoreOptionsParams.bFlatWorld );
|
||||
app.SetGameHostOption(eGameHostOption_Structures,pClass->m_MoreOptionsParams.bStructures );
|
||||
app.SetGameHostOption(eGameHostOption_BonusChest,pClass->m_MoreOptionsParams.bBonusChest );
|
||||
|
||||
app.SetGameHostOption(eGameHostOption_PvP,pClass->m_MoreOptionsParams.bPVP);
|
||||
app.SetGameHostOption(eGameHostOption_TrustPlayers,pClass->m_MoreOptionsParams.bTrust );
|
||||
|
||||
@@ -283,7 +283,6 @@ void CConsoleMinecraftApp::TemporaryCreateGameStart()
|
||||
app.SetGameHostOption(eGameHostOption_GameType,GameType::SURVIVAL->getId() );
|
||||
app.SetGameHostOption(eGameHostOption_LevelType, 0 );
|
||||
app.SetGameHostOption(eGameHostOption_Structures, 1 );
|
||||
app.SetGameHostOption(eGameHostOption_BonusChest, 0 );
|
||||
|
||||
app.SetGameHostOption(eGameHostOption_PvP, 1);
|
||||
app.SetGameHostOption(eGameHostOption_TrustPlayers, 1 );
|
||||
|
||||
@@ -392,7 +392,6 @@ bool MinecraftServer::loadLevel(LevelStorageSource *storageSource, const wstring
|
||||
app.DebugPrintf("Default game type: %d\n" , gameTypeId);
|
||||
|
||||
LevelSettings *levelSettings = new LevelSettings(levelSeed, gameType, app.GetGameHostOption(eGameHostOption_Structures)>0?true:false, isHardcore(), true, pLevelType, initData->xzSize, initData->hellScale);
|
||||
if( app.GetGameHostOption(eGameHostOption_BonusChest ) ) levelSettings->enableStartingBonusItems();
|
||||
|
||||
// 4J - temp - load existing level
|
||||
shared_ptr<McRegionLevelStorage> storage = nullptr;
|
||||
|
||||
@@ -414,7 +414,6 @@ void CConsoleMinecraftApp::TemporaryCreateGameStart()
|
||||
app.SetGameHostOption(eGameHostOption_GameType,GameType::SURVIVAL->getId());
|
||||
app.SetGameHostOption(eGameHostOption_LevelType, 0 );
|
||||
app.SetGameHostOption(eGameHostOption_Structures, 1 );
|
||||
app.SetGameHostOption(eGameHostOption_BonusChest, 0 );
|
||||
|
||||
app.SetGameHostOption(eGameHostOption_PvP, 1);
|
||||
app.SetGameHostOption(eGameHostOption_TrustPlayers, 1 );
|
||||
|
||||
@@ -531,7 +531,6 @@ void CConsoleMinecraftApp::TemporaryCreateGameStart()
|
||||
app.SetGameHostOption(eGameHostOption_GameType,GameType::CREATIVE->getId());
|
||||
app.SetGameHostOption(eGameHostOption_LevelType, 0 );
|
||||
app.SetGameHostOption(eGameHostOption_Structures, 1 );
|
||||
app.SetGameHostOption(eGameHostOption_BonusChest, 0 );
|
||||
|
||||
app.SetGameHostOption(eGameHostOption_PvP, 1);
|
||||
app.SetGameHostOption(eGameHostOption_TrustPlayers, 1 );
|
||||
|
||||
@@ -323,7 +323,6 @@ void CConsoleMinecraftApp::TemporaryCreateGameStart()
|
||||
app.SetGameHostOption(eGameHostOption_GameType,GameType::CREATIVE->getId());
|
||||
app.SetGameHostOption(eGameHostOption_LevelType, 0 );
|
||||
app.SetGameHostOption(eGameHostOption_Structures, 1 );
|
||||
app.SetGameHostOption(eGameHostOption_BonusChest, 0 );
|
||||
|
||||
app.SetGameHostOption(eGameHostOption_PvP, 1);
|
||||
app.SetGameHostOption(eGameHostOption_TrustPlayers, 1 );
|
||||
|
||||
@@ -119,13 +119,6 @@ ServerLevel::ServerLevel(MinecraftServer *server, shared_ptr<LevelStorage>levelS
|
||||
initializeLevel(levelSettings);
|
||||
levelData->setInitialized(true);
|
||||
}
|
||||
else if ( (dimension==0) && levelData->getSpawnBonusChest() ) // 4J-JEV, still would like bonus chests to respawn.
|
||||
{
|
||||
// 4J - added isFindingSpawn as we want any chunks we are looking in here for suitable locations for the bonus chest to actually create those chunks rather than just get emptychunks if they aren't loaded
|
||||
isFindingSpawn = true;
|
||||
generateBonusItemsNearSpawn();
|
||||
isFindingSpawn = false;
|
||||
}
|
||||
|
||||
// 4J - added initialisers
|
||||
// 4J Stu - Allowing spawn edit for our game, and consider a better solution for the possible griefing
|
||||
@@ -788,58 +781,9 @@ void ServerLevel::setInitialSpawn(LevelSettings *levelSettings)
|
||||
}
|
||||
|
||||
levelData->setSpawn(xSpawn, ySpawn, zSpawn);
|
||||
if (levelSettings->hasStartingBonusItems())
|
||||
{
|
||||
generateBonusItemsNearSpawn();
|
||||
}
|
||||
isFindingSpawn = false;
|
||||
}
|
||||
|
||||
// 4J - brought forward from 1.3.2
|
||||
void ServerLevel::generateBonusItemsNearSpawn()
|
||||
{
|
||||
// once we've found the initial spawn, try to find a location for the
|
||||
// starting bonus chest
|
||||
// 4J - added - scan the spawn area first to see if there's already a chest near here
|
||||
|
||||
static const int r = 20;
|
||||
int xs = levelData->getXSpawn();
|
||||
int zs = levelData->getZSpawn();
|
||||
for( int xx = -r; xx <= r; xx++ )
|
||||
for( int zz = -r; zz <= r; zz++ )
|
||||
{
|
||||
int x = xx + xs;
|
||||
int z = zz + zs;
|
||||
int y = getTopSolidBlock( x, z ) - 1;
|
||||
|
||||
if( getTile( x, y, z ) == Tile::chest_Id )
|
||||
{
|
||||
shared_ptr<ChestTileEntity> chest = dynamic_pointer_cast<ChestTileEntity>(getTileEntity(x, y, z));
|
||||
if (chest != NULL)
|
||||
{
|
||||
if( chest->isBonusChest )
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
BonusChestFeature *feature = new BonusChestFeature(RANDOM_BONUS_ITEMS, 16);
|
||||
for (int attempt = 0; attempt < 16; attempt++)
|
||||
{
|
||||
int x = levelData->getXSpawn() + random->nextInt(6) - random->nextInt(6);
|
||||
int z = levelData->getZSpawn() + random->nextInt(6) - random->nextInt(6);
|
||||
int y = getTopSolidBlock(x, z) + 1;
|
||||
|
||||
if (feature->place(this, random, x, y, z, (attempt == 15) ))
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
delete feature;
|
||||
}
|
||||
|
||||
Pos *ServerLevel::getDimensionSpecificSpawn()
|
||||
{
|
||||
return dimension->getSpawnPos();
|
||||
|
||||
@@ -77,7 +77,6 @@ public:
|
||||
protected:
|
||||
virtual void initializeLevel(LevelSettings *settings);
|
||||
virtual void setInitialSpawn(LevelSettings *settings);
|
||||
void generateBonusItemsNearSpawn(); // 4J - brought forward from 1.3.2
|
||||
|
||||
public:
|
||||
Pos *getDimensionSpecificSpawn();
|
||||
|
||||
@@ -185,7 +185,6 @@ void CConsoleMinecraftApp::TemporaryCreateGameStart()
|
||||
app.SetGameHostOption(eGameHostOption_GameType,GameType::CREATIVE->getId() ); // LevelSettings::GAMETYPE_SURVIVAL
|
||||
app.SetGameHostOption(eGameHostOption_LevelType, 0 );
|
||||
app.SetGameHostOption(eGameHostOption_Structures, 1 );
|
||||
app.SetGameHostOption(eGameHostOption_BonusChest, 0 );
|
||||
|
||||
app.SetGameHostOption(eGameHostOption_PvP, 1);
|
||||
app.SetGameHostOption(eGameHostOption_TrustPlayers, 1 );
|
||||
|
||||
Reference in new issue
Block a user