summaryrefslogtreecommitdiff
path: root/src/account-server/character.h
diff options
context:
space:
mode:
authorErik Schilling <ablu.erikschilling@googlemail.com>2013-02-17 12:24:45 +0100
committerErik Schilling <ablu.erikschilling@googlemail.com>2013-08-26 22:56:47 +0200
commit44ee071d7ece5a2023f79307f36e8a244c9e7b3a (patch)
tree06b7fcea59bbbf1963b460ca9b678d0ea6fa90e4 /src/account-server/character.h
parente3a1e9c89e102dbf961c624435c495c759776312 (diff)
downloadmanaserv-44ee071d7ece5a2023f79307f36e8a244c9e7b3a.tar.gz
manaserv-44ee071d7ece5a2023f79307f36e8a244c9e7b3a.tar.bz2
manaserv-44ee071d7ece5a2023f79307f36e8a244c9e7b3a.tar.xz
manaserv-44ee071d7ece5a2023f79307f36e8a244c9e7b3a.zip
Removed skills
This removes support for skills. The plan is to allow to implement the skills as they were implemented before via attributes. This adds a lot more flexibility to the server creators while also removing the confusion about skills and attributes. So this change does: - Remove the skillmanager with all its calls, the skill xml file, etc - Move exp giving to the script engine: --> Allows to implement the old behaviour (and more) in the scripts - Remove the exp tag from the monster definition: + Since the server itself does not require it anymore it feels wrong to require it for EVERY monster. TODO: Add a system to add properties to the monsters/items.xml which allow defining things like the exp and allows to read the value from the script engine. + Small drawback, but it should not be hard to implement this property system. - Drop the level networking and calculation. + level calculation will happen via the attribute system later but i would prefer to do this in a seperate patch since this patch already got longer than expected especially since this requires to make setting correction points and available status points scriptable. + The level would be simply set as a attribute, the int number of it will be the level, the remaining digits will be the % number till the next levelup. - NOT remove any existing skill tables in the database update scripts. + There is no way to move them into the attribute table in a unified way (there are too many different way they could have been used). So server admins have to care about moving theirs skills to attributes themselves. + Keeping the old tables does not hurt for existing databases. So removing does not give any advantage/is required anyway. The now obsolote info about the EXP transaction is not removed for updated databases either. (The update script basically only bumps the version number without doing anything else. - bump the network protocol version --> old clients won't be able to connect. - bump the database version --> serveradmins need to update their db.
Diffstat (limited to 'src/account-server/character.h')
-rw-r--r--src/account-server/character.h26
1 files changed, 0 insertions, 26 deletions
diff --git a/src/account-server/character.h b/src/account-server/character.h
index 53443c4b..58e32dad 100644
--- a/src/account-server/character.h
+++ b/src/account-server/character.h
@@ -156,12 +156,6 @@ class CharacterData
void setAccountLevel(int l, bool force = false)
{ if (force) mAccountLevel = l; }
- /**
- * Gets the level of the character.
- */
- int getLevel() const { return mLevel; }
- void setLevel(int level) { mLevel = level; }
-
/** Sets the value of a base attribute of the character. */
void setAttribute(unsigned id, double value)
{ mAttributes[id].base = value; }
@@ -172,24 +166,6 @@ class CharacterData
const AttributeMap &getAttributes() const
{ return mAttributes; }
- int getSkillSize() const
- { return mExperience.size(); }
-
- const std::map<int, int>::const_iterator getSkillBegin() const
- { return mExperience.begin(); }
-
- const std::map<int, int>::const_iterator getSkillEnd() const
- { return mExperience.end(); }
-
- int getExperience(int skill) const
- { return mExperience.find(skill)->second; }
-
- void setExperience(int skill, int value)
- { mExperience[skill] = value; }
-
- void receiveExperience(int skill, int value)
- { mExperience[skill] += value; }
-
/**
* Get / Set a status effects
*/
@@ -300,7 +276,6 @@ class CharacterData
Account *mAccount; //!< Account owning the character.
Point mPos; //!< Position the being is at.
AttributeMap mAttributes; //!< Attributes.
- std::map<int, int> mExperience; //!< Skill Experience.
std::map<int, Status> mStatusEffects; //!< Status Effects
std::map<int, int> mKillCount; //!< Kill Count
AbilityMap mAbilities;
@@ -308,7 +283,6 @@ class CharacterData
unsigned char mGender; //!< Gender of the being.
unsigned char mHairStyle; //!< Hair style of the being.
unsigned char mHairColor; //!< Hair color of the being.
- short mLevel; //!< Level of the being.
short mCharacterPoints; //!< Unused character points.
short mCorrectionPoints; //!< Unused correction points.
unsigned char mAccountLevel; //!< Level of the associated account.