ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/include/player.h
(Generate patch)

Comparing deliantra/server/include/player.h (file contents):
Revision 1.20 by root, Sat Dec 9 16:11:09 2006 UTC vs.
Revision 1.30 by root, Thu Dec 21 23:37:05 2006 UTC

1
2/* 1/*
3 CrossFire, A Multiplayer game for X-windows 2 CrossFire, A Multiplayer game for X-windows
4 3
5 Copyright (C) 2002 Mark Wedel & Crossfire Development Team 4 Copyright (C) 2002 Mark Wedel & Crossfire Development Team
6 Copyright (C) 1992 Frank Tore Johansen 5 Copyright (C) 1992 Frank Tore Johansen
17 16
18 You should have received a copy of the GNU General Public License 17 You should have received a copy of the GNU General Public License
19 along with this program; if not, write to the Free Software 18 along with this program; if not, write to the Free Software
20 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 19 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
21 20
22 The authors can be reached via e-mail at crossfire-devel@real-time.com 21 The authors can be reached via e-mail at crossfire@schmorp.de
23*/ 22*/
24 23
25#define NUM_OUTPUT_BUFS 5 24#define NUM_OUTPUT_BUFS 5
26struct Output_Buf 25struct Output_Buf
27{ 26{
131 sint8 ACC (RW, gen_hp); /* Bonuses to regeneration speed of hp */ 130 sint8 ACC (RW, gen_hp); /* Bonuses to regeneration speed of hp */
132 sint8 ACC (RW, gen_sp); /* Bonuses to regeneration speed of sp */ 131 sint8 ACC (RW, gen_sp); /* Bonuses to regeneration speed of sp */
133 sint8 ACC (RW, gen_sp_armour); /* Penalty to sp regen from armour */ 132 sint8 ACC (RW, gen_sp_armour); /* Penalty to sp regen from armour */
134 sint8 ACC (RW, gen_grace); /* Bonuses to regeneration speed of grace */ 133 sint8 ACC (RW, gen_grace); /* Bonuses to regeneration speed of grace */
135 sint16 ACC (RW, item_power); /* Total item power of objects equipped */ 134 sint16 ACC (RW, item_power); /* Total item power of objects equipped */
136 uint8 ACC (RW, state); /* Input state of the player (name, password, etc */
137 uint8 ACC (RW, listening); /* Which priority will be used in info_all */ 135 uint8 ACC (RW, listening); /* Which priority will be used in info_all */
138 sint8 ACC (RW, last_level); /* Last level we sent to client */ 136 sint8 ACC (RW, last_level); /* Last level we sent to client */
139 137
140 /* Try to put all the bitfields together - saves some small amount of memory */ 138 /* Try to put all the bitfields together - saves some small amount of memory */
141 uint32 ACC (RO, braced):1; /* Will not move if braced, only attack */ 139 uint32 ACC (RO, braced):1; /* Will not move if braced, only attack */
146 uint32 ACC (RO, has_hit):1; /* If set, weapon_sp instead of speed will count */ 144 uint32 ACC (RO, has_hit):1; /* If set, weapon_sp instead of speed will count */
147 uint32 ACC (RO, name_changed):1; /* If true, the player has set a name. */ 145 uint32 ACC (RO, name_changed):1; /* If true, the player has set a name. */
148 uint32 ACC (RO, peaceful):1; /* If set, won't attack friendly creatures */ 146 uint32 ACC (RO, peaceful):1; /* If set, won't attack friendly creatures */
149 uint32 ACC (RO, hidden):1; /* If True, player (DM) is hidden from view */ 147 uint32 ACC (RO, hidden):1; /* If True, player (DM) is hidden from view */
150 uint32 ACC (RO, explore):1; /* if True, player is in explore mode */ 148 uint32 ACC (RO, explore):1; /* if True, player is in explore mode */
151 uint32 ACC (RO, no_shout):1; /* if True, player is *not* able to use shout command */
152 149
153 object_ptr last_skill_ob[NUM_SKILLS]; /* the exp object */ 150 object_ptr last_skill_ob[NUM_SKILLS]; /* the exp object */
154 sint64 last_skill_exp[NUM_SKILLS]; /* shadow register. if != exp. obj update client */ 151 sint64 last_skill_exp[NUM_SKILLS]; /* shadow register. if != exp. obj update client */
155 152
156 float ACC (RW, weapon_sp); /* Penalties to speed when fighting w speed >ws/10 */ 153 float ACC (RW, weapon_sp); /* Penalties to speed when fighting w speed >ws/10 */
165 living ACC (RO, last_stats); /* Last stats as sent to client */ 162 living ACC (RO, last_stats); /* Last stats as sent to client */
166 float ACC (RW, last_speed); /* Last speed as sent to client */ 163 float ACC (RW, last_speed); /* Last speed as sent to client */
167 sint16 last_resist[NROFATTACKS]; /* last resist values sent to client */ 164 sint16 last_resist[NROFATTACKS]; /* last resist values sent to client */
168 int Swap_First; /* First stat player has selected to swap */ 165 int Swap_First; /* First stat player has selected to swap */
169 object_ptr ACC (RW, last_used); /* Pointer to object last picked or applied */ 166 object_ptr ACC (RW, last_used); /* Pointer to object last picked or applied */
170 uint32 last_used_id; /* Safety measures to be sure it's the same */
171 167
172 sint16 ACC (RW, bed_x), ACC (RW, bed_y); /* x,y - coordinates of respawn (savebed) */ 168 sint16 ACC (RW, bed_x), ACC (RW, bed_y); /* x,y - coordinates of respawn (savebed) */
173 char ACC (RW, savebed_map)[MAX_BUF]; /* map where player will respawn after death */ 169 char ACC (RW, savebed_map)[MAX_BUF]; /* map where player will respawn after death */
174 char ACC (RW, maplevel)[MAX_BUF]; /* On which level is the player? */ 170 char ACC (RW, maplevel)[MAX_BUF]; /* On which level is the player? */
175 char ACC (RW, spellparam)[MAX_BUF]; /* What param to add to spells */ 171 char ACC (RW, spellparam)[MAX_BUF]; /* What param to add to spells */
209}; 205};
210 206
211struct player : zero_initialised, attachable<player>, player_pod 207struct player : zero_initialised, attachable<player>, player_pod
212{ 208{
213 player *next; /* Pointer to next player, NULL if this is last */ 209 player *next; /* Pointer to next player, NULL if this is last */
214 NewSocket socket; /* Socket information for this player */ 210 client *ACC (RO, ns); /* Socket information for this player */
215 Output_Buf outputs[NUM_OUTPUT_BUFS]; /* holds output strings to client */ 211 Output_Buf outputs[NUM_OUTPUT_BUFS]; /* holds output strings to client */
216 shstr invis_race; /* What race invisible to? */ 212 shstr invis_race; /* What race invisible to? */
217 213
218 void clear () 214 void clear ()
219 { 215 {

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines