/* * 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: Perks * Description: - */ /* * perk constants */ #define CLAWS_DAMAGE_BONUS dice(1, 4) #define DAEMON_TALONS_DAMAGE_BONUS dice(2, 8) #define RAPID_SHOT_SA_PENALTY_DIVIDER 2 #define MARKSMAN_RANGE_PENALTY_DIVIDER 5 #define CRUSHING_STRIKE_STRENGTH_BONUS_MULTIPLIER 2 #define ENHANCED_PARRY_BONUS 10 #define BATTLE_TACTICS_BONUS 10 #define LEADER_BONUS 20 #define UNCANNY_DODGE_MODIFIER -20 #define FIRST_AID_RECOVERY_BONUS 50 #define DIE_HARD_MAX_INJURY_BONUS 20 #define SPOT_WEAKNESS_ARMOUR_VALUE_DIVIDER 2 void perk_screen(PERK); bool perk_useable(PERK); bool perk_in_tome(PERK); N_PERKS character_n_perks(const CHARACTER *); N_PERKS character_n_useable_perks(const CHARACTER *); PERK character_nth_useable_perk(const CHARACTER *, int); const char * perk_name(PERK); PERK name_to_perk(const char *); char * perk_description(char *, PERK); void give_perk(CHARACTER *, PERK); bool stealth_use(CHARACTER *); void disarm_use(CHARACTER *, CHARACTER *); void doctor_use(CHARACTER *, CHARACTER *); bool manufacture_drugs_use(CHARACTER *); void battle_tactics_join(CHARACTER *); void battle_tactics_leave(CHARACTER *); void leader_join(CHARACTER *); void leader_leave(CHARACTER *); HIT_MODIFIER uncanny_dodge_modifier(const CHARACTER *); bool rapid_strike_requirements_met(const CHARACTER *, const OBJECT * );