ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/common/player.C
Revision: 1.12
Committed: Fri Dec 22 16:34:00 2006 UTC (17 years, 5 months ago) by root
Content type: text/plain
Branch: MAIN
Changes since 1.11: +0 -43 lines
Log Message:
- preliminary check in, stuff is rudimentarily working
- moved most of the player creation process into a perl coroutine
- changed internal design of player management to not reuse
  and morph the object in funny ways. should be safer and much
  nicer to handle.
- got rid of some annoying hacks, such as clear()
  (TODO: get rid of player_pod and other stuff now unnecessary?)

File Contents

# User Rev Content
1 elmex 1.1 /*
2     CrossFire, A Multiplayer game for X-windows
3    
4     Copyright (C) 2002 Mark Wedel & Crossfire Development Team
5     Copyright (C) 1992 Frank Tore Johansen
6    
7     This program is free software; you can redistribute it and/or modify
8     it under the terms of the GNU General Public License as published by
9     the Free Software Foundation; either version 2 of the License, or
10     (at your option) any later version.
11    
12     This program is distributed in the hope that it will be useful,
13     but WITHOUT ANY WARRANTY; without even the implied warranty of
14     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15     GNU General Public License for more details.
16    
17     You should have received a copy of the GNU General Public License
18     along with this program; if not, write to the Free Software
19     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20    
21 root 1.5 The authors can be reached via e-mail at <crossfire@schmorp.de>
22 elmex 1.1 */
23    
24     #include <global.h>
25     #include <funcpoint.h>
26    
27     /* Determine if the attacktype represented by the
28     * specified attack-number is enabled for dragon players.
29     * A dragon player (quetzal) can gain resistances for
30     * all enabled attacktypes.
31     */
32 root 1.4 int
33     atnr_is_dragon_enabled (int attacknr)
34     {
35 elmex 1.1 if (attacknr == ATNR_MAGIC || attacknr == ATNR_FIRE ||
36 root 1.4 attacknr == ATNR_ELECTRICITY || attacknr == ATNR_COLD || attacknr == ATNR_ACID || attacknr == ATNR_POISON)
37 elmex 1.1 return 1;
38 root 1.10
39 elmex 1.1 return 0;
40     }
41    
42     /*
43     * returns true if the adressed object 'ob' is a player
44     * of the dragon race.
45     */
46 root 1.4 int
47     is_dragon_pl (const object *op)
48     {
49     if (op != NULL && op->type == PLAYER && op->arch != NULL && op->arch->clone.race != NULL && strcmp (op->arch->clone.race, "dragon") == 0)
50 elmex 1.1 return 1;
51     return 0;
52     }