
function maxOneOfWep( unit, optionName, count ) {
	return maxOneOf( unit, optionName, count, maxOneOfWep );
}

function maxOneOfMWep( unit, optionName, count ) {
	return maxOneOf( unit, optionName, count, maxOneOfMWep );
}

function maxOneMount( unit, optionName, count ) {
	return maxOneOf( unit, optionName, count, maxOneMount );
}

function maxOneOfMArm( unit, optionName, count ) {
	return maxOneOf( unit, optionName, count, maxOneOfMArm );
}

function throwerDeployment( unit, positions ) {

  var men = ["archer01.gif", "archer02.gif"];
  normalDeployment( unit, positions );

  for( var i=0; i<unit.count; i++ ) {
    positions.front.push( men );
    positions.back.push( men );
  }

  return positions;
}

var optionsMagicWep = [
["mLeapGold", "Schnelle Goldklinge", 60, {changeFunction: maxOneOfMWep}],
  ["mBowSea", "Bogen des Seefahrers", 60, {changeFunction: maxOneOfMWep}],
  ["mSwdHoeth", "Das Schwert von Hoeth", 60, {changeFunction: maxOneOfMWep}],
  ["mImrLance", "Sternenlanze", 40, {changeFunction: maxOneOfMWep}],
  ["mReavBow", "Jagdbogen", 40, {changeFunction: maxOneOfMWep}],
  ["mWhiteS", "Das Weiße Schwert", 40, {changeFunction: maxOneOfMWep}],
  ["mSeaGold", "Meeresgoldklinge", 40, {changeFunction: maxOneOfMWep}],
  ["mSwordStr", "Behände Klinge", 25, {changeFunction: maxOneOfMWep}],
  ["mFoeBane", "Klinge des Verderbens", 25, {changeFunction: maxOneOfMWep}],
  ["mSwMight", "Schwert der Macht", 15, {changeFunction: maxOneOfMWep}]
  ].concat(commonMagicWep).optSort();


var optionsMagicArm = [
  ["mArmProte", "Rüstung des Schutzes", 45, {changeFunction: maxOneOfMArm}],
  ["mGoldShld", "Goldener Schild", 35, {changeFunction: maxOneOfMArm}],
  ["mArmStars", "Sternenrüstung", 30, {changeFunction: maxOneOfMArm}],
  ["mArmHeros", "Heldenrüstung", 30, {changeFunction: maxOneOfMArm}],
  ["mGaunt", "Temakandors Handschuhe", 30, {changeFunction: maxOneOfMArm}],
  ["mShadArm", "Schattenrüstung", 25, {changeFunction: maxOneOfMArm}],
  ["mArmourCaledor", "Rüstung von Caledor", 25, {changeFunction: maxOneOfMArm}],
  ["mHelmFort", "Helm des Glücks", 25, {changeFunction: maxOneOfMArm}],
  ["mDragonSh", "Drachenschuppenschild", 20, {changeFunction: maxOneOfMArm}],
  ["mMask", "Maske des Meeresfürsten", 10, {changeFunction: maxOneOfMArm}]
  ].concat(commonMagicArm).optSort();

var optionsMagicTal = [
  ["mVamDef", "Magische Armschienen", 55.],
  ["mGoldCrwn", "Goldene Krone von Atrazar", 40.],
  ["mLoreClk", "Umhang des Lehrmeisters", 40.],
  ["mTalisSap", "Talisman von Saphery", 35.],
  ["mSacIncen", "Heiliger Weihrauch", 30.],
  ["mGuardPho", "Phönixwächter", 25.],
  ["mAmuFire", "Feueramulet", 20.]
  ].concat(commonMagicTal).optSort();

var optionsMagicBan = [
  ["mBattleBan", "Schlachtbanner", 80., {changeFunction: maxOneOfBanner}],
  ["mBanDragon", "Banner des Weltendrachens", 60., {changeFunction: maxOneOfBanner}],
  ["mBanSorce", "Zauberbanner", 50., {changeFunction: maxOneOfBanner}],
  ["mStdBalan", "Standarte der Balance", 45., {changeFunction: maxOneOfBanner}],
  ["mBanArcan", "Banner des arkanen Schutzes", 25., {changeFunction: maxOneOfBanner}],
  ["mLionStd",  "Löwenstandarte", 25., {changeFunction: maxOneOfBanner}],
	["mStdWar",   "Kriegsbanner", 20., {changeFunction: maxOneOfBanner}],
	["mBanEllyr", "Banner von Ellyrion", 15., {changeFunction: maxOneOfBanner}]
  ].concat(commonMagicBan).optSort();

var optionsMagicArc = [
  ["mBkHoeth", "Buch von Hoeth", 100., {changeFunction: maxOneOfMArc}],
	["mVortex", "Vortexsplitter", 75., {changeFunction: maxOneOfMArc}],
	["mAnnulCrs", "Annulianischer Kristall", 40., {changeFunction: maxOneOfMArc}],
	["mSigAsur", "Sigel des Asuryan", 40., {changeFunction: maxOneOfMArc}],
	["mStarStf", "Sternenholzstab", 40., {changeFunction: maxOneOfMArc}],
	["mSeer", "Seherstab von Saphery", 30., {changeFunction: maxOneOfMArc}],
	["mTrick", "Anhänger des Schattentänzers", 30., {changeFunction: maxOneOfMArc}],
	["mSunfire", "Juwel des Sonnenfeuers", 25., {changeFunction: maxOneOfMArc}],
	["mArcDispel", "Magiebannende Spruchrolle", 20, {changeFunction: maxOneOfMArc}],
	["mArcPowerSt", "Energiestein", 20, {changeFunction: maxOneOfMArc}],
	["mRngCorin", "Ring des Corin", 20., {changeFunction: maxOneOfMArc}],
	["mStfSolid", "Stab der Stärke", 20., {changeFunction: maxOneOfMArc}],
	["mJewelDsk", "Rubin der Dämmerung", 15., {changeFunction: maxOneOfMArc}],
	["mSilverWn", "Silberstab", 10., {changeFunction: maxOneOfMArc}]
  ].concat(commonMagicArc).optSort();

var optionsMagicEnc = [
["mNullStn", "Bannstein", 100.],
	["mRadiantG", "Stralender Stein von Hoeth", 45.],
	["mRobe", "Folariaths Robe", 45.],
	["mRingFury", "Ring des Zorns", 40.],
	["mClkBeard", "Bartmantel", 35.],
	["mPenRune", "Amulet der Runenrache", 35.],
	["mImrHorn", "Drachenhorn", 25.],
	["mSkein", "Splitter der Sternenkrone", 25.],
	["mAmLight", "Amulet des Lichts", 15.],
	["mCourage", "Juwel der Tapferkeit", 10.],
	["mTalLoec", "Talisman des Loec", 10.]
  ].concat(commonMagicEnc).optSort();

var iconFolder = "../elves/image/";

var baseDefinition = {
name: "Hochelfen",
      maxsize: 1,
      noSpecialName: 1,
      subDefinitions: {

tyrion: {
name:       "Tyrion",
            fullName:   "Tyrion, The Defender of Ulthuan",
            points:     400.,
            maxsize:    1,
            slot:       "Lord",
            icons:      ["dragonprince01.gif"],
            basicText:  "Drachenrüstung of Aenarion, Heart of Avelorn, Sunfang, Malhandir",
            options:    []
        },

teclis: {
name:       "Teclis",
            fullName:   "Teclis, High Loremaster of the White Tower",
            points:     475,
            maxsize:    1,
            slot:       "Lord",
            icons:      ["elfchamp01.gif", "elfchamp02.gif"],
            basicText:  "Sword of Teclis, Scroll of Hoeth, Moon Staff of Lileath, War Crown of Saphery"
        },


eltharion: {
name:       "Eltharion",
            fullName:   "Eltharion the Grim, Warden of Tor Yvresse",
            points:     285.,
            maxsize:    1,
            slot:       "Lord",
            icons:      ["elfchamp01.gif", "elfchamp02.gif"],
            basicText:  "Talisman of Hoeth, Nagarythe Hass, Longbow, Schwere Rüstung, The Fangsword of Eltharion, Helm of Yvresse",
            options:    []
           },

Alith: {
name:       "Alith Anar",
            fullName:   "Alith Anar, The Shadow King",
            points:     245.,
            maxsize:    1,
            slot:       "Lord",
            icons:      ["archer01.gif"],
            basicText:  "Moonbow, Kundschafters, Nagarythe Hass, Shadow Crown, Leichte Rüstung ",
            options:    []
       },

prince: {
name:       "Prinz",
            points:     150.,
            itemPoints: 100,
            maxsize:    1,
            slot:       "Lord",
            icons:      ["noble01.gif", "elfchamp02.gif"],
            options:    [
              [
              ["iLance", "Lanze", 6, {changeFunction: maxOneOfWep } ],
            ["iSpear", "Speer", 3, {changeFunction: maxOneOfWep } ],
            ["iGreatWep", "Zweihandwaffe", 12, {changeFunction: maxOneOfWep } ],
            ["iHalberd", "Helebarde", 6, {changeFunction: maxOneOfWep } ],
            ["iExtraHand", "Zusätzlich Handwaffe", 6, {changeFunction: maxOneOfWep} ],
            null,
            ["iLightArmor", "Leichte Rüstung", 3.],
            ["iHeavyArmor", "Schwere Rüstung", 6.],
            ["iDragArmr", "Drachenrüstung", 9.],
            null,
            ["iShield", "Schild", 3.],
            ["iLongbow", "Langbogen", 10.]
              ],
            [
              ["iElvenStd", "Elfenross", 18, {changeFunction: maxOneMount,
                icons: ["borderrider01.gif"] } ],
            ["iElvenStdBrd", "Elfenross mit Rossharnisch", 24, {changeFunction: maxOneMount, 
              icons: ["dragonprincechamp01.gif"] } ],
            ["iGreatEag", "Riesenadler", 50, {changeFunction: maxOneMount,
              icons: ["eaglerider01.gif"] } ],
            ["iGreif", "Griffon", 200, {changeFunction: maxOneMount, 
              icons: ["griffon01.gif"] } ],
            ["iSunDrag", "Sonnendrache", 230, {changeFunction: maxOneMount,
              icons: ["whitedragon02.gif"] } ],
            ["iMoonDrag", "Monddrache", 300, {changeFunction: maxOneMount,
              icons: ["whitedragon02.gif"] } ],
            ["iStarDrag", "Sternendrache", 370, {changeFunction: maxOneMount,
              icons: ["whitedragon02.gif"] } ],
            ["iChariot", "Tiranoc Chariot", 85, {changeFunction: maxOneMount,
              icons: ["chariot01.gif"] } ],
            ],
            optionsMagicWep,
            optionsMagicArm,
            optionsMagicTal,
            optionsMagicEnc
              ]
        },

archmage: {
name:       "Erzmagier",
            points:     225.,
            itemPoints: 100,
            maxsize:    1,
            slot:       "Lord",
            icons:      ["elfmage01.gif", "elfmage02.gif", "elfmage03.gif"],
            options:    [
              [
              ["iElvenStd", "Elfenross", 18, {changeFunction: maxOneMount,
                icons: ["elfmage04.gif"] } ],
            ["iElvenStdBrd", "Elfenross mit Rossharnisch", 24, {changeFunction: maxOneMount,
              icons: ["elfmage04.gif"] } ],
            ["iGreatEag", "Riesenadler", 50, {changeFunction: maxOneMount,
              icons: ["eaglerider01.gif"] } ],
            ["iSunDrag", "Sonnendrache", 230, {changeFunction: maxOneMount, 
              icons: ["whitedragon02.gif"] } ],
            ["iMoonDrag", "Monddrache", 300, {changeFunction: maxOneMount,
              icons: ["whitedragon02.gif"] } ],
            ["iChariot", "Tiranoc Chariot", 85, {changeFunction: maxOneMount,
              icons: ["chariot01.gif"] } ],
            null,
            ["iLvl4", "Magier lvl 4", 35]
              ],
            optionsMagicWep,
            optionsMagicTal,
            optionsMagicEnc,
            optionsMagicArc,
            ]
          },

cara: {
name:       "Caradryan",
            fullName:   "Caradryan, Captain of the Phoenix Guard",
            points:     175.,
            maxsize:    1,
            slot:       "Hero",
            icons:      ["elfchamp01.gif", "elfchamp02.gif"],
            basicText:  "Magic Resistance (3), Verursacht Angst, The Phoenix Blade, Schwere Rüstung",
            options:    []
      },

korhil: {
name:       "Korhil",
            fullName:   "Korhil, Captain of the White Lions",
            points:     140.,
            maxsize:    1,
            slot:       "Hero",
            icons:      ["noble01.gif", "elfchamp02.gif"],
            basicText:  "Chayal, Stubborn, Pelt of Charandis, Schwere Rüstung",
            options:    [
              [
              ["iWLChar", "Lion Chariot of Chrace", 130, ["chariot02.gif"] ]
              ]
              ]
        },

noble: {
name:       "Edler",
            points:     85.,
            itemPoints: 50,
            maxsize:    1,
            slot:       "Hero",
            icons:      ["noble01.gif", "elfchamp02.gif"],
            options:    [
              [
              ["iLance", "Lanze", 4, {changeFunction: maxOneOfWep } ],
            ["iSpear", "Speer", 2, {changeFunction: maxOneOfWep } ],
            ["iGreatWep", "Zweihandwaffe", 8, {changeFunction: maxOneOfWep } ],
            ["iHalberd", "Helebarde", 4, {changeFunction: maxOneOfWep } ],
            ["iExtraHand", "Zusätzlich Handwaffe", 4, {changeFunction: maxOneOfWep} ],
            null,
            ["iLightArmor", "Leichte Rüstung", 2.],
            ["iHeavyArmor", "Schwere Rüstung", 4.],
            ["iDragArmr", "Drachenrüstung", 6.],
            null,
            ["iShield", "Schild", 2.],
            ["iLongbow", "Langbogen", 10.]
              ],
            [
              ["iElvenStd", "Elfenross", 12, {changeFunction: maxOneMount,
                icons: ["borderrider01.gif"] } ],
            ["iElvenStdBrd", "Elfenross mit Rossharnisch", 16, {changeFunction: maxOneMount,
              icons: ["dragonprincechamp01.gif"] } ],
            ["iGreatEag", "Riesenadler", 50, {changeFunction: maxOneMount,
              icons: ["eaglerider01.gif"] } ],
            ["iChariot", "Tiranoc Chariot", 85, {changeFunction: maxOneMount, icons: ["chariot01.gif"] } ],
            null,
            ["iBSBSaur", "Armeestandartenträger", 25, { icon: ["archer_std01.gif"] } ]
              ],
            optionsMagicWep.optSort(50),
            optionsMagicArm.optSort(50),
            optionsMagicTal.optSort(50),
            optionsMagicEnc.optSort(50),
            optionsMagicBan.optSort(50)
              ]
       },

mage: {
name:       "Magier",
            points:     100.,
            itemPoints: 50,
            maxsize:    1,
            slot:       "Hero",
            icons:      ["elfmage01.gif", "elfmage02.gif", "elfmage03.gif"],
            options:    [
              [
              ["iElvenStd", "Elfenross", 12, {changeFunction: maxOneMount,
                icons: ["elfmage04.gif"] } ],
            ["iElvenStdBrd", "Elfenross mit Rossharnisch", 16, {changeFunction: maxOneMount,
              icons: ["elfmage04.gif"] } ],
            ["iChariot", "Tiranoc Chariot", 85, {changeFunction: maxOneMount, 
              icons: ["chariot01.gif"] } ],
            null,
            ["iLvl2", "Magier lvl 2", 35]
              ],
            optionsMagicWep.optSort(50),
            optionsMagicTal.optSort(50),
            optionsMagicArc.optSort(50),
            optionsMagicEnc.optSort(50)
              ]
      },

dragMage: {
name:       "Drachenmagier von Caledor",
            points:     350.,
            itemPoints: 50,
            maxsize:    1,
            slot:       "Hero",
            icons:      ["whitedragon02.gif"],
            options:    [
              [["iLvl2", "Magier lvl 2", 35]],
            optionsMagicWep.optSort(50),
            optionsMagicTal.optSort(50),
            optionsMagicArc.optSort(50),
            optionsMagicEnc.optSort(50)
              ]
          },
archers: {
name:       "Bogenschützen",
            points:     11.,
            minsize:    10,
            slot:       "Core",
            icons:      ["archer01.gif", "archer02.gif"],
            basicText:  "Langbogen",
            options:    [
              [
              ["iLightArmor", "Leichte Rüstung", 1.],
            ["Std", "Standartenträger", 10, {icons: ["archer_std01.gif"] }],
            ["Music", "Musiker", 5, {icons: ["archer_music01.gif"] }],
            ["Champ", "Falkenauge", 10, {icons: ["elfchamp01.gif"] }],
            ],
            optionsMagicBan.optSort(25)
            ]
         },

spearmen: {
name:       "Speerträger",
            points:     9.,
            minsize:    10,
            slot:       "Core",
            icons:      ["spearmen01.gif", "spearmen02.gif"],
            basicText:  "Speer, Schild, Leichte Rüstung",
            options:    [
              [
              ["Champ", "Wächter", 10],
            ["Std", "Standartenträger", 10, {icons: ["spear_std01.gif"] }],
            ["Music", "Musiker", 5, {icons: ["spear_music01.gif"] }],
            ],
            optionsMagicBan.optSort(25)
            ]
          },

lothernS: {
name:       "Seegarde von Lothern",
            points:     12.,
            itemPoints: 0,
            minsize:    10,
            slot:       "Core",
            icons:      ["spearmen01.gif", "spearmen02.gif"],
            basicText:  "Bogen, Spear, Leichte Rüstung",
            options:    [
              [
              ["iShield", "Schild", 1.],
            ["Champ", "Seemeister", 10],
            ["Std", "Standartenträger", 10, {icons: ["spear_std01.gif"] }],
            ["Music", "Musiker", 5, {icons: ["spear_music01.gif"] }],
            ],
            optionsMagicBan.optSort(25)
              ]
          },

swordmaster: {
name:       "Sword Masters of Hoeth",
            points:     15.,
            itemPoints: 50,
            minsize:    5,
            slot:       "Special",
            icons:      ["swordmaster01.gif"],
            basicText:  "Schwere Rüstung, Zweihandwaffe",
            options:    [
              [
              ["Champ", "Bladelord", 12],
            ["Music", "Musiker", 6.],
            ["Stand", "Standartenträger", 12, {icons: ["swordmaster_std01.gif"]}]
              ],
            optionsMagicBan.optSort(50)
            ]
             },

phoenGrd: {
name:       "Phoenix Guard",
            points:     15.,
            itemPoints: 50,
            minsize:    5,
            slot:       "Special",
            icons:      ["spearmen01.gif", "spearmen02.gif"],
            basicText:  "Helebarde, Verursacht Angst, Schwere Rüstung",
            options:    [
              [
              ["Music", "Musiker", 6.],
            ["Champ", "Keeper of the Flame", 12],
            ["Std", "Standartenträger", 12.]
              ],
            optionsMagicBan.optSort(50)
            ]
          },

whitLion: {
name:       "White Lions of Chrace",
            points:     15.,
            itemPoints: 0,
            minsize:    5,
            slot:       "Special",
            icons:      ["archer01.gif", "archer02.gif"],
            basicText:  "Stubborn, Zweihandwaffe, Schwere Rüstung",
            options:    [
              [
              ["Champ", "Gardisten", 12],
            ["Music", "Musiker", 6.],
            ["Std", "Standartenträger", 12.]
              ],
            optionsMagicBan.optSort(50)
            ]
          },

silverHl: {
name:       "Silver Helms",
            points:     21.,
            itemPoints: 0,
            minsize:    5,
            slot:       "Special",
            icons:      ["silverhelm01.gif", "silverhelm02.gif"],
            basicText:  "Barding, Lanze, Elfenrosss, Schwere Rüstung",
            options:    [
              [
              ["Schild", "Shield", 2.],
            ["Champ", "Adlerhelm", 16],
            ["Std", "Standartenträger", 16.],
            ["Music", "Musiker", 8.],
            ]
            ]
          },

dragPrin: {
name:       "Drachenprinzen von Caledor",
            points:     30.,
            itemPoints: 0,
            minsize:    5,
            slot:       "Special",
            icons:      ["dragonprince01.gif"],
            basicText:  "Barding, Lanze, Drachenrüstung, Schild, Elfenrosss",
            options:    [
              [
              ["Std", "Standartenträger", 20.],
            ["Music", "Musiker", 10.],
            ["Champ", "Drachenmeister", 20, { icons: ["dragonprincechamp01.gif"] } ],
            ],
            optionsMagicWep.optSort(25),
            optionsMagicArm.optSort(25),
            optionsMagicTal.optSort(25),
            optionsMagicEnc.optSort(25),
            optionsMagicBan.optSort(50)
            ]
          },

ellyReav: {
name:       "Ellyrianische Grenzreiter",
            points:     17.,
            minsize:    5,
            slot:       "Special",
            icons:      ["borderrider01.gif", "borderrider02.gif"],
            basicText:  "Schnelle Kavallerie, Elfenrosss, Leichte Rüstung",
            options:    [
              [
              ["iSpear", "Speer", 0, {oneOf:"handWeapon"}],
            ["iBowSpear", "Speer and Bow", 4, {oneOf:"handWeapon"}],
            ["iBow", "Bogen", 2, {oneOf:"handWeapon"}]
              ],
            [
              ["Champ", "Herold", 7],
            ["Music", "Musiker", 7.],
            ["Std", "Standartenträger", 14.]
              ]
              ]
          },

shadowWr: {
name:       "Schattenkrieger",
            points:     16.,
            minsize:    5,
            maxsize:    16,
            slot:       "Special",
            icons:      ["archer01.gif", "archer02.gif"],
            basicText:  "Kundschafter, Nagarythe Hass, Longbow, Plänkler, Leichte Rüstung",
            options:    [
              [
              ["Champ", "Schattenmeister", 12]
            ],
            ]
          },

tiarocChar: {
name:       "Tiranoc Chariot",
            points:     85.,
            maxsize:    10,
            slot:       "Special",
            icons:      ["chariot01.gif"],
            options:    []
            },

characeChar: {
name:       "Lion Chariot of Charace",
            points:     140.,
            maxsize:    10,
            slot:       "Special",
            icons:      ["chariot02.gif"],
            options:    []
             },

repBolt: {
name:       "Repetier Bolt Thrower",
            points:     100.,
            maxsize:    10,
            slot:       "Rare",
            icons:      ["boltthrower.gif"],
            basicText:  "Repetier Bolt Thrower",
            deployment: throwerDeployment,
            options:    []
         },

eagle: {
name:       "Riesenadler",
            points:     50.,
            maxsize:    10,
            slot:       "Rare",
            icons:      ["eaglerider01.gif"],
            options:    []
       }
      }
};

var baseUnit = new Unit( null, null );

