PWE_PRC8/_module/nss/sy_t_tclass.nss
Jaysyn904 ee1dc35889 Initial Commit
Initial Commit
2025-04-03 10:29:41 -04:00

760 lines
31 KiB
Plaintext

//::///////////////////////////////////////////////
//:: sy_t_tclass.nss
//:: Copyright (c) 2001 Bioware Corp.
//:://////////////////////////////////////////////
//:://////////////////////////////////////////////
//:: Created By: Syrsuro
//:: Created On: November - May
//:://////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
///////This script will generate a treasure appropriate for its given CR rating.
///////The include files sy_t_magic.nss and sy_t_mundane contain the actual
////////create item function definitions.
/////////////////////////////////////////////////////////////////////////////////////////
#include "sy_t_magic"
//#include "sy_t_mundane"
////////////////////////////////////////////////////////////////////////////////////////
///Declarations///////////////////////////////////////////////////////////////
void GenerateTreasure(object oCreateOn, int nCr, int nTmodifier); //Determines the number and class of items.
void GenerateMagicItem (object oTarget, int nTClass);//Determines the type (ring, armor, etc) of items.
void GenerateMundane(object oCreateOn, int nCr);
//////////////////////////////////////////////////////////////////////////////
//////This script allows the DM to globally adjust the generation scripts.
////If you are using the default exp setting of 10%, it is recommended that you use
////the default settings of poor (2%), standard (5%) and rich (10%) for all cash loots
//////(this value is set in the nw_o_generalxxx scripts).
///////Otherwise, the players will accumulate cash treasure at a significantly faster rate.
void TreasureChance (object oCreateOn, int nCr, int nTModifier)
{
CreateGold(oCreateOn, nCr, nTModifier); //The CreateGold script is also (by default) modified by this value.
if (Random(100) < nTModifier) {CreateGem (oCreateOn, nCr); }
if (Random(100) < 100) {GenerateTreasure(oCreateOn, nCr, nTModifier); } // By default the item generation scripts are NOT reduced.
}
///////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////
//////This function will determine how many and what type of items should be created..
////////////////////////////////////////////////////////////////////////////////////////
///////nCR is intended to be the Challenge Rating of the encounter where they chest is taken.
/////By adjusting the percentages in the following scripts, the odds of a magic item being generated
/////randomly given a specified challenge rating can be adjusted.
/////////////////////////////////////////////////////////////////////////////////////////
void GenerateTreasure(object oCreateOn, int nCr, int nTModifier)
{
int nRandom; int nQuantity = 1;
int nTreasureClass = 1; int x = 0;
int nCR = nCR + nTModifier/2 - 3; //Default values of nTModifier are 2 (poor), 6 (standard) and 10 (rich).
//This reduces the CR of the chest by 2 if it
//is a poor chest or increases it by 2 if it is a rich chest.
if (nCr < 1) {nCr = 1;}
switch (nCr)
{
case 1:
nRandom = Random(100) + 1;
if (nRandom > 98)
{
nTreasureClass = 1; nQuantity = 1;
// This script will generate one minor magic item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 60)
{
nQuantity = d2(3) - 3;
//This script will generate 0 to 3 mundane items.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMundane(oCreateOn, nCr);
}
}
break;
case 2:
nRandom = Random(100) + 1;
if (nRandom > 95)
{
nTreasureClass = 1; nQuantity = 1;
//This script will generate one minor magic item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 55)
{
nQuantity = d2(3) - 3;
// This script will generate 0 -3 mundane items.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMundane(oCreateOn, nCr);
}
}
break;
case 3:
nRandom = Random(100) + 1;
if (nRandom > 95)
{
nTreasureClass = 1; nQuantity = 1;
// This script will generate one minor item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 55)
{
nQuantity = d2(3) - 2;
// This script will generate 1 - 4 mundane items.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMundane(oCreateOn, nCr);
}
}
break;
case 4:
nRandom = Random(100) + 1;
if (nRandom > 85)
{
nTreasureClass = 1; nQuantity = 1;
// This script will generate one minor item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 49)
{
nQuantity = d2(2);
// This script will generate 1 - 4 mundane items.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMundane(oCreateOn, nCr);
}
}
break;
case 5:
nRandom = Random(100) + 1;
if (nRandom > 78)
{
nTreasureClass = 1; nQuantity = 1;
// This script will generate one minor item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 49)
{
nQuantity = d2(2);
// This script will generate 2 - 4 mundane items.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMundane(oCreateOn, nCr);
}
}
break;
case 6:
nRandom = Random(100) + 1;
if (nRandom > 62)
{
nTreasureClass = 1; nQuantity = 1;
// This script will generate 1 minor item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 42)
{
nQuantity = d2(2);
// This script will generate 2 - 4 mundane items.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMundane(oCreateOn, nCr);
}
}
break;
case 7:
nRandom = Random(100) + 1;
if (nRandom > 99)
{
nTreasureClass = 2; nQuantity = 1;
// This script will generate 1 medium magic item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 67)
{
nTreasureClass = 1; nQuantity = d3();
// This script will generate 1 -3 minor magic items.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 57)
{
nQuantity = d4();
// This script will generate 1 - 4 Mundane items.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMundane(oCreateOn, nCr);
}
}
break;
case 8:
nRandom = Random(100) + 1;
if (nRandom > 97)
{
nTreasureClass = 2; nQuantity = 1;
// This script will generate 1 Medium Magic item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 59)
{
nTreasureClass = 1; nQuantity = d3();
// This script will generate 1 - 3 minor magic items.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass); //ONLY ONE
} //1d3
}
else if (nRandom > 54)
{
nQuantity = d3() + 1;
// This script will generate 2 -4 Mundane items.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMundane(oCreateOn, nCr);
}
}
break;
case 9:
nRandom = Random(100) + 1;
if (nRandom > 96)
{
nTreasureClass = 2; nQuantity = 1;
// This script will generate 1 Medium Magic Item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 51)
{
nTreasureClass = 1; nQuantity = d3();
// This script will generate 1 - 3 Minor Magic Items
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
break;
case 10:
nRandom = Random(100) + 1;
if (nRandom > 91)
{
nTreasureClass = 2; nQuantity = 1;
// This script will generate 1 Medium Magic item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 48)
{
nTreasureClass = 1; nQuantity = d3() + 1;
// This script will generate 2 - 4 Minor magic items.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
break;
case 11:
nRandom = Random(100) + 1;
if (nRandom > 99)
{
nTreasureClass = 3; nQuantity = 1;
// The script will generate one Major magic item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 84)
{
nTreasureClass = 2; nQuantity = 1;
// This script will generate 1 Meduim Magic Item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 40)
{
nTreasureClass = 1; nQuantity = d3()+1;
// This script will generate 2 - 4 Minor Magic items.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
break;
case 12:
nRandom = Random(100) + 1;
if (nRandom > 98)
{
nTreasureClass = 3; nQuantity = 1;
// This script will generate 1 Major Magic Item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 87)
{
nTreasureClass = 2; nQuantity = 1;
// This script will generate 1 Medium Magic Item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 31)
{
nTreasureClass = 1; nQuantity = d3() + 1;
// This script will generate 2 - 4 Minor Magic Items.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
break;
case 13:
nRandom = Random(100) + 1;
if (nRandom > 97)
{
nTreasureClass = 3; nQuantity = 1;
// This script will generate 1 Major Magic Item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 73)
{
nTreasureClass = 2; nQuantity = 1;
// This script will generate 1 Medium Magic Item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 27)
{
nTreasureClass = 1; nQuantity = d3() + 1;
// This script will generate 2 -4 Minor Magic Items
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
break;
case 14:
nRandom = Random(100) + 1;
if (nRandom > 95)
{
nTreasureClass = 3; nQuantity = 1;
// This script will generate 1 major magic item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 58)
{
nTreasureClass = 2; nQuantity = 1;
// This script will generate 1 medium magic item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 29)
{
nTreasureClass = 1; nQuantity = d3() + 2;
// This script will generate 3 - 5 minor magic items.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
break;
case 15:
nRandom = Random(100) + 1;
if (nRandom > 99)
{
nTreasureClass = 4; nQuantity = 1;
// This script will generate one Epic magic item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 91)
{
nTreasureClass = 3; nQuantity = 1;
// This script will generate 1 Major magic item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 45)
{
nTreasureClass = 2; nQuantity = 1;
// This script will generate one medium magic item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 17)
{
nTreasureClass = 1; nQuantity = d4() + 2;
// This script will generate 3 - 6 Minor Magic Items.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
} break;
case 16:
nRandom = Random(100) + 1;
if (nRandom > 98)
{
nTreasureClass = 4; nQuantity = 1;
// This script will create 1 Epic magic item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 88)
{
nTreasureClass = 3; nQuantity = 1;
// This script will create 1 Major Magic Item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 34)
{
nTreasureClass = 2; nQuantity = d2();
// This will create 1 -2 medium magic items.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
break;
case 17:
nRandom = Random(100) + 1;
if (nRandom > 97)
{
nTreasureClass = 4; nQuantity = 1;
// This will create 1 Epic item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 87)
{
nTreasureClass = 3; nQuantity = 1;
// This will create 1 major magic item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 34)
{
nTreasureClass = 2; nQuantity = d2();
// This will create 1 -2 Medium magic items.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
break;
case 18:
nRandom = Random(100) + 1;
if (nRandom > 95)
{
nTreasureClass = 4; nQuantity = 1;
// This will create 1 Epic magic item
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 78)
{
nTreasureClass = 3; nQuantity = 1;
// This will create 1 Major magic item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 25)
{
nTreasureClass = 2; nQuantity = d2();
// This will create 1 -2 Medium magic items.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
break;
case 19:
nRandom = Random(100) + 1;
if (nRandom > 92)
{
nTreasureClass = 4; nQuantity = 1;
//This will create 1 Epic magic item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 68)
{
nTreasureClass = 3; nQuantity = 1;
// This will create 1 Major magic item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 25)
{
nTreasureClass = 2; nQuantity = d3();
// This will create 1 - 4 Medium magic items.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
break;
case 20:
nRandom = Random(100) + 1;
if (nRandom > 90)
{
nTreasureClass = 4; nQuantity = 1;
// This will create 1 Epic magic item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 58)
{
nTreasureClass = 3; nQuantity = 1;
// This will create 1 Major magic item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 20)
{
nTreasureClass = 2; nQuantity = d4() + 1;
// This will create 2 - 5 Medium magic items.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
break;
default:
nRandom = Random(100) + 1;
if (nRandom > 90)
{
nTreasureClass = 4; nQuantity = 1;
// This will create 1 Epic magic item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 58)
{
nTreasureClass = 3; nQuantity = 1;
// This will create 1 Major magic item.
// You can increase the quantity by adjusting nQuantity.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
else if (nRandom > 20)
{
nTreasureClass = 2; nQuantity = d4() + 1;
// This will create 2 - 5 Medium magic items.
for (x = 0; x < nQuantity; x++)
{
GenerateMagicItem (oCreateOn, nTreasureClass);
}
}
break;
}}
//////////////////////////////////////////////////////////////////////////////
/////////////////DETERMINE TYPE OF TREASURE/////////////////////
///////////This will determine what kind of item is found//////
//////////////////////////////////////////////////////////////////
/////////By adjusting the values for ARCANE, etc you can alter the likelihood
////////of a particular item type occuring in a given treasure class.
/////////The total of all variables should equal 100.
///////////////////////////////////////////////////////////////////////////////
void GenerateMagicItem (object oTarget, int nTClass) //
{ //
object oCreateOn = oTarget;
int ARCANE = 20; int DIVINE = 10; int AMMO = 8; int POTION = 20; int RING = 3; int WAND = 9;
int WEAPON = 5; int ARMOR = 5; int AMULET = 2; int MISC = 1; int GARB = 7;
switch (nTClass)
{
case 1: {///Minor items///
int ARCANE = 20; int DIVINE = 10; int AMMO = 10; int POTION = 20;
int RING = 5; int WAND = 9; int WEAPON = 7; int ARMOR = 7;
int AMULET = 3; int MISC = 2; int GARB = 7;
} break;
case 2: {///Medium items////
int ARCANE = 10; int DIVINE = 5; int AMMO = 10; int POTION = 10;
int RING = 10; int WAND = 15; int WEAPON = 10; int ARMOR = 10;
int AMULET = 5; int MISC = 2; int GARB = 13;
} break;
case 3: {///Major items///
int ARCANE = 8; int DIVINE = 4; int AMMO = 8; int POTION = 5;
int RING = 10; int WAND = 20; int WEAPON = 10; int ARMOR = 10;
int AMULET = 6; int MISC = 4; int GARB = 15;
} break;
case 4: {///Epic items/////
int ARCANE = 8; int DIVINE = 4; int AMMO = 5; int POTION = 5;
int RING = 10; int WAND = 20; int WEAPON = 11; int ARMOR = 11;
int AMULET = 6; int MISC = 5; int GARB = 15;
} break;
};
int nItemType = Random(100);
if (nItemType < ARCANE)
{CreateArcaneScroll(oCreateOn, nTClass);} //Arcane Scroll
else if (nItemType < ARCANE + DIVINE)
{CreateDivineScroll(oCreateOn, nTClass);} //Divine Scroll
else if (nItemType < ARCANE + DIVINE + AMMO)
{GenerateExhRange(oCreateOn, nTClass);} //Ammo and Thrown Weapons
else if (nItemType < ARCANE + DIVINE + AMMO + POTION)
{CreatePotion(oCreateOn, nTClass);} //Potion
else if (nItemType < ARCANE + DIVINE + AMMO + POTION + RING)
{CreateRing (oCreateOn, nTClass);} //Ring
else if (nItemType < ARCANE + DIVINE + AMMO + POTION + RING + AMULET)
{CreateAmulet (oCreateOn, nTClass);} //Amulet
else if (nItemType < ARCANE + DIVINE + AMMO + POTION + RING + AMULET + MISC)
{CreateMisc (oCreateOn, nTClass);} //Miscellaneous Items
else if (nItemType < ARCANE + DIVINE + AMMO + POTION + RING + AMULET + MISC + WAND)
{CreateWand (oCreateOn,nTClass);} // Rods, Staves and Wands
else if (nItemType < ARCANE + DIVINE + AMMO + POTION + RING + AMULET + MISC + WAND + GARB)
{CreateGarb (oCreateOn, nTClass);} //Garb
else if (nItemType < ARCANE + DIVINE + AMMO + POTION + RING + AMULET + MISC + WAND + GARB + WEAPON)
{CreateWeapon (oCreateOn, nTClass);} //Weapon
else if (nItemType < ARCANE + DIVINE + AMMO + POTION + RING + AMULET + MISC + WAND + GARB + WEAPON + ARMOR)
{CreateArmor (oCreateOn, nTClass);} //Armor
}
///////////////////////////////////////////////////////////////////////////
void GenerateMundane(object oCreateOn, int nCr)
{
int nGMRandom = Random(12) + 1;
switch (nGMRandom)
{
case 1: CreateNMClothing (oCreateOn); break;
case 2: case 3: CreateNMArmor (oCreateOn); break;
case 4: case 5: CreateNMWeapon (oCreateOn); break;
case 6: case 7: CreateNMAmmo (oCreateOn); break;
case 8: CreateJunk (oCreateOn); break;
case 9: CreateBook (oCreateOn); break;
case 10: case 11: case 12: GenerateKit(oCreateOn, nCr); break;
//case 12: CreateArt (oCreateOn, nCr); break;
}
}
/////////////////////////////////////////////////////////////////////////////////
//void main () {}