EN4_PRC8/_module/nss/rd_gettable.nss

242 lines
5.6 KiB
Plaintext
Raw Permalink Normal View History

int GetDungeonTable(int iLevel=1,int iDifficulty=0)
{
int iRnd=0;
int iTable=0;
int iLevel2=0;
int iLevelx=0;
object oPC;
iRnd = Random(100)+1+iDifficulty;
//set max level
if (iLevel>4) {
iLevel2=4;
}
else {
iLevel2 = iLevel;
}
iLevelx = (iLevel-3)/2;
if (iLevelx < 1) {
iLevelx = 0;
}
iLevel2 = iLevel2 + iLevelx;
if (iLevel2 < 1) {
iLevel2 = 1;
}
if (iLevel2 > 12) {
iLevel2 = 12;
}
switch (iLevel2)
{
case 1 : if (iRnd<91) {
iTable=0;
}
if (iRnd>90) {
iTable=1;
}
break;
case 2 : if (iRnd<51) {
iTable=0;
}
if (iRnd>50) {
iTable=1;
}
break;
case 3 : if (iRnd<51) {
iTable=1;
}
if (iRnd>50 && iRnd<91) {
iTable=2;
}
if (iRnd>90) {
iTable=3;
}
break;
case 4 : if (iRnd<20) {
iTable=1;
}
if (iRnd>19 && iRnd<60) {
iTable=2;
}
if (iRnd>59 && iRnd < 90 ) {
iTable=3;
}
if (iRnd> 89 && iRnd < 125) {
iTable=4;
}
if (iRnd> 124) {
iTable=5;
}
break;
case 5 : if (iRnd<10) {
iTable=1;
}
if (iRnd>9 && iRnd<25) {
iTable=2;
}
if (iRnd>24 && iRnd < 50 ) {
iTable=3;
}
if (iRnd> 49 && iRnd < 80) {
iTable=4;
}
if (iRnd> 79 && iRnd < 105) {
iTable=5;
}
if (iRnd> 104 && iRnd < 125) {
iTable=6;
}
if (iRnd> 124) {
iTable=7;
}
break;
case 6 : if (iRnd<10) {
iTable=2;
}
if (iRnd>9 && iRnd<25) {
iTable=3;
}
if (iRnd>24 && iRnd < 50 ) {
iTable=4;
}
if (iRnd> 49 && iRnd < 80) {
iTable=5;
}
if (iRnd> 79 && iRnd < 105) {
iTable=6;
}
if (iRnd> 104 && iRnd < 125) {
iTable=7;
}
if (iRnd> 124) {
iTable=8;
}
break;
case 7 : if (iRnd<10) {
iTable=3;
}
if (iRnd>9 && iRnd<25) {
iTable=4;
}
if (iRnd>24 && iRnd < 50 ) {
iTable=5;
}
if (iRnd> 49 && iRnd < 80) {
iTable=6;
}
if (iRnd> 79 && iRnd < 105) {
iTable=7;
}
if (iRnd> 104 && iRnd < 125) {
iTable=8;
}
if (iRnd> 124) {
iTable=9;
}
break;
case 8 : if (iRnd<10) {
iTable=4;
}
if (iRnd>9 && iRnd<25) {
iTable=5;
}
if (iRnd>24 && iRnd < 50 ) {
iTable=6;
}
if (iRnd> 49 && iRnd < 80) {
iTable=7;
}
if (iRnd> 79 && iRnd < 105) {
iTable=8;
}
if (iRnd> 104 && iRnd < 125) {
iTable=9;
}
if (iRnd> 124) {
iTable=10;
}
break;
case 9 : if (iRnd<10) {
iTable=5;
}
if (iRnd>9 && iRnd<25) {
iTable=6;
}
if (iRnd>24 && iRnd < 50 ) {
iTable=7;
}
if (iRnd> 49 && iRnd < 80) {
iTable=8;
}
if (iRnd> 79 && iRnd < 105) {
iTable=9;
}
if (iRnd> 104 && iRnd < 125) {
iTable=10;
}
if (iRnd> 124) {
iTable=11;
}
break;
case 10 : if (iRnd<20) {
iTable=6;
}
if (iRnd>19 && iRnd < 40 ) {
iTable=7;
}
if (iRnd> 39 && iRnd < 60) {
iTable=8;
}
if (iRnd> 59 && iRnd < 85) {
iTable=9;
}
if (iRnd> 84 && iRnd < 105) {
iTable=10;
}
if (iRnd> 104) {
iTable=11;
}
break;
case 11 : if (iRnd<25) {
iTable=7;
}
if (iRnd> 24 && iRnd < 50) {
iTable=8;
}
if (iRnd> 49 && iRnd < 75) {
iTable=9;
}
if (iRnd> 74 && iRnd < 95) {
iTable=10;
}
if (iRnd> 94) {
iTable=11;
}
break;
case 12 : if (iRnd<25) {
iTable=8;
}
if (iRnd>24 && iRnd<60) {
iTable=9;
}
if (iRnd>59 && iRnd <90) {
iTable=10;
}
if (iRnd>89) {
iTable=11;
}
break;
}
return iTable;
}