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

Comparing deliantra/server/common/player.C (file contents):
Revision 1.6 by root, Wed Sep 27 00:36:08 2006 UTC vs.
Revision 1.12 by root, Fri Dec 22 16:34:00 2006 UTC

22*/ 22*/
23 23
24#include <global.h> 24#include <global.h>
25#include <funcpoint.h> 25#include <funcpoint.h>
26 26
27void
28free_player (player *pl)
29{
30
31 if (first_player != pl)
32 {
33 player *prev = first_player;
34
35 while (prev != NULL && prev->next != NULL && prev->next != pl)
36 prev = prev->next;
37
38 if (prev->next != pl)
39 {
40 LOG (llevError, "Free_player: Can't find previous player.\n");
41 exit (1);
42 }
43
44 prev->next = pl->next;
45 }
46 else
47 first_player = pl->next;
48
49 if (pl->ob)
50 {
51 if (!QUERY_FLAG (pl->ob, FLAG_REMOVED))
52 remove_ob (pl->ob);
53
54 pl->ob->contr = 0;
55 pl->ob->destroy ();
56 }
57
58 /* Clear item stack */
59 if (pl->stack_items)
60 free (pl->stack_items);
61
62 free (pl->socket.faces_sent);
63
64 delete pl;
65}
66
67
68/* Determine if the attacktype represented by the 27/* Determine if the attacktype represented by the
69 * specified attack-number is enabled for dragon players. 28 * specified attack-number is enabled for dragon players.
70 * A dragon player (quetzal) can gain resistances for 29 * A dragon player (quetzal) can gain resistances for
71 * all enabled attacktypes. 30 * all enabled attacktypes.
72 */ 31 */
74atnr_is_dragon_enabled (int attacknr) 33atnr_is_dragon_enabled (int attacknr)
75{ 34{
76 if (attacknr == ATNR_MAGIC || attacknr == ATNR_FIRE || 35 if (attacknr == ATNR_MAGIC || attacknr == ATNR_FIRE ||
77 attacknr == ATNR_ELECTRICITY || attacknr == ATNR_COLD || attacknr == ATNR_ACID || attacknr == ATNR_POISON) 36 attacknr == ATNR_ELECTRICITY || attacknr == ATNR_COLD || attacknr == ATNR_ACID || attacknr == ATNR_POISON)
78 return 1; 37 return 1;
38
79 return 0; 39 return 0;
80} 40}
81 41
82/* 42/*
83 * returns true if the adressed object 'ob' is a player 43 * returns true if the adressed object 'ob' is a player

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines