void AddSelectedMinorTraitsToSkillsList() { UINT32 uiCnt; // if we have somehow reached beyond available traits, try to fix it by removing the last one selected if ( NumAvailableMinorTraits() < CountNumMinorTraitsSelected( FALSE ) ) { if (gfMinorTraitQuestions[ GetLastSelectedMinorTrait() ] == TRUE ) gfMinorTraitQuestions[ GetLastSelectedMinorTrait() ] = FALSE; } // if still something is wrong, remove them all if ( NumAvailableMinorTraits() < CountNumMinorTraitsSelected( FALSE ) ) { for( uiCnt=0; uiCnt<IMP_SKILL_TRAITS_NEW_NUMBER_MINOR_SKILLS; uiCnt++ ) { gfMinorTraitQuestions[ uiCnt ] = FALSE; } gfMinorTraitQuestions[ IMP_SKILL_TRAITS_NEW_MINOR_NONE ] = TRUE; } // OK, now add what we have to the list for( uiCnt=0; uiCnt<IMP_SKILL_TRAITS_NEW_MINOR_NONE; uiCnt++ ) { //if the trait is selected if( gfMinorTraitQuestions[ uiCnt ] ) { //switch on the trait, and add it to the list switch( uiCnt ) { case IMP_SKILL_TRAITS_NEW_AMBIDEXTROUS: AddSkillToSkillList( AMBIDEXTROUS_NT ); break; case IMP_SKILL_TRAITS_NEW_MELEE: AddSkillToSkillList( MELEE_NT ); break; case IMP_SKILL_TRAITS_NEW_THROWING: AddSkillToSkillList( THROWING_NT ); break; case IMP_SKILL_TRAITS_NEW_NIGHT_OPS: AddSkillToSkillList( NIGHT_OPS_NT ); break; case IMP_SKILL_TRAITS_NEW_STEALTHY: AddSkillToSkillList( STEALTHY_NT ); break; case IMP_SKILL_TRAITS_NEW_ATHLETICS: AddSkillToSkillList( ATHLETICS_NT ); break; case IMP_SKILL_TRAITS_NEW_BODYBUILDING: AddSkillToSkillList( BODYBUILDING_NT ); break; case IMP_SKILL_TRAITS_NEW_DEMOLITIONS: AddSkillToSkillList( DEMOLITIONS_NT ); break; case IMP_SKILL_TRAITS_NEW_TEACHING: AddSkillToSkillList( TEACHING_NT ); break; case IMP_SKILL_TRAITS_NEW_SCOUTING: AddSkillToSkillList( SCOUTING_NT ); break; case IMP_SKILL_TRAITS_NEW_RADIO_OPERATOR: AddSkillToSkillList( RADIO_OPERATOR_NT ); break; default: break; } } } }
void CompileQuestionsInStatsAndWhatNot( void ) { // one BIG case/switch statement to determine what values are added where INT32 iCurrentQuestion = 0; for( iCurrentQuestion= 0; iCurrentQuestion < MAX_NUMBER_OF_IMP_QUESTIONS; iCurrentQuestion++ ) { switch( iCurrentQuestion ) { // ok, run throught he list of questions case ( 0 ): switch( iQuizAnswerList[ iCurrentQuestion ] ) { case( 0 ): if( fCharacterIsMale ) { // Martial arts AddSkillToSkillList( MARTIALARTS_OT ); } else { // for women, ambidexterious AddSkillToSkillList( AMBIDEXT_OT ); } break; case( 1 ): AddAnAttitudeToAttitudeList( ATT_LONER ); break; case( 2 ): // hand to hand AddSkillToSkillList( HANDTOHAND_OT ); break; case( 3 ): // lock picking AddSkillToSkillList( LOCKPICKING_OT ); break; case( 4 ): // throwing AddSkillToSkillList( THROWING_OT ); break; case( 5 ): // optimist AddAnAttitudeToAttitudeList( ATT_OPTIMIST ); break; } break; case ( 1 ): switch( iQuizAnswerList[ iCurrentQuestion ] ) { case( 0 ): // teaching AddSkillToSkillList( TEACHING_OT ); break; case( 1 ): AddSkillToSkillList( STEALTHY_OT ); break; case( 2 ): // psycho AddAPersonalityToPersonalityList( PSYCHO ); break; case( 3 ): AddAnAttitudeToAttitudeList( ATT_FRIENDLY ); break; } break; case ( 2 ): switch( iQuizAnswerList[ iCurrentQuestion ] ) { case( 0 ): // lock picking AddSkillToSkillList( LOCKPICKING_OT ); break; case( 1 ): // arrogant AddAnAttitudeToAttitudeList( ATT_ARROGANT ); break; case( 2 ): AddSkillToSkillList( STEALTHY_OT ); break; case( 3 ): // normal AddAnAttitudeToAttitudeList( ATT_NORMAL ); break; } break; case ( 3 ): switch( iQuizAnswerList[ iCurrentQuestion ] ) { case( 0 ): // automatic weapons AddSkillToSkillList( AUTO_WEAPS_OT ); break; case( 1 ): // friendly AddAnAttitudeToAttitudeList( ATT_FRIENDLY ); break; case( 2 ): // normal AddAnAttitudeToAttitudeList( ATT_NORMAL ); break; case( 3 ): // asshole AddAnAttitudeToAttitudeList( ATT_ASSHOLE ); break; case( 4 ): AddAnAttitudeToAttitudeList( ATT_LONER ); break; } break; case ( 4 ): switch( iQuizAnswerList[ iCurrentQuestion ] ) { case( 0 ): // coward AddAnAttitudeToAttitudeList( ATT_COWARD ); break; case( 1 ): // none break; case( 2 ): // aggressive AddAnAttitudeToAttitudeList( ATT_AGGRESSIVE ); break; case( 3 ): // none break; } break; case ( 5 ): switch( iQuizAnswerList[ iCurrentQuestion ] ) { case( 0 ): // coward AddAnAttitudeToAttitudeList( ATT_COWARD ); break; case( 1 ): AddSkillToSkillList( NIGHTOPS_OT ); break; case( 2 ): // dont like boxes much AddAPersonalityToPersonalityList( CLAUSTROPHOBIC ); break; case( 3 ): // none break; case( 4 ): // none break; } break; case ( 6 ): switch( iQuizAnswerList[ iCurrentQuestion ] ) { case( 0 ): // electronics AddSkillToSkillList( ELECTRONICS_OT ); break; case( 1 ): //knifing AddSkillToSkillList( KNIFING_OT ); break; case( 2 ): AddSkillToSkillList( NIGHTOPS_OT ); break; case( 3 ): // none break; } break; case ( 7 ): switch( iQuizAnswerList[ iCurrentQuestion ] ) { case( 0 ): // ambidexterous AddSkillToSkillList( AMBIDEXT_OT ); break; case( 1 ): // none break; case( 2 ): // optimist AddAnAttitudeToAttitudeList( ATT_OPTIMIST ); break; case( 3 ): // psycho AddAPersonalityToPersonalityList( PSYCHO ); break; } break; case ( 8 ): switch( iQuizAnswerList[ iCurrentQuestion ] ) { case( 0 ): // forgetful AddAPersonalityToPersonalityList( FORGETFUL ); break; case( 1 ): // none case( 2 ): // pessimist AddAnAttitudeToAttitudeList( ATT_PESSIMIST ); break; case( 3 ): // nervous AddAPersonalityToPersonalityList( NERVOUS ); break; } break; case ( 9 ): switch( iQuizAnswerList[ iCurrentQuestion ] ) { case( 0 ): // none break; case( 1 ): // pessimist AddAnAttitudeToAttitudeList( ATT_PESSIMIST ); break; case( 2 ): // asshole AddAnAttitudeToAttitudeList( ATT_ASSHOLE ); break; case( 3 ): // nervous AddAPersonalityToPersonalityList( NERVOUS ); break; } break; case ( 10 ): switch( iQuizAnswerList[ iCurrentQuestion ] ) { case( 0 ): // none break; case( 1 ): // teaching AddSkillToSkillList( TEACHING_OT ); break; case( 2 ): // aggressive AddAnAttitudeToAttitudeList( ATT_AGGRESSIVE ); break; case( 3 ): // normal AddAnAttitudeToAttitudeList( ATT_NORMAL ); break; case( 4 ): // none break; } break; case ( 11 ): switch( iQuizAnswerList[ iCurrentQuestion ] ) { case( 0 ): if( fCharacterIsMale ) { // Martial arts AddSkillToSkillList( MARTIALARTS_OT ); } else { // for women, ambidexterious AddSkillToSkillList( AMBIDEXT_OT ); } break; case( 1 ): //knifing AddSkillToSkillList( KNIFING_OT ); break; case( 2 ): // none break; case( 3 ): // automatic weapons AddSkillToSkillList( AUTO_WEAPS_OT ); break; case( 4 ): // hand to hand AddSkillToSkillList( HANDTOHAND_OT ); break; case( 5 ): // electronics AddSkillToSkillList( ELECTRONICS_OT ); break; case( 6 ): // ashole break; case( 7 ): // none break; } break; case ( 12 ): switch( iQuizAnswerList[ iCurrentQuestion ] ) { case( 0 ): // forgetful AddAPersonalityToPersonalityList( FORGETFUL ); break; case( 1 ): // normal AddAnAttitudeToAttitudeList( ATT_NORMAL ); break; case( 2 ): // normal AddAnAttitudeToAttitudeList( ATT_NORMAL ); break; case( 3 ): // heat problems AddAPersonalityToPersonalityList( HEAT_INTOLERANT ); break; } break; case ( 13 ): switch( iQuizAnswerList[ iCurrentQuestion ] ) { case( 0 ): // dont like boxes much AddAPersonalityToPersonalityList( CLAUSTROPHOBIC ); break; case( 1 ): // normal AddAnAttitudeToAttitudeList( ATT_NORMAL ); break; case( 2 ): // heat problems AddAPersonalityToPersonalityList( HEAT_INTOLERANT ); break; case( 3 ): // none break; } break; case ( 14 ): switch( iQuizAnswerList[ iCurrentQuestion ] ) { case( 0 ): // throwing AddSkillToSkillList( THROWING_OT ); break; case( 1 ): // ambidexterous AddSkillToSkillList( AMBIDEXT_OT ); break; case( 3 ): // none break; case( 2 ): AddAnAttitudeToAttitudeList( ATT_ARROGANT ); break; } break; case ( 15 ): switch( iQuizAnswerList[ iCurrentQuestion ] ) { case( 0 ): // none ! break; case( 1 ): // none ! break; case( 2 ): // none ! break; case( 3 ): // none ! break; } break; } } }