mirror of
https://github.com/smartcmd/MinecraftConsoles.git
synced 2026-08-20 09:57:09 +00:00
reimplement old world size's and add new Infinite world size option
This commit is contained in:
parent
be60dceca1
commit
bb7e5aa497
|
|
@ -1200,10 +1200,12 @@ void UIScene_CreateWorldMenu::CreateGame(UIScene_CreateWorldMenu* pClass, DWORD
|
|||
param->hellScale = 6;
|
||||
break;
|
||||
case 3:
|
||||
//param->xzSize = 5 * 64;
|
||||
//param->hellScale = 8;
|
||||
|
||||
// Large
|
||||
param->xzSize = LEVEL_LARGE_WIDTH;
|
||||
param->hellScale = HELL_LEVEL_MAX_SCALE;
|
||||
break;
|
||||
case 4:
|
||||
// Infinite
|
||||
param->xzSize = LEVEL_MAX_WIDTH;
|
||||
param->hellScale = HELL_LEVEL_MAX_SCALE;
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -6,12 +6,13 @@
|
|||
#define GAME_CREATE_ONLINE_TIMER_TIME 100
|
||||
|
||||
#ifdef _LARGE_WORLDS
|
||||
int m_iWorldSizeTitleA[4] =
|
||||
int m_iWorldSizeTitleA[5] =
|
||||
{
|
||||
IDS_WORLD_SIZE_TITLE_CLASSIC,
|
||||
IDS_WORLD_SIZE_TITLE_SMALL,
|
||||
IDS_WORLD_SIZE_TITLE_MEDIUM,
|
||||
IDS_WORLD_SIZE_TITLE_LARGE,
|
||||
IDS_WORLD_SIZE_TITLE_INFINITE,
|
||||
};
|
||||
#endif
|
||||
|
||||
|
|
@ -80,7 +81,7 @@ UIScene_LaunchMoreOptionsMenu::UIScene_LaunchMoreOptionsMenu(int iPad, void *ini
|
|||
m_labelRandomSeed.init(app.GetString(IDS_CREATE_NEW_WORLD_RANDOM_SEED));
|
||||
m_editSeed.init(m_params->seed, eControl_EditSeed);
|
||||
m_labelWorldSize.init(app.GetString(IDS_WORLD_SIZE));
|
||||
m_sliderWorldSize.init(app.GetString(m_iWorldSizeTitleA[m_params->worldSize]),eControl_WorldSize,0,3,m_params->worldSize);
|
||||
m_sliderWorldSize.init(app.GetString(m_iWorldSizeTitleA[m_params->worldSize]),eControl_WorldSize,0,4,m_params->worldSize);
|
||||
|
||||
m_checkboxes[eLaunchCheckbox_DisableSaving].init( app.GetString(IDS_DISABLE_SAVING), eLaunchCheckbox_DisableSaving, m_params->bDisableSaving );
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -8459,6 +8459,10 @@ Pokud se pokusíte postup uložit ve zkušební verzi, nabídne vám hra možnos
|
|||
<value>Velký</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klasický</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -258,6 +258,9 @@ Pokud se pokusíte postup uložit ve zkušební verzi, nabídne vám hra možnos
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Velký</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klasický</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8458,6 +8458,10 @@ Hvis du prøver at gemme, mens du bruger prøveversionen, får du mulighed for a
|
|||
<value>Stor</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klassisk</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -258,6 +258,9 @@ Hvis du prøver at gemme, mens du bruger prøveversionen, får du mulighed for a
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Stor</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klassisk</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8461,6 +8461,10 @@ Wenn du in der Testversion versuchst zu speichern, wird dir die Möglichkeit geg
|
|||
<value>Groß</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klassisch</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -259,6 +259,9 @@ Wenn du in der Testversion versuchst zu speichern, wird dir die Möglichkeit geg
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Groß</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klassisch</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8457,6 +8457,10 @@ Enchanted Books are used at the Anvil to apply enchantments to items. This gives
|
|||
<value>Μεγάλο</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Κλασικό</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -257,6 +257,9 @@
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Μεγάλο</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Κλασικό</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8459,6 +8459,10 @@ If you try to save while using the trial version, you will be given the option t
|
|||
<value>Large</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Classic</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -258,6 +258,9 @@ If you try to save while using the trial version, you will be given the option t
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Large</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Classic</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8472,6 +8472,10 @@ Si intentas guardar en la versión de prueba, se te dará la opción de comprar
|
|||
<value>Grande</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Clásico</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -258,6 +258,9 @@ Si intentas guardar en la versión de prueba, se te dará la opción de comprar
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Grande</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Clásico</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8460,6 +8460,10 @@ Si intentas guardar en la versión de prueba, se te dará la opción de comprar
|
|||
<value>Grande</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Clásico</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -259,6 +259,9 @@ Si intentas guardar en la versión de prueba, se te dará la opción de comprar
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Grande</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Clásico</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8459,6 +8459,10 @@ Jos yrität tallentaa käyttäessäsi kokeiluversiota, sinulle tarjotaan mahdoll
|
|||
<value>Suuri</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klassinen</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -258,6 +258,9 @@ Jos yrität tallentaa käyttäessäsi kokeiluversiota, sinulle tarjotaan mahdoll
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Suuri</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klassinen</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8463,6 +8463,10 @@ Si vous tentez de sauvegarder en utilisant la version d'essai, l'achat de la ver
|
|||
<value>Énorme</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Classique</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -258,6 +258,9 @@ Si vous tentez de sauvegarder en utilisant la version d'essai, l'achat de la ver
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Énorme</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Classique</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8460,6 +8460,10 @@ Se cerchi di salvare il gioco mentre è in uso la versione di prova, ti verrà o
|
|||
<value>Grande</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Classico</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -258,6 +258,9 @@ Se cerchi di salvare il gioco mentre è in uso la versione di prova, ti verrà o
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Grande</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Classico</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8456,6 +8456,10 @@ Minecraft Xbox One 版は、初期設定でマルチプレイヤー ゲームに
|
|||
<value>ラージ</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>クラシック</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -258,6 +258,9 @@ Minecraft Xbox One 版は、初期設定でマルチプレイヤー ゲームに
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>ラージ</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>クラシック</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8458,6 +8458,10 @@ Xbox 360 본체용 Minecraft는 멀티 플레이 게임이 기본값으로 되
|
|||
<value>큼</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>클래식</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -258,6 +258,9 @@ Xbox 360 본체용 Minecraft는 멀티 플레이 게임이 기본값으로 되
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>큼</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>클래식</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8459,6 +8459,10 @@ Hvis du prøver å lagre mens du bruker prøveversjonen, får du muligheten til
|
|||
<value>Stor</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klassisk</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -258,6 +258,9 @@ Hvis du prøver å lagre mens du bruker prøveversjonen, får du muligheten til
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Stor</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klassisk</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8459,6 +8459,10 @@ Als je in de demo probeert op te slaan, krijg je de optie om de volledige versie
|
|||
<value>Groot</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klassiek</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -258,6 +258,9 @@ Als je in de demo probeert op te slaan, krijg je de optie om de volledige versie
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Groot</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klassiek</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8457,6 +8457,10 @@ Przy próbie zapisania gry z wersją testową pojawi się propozycja zakupu peł
|
|||
<value>Duży</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klasyczny</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -258,6 +258,9 @@ Przy próbie zapisania gry z wersją testową pojawi się propozycja zakupu peł
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Duży</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klasyczny</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8450,6 +8450,10 @@ Não desligue o console Xbox One enquanto este ícone estiver na tela.</value>
|
|||
<value>Grande</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Clássico</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -256,6 +256,9 @@ Não desligue o console Xbox One enquanto este ícone estiver na tela.</value>
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Grande</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Clássico</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8456,6 +8456,10 @@ Se tentares guardar enquanto usas a versão de avaliação, ser-te-á apresentad
|
|||
<value>Grande</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Clássico</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -258,6 +258,9 @@ Se tentares guardar enquanto usas a versão de avaliação, ser-te-á apresentad
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Grande</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Clássico</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8456,6 +8456,10 @@ Enchanted Books are used at the Anvil to apply enchantments to items. This gives
|
|||
<value>Большой</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Классика</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -254,6 +254,9 @@
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Большой</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Классика</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8459,6 +8459,10 @@ Ak sa pri používaní skúšobnej verzie pokúsite o uloženie, zobrazí sa mo
|
|||
<value>Veľký</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klasický</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -258,6 +258,9 @@ Ak sa pri používaní skúšobnej verzie pokúsite o uloženie, zobrazí sa mo
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Veľký</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klasický</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8459,6 +8459,10 @@ If you try to save while using the trial version, you will be given the option t
|
|||
<value>Large</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Classic</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -258,6 +258,9 @@ If you try to save while using the trial version, you will be given the option t
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Large</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Classic</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8454,6 +8454,10 @@ Om du försöker spara kommer du få möjligheten att köpa den kompletta versio
|
|||
<value>Stor</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klassisk</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -254,6 +254,9 @@ Om du försöker spara kommer du få möjligheten att köpa den kompletta versio
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Stor</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klassisk</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8455,6 +8455,10 @@ Minecraft 在 Xbox One 主机上默认采用多人游戏。如果在高清模式
|
|||
<value>大型</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>经典</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -254,6 +254,9 @@ Minecraft 在 Xbox One 主机上默认采用多人游戏。如果在高清模式
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>大型</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>经典</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8465,6 +8465,10 @@ Xbox One 主機上的 Minecraft 預設為多人遊戲。如果您選擇高畫質
|
|||
<value>大</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>經典</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -262,6 +262,9 @@ Xbox One 主機上的 Minecraft 預設為多人遊戲。如果您選擇高畫質
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>大</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>經典</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -1955,3 +1955,4 @@
|
|||
#define IDS_YOU_DIED 1953
|
||||
#define IDS_YOU_HAVE 1954
|
||||
#define IDS_ZOMBIE 1955
|
||||
#define IDS_WORLD_SIZE_TITLE_INFINITE 1956
|
||||
|
|
|
|||
|
|
@ -46,6 +46,7 @@
|
|||
#include "..\Minecraft.World\net.minecraft.world.level.h"
|
||||
#include "..\Minecraft.World\net.minecraft.world.level.dimension.h"
|
||||
#include "..\Minecraft.World\net.minecraft.world.level.tile.h"
|
||||
#include "..\Minecraft.World\net.minecraft.world.level.storage.h"
|
||||
#include "..\Minecraft.World\net.minecraft.world.phys.h"
|
||||
#include "..\Minecraft.World\net.minecraft.world.entity.player.h"
|
||||
#include "..\Minecraft.World\net.minecraft.world.item.h"
|
||||
|
|
@ -143,6 +144,7 @@ LevelRenderer::LevelRenderer(Minecraft *mc, Textures *textures)
|
|||
InitializeCriticalSection(&m_csRenderableTileEntities);
|
||||
#ifdef _LARGE_WORLDS
|
||||
InitializeCriticalSection(&m_csChunkFlags);
|
||||
m_isInfinite = false;
|
||||
#endif
|
||||
|
||||
dirtyChunkPresent = false;
|
||||
|
|
@ -353,6 +355,9 @@ void LevelRenderer::setLevel(int playerIndex, MultiPlayerLevel *level)
|
|||
level->addListener(this);
|
||||
}
|
||||
|
||||
#ifdef _LARGE_WORLDS
|
||||
m_isInfinite = isInfiniteWorld(level->getLevelData()->getXZSize());
|
||||
#endif
|
||||
allChanged(playerIndex);
|
||||
}
|
||||
else
|
||||
|
|
|
|||
|
|
@ -133,6 +133,9 @@ private:
|
|||
ClipChunkArray chunks[4]; // 4J - now one per player
|
||||
int lastPlayerCount[4]; // 4J - added
|
||||
int xChunks, yChunks, zChunks;
|
||||
#ifdef _LARGE_WORLDS
|
||||
bool m_isInfinite; // true when overworld is infinite (rolling window render)
|
||||
#endif
|
||||
int chunkLists;
|
||||
Minecraft *mc;
|
||||
TileRenderer *tileRenderer[4]; // 4J - now one per player
|
||||
|
|
|
|||
|
|
@ -19,6 +19,9 @@ MultiPlayerChunkCache::MultiPlayerChunkCache(Level *level)
|
|||
{
|
||||
// For infinite worlds, m_XZSize is kept for compatibility but the cache is unbounded
|
||||
m_XZSize = level->dimension->getXZSize();
|
||||
#ifdef _LARGE_WORLDS
|
||||
m_isInfinite = isInfiniteWorld(m_XZSize);
|
||||
#endif
|
||||
|
||||
emptyChunk = new EmptyLevelChunk(level, byteArray(16 * 16 * Level::maxBuildHeight), 0, 0);
|
||||
|
||||
|
|
@ -126,6 +129,15 @@ bool MultiPlayerChunkCache::hasChunk(int x, int z)
|
|||
// 4J added - find out if we actually really do have a chunk in our cache
|
||||
bool MultiPlayerChunkCache::reallyHasChunk(int x, int z)
|
||||
{
|
||||
#ifdef _LARGE_WORLDS
|
||||
// For finite worlds, out-of-bounds coordinates are treated as "exists"
|
||||
if (!m_isInfinite)
|
||||
{
|
||||
int half = m_XZSize / 2;
|
||||
if (x < -half || x >= half || z < -half || z >= half) return true;
|
||||
}
|
||||
#endif
|
||||
|
||||
int64_t key = mpKey(x, z);
|
||||
EnterCriticalSection(&m_csLoadCreate);
|
||||
auto it = m_chunkMap.find(key);
|
||||
|
|
@ -174,6 +186,15 @@ void MultiPlayerChunkCache::drop(int x, int z)
|
|||
|
||||
LevelChunk *MultiPlayerChunkCache::create(int x, int z)
|
||||
{
|
||||
#ifdef _LARGE_WORLDS
|
||||
// For finite worlds, refuse to create chunks outside the world boundary
|
||||
if (!m_isInfinite)
|
||||
{
|
||||
int half = m_XZSize / 2;
|
||||
if (x < -half || x >= half || z < -half || z >= half) return emptyChunk;
|
||||
}
|
||||
#endif
|
||||
|
||||
int64_t key = mpKey(x, z);
|
||||
|
||||
EnterCriticalSection(&m_csLoadCreate);
|
||||
|
|
@ -241,6 +262,19 @@ LevelChunk *MultiPlayerChunkCache::create(int x, int z)
|
|||
|
||||
LevelChunk *MultiPlayerChunkCache::getChunk(int x, int z)
|
||||
{
|
||||
#ifdef _LARGE_WORLDS
|
||||
// For finite worlds, out-of-bounds coordinates return the water/empty chunk
|
||||
if (!m_isInfinite)
|
||||
{
|
||||
int half = m_XZSize / 2;
|
||||
if (x < -half || x >= half || z < -half || z >= half)
|
||||
{
|
||||
// Return waterChunk for overworld edge (visual sea), emptyChunk for other dims
|
||||
return (waterChunk != NULL) ? waterChunk : emptyChunk;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
EnterCriticalSection(&m_csLoadCreate);
|
||||
auto it = m_chunkMap.find(mpKey(x, z));
|
||||
LevelChunk *chunk = (it != m_chunkMap.end() && it->second != NULL) ? it->second : NULL;
|
||||
|
|
|
|||
|
|
@ -24,6 +24,10 @@ private:
|
|||
// 4J - added for multithreaded support
|
||||
CRITICAL_SECTION m_csLoadCreate;
|
||||
|
||||
#ifdef _LARGE_WORLDS
|
||||
bool m_isInfinite; // true when m_XZSize >= LEVEL_MAX_WIDTH (infinite world)
|
||||
#endif
|
||||
|
||||
// Deferred deletion: chunks removed from the map but kept alive briefly
|
||||
// so any in-flight rebuild thread that already obtained the pointer can finish.
|
||||
// Each entry stores {chunk, tickAtWhichToDelete}.
|
||||
|
|
|
|||
|
|
@ -8531,6 +8531,10 @@ Du må ikke slukke for dit PlayStation®4-system, når dette ikon vises på skæ
|
|||
<value>Stor</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klassisk</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -175,6 +175,9 @@ Du må ikke slukke for dit PlayStation®4-system, når dette ikon vises på skæ
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Stor</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klassisk</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8309,6 +8309,10 @@ Wenn du versuchst, mit der Testversion zu speichern, wird dir die Möglichkeit g
|
|||
<value>Groß</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klassisch</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -175,6 +175,9 @@ Wenn du versuchst, mit der Testversion zu speichern, wird dir die Möglichkeit g
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Groß</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klassisch</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8527,6 +8527,10 @@
|
|||
<value>Μεγάλος</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Κλασικός</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -179,6 +179,9 @@
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Μεγάλος</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Κλασικός</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8332,6 +8332,10 @@ Si intentas guardar mientras usas esta versión de prueba, tendrás la opción d
|
|||
<value>Grande</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Clásico</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -178,6 +178,9 @@ Si intentas guardar mientras usas esta versión de prueba, tendrás la opción d
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Grande</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Clásico</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8353,6 +8353,10 @@ Jos yrität tallentaa käyttäessäsi koeversiota, sinulle tarjotaan mahdollisuu
|
|||
<value>Suuri</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klassinen</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -177,6 +177,9 @@ Jos yrität tallentaa käyttäessäsi koeversiota, sinulle tarjotaan mahdollisuu
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Suuri</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klassinen</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8222,6 +8222,10 @@ Si vous tentez de sauvegarder en utilisant cette version d'essai, il vous sera p
|
|||
<value>Grand</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Classique</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -176,6 +176,9 @@ Si vous tentez de sauvegarder en utilisant cette version d'essai, il vous sera p
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Grand</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Classique</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8327,6 +8327,10 @@ Se cerchi di salvare mentre usi la versione di prova, avrai la possibilità di a
|
|||
<value>Grande</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Classico</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -177,6 +177,9 @@ Se cerchi di salvare mentre usi la versione di prova, avrai la possibilità di a
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Grande</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Classico</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8241,6 +8241,10 @@ OK を選択すると、この世界でのプレイを終了します</value>
|
|||
<value>大</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>クラシック</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -176,6 +176,9 @@
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>大</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>クラシック</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8359,6 +8359,10 @@ Ender에 들어서면 친구가 그들의 지도에서 요새 내부에 있는 E
|
|||
<value>대</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>클래식</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -178,6 +178,9 @@
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>대</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>클래식</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8565,6 +8565,10 @@ Si intentas guardar mientras usas la versión de prueba, se te dará la opción
|
|||
<value>Grande</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Clásico</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -178,6 +178,9 @@ Si intentas guardar mientras usas la versión de prueba, se te dará la opción
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Grande</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Clásico</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8548,6 +8548,10 @@ Als je probeert op te slaan tijdens het gebruik van de testversie, krijg je de m
|
|||
<value>Groot</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klassiek</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -177,6 +177,9 @@ Als je probeert op te slaan tijdens het gebruik van de testversie, krijg je de m
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Groot</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klassiek</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8526,6 +8526,10 @@ Hvis du prøver å lagre mens du bruker prøveversjonen, vil du få spørsmål o
|
|||
<value>Stor</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klassisk</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -178,6 +178,9 @@ Hvis du prøver å lagre mens du bruker prøveversjonen, vil du få spørsmål o
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Stor</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klassisk</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8427,6 +8427,10 @@ Jeżeli spróbujesz zapisać postęp podczas korzystania z wersji próbnej, zost
|
|||
<value>Duży</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klasyczny</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -177,6 +177,9 @@ Jeżeli spróbujesz zapisać postęp podczas korzystania z wersji próbnej, zost
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Duży</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klasyczny</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8555,6 +8555,10 @@ Se tentar salvar enquanto estiver usando a versão de avaliação, a versão com
|
|||
<value>Grande</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Clássico</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -177,6 +177,9 @@ Se tentar salvar enquanto estiver usando a versão de avaliação, a versão com
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Grande</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Clássico</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8355,6 +8355,10 @@ Se tentares gravar enquanto usas a versão de avaliação, ser-te-á dada a opç
|
|||
<value>Grande</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Clássico</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -178,6 +178,9 @@ Se tentares gravar enquanto usas a versão de avaliação, ser-te-á dada a opç
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Grande</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Clássico</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8556,6 +8556,10 @@ Minecraft на системе PlayStation®4 по умолчанию являе
|
|||
<value>Большой</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Классический</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -178,6 +178,9 @@ Minecraft на системе PlayStation®4 по умолчанию являе
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Большой</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Классический</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8571,6 +8571,10 @@ If you try to save while using the trial version, you will be given the option t
|
|||
<value>Large</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Classic</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -177,6 +177,9 @@ If you try to save while using the trial version, you will be given the option t
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Large</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Classic</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8533,6 +8533,10 @@ Om du försöker spara medan du använder demoversionen kommer du att bli tillfr
|
|||
<value>Stor</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klassisk</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -177,6 +177,9 @@ Om du försöker spara medan du använder demoversionen kommer du att bli tillfr
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Stor</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klassisk</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8562,6 +8562,10 @@ Deneme sürümünü kullanırken oyunu kaydetmeye çalışırsan, tam sürümü
|
|||
<value>Büyük</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klasik</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -182,6 +182,9 @@ Deneme sürümünü kullanırken oyunu kaydetmeye çalışırsan, tam sürümü
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Büyük</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Klasik</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -8380,6 +8380,10 @@ Minecraft 是一款可讓您放置方塊來建造夢想世界的遊戲。不過
|
|||
<value>大</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>傳統</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -179,6 +179,9 @@
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>大</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>傳統</value>
|
||||
</data>
|
||||
|
|
|
|||
|
|
@ -1990,3 +1990,4 @@
|
|||
#define IDS_YOU_DIED 1988
|
||||
#define IDS_YOU_HAVE 1989
|
||||
#define IDS_ZOMBIE 1990
|
||||
#define IDS_WORLD_SIZE_TITLE_INFINITE 1991
|
||||
|
|
|
|||
|
|
@ -586,6 +586,11 @@ void PlayerChunkMap::add(shared_ptr<ServerPlayer> player)
|
|||
player->lastMoveX = player->x;
|
||||
player->lastMoveZ = player->z;
|
||||
|
||||
#ifdef _LARGE_WORLDS
|
||||
int half = level->getLevelData()->getXZSize() / 2;
|
||||
bool isInfinite = isInfiniteWorld(level->getLevelData()->getXZSize());
|
||||
#endif
|
||||
|
||||
// for (int x = xc - radius; x <= xc + radius; x++)
|
||||
// for (int z = zc - radius; z <= zc + radius; z++) {
|
||||
// getChunk(x, z, true).add(player);
|
||||
|
|
@ -598,6 +603,9 @@ void PlayerChunkMap::add(shared_ptr<ServerPlayer> player)
|
|||
int dz = 0;
|
||||
|
||||
// Origin
|
||||
#ifdef _LARGE_WORLDS
|
||||
if (isInfinite || (xc >= -half && xc < half && zc >= -half && zc < half))
|
||||
#endif
|
||||
getChunk(xc, zc, true)->add(player, false);
|
||||
|
||||
// 4J Added so we send an area packet rather than one visibility packet per chunk
|
||||
|
|
@ -625,6 +633,9 @@ void PlayerChunkMap::add(shared_ptr<ServerPlayer> player)
|
|||
if( targetZ > maxZ ) maxZ = targetZ;
|
||||
if( targetZ < minZ ) minZ = targetZ;
|
||||
|
||||
#ifdef _LARGE_WORLDS
|
||||
if (isInfinite || (targetX >= -half && targetX < half && targetZ >= -half && targetZ < half))
|
||||
#endif
|
||||
getChunk(targetX, targetZ, true)->add(player, false);
|
||||
}
|
||||
}
|
||||
|
|
@ -645,10 +656,24 @@ void PlayerChunkMap::add(shared_ptr<ServerPlayer> player)
|
|||
if( targetZ > maxZ ) maxZ = targetZ;
|
||||
if( targetZ < minZ ) minZ = targetZ;
|
||||
|
||||
#ifdef _LARGE_WORLDS
|
||||
if (isInfinite || (targetX >= -half && targetX < half && targetZ >= -half && targetZ < half))
|
||||
#endif
|
||||
getChunk(targetX, targetZ, true)->add(player, false);
|
||||
}
|
||||
// CraftBukkit end
|
||||
|
||||
#ifdef _LARGE_WORLDS
|
||||
// Clamp visibility area to world bounds for finite worlds
|
||||
if (!isInfinite)
|
||||
{
|
||||
if (minX < -half) minX = -half;
|
||||
if (maxX >= half) maxX = half - 1;
|
||||
if (minZ < -half) minZ = -half;
|
||||
if (maxZ >= half) maxZ = half - 1;
|
||||
}
|
||||
#endif
|
||||
|
||||
player->connection->send( shared_ptr<ChunkVisibilityAreaPacket>( new ChunkVisibilityAreaPacket(minX, maxX, minZ, maxZ) ) );
|
||||
|
||||
#ifdef _LARGE_WORLDS
|
||||
|
|
@ -719,12 +744,20 @@ void PlayerChunkMap::move(shared_ptr<ServerPlayer> player)
|
|||
int zd = zc - last_zc;
|
||||
if (xd == 0 && zd == 0) return;
|
||||
|
||||
#ifdef _LARGE_WORLDS
|
||||
int half = level->getLevelData()->getXZSize() / 2;
|
||||
bool isInfinite = isInfiniteWorld(level->getLevelData()->getXZSize());
|
||||
#endif
|
||||
|
||||
for (int x = xc - radius; x <= xc + radius; x++)
|
||||
for (int z = zc - radius; z <= zc + radius; z++)
|
||||
{
|
||||
if (!chunkInRange(x, z, last_xc, last_zc))
|
||||
{
|
||||
// 4J - changed from separate getChunk & add so we can wrap these operations up and queue
|
||||
#ifdef _LARGE_WORLDS
|
||||
if (isInfinite || (x >= -half && x < half && z >= -half && z < half))
|
||||
#endif
|
||||
getChunkAndAddPlayer(x, z, player);
|
||||
}
|
||||
|
||||
|
|
@ -772,6 +805,11 @@ void PlayerChunkMap::setRadius(int newRadius)
|
|||
{
|
||||
if( radius != newRadius )
|
||||
{
|
||||
#ifdef _LARGE_WORLDS
|
||||
int half = level->getLevelData()->getXZSize() / 2;
|
||||
bool isInfinite = isInfiniteWorld(level->getLevelData()->getXZSize());
|
||||
#endif
|
||||
|
||||
PlayerList* players = level->getServer()->getPlayerList();
|
||||
for( int i = 0;i < players->players.size();i += 1 )
|
||||
{
|
||||
|
|
@ -787,6 +825,9 @@ void PlayerChunkMap::setRadius(int newRadius)
|
|||
// check if this chunk is outside the old radius area
|
||||
if ( x < xc - radius || x > xc + radius || z < zc - radius || z > zc + radius )
|
||||
{
|
||||
#ifdef _LARGE_WORLDS
|
||||
if (isInfinite || (x >= -half && x < half && z >= -half && z < half))
|
||||
#endif
|
||||
getChunkAndAddPlayer(x, z, player);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -24,6 +24,9 @@ ServerChunkCache::ServerChunkCache(ServerLevel *level, ChunkStorage *storage, Ch
|
|||
// For infinite worlds, m_XZSize is no longer used for cache sizing.
|
||||
// Keep it at a large value so code that reads it (e.g. dimension getXZSize) still works.
|
||||
this->m_XZSize = source->m_XZSize;
|
||||
#ifdef _LARGE_WORLDS
|
||||
this->m_isInfinite = isInfiniteWorld(this->m_XZSize);
|
||||
#endif
|
||||
|
||||
InitializeCriticalSectionAndSpinCount(&m_csLoadCreate,4000);
|
||||
}
|
||||
|
|
@ -48,7 +51,15 @@ ServerChunkCache::~ServerChunkCache()
|
|||
|
||||
bool ServerChunkCache::hasChunk(int x, int z)
|
||||
{
|
||||
// Infinite worlds: any coordinate is valid; check if chunk is loaded
|
||||
#ifdef _LARGE_WORLDS
|
||||
// For finite worlds, out-of-bounds coordinates are treated as "exists" (sea/empty edge)
|
||||
if (!m_isInfinite)
|
||||
{
|
||||
int half = m_XZSize / 2;
|
||||
if (x < -half || x >= half || z < -half || z >= half) return true;
|
||||
}
|
||||
#endif
|
||||
// Check if chunk is loaded in the map
|
||||
EnterCriticalSection(&m_csLoadCreate);
|
||||
auto it = m_chunkMap.find(chunkKey(x, z));
|
||||
bool result = (it != m_chunkMap.end() && it->second != NULL);
|
||||
|
|
@ -91,6 +102,15 @@ LevelChunk *ServerChunkCache::create(int x, int z)
|
|||
|
||||
LevelChunk *ServerChunkCache::create(int x, int z, bool asyncPostProcess) // 4J - added extra parameter
|
||||
{
|
||||
#ifdef _LARGE_WORLDS
|
||||
// For finite worlds, refuse to create chunks outside the world boundary
|
||||
if (!m_isInfinite)
|
||||
{
|
||||
int half = m_XZSize / 2;
|
||||
if (x < -half || x >= half || z < -half || z >= half) return emptyChunk;
|
||||
}
|
||||
#endif
|
||||
|
||||
int64_t key = chunkKey(x, z);
|
||||
|
||||
EnterCriticalSection(&m_csLoadCreate);
|
||||
|
|
@ -130,6 +150,17 @@ LevelChunk *ServerChunkCache::create(int x, int z, bool asyncPostProcess) // 4J
|
|||
// they are in fail ServerChunkCache::hasChunk.
|
||||
source->lightChunk(chunk);
|
||||
|
||||
// Prevent cascading chunk creation: when isFindingSpawn or autoCreate is true,
|
||||
// getChunk() auto-creates missing chunks. Post-processing and updatePostProcessFlags
|
||||
// call getChunk() for neighbors, which would recursively create() those neighbors,
|
||||
// whose post-processing creates more neighbors, flood-filling the entire world.
|
||||
// Temporarily disable auto-creation so these internal calls return emptyChunk
|
||||
// for missing neighbors instead of cascading.
|
||||
bool savedFindingSpawn = level->isFindingSpawn;
|
||||
bool savedAutoCreate = autoCreate;
|
||||
level->isFindingSpawn = false;
|
||||
autoCreate = false;
|
||||
|
||||
updatePostProcessFlags( x, z );
|
||||
|
||||
m_loadedChunkList.push_back(chunk);
|
||||
|
|
@ -155,6 +186,10 @@ LevelChunk *ServerChunkCache::create(int x, int z, bool asyncPostProcess) // 4J
|
|||
if( hasChunk( x, z - 1) && hasChunk( x , z - 2 ) && hasChunk( x - 1, z - 1 ) && hasChunk( x + 1, z - 1 ) ) chunk->checkChests( this, x, z - 1);
|
||||
if( hasChunk( x - 1, z ) && hasChunk( x + 1, z ) && hasChunk ( x, z - 1 ) && hasChunk( x, z + 1 ) ) chunk->checkChests( this, x, z );
|
||||
|
||||
// Restore auto-creation flags
|
||||
level->isFindingSpawn = savedFindingSpawn;
|
||||
autoCreate = savedAutoCreate;
|
||||
|
||||
LeaveCriticalSection(&m_csLoadCreate);
|
||||
|
||||
#ifdef __PS3__
|
||||
|
|
@ -168,6 +203,15 @@ LevelChunk *ServerChunkCache::create(int x, int z, bool asyncPostProcess) // 4J
|
|||
// This is used when sharing server chunk data on the main thread
|
||||
LevelChunk *ServerChunkCache::getChunk(int x, int z)
|
||||
{
|
||||
#ifdef _LARGE_WORLDS
|
||||
// For finite worlds, out-of-bounds coordinates return the empty chunk
|
||||
if (!m_isInfinite)
|
||||
{
|
||||
int half = m_XZSize / 2;
|
||||
if (x < -half || x >= half || z < -half || z >= half) return emptyChunk;
|
||||
}
|
||||
#endif
|
||||
|
||||
EnterCriticalSection(&m_csLoadCreate);
|
||||
auto it = m_chunkMap.find(chunkKey(x, z));
|
||||
LevelChunk *chunk = (it != m_chunkMap.end() && it->second != NULL) ? it->second : NULL;
|
||||
|
|
@ -377,6 +421,15 @@ void ServerChunkCache::flagPostProcessComplete(short flag, int x, int z)
|
|||
|
||||
void ServerChunkCache::postProcess(ChunkSource *parent, int x, int z )
|
||||
{
|
||||
#ifdef _LARGE_WORLDS
|
||||
// Don't run decoration/structures at out-of-bounds coordinates
|
||||
if (!m_isInfinite)
|
||||
{
|
||||
int half = m_XZSize / 2;
|
||||
if (x < -half || x >= half || z < -half || z >= half) return;
|
||||
}
|
||||
#endif
|
||||
|
||||
LevelChunk *chunk = getChunk(x, z);
|
||||
if ( (chunk->terrainPopulated & LevelChunk::sTerrainPopulatedFromHere) == 0 )
|
||||
{
|
||||
|
|
@ -393,7 +446,38 @@ void ServerChunkCache::postProcess(ChunkSource *parent, int x, int z )
|
|||
// chunks exist as that's determined before post-processing can even run
|
||||
chunk->terrainPopulated |= LevelChunk::sTerrainPopulatedFromHere;
|
||||
|
||||
// Infinite worlds: no fixed world edges, so no edge-chunk special-casing needed.
|
||||
#ifdef _LARGE_WORLDS
|
||||
// For finite worlds, edge chunks have missing neighbours that will never post-process,
|
||||
// so fill in the appropriate flags. For infinite worlds, no edges exist.
|
||||
if (!m_isInfinite)
|
||||
{
|
||||
int half = m_XZSize / 2;
|
||||
if(x == -half) // Furthest west
|
||||
{
|
||||
chunk->terrainPopulated |= LevelChunk::sTerrainPopulatedFromW;
|
||||
chunk->terrainPopulated |= LevelChunk::sTerrainPopulatedFromSW;
|
||||
chunk->terrainPopulated |= LevelChunk::sTerrainPopulatedFromNW;
|
||||
}
|
||||
if(x == (half - 1)) // Furthest east
|
||||
{
|
||||
chunk->terrainPopulated |= LevelChunk::sTerrainPopulatedFromE;
|
||||
chunk->terrainPopulated |= LevelChunk::sTerrainPopulatedFromSE;
|
||||
chunk->terrainPopulated |= LevelChunk::sTerrainPopulatedFromNE;
|
||||
}
|
||||
if(z == -half) // Furthest south
|
||||
{
|
||||
chunk->terrainPopulated |= LevelChunk::sTerrainPopulatedFromS;
|
||||
chunk->terrainPopulated |= LevelChunk::sTerrainPopulatedFromSW;
|
||||
chunk->terrainPopulated |= LevelChunk::sTerrainPopulatedFromSE;
|
||||
}
|
||||
if(z == (half - 1)) // Furthest north
|
||||
{
|
||||
chunk->terrainPopulated |= LevelChunk::sTerrainPopulatedFromN;
|
||||
chunk->terrainPopulated |= LevelChunk::sTerrainPopulatedFromNW;
|
||||
chunk->terrainPopulated |= LevelChunk::sTerrainPopulatedFromNE;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
// Set flags for post-processing being complete for neighbouring chunks. This also performs actions if this post-processing completes
|
||||
// a full set of post-processing flags for one of these neighbours.
|
||||
|
|
|
|||
|
|
@ -34,6 +34,7 @@ private:
|
|||
ServerLevel *level;
|
||||
|
||||
#ifdef _LARGE_WORLDS
|
||||
bool m_isInfinite; // true when m_XZSize >= LEVEL_MAX_WIDTH (infinite world)
|
||||
deque<LevelChunk *> m_toDrop;
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -756,8 +756,22 @@ void ServerLevel::setInitialSpawn(LevelSettings *levelSettings)
|
|||
int xSpawn = 0; // (Level.MAX_LEVEL_SIZE - 100) * 0;
|
||||
int ySpawn = dimension->getSpawnYPosition();
|
||||
int zSpawn = 0; // (Level.MAX_LEVEL_SIZE - 100) * 0;
|
||||
#ifdef _LARGE_WORLDS
|
||||
int minXZ, maxXZ;
|
||||
if (isInfiniteWorld(dimension->getXZSize()))
|
||||
{
|
||||
minXZ = -Level::MAX_LEVEL_SIZE;
|
||||
maxXZ = Level::MAX_LEVEL_SIZE - 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
minXZ = -(dimension->getXZSize() * 16) / 2;
|
||||
maxXZ = (dimension->getXZSize() * 16) / 2 - 1;
|
||||
}
|
||||
#else
|
||||
int minXZ = -Level::MAX_LEVEL_SIZE;
|
||||
int maxXZ = Level::MAX_LEVEL_SIZE - 1;
|
||||
#endif
|
||||
|
||||
if (findBiome != NULL)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -18,6 +18,7 @@
|
|||
#include "..\Minecraft.World\net.minecraft.world.entity.projectile.h"
|
||||
#include "..\Minecraft.World\net.minecraft.world.entity.h"
|
||||
#include "..\Minecraft.World\net.minecraft.world.item.h"
|
||||
#include "..\Minecraft.World\ChunkSource.h"
|
||||
#include "..\Minecraft.World\net.minecraft.world.item.trading.h"
|
||||
#include "..\Minecraft.World\net.minecraft.world.entity.item.h"
|
||||
#include "..\Minecraft.World\net.minecraft.world.level.tile.entity.h"
|
||||
|
|
@ -65,8 +66,22 @@ ServerPlayer::ServerPlayer(MinecraftServer *server, Level *level, const wstring&
|
|||
int attemptCount = 0;
|
||||
int xx2, yy2, zz2;
|
||||
|
||||
#ifdef _LARGE_WORLDS
|
||||
int minXZ, maxXZ;
|
||||
if (isInfiniteWorld(level->getLevelData()->getXZSize()))
|
||||
{
|
||||
minXZ = -Level::MAX_LEVEL_SIZE;
|
||||
maxXZ = Level::MAX_LEVEL_SIZE - 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
minXZ = -(level->getLevelData()->getXZSize() * 16) / 2;
|
||||
maxXZ = (level->getLevelData()->getXZSize() * 16) / 2 - 1;
|
||||
}
|
||||
#else
|
||||
int minXZ = -Level::MAX_LEVEL_SIZE;
|
||||
int maxXZ = Level::MAX_LEVEL_SIZE - 1;
|
||||
#endif
|
||||
|
||||
bool playerNear = false;
|
||||
do
|
||||
|
|
@ -445,7 +460,7 @@ void ServerPlayer::doChunkSendingTick(bool dontDelayChunks)
|
|||
for (unsigned int i = 0; i < tes->size(); i++)
|
||||
{
|
||||
// 4J Stu - Added delay param to ensure that these arrive after the BRUPs from above
|
||||
// Fix for #9169 - ART : Sign text is replaced with the words “Awaiting approval”.
|
||||
// Fix for #9169 - ART : Sign text is replaced with the words <EFBFBD>Awaiting approval<61>.
|
||||
broadcast(tes->at(i), !connection->isLocal() && !dontDelayChunks);
|
||||
}
|
||||
delete tes;
|
||||
|
|
|
|||
|
|
@ -258,6 +258,9 @@ If you try to save while using the trial version, you will be given the option t
|
|||
<data name="IDS_WORLD_SIZE_TITLE_LARGE">
|
||||
<value>Large</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_INFINITE">
|
||||
<value>Infinite</value>
|
||||
</data>
|
||||
<data name="IDS_WORLD_SIZE_TITLE_CLASSIC">
|
||||
<value>Classic</value>
|
||||
</data>
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue