Changeset 936

Show
Ignore:
Timestamp:
05/18/08 13:57:18 (6 months ago)
Author:
takkaria
Message:

(#276) Refine the number of object drops by monsters.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/src/wiz-stats.c

    r930 r936  
    162162        bool item_ok = (!(f0 & (RF0_ONLY_GOLD))); 
    163163 
    164         if (f0 & RF0_DROP_60)  prob += 0.6/* 0.4*/; 
    165         if (f0 & RF0_DROP_90)  prob += 0.9/* 0.6*/; 
    166         if (f0 & RF0_DROP_1D2) prob += 1.5/* 1.0*/; 
    167         if (f0 & RF0_DROP_2D2) prob += 3.0/* 2.0*/; 
    168         if (f0 & RF0_DROP_3D2) prob += 4.5/* 3.0*/; 
    169         if (f0 & RF0_DROP_4D2) prob += 6.0/* 4.0*/; 
     164        if (f0 & RF0_DROP_60)  prob += /*0.6*/ 0.4; 
     165        if (f0 & RF0_DROP_90)  prob += /*0.9*/ 0.6; 
     166 
     167        if (f0 & RF0_DROP_4D2) prob += /*6.0*/ 4.0; 
     168        else if (f0 & RF0_DROP_3D2) prob += /*4.5*/ 3.0; 
     169        else if (f0 & RF0_DROP_2D2) prob += /*3.0*/ 2.0; 
     170        else if (f0 & RF0_DROP_1D2) prob += /*1.5*/ 1.0; 
    170171 
    171172        if (gold_ok && item_ok) 
  • trunk/src/xtra2.c

    r918 r936  
    13311331 
    13321332        /* Determine how much we can drop */ 
    1333         if ((r_ptr->flags[0] & (RF0_DROP_60)) && (randint0(100) < 60)) number++; 
    1334         if ((r_ptr->flags[0] & (RF0_DROP_90)) && (randint0(100) < 90)) number++; 
    1335         if (r_ptr->flags[0] & (RF0_DROP_1D2)) number += damroll(1, 2); 
    1336         if (r_ptr->flags[0] & (RF0_DROP_2D2)) number += damroll(2, 2); 
    1337         if (r_ptr->flags[0] & (RF0_DROP_3D2)) number += damroll(3, 2); 
    1338         if (r_ptr->flags[0] & (RF0_DROP_4D2)) number += damroll(4, 2); 
    1339  
    1340         /* Temporary testing hack - reduce drops by 1/3 */ 
    1341         if (number > 1 && item_ok) number = number * 2 / 3; 
     1333        if ((r_ptr->flags[0] & RF0_DROP_60) && (randint0(100) < 40)) number++; 
     1334        if ((r_ptr->flags[0] & RF0_DROP_90) && (randint0(100) < 60)) number++; 
     1335 
     1336        if (r_ptr->flags[0] & RF0_DROP_4D2) number += rand_range(2, 6); 
     1337        else if (r_ptr->flags[0] & RF0_DROP_3D2) number += rand_range(2, 4); 
     1338        else if (r_ptr->flags[0] & RF0_DROP_2D2) number += rand_range(1, 3); 
     1339        else if (r_ptr->flags[0] & RF0_DROP_1D2)) number += 1; 
    13421340 
    13431341        /* Hack -- handle creeping coins */