Pages:<< prev 1 next >>
Apprentice

GroupMembers
Posts86
JoinedAug 25, 2003
Hi,
If I build a mp_command argument that contain an extended bitvector like:
mpdosomething 3&15
how can I convert "3&15" in a EXT_BV var?
pseudo-code:
do_mpdosomething( CHAR_DATA *ch, char *argument )
{
argument = one_argument( argument, arg1 );
EXT_BV bits;
xCLEAR( bits );
xSET( bits, ??? ); // ??? = arg1 converted ... but how?
return;
}
Thank you in advance for any help.
Bye!
If I build a mp_command argument that contain an extended bitvector like:
mpdosomething 3&15
how can I convert "3&15" in a EXT_BV var?
pseudo-code:
do_mpdosomething( CHAR_DATA *ch, char *argument )
{
argument = one_argument( argument, arg1 );
EXT_BV bits;
xCLEAR( bits );
xSET( bits, ??? ); // ??? = arg1 converted ... but how?
return;
}
Thank you in advance for any help.
Bye!
Apprentice

GroupMembers
Posts86
JoinedAug 25, 2003
I don't now but... here my first version and it seems work:
bye
mat
EXT_BV str2xbit( char *arg )
{
EXT_BV xbit;
int x = 0, n = 0;
memset( &xbit, '\0', sizeof(xbit) );
if ( *arg == '\0' ) return xbit;
for ( ; *arg != '\0'; arg++ )
{
if ( !isdigit(*arg) )
{
FINALIZE:
if ( x < XBI )
xbit.bits[x] = n;
++x; n = 0;
if ( *arg != '&' )
return xbit;
continue;
}
n = n * 10 + *arg - '0';
}
goto FINALIZE;
}
bye
mat
Pages:<< prev 1 next >>