class APPerkList extends Info
  abstract;

struct PerkRecord
{
  var array<string> PerkName;
  var string PerkClass;
};
var array<PerkRecord> PerkList;

static function class<KFVeterancyTypes> getPerkClass(string Perk)
{
  local int i,n,j;
  local array<PerkRecord> temp;
  local string strTemp;

  temp = default.PerkList;

  for(i=0; i<temp.Length; i++)
  {
    j = temp[i].PerkName.Length;
    for(n=0; n<j; n++)
    {
      if(Perk != temp[i].PerkName[n])
        continue;
      strTemp = temp[i].PerkClass;
    }
  }
  return class<KFVeterancyTypes>(dynamicLoadObject(strTemp, class'Class'));
}

defaultproperties
{
  PerkList[00]=(PerkName=("med","medic"),PerkClass="KFMod.KFVetFieldMedic")
  PerkList[01]=(PerkName=("zerk","berserker"),PerkClass="KFMod.KFVetBerserker")
  PerkList[02]=(PerkName=("mando","comando"),PerkClass="KFMod.KFVetCommando")
  PerkList[03]=(PerkName=("sharp","sharpshooter"),PerkClass="KFMod.KFVetSharpshooter")
  PerkList[04]=(PerkName=("sup","support","spec"),PerkClass="KFMod.KFVetSupportSpec")
  PerkList[05]=(PerkName=("pyro","firebug","firefag"),PerkClass="KFMod.KFVetFirebug")
  PerkList[06]=(PerkName=("demo","demolition"),PerkClass="KFMod.KFVetDemolitions")
  PerkList[07]=(PerkName=("none"),PerkClass="")
}