Changeset 443
- Timestamp:
- 08/05/07 00:39:21 (1 year ago)
- Files:
-
- trunk/src/cmd2.c (modified) (2 diffs)
- trunk/src/externs.h (modified) (1 diff)
- trunk/src/object2.c (modified) (9 diffs)
- trunk/src/wizard2.c (modified) (1 diff)
- trunk/src/xtra2.c (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/src/cmd2.c
r433 r443 223 223 { 224 224 /* Make some gold */ 225 if (!make_gold(i_ptr )) continue;225 if (!make_gold(i_ptr, o_ptr->origin_depth)) continue; 226 226 } 227 227 … … 230 230 { 231 231 /* Make an object */ 232 if (!make_object(i_ptr, FALSE, FALSE)) continue;232 if (!make_object(i_ptr, o_ptr->origin_depth, FALSE, FALSE)) continue; 233 233 } 234 234 trunk/src/externs.h
r429 r443 444 444 extern void object_prep(object_type *o_ptr, int k_idx); 445 445 extern void apply_magic(object_type *o_ptr, int lev, bool okay, bool good, bool great); 446 extern bool make_object(object_type *j_ptr, bool good, bool great);447 extern bool make_gold(object_type *j_ptr );446 extern bool make_object(object_type *j_ptr, int lev, bool good, bool great); 447 extern bool make_gold(object_type *j_ptr, int lev); 448 448 extern s16b floor_carry(int y, int x, object_type *j_ptr); 449 449 extern void drop_near(object_type *j_ptr, int chance, int y, int x); trunk/src/object2.c
r410 r443 1343 1343 1344 1344 bool r_uniq = (r_ptr->flags1 & RF1_UNIQUE) ? TRUE : FALSE; 1345 bool s_uniq = ( r_ptr->flags1 & RF1_UNIQUE) ? TRUE : FALSE;1345 bool s_uniq = (s_ptr->flags1 & RF1_UNIQUE) ? TRUE : FALSE; 1346 1346 1347 1347 if (r_uniq && !s_uniq) act = 0; … … 2868 2868 * This routine plays nasty games to generate the "special artifacts". 2869 2869 * 2870 * This routine uses "object_level" for the "generation level".2871 *2872 2870 * We assume that the given object has been "wiped". 2873 2871 */ 2874 bool make_object(object_type *j_ptr, bool good, bool great)2872 bool make_object(object_type *j_ptr, int lev, bool good, bool great) 2875 2873 { 2876 2874 int prob, base; … … 2882 2880 2883 2881 /* Base level for the object */ 2884 base = (good ? ( object_level + 10) : object_level);2882 base = (good ? (lev + 10) : lev); 2885 2883 2886 2884 … … 2925 2923 2926 2924 /* Apply magic (allow artifacts) */ 2927 apply_magic(j_ptr, object_level, TRUE, good, great);2925 apply_magic(j_ptr, lev, TRUE, good, great); 2928 2926 2929 2927 … … 2967 2965 * The location must be a legal, clean, floor grid. 2968 2966 */ 2969 bool make_gold(object_type *j_ptr )2967 bool make_gold(object_type *j_ptr, int lev) 2970 2968 { 2971 2969 int sval; … … 2975 2973 2976 2974 /* Hack -- Pick a Treasure variety */ 2977 sval = ((randint( object_level+ 2) + 2) / 2);2975 sval = ((randint(lev + 2) + 2) / 2); 2978 2976 2979 2977 /* Apply "extra" magic */ 2980 2978 if (rand_int(GREAT_OBJ) == 0) 2981 2979 { 2982 sval += randint( object_level+ 1);2980 sval += randint(lev + 1); 2983 2981 } 2984 2982 … … 3327 3325 3328 3326 /* Make a good (or great) object (if possible) */ 3329 if (!make_object(i_ptr, TRUE, great)) continue;3327 if (!make_object(i_ptr, object_level, TRUE, great)) continue; 3330 3328 i_ptr->origin = ORIGIN_ACQUIRE; 3331 3329 i_ptr->origin_depth = p_ptr->depth; … … 3358 3356 3359 3357 /* Make an object (if possible) */ 3360 if (make_object(i_ptr, good, great))3358 if (make_object(i_ptr, object_level, good, great)) 3361 3359 { 3362 3360 i_ptr->origin = ORIGIN_FLOOR; … … 3394 3392 3395 3393 /* Make some gold */ 3396 if (make_gold(i_ptr ))3394 if (make_gold(i_ptr, object_level)) 3397 3395 { 3398 3396 /* Give it to the floor */ trunk/src/wizard2.c
r404 r443 762 762 763 763 /* Create an object */ 764 make_object(i_ptr, good, great);764 make_object(i_ptr, object_level, good, great); 765 765 766 766 trunk/src/xtra2.c
r415 r443 1176 1176 bool great = (r_ptr->flags1 & (RF1_DROP_GREAT)) ? TRUE : FALSE; 1177 1177 1178 bool do_gold= (!(r_ptr->flags1 & (RF1_ONLY_ITEM)));1179 bool do_item= (!(r_ptr->flags1 & (RF1_ONLY_GOLD)));1178 bool gold_ok = (!(r_ptr->flags1 & (RF1_ONLY_ITEM))); 1179 bool item_ok = (!(r_ptr->flags1 & (RF1_ONLY_GOLD))); 1180 1180 1181 1181 int force_coin = get_coin_type(r_ptr); … … 1287 1287 1288 1288 /* Make Gold */ 1289 if ( do_gold && (!do_item|| (rand_int(100) < 50)))1289 if (gold_ok && (!item_ok || (rand_int(100) < 50))) 1290 1290 { 1291 1291 /* Make some gold */ 1292 if (!make_gold(i_ptr )) continue;1292 if (!make_gold(i_ptr, object_level)) continue; 1293 1293 1294 1294 /* Assume seen XXX XXX XXX */ … … 1300 1300 { 1301 1301 /* Make an object */ 1302 if (!make_object(i_ptr, good, great)) continue;1302 if (!make_object(i_ptr, object_level, good, great)) continue; 1303 1303 1304 1304 /* Assume seen XXX XXX XXX */
