Login
User Name:

Password:



Register
Forgot your password?
Vote for Us!
tintin++ ogg sound player script for linux
Author: Robert Smith
Submitted by: Vladaar
6Dragons ogg Soundpack
Author: Vladaar
Submitted by: Vladaar
6Dragons 4.4
Author: Vladaar
Submitted by: Vladaar
LoP 1.46
Author: Remcon
Submitted by: Remcon
LOP 1.45
Author: Remcon
Submitted by: Remcon
Users Online
CommonCrawl, Yandex, DotBot

Members: 0
Guests: 20
Stats
Files
Topics
Posts
Members
Newest Member
481
3,739
19,386
619
Alexander
Today's Birthdays
There are no member birthdays today.
Related Links
» SmaugMuds.org » General » Coding » EXT_BV inside mpcommand
Forum Rules | Mark all | Recent Posts

EXT_BV inside mpcommand
< Newer Topic :: Older Topic >

Pages:<< prev 1 next >>
Post is unread #1 Apr 11, 2014, 1:43 pm   Last edited Apr 11, 2014, 1:43 pm by Matteo2303
Go to the top of the page
Go to the bottom of the page

Matteo2303
Apprentice
GroupMembers
Posts57
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!
       
Post is unread #2 Apr 11, 2014, 5:53 pm   Last edited Apr 11, 2014, 5:56 pm by Matteo2303
Go to the top of the page
Go to the bottom of the page

Matteo2303
Apprentice
GroupMembers
Posts57
JoinedAug 25, 2003

I don't now but... here my first version and it seems work:

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 >>