/* * Copyright (C) 2002-2007 The Warp Rogue Team * Part of the Warp Rogue Project * * This software is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License. * This software is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY. * * See the license.txt file for more details. */ /* * Module Name: Character * Description: - */ #define is_player_controlled_character(c) ((c)->controller == CC_PLAYER) void * character_new(void); void character_free(void *); void character_destroy(void *); CHARACTER * character_clone(const CHARACTER *); void set_player_character(CHARACTER *); CHARACTER * player_character(void); void set_player_controlled_character(CHARACTER *); CHARACTER * player_controlled_character(void); void character_set_flag(CHARACTER *, CHARACTER_FLAG); void character_remove_flag(CHARACTER *, CHARACTER_FLAG); bool character_has_flag(const CHARACTER *, CHARACTER_FLAG); const char * character_description(const CHARACTER *); char * character_flag_description(char *, CHARACTER_FLAG ); void character_screen(CHARACTER *); void character_flag_screen(CHARACTER_FLAG); void name_character(CHARACTER *); POWER_RATING character_power_rating(const CHARACTER *); void character_recover(CHARACTER *); void character_recover_injuries(CHARACTER *); bool character_must_recover(const CHARACTER *); INJURY injury_max(const CHARACTER *); bool has_ranged_attack(const CHARACTER *); const char * character_flag_name(CHARACTER_FLAG); COLOUR character_flag_colour(CHARACTER_FLAG); CHARACTER_FLAG name_to_character_flag(const char *); CHARACTER ** character_self(void); CHARACTER ** character_active_character(void);