Login
User Name:

Password:



Register

Forgot your password?
do_owhere recursive
Author: Khonsu
Submitted by: Khonsu
Changes list / Addchange
Author: Khonsu
Submitted by: Khonsu
6Dragons mp3 sound pack
Author: Vladaar
Submitted by: Vladaar
AFKMud 2.2.3
Author: AFKMud Team
Submitted by: Samson
SWFOTEFUSS 1.5
Author: Various
Submitted by: Samson
Users Online
DotBot, Google, Bing

Members: 0
Guests: 11
Stats
Files
Topics
Posts
Members
Newest Member
489
3,802
19,682
608
UlrikeFinn

Today's Birthdays
There are no member birthdays today.
» SmaugMuds » Codebases » SmaugFUSS » Bug: move_char( )
Forum Rules | Mark all | Recent Posts

Bug: move_char( )
< Newer Topic :: Older Topic > Not quite right...

Pages:<< prev 1 next >>
Post is unread #1 Aug 30, 2024 3:52 am   
Go to the top of the page
Go to the bottom of the page

GatewaySysop
Conjurer
GroupMembers
Posts423
JoinedMar 7, 2005

 

In act_move.c, function move_char( ), locate this section:

	    if ( (ch->mount && !IS_FLOATING(ch->mount)) || !IS_FLOATING(ch) )
	    {
		/*
		 * Look for a boat.
		 * We can use the boat obj for a more detailed description.
		 */


Suppose ch has a flying/floating mount, but ch themselves are not flying/floating. If so, why the hell would you still be checking for a boat? That's kinda... not right. There's also no accounting for being able to breath water.

That should probably read more like this:

	    if ( ( !ch->mount && !IS_FLOATING( ch ) && !IS_AFFECTED( ch, AFF_AQUA_BREATH ) )  
	      || ( ch->mount && !IS_FLOATING( ch->mount ) && !IS_AFFECTED( ch->mount, AFF_AQUA_BREATH ) ) )
	    {
    		/*
    		 * Look for a boat.
    		 * We can use the boat obj for a more detailed description.
    		 */

Pages:<< prev 1 next >>