1 #ifndef __SKILL_CHECK_H
2 #define __SKILL_CHECK_H
3 
4 #include "JA2Types.h"
5 
6 
7 void ReducePointsForFatigue(const SOLDIERTYPE* s, UINT16* pusPoints);
8 extern INT32 GetSkillCheckPenaltyForFatigue( const SOLDIERTYPE *pSoldier, INT32 iSkill );
9 extern INT32 SkillCheck( SOLDIERTYPE *pSoldier, INT8 bReason, INT8 bDifficulty );
10 extern INT8 CalcTrapDetectLevel( const SOLDIERTYPE *pSoldier, BOOLEAN fExamining );
11 
12 
13 INT8 EffectiveStrength(    const SOLDIERTYPE* s);
14 INT8 EffectiveWisdom(      const SOLDIERTYPE* s);
15 INT8 EffectiveAgility(     const SOLDIERTYPE* s);
16 INT8 EffectiveMechanical(  const SOLDIERTYPE* s);
17 INT8 EffectiveExplosive(   const SOLDIERTYPE* s);
18 INT8 EffectiveLeadership(  const SOLDIERTYPE* s);
19 INT8 EffectiveMarksmanship(const SOLDIERTYPE* s);
20 INT8 EffectiveDexterity(   const SOLDIERTYPE* s);
21 INT8 EffectiveExpLevel(    const SOLDIERTYPE* s);
22 INT8 EffectiveMedical(     const SOLDIERTYPE* s);
23 
24 
25 enum SkillChecks
26 {
27 	NO_CHECK = 0,
28 	LOCKPICKING_CHECK,
29 	ELECTRONIC_LOCKPICKING_CHECK,
30 	ATTACHING_DETONATOR_CHECK,
31 	ATTACHING_REMOTE_DETONATOR_CHECK,
32 	PLANTING_BOMB_CHECK,
33 	PLANTING_REMOTE_BOMB_CHECK,
34 	OPEN_WITH_CROWBAR,
35 	SMASH_DOOR_CHECK,
36 	DISARM_TRAP_CHECK,
37 	UNJAM_GUN_CHECK,
38 	NOTICE_DART_CHECK,
39 	LIE_TO_QUEEN_CHECK,
40 	ATTACHING_SPECIAL_ITEM_CHECK,
41 	ATTACHING_SPECIAL_ELECTRONIC_ITEM_CHECK,
42 	DISARM_ELECTRONIC_TRAP_CHECK
43 };
44 
45 #endif
46