// Subfunction of GenerateLoot.
// This generates the proper amount of loot for an encounter, determined by the iCR.
// iCoins is a muliplier.
void GenerateCoin(object oContainer,int iCR, int iCoins = 1);
void GenerateCoin(object oMonster,int iCR, int iCoins)
    {
    int iRoll = d100();
    int iAmount,iRoll2;
    if (iCR > 20)
        iCR = 20;
    switch (iCR)
        {
        case 1:
            {
            if (iRoll <= 14) break;
            else if (iRoll <= 29) {iAmount = d6()*10;break;}
            else if (iRoll <= 52) {iAmount = d8()*10;break;}
            else if (iRoll <= 95) {iAmount = d8(2) *10;break;}
            else {iAmount = d4()*100;break;}
            }
        case 2:
            {
            if (iRoll <= 13) break;
            else if (iRoll <= 23) {iAmount = d10()*10;break;}
            else if (iRoll <= 43) {iAmount = d10(2)*10;break;}
            else if (iRoll <= 95) {iAmount = d10(4)*10;break;}
            else {iAmount = d8(2)*100;break;}
            }
        case 3:
            {
            if (iRoll <= 11) break;
            else if (iRoll <= 21) {iAmount = d10(2)*10;break;}
            else if (iRoll <= 41) {iAmount = d8(4)*10;break;}
            else if (iRoll <= 95) {iAmount = d4()*100;break;}
            else {iAmount = d10()*100;break;}
            }
        case 4:
            {
            if (iRoll <= 11) break;
            else if (iRoll <= 21) {iAmount = d10(3)*10;break;}
            else if (iRoll <= 41) {iAmount = d12(4)*10;break;}
            else if (iRoll <= 95) {iAmount = d6()*100;break;}
            else {iAmount = d8()*100;break;}
            }
        case 5:
            {
            if (iRoll <= 10) break;
            else if (iRoll <= 19) {iAmount = d4()*100;break;}
            else if (iRoll <= 38) {iAmount = d6()*100;break;}
            else if (iRoll <= 95) {iAmount = d8()*100;break;}
            else {iAmount = d10()*100;break;}
            }
        case 6:
            {
            if (iRoll <= 10) break;
            else if (iRoll <= 18) {iAmount = d6()*100;break;}
            else if (iRoll <= 37) {iAmount = d8()*100;break;}
            else if (iRoll <= 95) {iAmount = d10()*100;break;}
            else {iAmount = d12()*100;break;}
            }
        case 7:
            {
            if (iRoll <= 11) break;
            else if (iRoll <= 18) {iAmount = d10()*100;break;}
            else if (iRoll <= 35) {iAmount = d12()*100;break;}
            else if (iRoll <= 93) {iAmount = d6(2)*100;break;}
            else {iAmount = d4(3)*100;break;}
            }
        case 8:
            {
            if (iRoll <= 10) break;
            else if (iRoll <= 15) {iAmount = d12()*100;break;}
            else if (iRoll <= 29) {iAmount = d6(2)*100;break;}
            else if (iRoll <= 87) {iAmount = d8(2)*100;break;}
            else {iAmount = d6(3)*100;break;}
            }
        case 9:
            {
            if (iRoll <= 10) break;
            else if (iRoll <= 15) {iAmount = d6(2)*100;break;}
            else if (iRoll <= 29) {iAmount = d8(2)*100;break;}
            else if (iRoll <= 85) {iAmount = d4(5)*100;break;}
            else {iAmount = d12(2)*100;break;}
            }
        case 10:
            {
            if (iRoll <= 10) break;
            else if (iRoll <= 24) {iAmount = d10(2)*100;break;}
            else if (iRoll <= 79) {iAmount = d4(6)*100;break;}
            else {iAmount = d6(5)*100;break;}
            }
        case 11:
            {
            if (iRoll <= 8) break;
            else if (iRoll <= 14) {iAmount = d10(3)*100;break;}
            else if (iRoll <= 75) {iAmount = d8(4)*100;break;}
            else {iAmount = d10(4)*100;break;}
            }
        case 12:
            {
            if (iRoll <= 8) break;
            else if (iRoll <= 14) {iAmount = d12(3)*100;break;}
            else if (iRoll <= 75) {iAmount = d4()*1000;break;}
            else {iAmount = d4()*1000;break;}
            }
        case 13:
            {
            if (iRoll <= 8) break;
            else if (iRoll <= 75) {iAmount = d4()*1000;break;}
            else {iAmount = d10()*1000;break;}
            }
        case 14:
            {
            if (iRoll <= 8) break;
            else if (iRoll <= 75) {iAmount = d6()*1000;break;}
            else {iAmount = d12()*1000;break;}
            }
        case 15:
            {
            if (iRoll <= 3) break;
            else if (iRoll <= 74) {iAmount = d8()*1000;break;}
            else {iAmount = d4(3)*1000;break;}
            }
        case 16:
            {
            if (iRoll <= 3) break;
            else if (iRoll <= 74) {iAmount = d12()*1000;break;}
            else {iAmount = d4(3)*1000;break;}
            }
        case 17:
            {
            if (iRoll <= 3) break;
            else if (iRoll <= 68) {iAmount = d4(3)*1000;break;}
            else {iAmount = d10(2)*1000;break;}
            }
        case 18:
            {
            if (iRoll <= 2) break;
            else if (iRoll <= 65) {iAmount = d6(3)*1000;break;}
            else {iAmount = d4(5)*1000;break;}
            }
        case 19:
            {
            if (iRoll <= 2) break;
            else if (iRoll <= 65) {iAmount = d8(3)*1000;break;}
            else {iAmount = d10(3)*1000;break;}
            }
        case 20:
            {
            if (iRoll <= 2) break;
            else if (iRoll <= 65) {iAmount = d8(4)*1000;break;}
            else {iAmount = d10(4)*1000;break;}
            }
        };
    iAmount = iAmount * iCoins;
    CreateItemOnObject("nw_it_gold001",oMonster,iAmount);
    }

// void main(){}
