diff options
Diffstat (limited to 'src/player.cpp')
-rw-r--r-- | src/player.cpp | 40 |
1 files changed, 29 insertions, 11 deletions
diff --git a/src/player.cpp b/src/player.cpp index f43e54d5..e6244bb5 100644 --- a/src/player.cpp +++ b/src/player.cpp @@ -19,21 +19,21 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ -#include "player.h" +#include <iostream> #include "animatedsprite.h" #include "game.h" #include "graphics.h" #include "log.h" +#include "player.h" + +#include "gui/gui.h" #include "resources/itemdb.h" #include "resources/iteminfo.h" #include "utils/strprintf.h" -#include "gui/gui.h" -#include <iostream> - static const int NAME_X_OFFSET = 15; static const int NAME_Y_OFFSET = 30; @@ -41,6 +41,7 @@ Player::Player(int id, int job, Map *map): Being(id, job, map) { mName = 0; + mIsGM = false; } Player::~Player() @@ -55,9 +56,15 @@ void Player::setName(const std::string &name) { if (mName == 0) { - mName = new FlashText(name, mPx + NAME_X_OFFSET, mPy + NAME_Y_OFFSET, - gcn::Graphics::CENTER, - speechFont, gcn::Color(255, 255, 255)); + if (mIsGM) { + mName = new FlashText("(GM) " + name, mPx + NAME_X_OFFSET, mPy + NAME_Y_OFFSET, + gcn::Graphics::CENTER, + gmNameFont, gcn::Color(255, 255, 255)); + } else { + mName = new FlashText(name, mPx + NAME_X_OFFSET, mPy + NAME_Y_OFFSET, + gcn::Graphics::CENTER, + speechFont, gcn::Color(255, 255, 255)); + } Being::setName(name); } } @@ -66,6 +73,18 @@ void Player::logic() { switch (mAction) { + case STAND: + break; + + case SIT: + break; + + case DEAD: + break; + + case HURT: + break; + case WALK: mFrame = (get_elapsed_time(mWalkTime) * 6) / mWalkSpeed; if (mFrame >= 6) { @@ -138,13 +157,13 @@ void Player::setGender(int gender) void Player::setHairStyle(int style, int color) { - style = style < 0 ? mHairStyle : style % getHairStylesNr(); - color = color < 0 ? mHairColor : color % getHairColorsNr(); + style = style < 0 ? mHairStyle : style % mNumberOfHairstyles; + color = color < 0 ? mHairColor : color % ColorDB::size(); if (style == mHairStyle && color == mHairColor) return; Being::setHairStyle(style, color); - setSprite(HAIR_SPRITE, style * -1, getHairColor(color)); + setSprite(HAIR_SPRITE, style * -1, ColorDB::get(color)); setAction(mAction); } @@ -194,4 +213,3 @@ void Player::updateCoords() } } - |