Go Back   EQEmulator Home > EQEmulator Forums > Development > Development::Bug Reports

Development::Bug Reports Post detailed bug reports and what you would like to see next in the emu here.

Reply
 
Thread Tools Display Modes
  #1  
Old 03-04-2005, 06:40 PM
RangerDown
Demi-God
 
Join Date: Mar 2004
Posts: 1,066
Default Mobs don't summon players -- FIX INSIDE

As of the latest CVS mobs will say "You will not evade me, Soandso!" and you get the message "You have been summoned!" But, you don't actually go to the mob.

Server side, it seems that it puts you by the mob like it should -- immediately after I get the summoned message I get a round of melee -- but for some reason the client doesn't get the message to actually go there.

The fix is a change to the code is in mob.cpp, in the function bool Mob::HateSummon()

Change this block of code:
Code:
    // get summon target
    target = GetHateTop();
    if( target)
    {
        if (target->IsClient())
                target->CastToClient()->Message(15,"You have been summoned!");
                entity_list.MessageClose(this, true, 500, 10, "%s says,'You will not evade me, %s!' ", GetName(), GetHateTop()->GetName() );
                GetHateTop()->GMMove(x_pos, y_pos, z_pos, target->GetHeading());
                return true;
        }
        return false;
to:

Code:
    // get summon target
    target = GetHateTop();
    if(target)
    {
        entity_list.MessageClose(this, true, 500, 10, "%s says,'You will not evade me, %s!' ", GetName(), target->GetName() );
        if (target->IsClient()) // RangerDown - GMMove doesn't seem to be working well with players, so use MovePC for them, GMMove for NPC's
                target->CastToClient()->MovePC(zone->GetZoneID(),x_pos,y_pos,z_pos,0,true);
        else
                GetHateTop()->GMMove(x_pos, y_pos, z_pos, target->GetHeading());
        return true;
    }
    return false;
For whatever reason, GMMove() seems quirky when used on player clients. So, I use MovePC() instead for clients, and GMMove() for NPC's.
__________________
<idleRPG> Rogean ate a plate of discounted, day-old sushi. This terrible calamity has slowed them 0 days, 15:13:51 from level 48.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 03:36 PM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3