]> jfr.im git - irc/gameservirc.git/blob - gameserv/player.h
Added everything necessary to save overtop of the old dragon when someone beats the...
[irc/gameservirc.git] / gameserv / player.h
1 #ifndef PLAYER_H
2 #define PLAYER_H
3
4 #include <string>
5 #include "aClient.h"
6 #include "pouch.h"
7
8 using namespace std;
9
10 typedef struct monster_ Monster;
11
12 class aClient; // forward declaration
13
14 class Player {
15 public:
16 Player();
17 Player(aClient *);
18 Player(char *);
19 Player(string);
20 ~Player();
21 void setData(Player *);
22 void setPassword(const char *p);
23 void reset();
24
25 long int getFlags() { return flags; }; // Returns the Client's current flags
26 // Functions also return the flags after modifying them
27 long int setFlags(long int); // Sets the clients flags to a new value
28 long int addFlag(long int); // Adds a flag to the client's flags
29 long int remFlag(long int); // Removes a flag from the client's current flags
30
31
32 string name; // Player's Name
33 int level; // Player's level (1-12)
34 long int exp; // Player's experience
35 long int gold; // Gold on hand
36 long int bank; // Gold in the bank
37 int hp; // Current Hit Points (health)
38 int maxhp; // Maximum Hit Points
39 int strength; // Player's Strength
40 int defense; // Player's defensive strength
41 int armor; // Number for the player's armor
42 int weapon; // Number for the player's weapon
43 int forest_fights; // Amount of forest fights left today
44 int player_fights; // Amount of player<->player fights for today
45 string password; // Player's encrypted password
46 Pouch inventory; // This contains their potions, etc.
47 long int lastcommand; // timestamp for the last command typed
48 long int lastlogin; // timestamp for the last login
49
50 aClient *client; // Pointer to the aClient this player is from
51 Monster *fight; // Pointer to the monster the player is currently fighting
52 Monster *master; // Pointer to the master the player is currently fighting
53 aClient *battle; // Pointer to the player this player is currently fighting
54
55 private:
56 long int flags; // Player's current flags
57 };
58
59 struct monster_ {
60 monster_();
61 monster_(monster_ *);
62 monster_(monster_ &);
63 ~monster_();
64 string name; // The monster's name
65 string weapon; // A name for their weapon. Doesn't have to be in weapons[]
66 int strength; // Their strength
67 int gold; // The gold you get when you kill them
68 int exp; // The experience you get when you kill them
69 int hp; // Their remaining hitpoints
70 int maxhp; // Their max hitpoints
71 int defense; // Only used seldomly
72 string death; // What is said when they die
73 };
74
75 #endif