generated from Jaysyn/ModuleTemplate
96 lines
4.2 KiB
Plaintext
96 lines
4.2 KiB
Plaintext
//************************************************************************
|
|
// Custom Magic Treasure Function for generating magic treasure of varying types in placeable, store or creature
|
|
// B W-Husey, 31st October 2003
|
|
// See cu_treasure and cu_magic for remaining categories
|
|
// Treasure Types are:
|
|
/* Scrolls56 - level 5 & 6 scrolls (Bookcases, stores & Wizards)
|
|
|
|
Inputs: sTreasureSet - The name of the group of treasure as above
|
|
oCreateIn - The object to contain the treasure
|
|
nChance - Chance of any of this type
|
|
nBonus - For Magic (improves treasure) - do not make nBonus negative. Max 79 (12 for Magic2).
|
|
*/
|
|
|
|
void GetMagichi(string sTreasureSet, object oCreateIn=OBJECT_SELF, int nChance=100, int nBonus=0)
|
|
{
|
|
if (Random(100)+1<nChance)
|
|
{
|
|
string sItem = "nw_wswdg001"; //default item = dagger
|
|
int nStack=1; //default 1 in stack
|
|
int rnd; //define variables
|
|
|
|
if (sTreasureSet == "Scrolls56") //SCROLLS LEVEL 5 & 6
|
|
{
|
|
int counter=0;
|
|
int iNumb=0;
|
|
int rnd2= Random(10)+1;
|
|
if (rnd2<6) counter=1;
|
|
else if (rnd2 <10 ) counter=2;
|
|
else if (rnd2 <11 ) counter=3;
|
|
while (iNumb<counter)
|
|
{
|
|
rnd = Random(102);
|
|
if (rnd < 1) sItem = "nw_it_sparscr501";
|
|
else if (rnd <4 ) sItem = "nw_it_sparscr502";
|
|
else if (rnd <6 ) sItem = "nw_it_sparscr503";
|
|
else if (rnd <8 ) sItem = "nw_it_sparscr504";
|
|
else if (rnd <10 )sItem = "nw_it_sparscr505";
|
|
else if (rnd <12 )sItem = "nw_it_sparscr506";
|
|
else if (rnd <14 )sItem = "nw_it_sparscr507";
|
|
else if (rnd <16 )sItem = "nw_it_sparscr508";
|
|
else if (rnd <18 )sItem = "nw_it_sparscr509";
|
|
else if (rnd <20 )sItem = "nw_it_sparscr510";
|
|
else if (rnd <22 )sItem = "nw_it_sparscr511";
|
|
else if (rnd <24 )sItem = "nw_it_sparscr512";
|
|
else if (rnd <26 )sItem = "nw_it_sparscr513";
|
|
else if (rnd <28 )sItem = "x1_it_sparscr501";
|
|
else if (rnd <30 )sItem = "x1_it_sparscr502";
|
|
else if (rnd <32 )sItem = "x1_it_spdvscr501";
|
|
else if (rnd <34 )sItem = "x1_it_spdvscr502";
|
|
else if (rnd <36 )sItem = "nw_it_sparscr601";
|
|
else if (rnd <38 )sItem = "nw_it_sparscr602";
|
|
else if (rnd <40 )sItem = "nw_it_sparscr603";
|
|
else if (rnd <42 )sItem = "nw_it_sparscr604";
|
|
else if (rnd <44 )sItem = "nw_it_sparscr605";
|
|
else if (rnd <46 )sItem = "nw_it_sparscr606";
|
|
else if (rnd <48 )sItem = "nw_it_sparscr607";
|
|
else if (rnd <50 )sItem = "nw_it_sparscr608";
|
|
else if (rnd <52 )sItem = "nw_it_sparscr609";
|
|
else if (rnd <54 )sItem = "nw_it_sparscr610";
|
|
else if (rnd <56 )sItem = "nw_it_sparscr611";
|
|
else if (rnd <58 )sItem = "nw_it_sparscr612";
|
|
else if (rnd <60 )sItem = "nw_it_sparscr613";
|
|
else if (rnd <62 )sItem = "nw_it_sparscr614";
|
|
else if (rnd <64 )sItem = "x1_it_sparscr601";
|
|
else if (rnd <66 )sItem = "x1_it_sparscr602";
|
|
else if (rnd <68 )sItem = "x1_it_sparscr603";
|
|
else if (rnd <70 )sItem = "x1_it_sparscr604";
|
|
else if (rnd <72 )sItem = "x1_it_sparscr605";
|
|
else if (rnd <74 )sItem = "x1_it_spdvscr601";
|
|
else if (rnd <76 )sItem = "x1_it_spdvscr602";
|
|
else if (rnd <78 )sItem = "x1_it_spdvscr603";
|
|
else if (rnd <80 )sItem = "x1_it_spdvscr604";
|
|
else if (rnd <82 )sItem = "x1_it_spdvscr605";
|
|
else if (rnd <84 )sItem = "x2_it_spdvscr501";
|
|
else if (rnd <86 )sItem = "x2_it_spdvscr502";
|
|
else if (rnd <88 )sItem = "x2_it_spdvscr503";
|
|
else if (rnd <90 )sItem = "x2_it_spdvscr509";
|
|
else if (rnd <92 )sItem = "x2_it_sparscr501";
|
|
else if (rnd <94 )sItem = "x2_it_sparscr502";
|
|
else if (rnd <96 )sItem = "x2_it_spdvscr601";
|
|
else if (rnd <98 )sItem = "x2_it_spdvscr602";
|
|
else if (rnd <100 )sItem = "x2_it_spdvscr606";
|
|
else if (rnd <102 )sItem = "x2_it_sparscr601";
|
|
if (counter-iNumb>1) {CreateItemOnObject(sItem, oCreateIn, nStack);} // All scrolls except last created by this line
|
|
iNumb ++;
|
|
} //End of While Loop
|
|
} //End of Scrolls56 If
|
|
|
|
CreateItemOnObject(sItem, oCreateIn,nStack); // Create the item
|
|
} //End of nChance
|
|
} //End of Void
|
|
|
|
|
|
|
|
|