Pages:<< prev 1 next >>
#1 Aug 30, 2024 3:52 am
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 >>