case "be_companion":
int myPower = sti(CalcCharacterSkill(PChar,SKILL_LEADERSHIP) + CalcCharacterSkill(PChar,SKILL_SNEAK) + CalcCharacterSkill(PChar,SKILL_FENCING) + CalcCharacterSkill(PChar,SKILL_CANNONS));
int enPower = sti(CalcCharacterSkill(NPChar,SKILL_LEADERSHIP) + CalcCharacterSkill(NPChar,SKILL_SNEAK) + CalcCharacterSkill(NPChar,SKILL_FENCING) + CalcCharacterSkill(NPChar,SKILL_CANNONS));
if(myPower<enPower)
{
dialog.text = DLG_TEXT[80];
link.l1 = DLG_TEXT[81];
link.l1.go = "officer";
link.l2 = DLG_TEXT[21] + GetCharacterAddressForm(NPChar, ADDR_CIVIL, false, false) + ".";
link.l2.go = "talk";
}
else
{
dialog.text = DLG_TEXT[78];
link.l1 = DLG_TEXT[79];
// link.l1.go = "Exit_companion";
link.l1.go = "exit_joined"; // Sulan 2010-06-12: Exit_companion causes CTD - reason so far unknown.
// Unless that is fixed and properly tested, please use this workaround
link.l2 = DLG_TEXT[31];
link.l2.go = "talk";
}
break;