#ifndef __SKILL_CHECK_H #define __SKILL_CHECK_H #include "types.h" #include "Soldier Control.h" void ReducePointsForFatigue( SOLDIERTYPE *pSoldier, UINT32 *pusPoints ); void ReducePointsForFatigue( SOLDIERTYPE *pSoldier, INT32 *psPoints ); INT32 GetSkillCheckPenaltyForFatigue( SOLDIERTYPE *pSoldier, INT32 iSkill ); INT32 SkillCheck( SOLDIERTYPE *pSoldier, INT8 bReason, INT8 bDifficulty ); INT16 CalcTrapDetectLevel( SOLDIERTYPE *pSoldier, BOOLEAN fExamining ); INT16 EffectiveStrength( SOLDIERTYPE *pSoldier, BOOLEAN fTrainer ); INT16 EffectiveWisdom( SOLDIERTYPE *pSoldier ); INT16 EffectiveAgility( SOLDIERTYPE *pSoldier, BOOLEAN fTrainer ); INT8 EffectiveMechanical( SOLDIERTYPE *pSoldier ); INT8 EffectiveExplosive( SOLDIERTYPE *pSoldier ); INT8 EffectiveLeadership( SOLDIERTYPE *pSoldier ); INT8 EffectiveMarksmanship( SOLDIERTYPE *pSoldier ); INT16 EffectiveDexterity( SOLDIERTYPE *pSoldier, BOOLEAN fTrainer ); INT8 EffectiveExpLevel( SOLDIERTYPE *pSoldier, BOOLEAN fTactical = TRUE ); INT8 EffectiveMedical( SOLDIERTYPE *pSoldier ); enum SkillChecks { NO_CHECK = 0, LOCKPICKING_CHECK, ELECTRONIC_LOCKPICKING_CHECK, ATTACHING_DETONATOR_CHECK, ATTACHING_REMOTE_DETONATOR_CHECK, PLANTING_BOMB_CHECK, PLANTING_REMOTE_BOMB_CHECK, OPEN_WITH_CROWBAR, SMASH_DOOR_CHECK, DISARM_TRAP_CHECK, UNJAM_GUN_CHECK, NOTICE_DART_CHECK, LIE_TO_QUEEN_CHECK, ATTACHING_SPECIAL_ITEM_CHECK, ATTACHING_SPECIAL_ELECTRONIC_ITEM_CHECK, DISARM_ELECTRONIC_TRAP_CHECK, ATTACH_POWER_PACK, // Flugente: attach a power pack to power armor PLANTING_MECHANICAL_BOMB_CHECK, DISARM_MECHANICAL_TRAP_CHECK, } ; #endif