Prevent a static initialization order fiasco

revert-6246b479
Evil Eye 2 years ago
parent 627bfa1155
commit 3a888ef543

@ -18,253 +18,325 @@ namespace MWMechanics
template <> template <>
struct Weapon<ESM::Weapon::None> struct Weapon<ESM::Weapon::None>
{ {
inline static const ESM::WeaponType sValue{ /* short group */ "", inline static const ESM::WeaponType& getValue()
/* long group */ "", {
/* sound ID */ "", static const ESM::WeaponType value{ /* short group */ "",
/* attach bone */ "", /* long group */ "",
/* sheath bone */ "", /* sound ID */ "",
/* usage skill */ ESM::Skill::HandToHand, /* attach bone */ "",
/* weapon class*/ ESM::WeaponType::Melee, /* sheath bone */ "",
/* ammo type */ ESM::Weapon::None, /* usage skill */ ESM::Skill::HandToHand,
/* flags */ 0 }; /* weapon class*/ ESM::WeaponType::Melee,
/* ammo type */ ESM::Weapon::None,
/* flags */ 0 };
return value;
}
}; };
template <> template <>
struct Weapon<ESM::Weapon::PickProbe> struct Weapon<ESM::Weapon::PickProbe>
{ {
inline static const ESM::WeaponType sValue{ /* short group */ "1h", inline static const ESM::WeaponType& getValue()
/* long group */ "pickprobe", {
/* sound ID */ "", static const ESM::WeaponType value{ /* short group */ "1h",
/* attach bone */ "", /* long group */ "pickprobe",
/* sheath bone */ "", /* sound ID */ "",
/* usage skill */ ESM::Skill::Security, /* attach bone */ "",
/* weapon class*/ ESM::WeaponType::Melee, /* sheath bone */ "",
/* ammo type */ ESM::Weapon::None, /* usage skill */ ESM::Skill::Security,
/* flags */ 0 }; /* weapon class*/ ESM::WeaponType::Melee,
/* ammo type */ ESM::Weapon::None,
/* flags */ 0 };
return value;
}
}; };
template <> template <>
struct Weapon<ESM::Weapon::Spell> struct Weapon<ESM::Weapon::Spell>
{ {
inline static const ESM::WeaponType sValue{ /* short group */ "spell", inline static const ESM::WeaponType& getValue()
/* long group */ "spellcast", {
/* sound ID */ "", static const ESM::WeaponType value{ /* short group */ "spell",
/* attach bone */ "", /* long group */ "spellcast",
/* sheath bone */ "", /* sound ID */ "",
/* usage skill */ ESM::Skill::HandToHand, /* attach bone */ "",
/* weapon class*/ ESM::WeaponType::Melee, /* sheath bone */ "",
/* ammo type */ ESM::Weapon::None, /* usage skill */ ESM::Skill::HandToHand,
/* flags */ ESM::WeaponType::TwoHanded }; /* weapon class*/ ESM::WeaponType::Melee,
/* ammo type */ ESM::Weapon::None,
/* flags */ ESM::WeaponType::TwoHanded };
return value;
}
}; };
template <> template <>
struct Weapon<ESM::Weapon::HandToHand> struct Weapon<ESM::Weapon::HandToHand>
{ {
inline static const ESM::WeaponType sValue{ /* short group */ "hh", inline static const ESM::WeaponType& getValue()
/* long group */ "handtohand", {
/* sound ID */ "", static const ESM::WeaponType value{ /* short group */ "hh",
/* attach bone */ "", /* long group */ "handtohand",
/* sheath bone */ "", /* sound ID */ "",
/* usage skill */ ESM::Skill::HandToHand, /* attach bone */ "",
/* weapon class*/ ESM::WeaponType::Melee, /* sheath bone */ "",
/* ammo type */ ESM::Weapon::None, /* usage skill */ ESM::Skill::HandToHand,
/* flags */ ESM::WeaponType::TwoHanded }; /* weapon class*/ ESM::WeaponType::Melee,
/* ammo type */ ESM::Weapon::None,
/* flags */ ESM::WeaponType::TwoHanded };
return value;
}
}; };
template <> template <>
struct Weapon<ESM::Weapon::ShortBladeOneHand> struct Weapon<ESM::Weapon::ShortBladeOneHand>
{ {
inline static const ESM::WeaponType sValue{ /* short group */ "1s", inline static const ESM::WeaponType& getValue()
/* long group */ "shortbladeonehand", {
/* sound ID */ "Item Weapon Shortblade", static const ESM::WeaponType value{ /* short group */ "1s",
/* attach bone */ "Weapon Bone", /* long group */ "shortbladeonehand",
/* sheath bone */ "Bip01 ShortBladeOneHand", /* sound ID */ "Item Weapon Shortblade",
/* usage skill */ ESM::Skill::ShortBlade, /* attach bone */ "Weapon Bone",
/* weapon class*/ ESM::WeaponType::Melee, /* sheath bone */ "Bip01 ShortBladeOneHand",
/* ammo type */ ESM::Weapon::None, /* usage skill */ ESM::Skill::ShortBlade,
/* flags */ ESM::WeaponType::HasHealth }; /* weapon class*/ ESM::WeaponType::Melee,
/* ammo type */ ESM::Weapon::None,
/* flags */ ESM::WeaponType::HasHealth };
return value;
}
}; };
template <> template <>
struct Weapon<ESM::Weapon::LongBladeOneHand> struct Weapon<ESM::Weapon::LongBladeOneHand>
{ {
inline static const ESM::WeaponType sValue{ /* short group */ "1h", inline static const ESM::WeaponType& getValue()
/* long group */ "weapononehand", {
/* sound ID */ "Item Weapon Longblade", static const ESM::WeaponType value{ /* short group */ "1h",
/* attach bone */ "Weapon Bone", /* long group */ "weapononehand",
/* sheath bone */ "Bip01 LongBladeOneHand", /* sound ID */ "Item Weapon Longblade",
/* usage skill */ ESM::Skill::LongBlade, /* attach bone */ "Weapon Bone",
/* weapon class*/ ESM::WeaponType::Melee, /* sheath bone */ "Bip01 LongBladeOneHand",
/* ammo type */ ESM::Weapon::None, /* usage skill */ ESM::Skill::LongBlade,
/* flags */ ESM::WeaponType::HasHealth }; /* weapon class*/ ESM::WeaponType::Melee,
/* ammo type */ ESM::Weapon::None,
/* flags */ ESM::WeaponType::HasHealth };
return value;
}
}; };
template <> template <>
struct Weapon<ESM::Weapon::BluntOneHand> struct Weapon<ESM::Weapon::BluntOneHand>
{ {
inline static const ESM::WeaponType sValue{ /* short group */ "1b", inline static const ESM::WeaponType& getValue()
/* long group */ "bluntonehand", {
/* sound ID */ "Item Weapon Blunt", static const ESM::WeaponType value{ /* short group */ "1b",
/* attach bone */ "Weapon Bone", /* long group */ "bluntonehand",
/* sheath bone */ "Bip01 BluntOneHand", /* sound ID */ "Item Weapon Blunt",
/* usage skill */ ESM::Skill::BluntWeapon, /* attach bone */ "Weapon Bone",
/* weapon class*/ ESM::WeaponType::Melee, /* sheath bone */ "Bip01 BluntOneHand",
/* ammo type */ ESM::Weapon::None, /* usage skill */ ESM::Skill::BluntWeapon,
/* flags */ ESM::WeaponType::HasHealth }; /* weapon class*/ ESM::WeaponType::Melee,
/* ammo type */ ESM::Weapon::None,
/* flags */ ESM::WeaponType::HasHealth };
return value;
}
}; };
template <> template <>
struct Weapon<ESM::Weapon::AxeOneHand> struct Weapon<ESM::Weapon::AxeOneHand>
{ {
inline static const ESM::WeaponType sValue{ /* short group */ "1b", inline static const ESM::WeaponType& getValue()
/* long group */ "bluntonehand", {
/* sound ID */ "Item Weapon Blunt", static const ESM::WeaponType value{ /* short group */ "1b",
/* attach bone */ "Weapon Bone", /* long group */ "bluntonehand",
/* sheath bone */ "Bip01 LongBladeOneHand", /* sound ID */ "Item Weapon Blunt",
/* usage skill */ ESM::Skill::Axe, /* attach bone */ "Weapon Bone",
/* weapon class*/ ESM::WeaponType::Melee, /* sheath bone */ "Bip01 LongBladeOneHand",
/* ammo type */ ESM::Weapon::None, /* usage skill */ ESM::Skill::Axe,
/* flags */ ESM::WeaponType::HasHealth }; /* weapon class*/ ESM::WeaponType::Melee,
/* ammo type */ ESM::Weapon::None,
/* flags */ ESM::WeaponType::HasHealth };
return value;
}
}; };
template <> template <>
struct Weapon<ESM::Weapon::LongBladeTwoHand> struct Weapon<ESM::Weapon::LongBladeTwoHand>
{ {
inline static const ESM::WeaponType sValue{ /* short group */ "2c", inline static const ESM::WeaponType& getValue()
/* long group */ "weapontwohand", {
/* sound ID */ "Item Weapon Longblade", static const ESM::WeaponType value{ /* short group */ "2c",
/* attach bone */ "Weapon Bone", /* long group */ "weapontwohand",
/* sheath bone */ "Bip01 LongBladeTwoClose", /* sound ID */ "Item Weapon Longblade",
/* usage skill */ ESM::Skill::LongBlade, /* attach bone */ "Weapon Bone",
/* weapon class*/ ESM::WeaponType::Melee, /* sheath bone */ "Bip01 LongBladeTwoClose",
/* ammo type */ ESM::Weapon::None, /* usage skill */ ESM::Skill::LongBlade,
/* flags */ ESM::WeaponType::HasHealth | ESM::WeaponType::TwoHanded }; /* weapon class*/ ESM::WeaponType::Melee,
/* ammo type */ ESM::Weapon::None,
/* flags */ ESM::WeaponType::HasHealth | ESM::WeaponType::TwoHanded };
return value;
}
}; };
template <> template <>
struct Weapon<ESM::Weapon::AxeTwoHand> struct Weapon<ESM::Weapon::AxeTwoHand>
{ {
inline static const ESM::WeaponType sValue{ /* short group */ "2b", inline static const ESM::WeaponType& getValue()
/* long group */ "blunttwohand", {
/* sound ID */ "Item Weapon Blunt", static const ESM::WeaponType value{ /* short group */ "2b",
/* attach bone */ "Weapon Bone", /* long group */ "blunttwohand",
/* sheath bone */ "Bip01 AxeTwoClose", /* sound ID */ "Item Weapon Blunt",
/* usage skill */ ESM::Skill::Axe, /* attach bone */ "Weapon Bone",
/* weapon class*/ ESM::WeaponType::Melee, /* sheath bone */ "Bip01 AxeTwoClose",
/* ammo type */ ESM::Weapon::None, /* usage skill */ ESM::Skill::Axe,
/* flags */ ESM::WeaponType::HasHealth | ESM::WeaponType::TwoHanded }; /* weapon class*/ ESM::WeaponType::Melee,
/* ammo type */ ESM::Weapon::None,
/* flags */ ESM::WeaponType::HasHealth | ESM::WeaponType::TwoHanded };
return value;
}
}; };
template <> template <>
struct Weapon<ESM::Weapon::BluntTwoClose> struct Weapon<ESM::Weapon::BluntTwoClose>
{ {
inline static const ESM::WeaponType sValue{ /* short group */ "2b", inline static const ESM::WeaponType& getValue()
/* long group */ "blunttwohand", {
/* sound ID */ "Item Weapon Blunt", static const ESM::WeaponType value{ /* short group */ "2b",
/* attach bone */ "Weapon Bone", /* long group */ "blunttwohand",
/* sheath bone */ "Bip01 BluntTwoClose", /* sound ID */ "Item Weapon Blunt",
/* usage skill */ ESM::Skill::BluntWeapon, /* attach bone */ "Weapon Bone",
/* weapon class*/ ESM::WeaponType::Melee, /* sheath bone */ "Bip01 BluntTwoClose",
/* ammo type */ ESM::Weapon::None, /* usage skill */ ESM::Skill::BluntWeapon,
/* flags */ ESM::WeaponType::HasHealth | ESM::WeaponType::TwoHanded }; /* weapon class*/ ESM::WeaponType::Melee,
/* ammo type */ ESM::Weapon::None,
/* flags */ ESM::WeaponType::HasHealth | ESM::WeaponType::TwoHanded };
return value;
}
}; };
template <> template <>
struct Weapon<ESM::Weapon::BluntTwoWide> struct Weapon<ESM::Weapon::BluntTwoWide>
{ {
inline static const ESM::WeaponType sValue{ /* short group */ "2w", inline static const ESM::WeaponType& getValue()
/* long group */ "weapontwowide", {
/* sound ID */ "Item Weapon Blunt", static const ESM::WeaponType value{ /* short group */ "2w",
/* attach bone */ "Weapon Bone", /* long group */ "weapontwowide",
/* sheath bone */ "Bip01 BluntTwoWide", /* sound ID */ "Item Weapon Blunt",
/* usage skill */ ESM::Skill::BluntWeapon, /* attach bone */ "Weapon Bone",
/* weapon class*/ ESM::WeaponType::Melee, /* sheath bone */ "Bip01 BluntTwoWide",
/* ammo type */ ESM::Weapon::None, /* usage skill */ ESM::Skill::BluntWeapon,
/* flags */ ESM::WeaponType::HasHealth | ESM::WeaponType::TwoHanded }; /* weapon class*/ ESM::WeaponType::Melee,
/* ammo type */ ESM::Weapon::None,
/* flags */ ESM::WeaponType::HasHealth | ESM::WeaponType::TwoHanded };
return value;
}
}; };
template <> template <>
struct Weapon<ESM::Weapon::SpearTwoWide> struct Weapon<ESM::Weapon::SpearTwoWide>
{ {
inline static const ESM::WeaponType sValue{ /* short group */ "2w", inline static const ESM::WeaponType& getValue()
/* long group */ "weapontwowide", {
/* sound ID */ "Item Weapon Spear", static const ESM::WeaponType value{ /* short group */ "2w",
/* attach bone */ "Weapon Bone", /* long group */ "weapontwowide",
/* sheath bone */ "Bip01 SpearTwoWide", /* sound ID */ "Item Weapon Spear",
/* usage skill */ ESM::Skill::Spear, /* attach bone */ "Weapon Bone",
/* weapon class*/ ESM::WeaponType::Melee, /* sheath bone */ "Bip01 SpearTwoWide",
/* ammo type */ ESM::Weapon::None, /* usage skill */ ESM::Skill::Spear,
/* flags */ ESM::WeaponType::HasHealth | ESM::WeaponType::TwoHanded }; /* weapon class*/ ESM::WeaponType::Melee,
/* ammo type */ ESM::Weapon::None,
/* flags */ ESM::WeaponType::HasHealth | ESM::WeaponType::TwoHanded };
return value;
}
}; };
template <> template <>
struct Weapon<ESM::Weapon::MarksmanBow> struct Weapon<ESM::Weapon::MarksmanBow>
{ {
inline static const ESM::WeaponType sValue{ /* short group */ "bow", inline static const ESM::WeaponType& getValue()
/* long group */ "bowandarrow", {
/* sound ID */ "Item Weapon Bow", static const ESM::WeaponType value{ /* short group */ "bow",
/* attach bone */ "Weapon Bone Left", /* long group */ "bowandarrow",
/* sheath bone */ "Bip01 MarksmanBow", /* sound ID */ "Item Weapon Bow",
/* usage skill */ ESM::Skill::Marksman, /* attach bone */ "Weapon Bone Left",
/* weapon class*/ ESM::WeaponType::Ranged, /* sheath bone */ "Bip01 MarksmanBow",
/* ammo type */ ESM::Weapon::Arrow, /* usage skill */ ESM::Skill::Marksman,
/* flags */ ESM::WeaponType::HasHealth | ESM::WeaponType::TwoHanded }; /* weapon class*/ ESM::WeaponType::Ranged,
/* ammo type */ ESM::Weapon::Arrow,
/* flags */ ESM::WeaponType::HasHealth | ESM::WeaponType::TwoHanded };
return value;
}
}; };
template <> template <>
struct Weapon<ESM::Weapon::MarksmanCrossbow> struct Weapon<ESM::Weapon::MarksmanCrossbow>
{ {
inline static const ESM::WeaponType sValue{ /* short group */ "crossbow", inline static const ESM::WeaponType& getValue()
/* long group */ "crossbow", {
/* sound ID */ "Item Weapon Crossbow", static const ESM::WeaponType value{ /* short group */ "crossbow",
/* attach bone */ "Weapon Bone", /* long group */ "crossbow",
/* sheath bone */ "Bip01 MarksmanCrossbow", /* sound ID */ "Item Weapon Crossbow",
/* usage skill */ ESM::Skill::Marksman, /* attach bone */ "Weapon Bone",
/* weapon class*/ ESM::WeaponType::Ranged, /* sheath bone */ "Bip01 MarksmanCrossbow",
/* ammo type */ ESM::Weapon::Bolt, /* usage skill */ ESM::Skill::Marksman,
/* flags */ ESM::WeaponType::HasHealth | ESM::WeaponType::TwoHanded }; /* weapon class*/ ESM::WeaponType::Ranged,
/* ammo type */ ESM::Weapon::Bolt,
/* flags */ ESM::WeaponType::HasHealth | ESM::WeaponType::TwoHanded };
return value;
}
}; };
template <> template <>
struct Weapon<ESM::Weapon::MarksmanThrown> struct Weapon<ESM::Weapon::MarksmanThrown>
{ {
inline static const ESM::WeaponType sValue{ /* short group */ "1t", inline static const ESM::WeaponType& getValue()
/* long group */ "throwweapon", {
/* sound ID */ "Item Weapon Blunt", static const ESM::WeaponType value{ /* short group */ "1t",
/* attach bone */ "Weapon Bone", /* long group */ "throwweapon",
/* sheath bone */ "Bip01 MarksmanThrown", /* sound ID */ "Item Weapon Blunt",
/* usage skill */ ESM::Skill::Marksman, /* attach bone */ "Weapon Bone",
/* weapon class*/ ESM::WeaponType::Thrown, /* sheath bone */ "Bip01 MarksmanThrown",
/* ammo type */ ESM::Weapon::None, /* usage skill */ ESM::Skill::Marksman,
/* flags */ 0 }; /* weapon class*/ ESM::WeaponType::Thrown,
/* ammo type */ ESM::Weapon::None,
/* flags */ 0 };
return value;
}
}; };
template <> template <>
struct Weapon<ESM::Weapon::Arrow> struct Weapon<ESM::Weapon::Arrow>
{ {
inline static const ESM::WeaponType sValue{ /* short group */ "", inline static const ESM::WeaponType& getValue()
/* long group */ "", {
/* sound ID */ "Item Ammo", static const ESM::WeaponType value{ /* short group */ "",
/* attach bone */ "Bip01 Arrow", /* long group */ "",
/* sheath bone */ "", /* sound ID */ "Item Ammo",
/* usage skill */ ESM::Skill::Marksman, /* attach bone */ "Bip01 Arrow",
/* weapon class*/ ESM::WeaponType::Ammo, /* sheath bone */ "",
/* ammo type */ ESM::Weapon::None, /* usage skill */ ESM::Skill::Marksman,
/* flags */ 0 }; /* weapon class*/ ESM::WeaponType::Ammo,
/* ammo type */ ESM::Weapon::None,
/* flags */ 0 };
return value;
}
}; };
template <> template <>
struct Weapon<ESM::Weapon::Bolt> struct Weapon<ESM::Weapon::Bolt>
{ {
inline static const ESM::WeaponType sValue{ /* short group */ "", inline static const ESM::WeaponType& getValue()
/* long group */ "", {
/* sound ID */ "Item Ammo", static const ESM::WeaponType value{ /* short group */ "",
/* attach bone */ "ArrowBone", /* long group */ "",
/* sheath bone */ "", /* sound ID */ "Item Ammo",
/* usage skill */ ESM::Skill::Marksman, /* attach bone */ "ArrowBone",
/* weapon class*/ ESM::WeaponType::Ammo, /* sheath bone */ "",
/* ammo type */ ESM::Weapon::None, /* usage skill */ ESM::Skill::Marksman,
/* flags */ 0 }; /* weapon class*/ ESM::WeaponType::Ammo,
/* ammo type */ ESM::Weapon::None,
/* flags */ 0 };
return value;
}
}; };
MWWorld::ContainerStoreIterator getActiveWeapon(const MWWorld::Ptr& actor, int* weaptype) MWWorld::ContainerStoreIterator getActiveWeapon(const MWWorld::Ptr& actor, int* weaptype)
@ -305,43 +377,43 @@ namespace MWMechanics
switch (static_cast<ESM::Weapon::Type>(weaponType)) switch (static_cast<ESM::Weapon::Type>(weaponType))
{ {
case ESM::Weapon::PickProbe: case ESM::Weapon::PickProbe:
return &Weapon<ESM::Weapon::PickProbe>::sValue; return &Weapon<ESM::Weapon::PickProbe>::getValue();
case ESM::Weapon::HandToHand: case ESM::Weapon::HandToHand:
return &Weapon<ESM::Weapon::HandToHand>::sValue; return &Weapon<ESM::Weapon::HandToHand>::getValue();
case ESM::Weapon::Spell: case ESM::Weapon::Spell:
return &Weapon<ESM::Weapon::Spell>::sValue; return &Weapon<ESM::Weapon::Spell>::getValue();
case ESM::Weapon::None: case ESM::Weapon::None:
return &Weapon<ESM::Weapon::None>::sValue; return &Weapon<ESM::Weapon::None>::getValue();
case ESM::Weapon::ShortBladeOneHand: case ESM::Weapon::ShortBladeOneHand:
return &Weapon<ESM::Weapon::ShortBladeOneHand>::sValue; return &Weapon<ESM::Weapon::ShortBladeOneHand>::getValue();
case ESM::Weapon::LongBladeOneHand: case ESM::Weapon::LongBladeOneHand:
return &Weapon<ESM::Weapon::LongBladeOneHand>::sValue; return &Weapon<ESM::Weapon::LongBladeOneHand>::getValue();
case ESM::Weapon::LongBladeTwoHand: case ESM::Weapon::LongBladeTwoHand:
return &Weapon<ESM::Weapon::LongBladeTwoHand>::sValue; return &Weapon<ESM::Weapon::LongBladeTwoHand>::getValue();
case ESM::Weapon::BluntOneHand: case ESM::Weapon::BluntOneHand:
return &Weapon<ESM::Weapon::BluntOneHand>::sValue; return &Weapon<ESM::Weapon::BluntOneHand>::getValue();
case ESM::Weapon::BluntTwoClose: case ESM::Weapon::BluntTwoClose:
return &Weapon<ESM::Weapon::BluntTwoClose>::sValue; return &Weapon<ESM::Weapon::BluntTwoClose>::getValue();
case ESM::Weapon::BluntTwoWide: case ESM::Weapon::BluntTwoWide:
return &Weapon<ESM::Weapon::BluntTwoWide>::sValue; return &Weapon<ESM::Weapon::BluntTwoWide>::getValue();
case ESM::Weapon::SpearTwoWide: case ESM::Weapon::SpearTwoWide:
return &Weapon<ESM::Weapon::SpearTwoWide>::sValue; return &Weapon<ESM::Weapon::SpearTwoWide>::getValue();
case ESM::Weapon::AxeOneHand: case ESM::Weapon::AxeOneHand:
return &Weapon<ESM::Weapon::AxeOneHand>::sValue; return &Weapon<ESM::Weapon::AxeOneHand>::getValue();
case ESM::Weapon::AxeTwoHand: case ESM::Weapon::AxeTwoHand:
return &Weapon<ESM::Weapon::AxeTwoHand>::sValue; return &Weapon<ESM::Weapon::AxeTwoHand>::getValue();
case ESM::Weapon::MarksmanBow: case ESM::Weapon::MarksmanBow:
return &Weapon<ESM::Weapon::MarksmanBow>::sValue; return &Weapon<ESM::Weapon::MarksmanBow>::getValue();
case ESM::Weapon::MarksmanCrossbow: case ESM::Weapon::MarksmanCrossbow:
return &Weapon<ESM::Weapon::MarksmanCrossbow>::sValue; return &Weapon<ESM::Weapon::MarksmanCrossbow>::getValue();
case ESM::Weapon::MarksmanThrown: case ESM::Weapon::MarksmanThrown:
return &Weapon<ESM::Weapon::MarksmanThrown>::sValue; return &Weapon<ESM::Weapon::MarksmanThrown>::getValue();
case ESM::Weapon::Arrow: case ESM::Weapon::Arrow:
return &Weapon<ESM::Weapon::Arrow>::sValue; return &Weapon<ESM::Weapon::Arrow>::getValue();
case ESM::Weapon::Bolt: case ESM::Weapon::Bolt:
return &Weapon<ESM::Weapon::Bolt>::sValue; return &Weapon<ESM::Weapon::Bolt>::getValue();
} }
return &Weapon<ESM::Weapon::ShortBladeOneHand>::sValue; return &Weapon<ESM::Weapon::ShortBladeOneHand>::getValue();
} }
} }

Loading…
Cancel
Save