Ive got a problem loading objects to characters. I'm using regular OLC
and cant figure out where to even find this issue, so if anyone has a
better idea thatd be great. anyway, heres an example of 'reset':
Resets: M = mobile, R = room, O = object, P = pet, S = shopkeeper
No. Loads Description Location Vnum Mx Mn
Description Percent
==== ======== ============= =================== ======== == ==
===================== =======
[ 1] M[ 329] She in room R[ 2946] 1- 1 Bodcaw
Flea Market 60%
[ 2] O[ 373] a fish in the inventory of S[ 329] She
100%
[ 3] O[ 372] a traveller's in the inventory of S[ 329] She
100%
[ 4] O[ 371] a feather wan in the inventory of S[ 329] She
100%
[ 5] O[ 370] a grey potion in the inventory of S[ 329] She
100%
[ 6] O[ 369] guano in the inventory of S[ 329] She
100%
[ 7] O[ 368] a giant pearl in the inventory of S[ 329] She
100%
[ 8] O[ 367] a carton of m in the inventory of S[ 329] She
100%
[ 9] O[ 366] a delicious a in the inventory of S[ 329] She
100%
[10] M[ 319] Cid the poach in room R[ 2946] 1- 1 Bodcaw
Flea Market 60%
[11] O[ 417] a voodoo doll in the inventory of S[ 319] Cid the
poacher 100%
[12] O[ 416] a safari loll in the inventory of S[ 319] Cid the
poacher 100%
[13] O[ 415] a vial of gir in the inventory of S[ 319] Cid the
poacher 100%
[14] O[ 414] cursed elepha in the inventory of S[ 319] Cid the
poacher 100%
[15] O[ 413] leopard skin in the inventory of S[ 319] Cid the
poacher 100%
so if 'She' loads, all the items below here, including the ones below
'Cid the poacher' will load and she will sell them(both mobs are
shopkeepers). When 'Cid the poacher' loads(by the way, when either of
these mobs load they purge the other mob but i dont think thats the
problem) he loads with only the ones below him(which is what I want).
So I figure its in reset_room, which I havent changed except a quick
number_range() for percent resets. I dont know if other people
experience this bug(i assume not). But heres all of "Case 'O'" from
reset_room in db.c:
case 'O':
if ( !( pObjIndex = get_obj_index( pReset->arg1 ) ) )
{
bug( "Reset_room: 'O' 1 : bad vnum %d", pReset->arg1 );
sprintf (buf,"%d %d %d %d",pReset->arg1, pReset->arg2,
pReset->arg3,
pReset->arg4 );
bug(buf,1);
continue;
}
if ( !( pRoomIndex = get_room_index( pReset->arg3 ) ) )
{
bug( "Reset_room: 'O' 2 : bad vnum %d.", pReset->arg3 );
sprintf (buf,"%d %d %d %d",pReset->arg1, pReset->arg2,
pReset->arg3,
pReset->arg4 );
bug(buf,1);
continue;
}
if ( pRoom->area->nplayer > 0
|| count_obj_list( pObjIndex, pRoom->contents ) > 0 )
{
last = FALSE;
break;
}
if(number_range(0,100) > pReset->arg5)
continue;
pObj = create_object( pObjIndex, UMIN(number_fuzzy(
level ),
LEVEL_HERO -1) );
pObj->cost = 0;
obj_to_room( pObj, pRoom );
if ( HAS_TRIGGER_OBJ( pObj,TRIG_CREATE ))
p_percent_trigger( NULL, pObj, NULL, NULL, NULL, NULL,
TRIG_CREATE );
last = TRUE;
break;
--
ROM mailing list
[email protected]
Unsubscribe here ->>> http://www.rom.org/cgi-bin/mailman/listinfo/rom