Pages:<< prev 1 next >>
#1 Oct 12, 2011 2:46 am
Last edited Oct 12, 2011 2:47 am by Matteo2303
GroupMembers
Posts86
JoinedAug 25, 2003
In mprog_bribe_trigger there is:
I don't know but, is possible declare another mprg and make:
/* Go through once to see which we should use */ onprog = 0; for( mprg = mob->pIndexData->mudprogs; mprg; mprg = mprg->next ) { ++onprog; if( ( mprg->type == BRIBE_PROG ) && ( uamount >= atoi( mprg->arglist ) ) && ( amdiff == 0 || ( uamount - atoi( mprg->arglist ) ) < amdiff ) ) { amdiff = ( uamount - atoi( mprg->arglist ) ); useprog = onprog; } } /* Go through it again and use the closest bribe program to the amount */ onprog = 0; for( mprg = mob->pIndexData->mudprogs; mprg; mprg = mprg->next ) { if( ++onprog != useprog ) continue; if( ( mprg->type == BRIBE_PROG ) && ( uamount >= atoi( mprg->arglist ) ) ) { increase_gold( mob, uamount ); mprog_driver( mprg->comlist, mob, ch, obj, NULL, false ); if( obj ) extract_obj( obj ); break; } }
I don't know but, is possible declare another mprg and make:
MPROG_DATA *sprg = NULL;
/* Go through once to see which we should use */
for( mprg = mob->pIndexData->mudprogs; mprg; mprg = mprg->next )
if( ( mprg->type == BRIBE_PROG ) && ( uamount >= atoi( mprg->arglist ) ) && ( amdiff == 0 || ( uamount - atoi( mprg->arglist ) ) < amdiff ) )
{
amdiff = ( uamount - atoi( mprg->arglist ) );
sprg = mprg;
}
if ( sprg )
{
increase_gold( mob, uamount );
mprog_driver( sprg->comlist, mob, ch, obj, NULL, false );
if( obj )
extract_obj( obj );
break;
}
#2 Oct 26, 2011 8:33 pm
GroupAdministrators
Posts1,946
JoinedJul 26, 2005
Haven't tried, but should be able to. Minus the break in the part your adding since it isnt in a for loop
#3 Oct 31, 2011 3:04 am
Last edited Oct 31, 2011 3:08 am by Matteo2303
GroupMembers
Posts86
JoinedAug 25, 2003
Yeah, minus "break".
My bad.
Bye
mat
My bad.
Bye
mat
Pages:<< prev 1 next >>