summaryrefslogtreecommitdiffstats
path: root/src/Entities
diff options
context:
space:
mode:
authorandrew <xdotftw@gmail.com>2014-05-13 13:53:15 +0200
committerandrew <xdotftw@gmail.com>2014-05-13 13:53:15 +0200
commit466ff2204f18fda5f4f0f0b3e19f671d57747c24 (patch)
tree164ce181d4c1bde9801f51296e497a4a603796dc /src/Entities
parentMovement Statistics (diff)
downloadcuberite-466ff2204f18fda5f4f0f0b3e19f671d57747c24.tar
cuberite-466ff2204f18fda5f4f0f0b3e19f671d57747c24.tar.gz
cuberite-466ff2204f18fda5f4f0f0b3e19f671d57747c24.tar.bz2
cuberite-466ff2204f18fda5f4f0f0b3e19f671d57747c24.tar.lz
cuberite-466ff2204f18fda5f4f0f0b3e19f671d57747c24.tar.xz
cuberite-466ff2204f18fda5f4f0f0b3e19f671d57747c24.tar.zst
cuberite-466ff2204f18fda5f4f0f0b3e19f671d57747c24.zip
Diffstat (limited to 'src/Entities')
-rw-r--r--src/Entities/Player.cpp21
-rw-r--r--src/Entities/Player.h9
2 files changed, 14 insertions, 16 deletions
diff --git a/src/Entities/Player.cpp b/src/Entities/Player.cpp
index 3df7c4c34..632c41936 100644
--- a/src/Entities/Player.cpp
+++ b/src/Entities/Player.cpp
@@ -820,7 +820,7 @@ bool cPlayer::DoTakeDamage(TakeDamageInfo & a_TDI)
if ((a_TDI.Attacker != NULL) && (a_TDI.Attacker->IsPlayer()))
{
- cPlayer* Attacker = (cPlayer*) a_TDI.Attacker;
+ cPlayer * Attacker = (cPlayer *)a_TDI.Attacker;
if ((m_Team != NULL) && (m_Team == Attacker->m_Team))
{
@@ -880,7 +880,7 @@ void cPlayer::KilledBy(cEntity * a_Killer)
}
else if (a_Killer->IsPlayer())
{
- cPlayer* Killer = (cPlayer*)a_Killer;
+ cPlayer * Killer = (cPlayer *)a_Killer;
GetWorld()->BroadcastChatDeath(Printf("%s was killed by %s", GetName().c_str(), Killer->GetName().c_str()));
}
@@ -1150,6 +1150,7 @@ unsigned int cPlayer::AwardAchievement(const eStatistic a_Ach)
{
eStatistic Prerequisite = cStatInfo::GetPrerequisite(a_Ach);
+ // Check if the prerequisites are met
if (Prerequisite != statInvalid)
{
if (m_Stats.GetValue(Prerequisite) == 0)
@@ -1166,14 +1167,16 @@ unsigned int cPlayer::AwardAchievement(const eStatistic a_Ach)
}
else
{
+ // First time, announce it
cCompositeChat Msg;
Msg.AddTextPart(m_PlayerName + " has just earned the achievement ");
- Msg.AddTextPart(cStatInfo::GetName(a_Ach)); // TODO 2014-05-12 xdot: Use the proper cCompositeChat submessage type and send the actual title
+ Msg.AddTextPart(cStatInfo::GetName(a_Ach)); // TODO 2014-05-12 xdot: Use the proper cCompositeChat part (cAchievement)
m_World->BroadcastChat(Msg);
+ // Increment the statistic
StatValue New = m_Stats.AddValue(a_Ach);
- /* Achievement Get! */
+ // Achievement Get!
m_ClientHandle->SendStatistics(m_Stats);
return New;
@@ -1707,9 +1710,8 @@ bool cPlayer::LoadFromDisk()
m_LoadedWorldName = root.get("world", "world").asString();
- /* Load the player stats.
- * We use the default world name (like bukkit) because stats are shared between dimensions/worlds.
- */
+ // Load the player stats.
+ // We use the default world name (like bukkit) because stats are shared between dimensions/worlds.
cStatSerializer StatSerializer(cRoot::Get()->GetDefaultWorld()->GetName(), GetName(), &m_Stats);
StatSerializer.Load();
@@ -1784,9 +1786,8 @@ bool cPlayer::SaveToDisk()
return false;
}
- /* Save the player stats.
- * We use the default world name (like bukkit) because stats are shared between dimensions/worlds.
- */
+ // Save the player stats.
+ // We use the default world name (like bukkit) because stats are shared between dimensions/worlds.
cStatSerializer StatSerializer(cRoot::Get()->GetDefaultWorld()->GetName(), m_PlayerName, &m_Stats);
if (!StatSerializer.Save())
{
diff --git a/src/Entities/Player.h b/src/Entities/Player.h
index 3de5e9c68..78b534d83 100644
--- a/src/Entities/Player.h
+++ b/src/Entities/Player.h
@@ -181,12 +181,9 @@ public:
cStatManager & GetStatManager() { return m_Stats; }
/** Awards the player an achievement.
- *
- * If all prerequisites are met, this method will award the achievement and will broadcast a chat message.
- * If the achievement has been already awarded to the player, this method will just increment the stat counter.
- *
- * Returns the _new_ stat value. (0 = Could not award achievement)
- */
+ If all prerequisites are met, this method will award the achievement and will broadcast a chat message.
+ If the achievement has been already awarded to the player, this method will just increment the stat counter.
+ Returns the _new_ stat value. (0 = Could not award achievement) */
unsigned int AwardAchievement(const eStatistic a_Ach);
void SetIP(const AString & a_IP);