Login
User Name:

Password:



Register

Forgot your password?
SmaugFUSS 1.8/1.9
Sep 21, 2024 5:04 am
By Elwood
Bug: char_check( )
Aug 31, 2024 12:27 am
By GatewaySysop
Bug: move_char( )
Aug 30, 2024 3:52 am
By GatewaySysop
Bug: spell_animate_dead
Aug 25, 2024 10:48 pm
By GatewaySysop
ROOM_NO_MAGIC Inconsistencies...
Jul 8, 2024 12:32 am
By GatewaySysop
Discord Websocket Server
Author: Khonsu
Submitted by: Khonsu
Mapout Fix
Author: Khonsu
Submitted by: Khonsu
Progfind command
Author: Khonsu
Submitted by: Khonsu
do_owhere recursive
Author: Khonsu
Submitted by: Khonsu
Changes list / Addchange
Author: Khonsu
Submitted by: Khonsu
Users Online
CommonCrawl, AhrefsBot, Google, Bing

Members: 0
Guests: 3
Stats
Files
Topics
Posts
Members
Newest Member
492
3,803
19,665
608
TerranceMa

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