Suggestions
This commit is contained in:
parent
b73bf1a1e3
commit
156c9851b8
@ -447,6 +447,15 @@ bool cIniFile::SetValueI(const AString & a_KeyName, const AString & a_ValueName,
|
||||
|
||||
|
||||
|
||||
bool cIniFile::SetValueI(const AString & a_Keyname, const AString & a_ValueName, const Int64 a_Value, const bool a_CreateIfNotExists)
|
||||
{
|
||||
return SetValue(a_Keyname, a_ValueName, Printf("lld", a_Value), a_CreateIfNotExists);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
bool cIniFile::SetValueF(const AString & a_KeyName, const AString & a_ValueName, double const a_Value, const bool a_CreateIfNotExists)
|
||||
{
|
||||
return SetValue(a_KeyName, a_ValueName, Printf("%f", a_Value), a_CreateIfNotExists);
|
||||
@ -571,6 +580,17 @@ int cIniFile::GetValueSetI(const AString & keyname, const AString & valuename, c
|
||||
|
||||
|
||||
|
||||
Int64 cIniFile::GetValueSetI(const AString & keyname, const AString & valuename, const Int64 defValue)
|
||||
{
|
||||
AString Data;
|
||||
Printf(Data, "%lld", defValue);
|
||||
return std::stoll(GetValueSet(keyname, valuename, Data));
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
bool cIniFile::DeleteValueByID(const int keyID, const int valueID)
|
||||
{
|
||||
if ((keyID < (int)keys.size()) && (valueID < (int)keys[keyID].names.size()))
|
||||
|
@ -119,6 +119,7 @@ public:
|
||||
AString GetValueSet (const AString & keyname, const AString & valuename, const AString & defValue = "");
|
||||
double GetValueSetF(const AString & keyname, const AString & valuename, const double defValue = 0.0);
|
||||
int GetValueSetI(const AString & keyname, const AString & valuename, const int defValue = 0);
|
||||
Int64 GetValueSetI(const AString & keyname, const AString & valuename, const Int64 defValue = 0);
|
||||
bool GetValueSetB(const AString & keyname, const AString & valuename, const bool defValue = false)
|
||||
{
|
||||
return (GetValueSetI(keyname, valuename, defValue ? 1 : 0) != 0);
|
||||
@ -141,6 +142,7 @@ public:
|
||||
bool SetValue (const int keyID, const int valueID, const AString & value);
|
||||
bool SetValue (const AString & a_KeyName, const AString & a_ValueName, const AString & a_Value, const bool a_CreateIfNotExists = true);
|
||||
bool SetValueI(const AString & a_KeyName, const AString & a_ValueName, const int a_Value, const bool a_CreateIfNotExists = true);
|
||||
bool SetValueI(const AString & a_Keyname, const AString & a_ValueName, const Int64 a_Value, const bool a_CreateIfNotExists = true);
|
||||
bool SetValueB(const AString & a_KeyName, const AString & a_ValueName, const bool a_Value, const bool a_CreateIfNotExists = true)
|
||||
{
|
||||
return SetValueI(a_KeyName, a_ValueName, int(a_Value), a_CreateIfNotExists);
|
||||
|
@ -37,7 +37,9 @@ public:
|
||||
|
||||
virtual void SetTimeOfDay(Int64 a_TimeOfDay) = 0;
|
||||
|
||||
/** Returns true if the current weather has any precipitation - rain or storm */
|
||||
/** Returns true if the current weather has any precipitation - rain or storm
|
||||
Does not check if biome has no downfall, use cChunk::GetBiomeAt(RelX, RelZ) for that
|
||||
*/
|
||||
virtual bool IsWeatherWet(void) const = 0;
|
||||
|
||||
};
|
||||
|
@ -580,7 +580,10 @@ void cChunk::Tick(float a_Dt)
|
||||
{
|
||||
// Mobs are tickes inside MobTick (as we don't have to tick them if they are far away from players)
|
||||
// Don't tick things queued to be removed
|
||||
if (!((*itr)->IsMob()) && (std::find(m_EntitiesToRemove.begin(), m_EntitiesToRemove.end(), (*itr)->GetUniqueID()) == m_EntitiesToRemove.end()))
|
||||
if (
|
||||
!((*itr)->IsMob()) &&
|
||||
(std::find(m_EntitiesToRemove.begin(), m_EntitiesToRemove.end(), (*itr)->GetUniqueID()) == m_EntitiesToRemove.end())
|
||||
)
|
||||
{
|
||||
(*itr)->Tick(a_Dt, *this);
|
||||
}
|
||||
@ -588,7 +591,7 @@ void cChunk::Tick(float a_Dt)
|
||||
|
||||
for (cEntityList::iterator itr = m_Entities.begin(); itr != m_Entities.end();)
|
||||
{
|
||||
std::vector<int>::const_iterator itr2 = std::find(m_EntitiesToRemove.begin(), m_EntitiesToRemove.end(), (*itr)->GetUniqueID());
|
||||
std::vector<int>::iterator itr2 = std::find(m_EntitiesToRemove.begin(), m_EntitiesToRemove.end(), (*itr)->GetUniqueID());
|
||||
if (itr2 != m_EntitiesToRemove.end())
|
||||
{
|
||||
itr = m_Entities.erase(itr);
|
||||
|
@ -52,7 +52,7 @@ bool cChunkGenerator::Start(cPluginInterface & a_PluginInterface, cChunkSink & a
|
||||
m_ChunkSink = &a_ChunkSink;
|
||||
|
||||
MTRand rnd;
|
||||
m_Seed = a_IniFile.GetValueSetI("Seed", "Seed", rnd.randInt());
|
||||
m_Seed = a_IniFile.GetValueSetI("Seed", "Seed", (int)rnd.randInt());
|
||||
AString GeneratorName = a_IniFile.GetValueSet("Generator", "Generator", "Composable");
|
||||
|
||||
if (NoCaseCompare(GeneratorName, "Noise3D") == 0)
|
||||
|
@ -11,7 +11,6 @@
|
||||
#include "ChunkMap.h"
|
||||
#include "Generating/ChunkDesc.h"
|
||||
#include "OSSupport/Timer.h"
|
||||
#include <sstream>
|
||||
|
||||
// Serializers
|
||||
#include "WorldStorage/ScoreboardSerializer.h"
|
||||
@ -571,10 +570,7 @@ void cWorld::Start(void)
|
||||
m_VillagersShouldHarvestCrops = IniFile.GetValueSetB("Monsters", "VillagersShouldHarvestCrops", true);
|
||||
int GameMode = IniFile.GetValueSetI("General", "Gamemode", (int)m_GameMode);
|
||||
int Weather = IniFile.GetValueSetI("General", "Weather", (int)m_Weather);
|
||||
|
||||
std::stringstream ss;
|
||||
ss << m_TimeOfDay;
|
||||
Int64 TimeOfDay = _atoi64(IniFile.GetValueSet("General", "TimeInTicks", ss.str()).c_str());
|
||||
Int64 TimeOfDay = IniFile.GetValueSetI("General", "TimeInTicks", m_TimeOfDay);
|
||||
|
||||
if ((GetDimension() != dimNether) && (GetDimension() != dimEnd))
|
||||
{
|
||||
@ -767,10 +763,7 @@ void cWorld::Stop(void)
|
||||
IniFile.SetValueB("Mechanics", "CommandBlocksEnabled", m_bCommandBlocksEnabled);
|
||||
IniFile.SetValueB("Mechanics", "UseChatPrefixes", m_bUseChatPrefixes);
|
||||
IniFile.SetValueI("General", "Weather", (int)m_Weather);
|
||||
|
||||
std::stringstream ss;
|
||||
ss << m_TimeOfDay;
|
||||
IniFile.SetValue("General", "TimeInTicks", ss.str());
|
||||
IniFile.SetValueI("General", "TimeInTicks", m_TimeOfDay);
|
||||
IniFile.WriteFile(m_IniFileName);
|
||||
|
||||
m_TickThread.Stop();
|
||||
|
@ -715,7 +715,9 @@ public:
|
||||
bool IsWeatherRain (void) const { return (m_Weather == wRain); }
|
||||
bool IsWeatherStorm(void) const { return (m_Weather == wStorm); }
|
||||
|
||||
/** Returns true if the current weather has any precipitation - rain or storm */
|
||||
/** Returns true if the current weather has any precipitation - rain or storm
|
||||
Does not check if biome has no downfall, use cChunk::GetBiomeAt(RelX, RelZ) for that
|
||||
*/
|
||||
virtual bool IsWeatherWet(void) const override { return (m_Weather != wSunny); }
|
||||
|
||||
// tolua_end
|
||||
|
Loading…
Reference in New Issue
Block a user