Index: map/packet_system.cpp =================================================================== --- map/packet_system.cpp (revision 3136) +++ map/packet_system.cpp (working copy) @@ -577,7 +577,6 @@ uint32 ID = RBUFL(data,(0x04)); uint16 TargID = RBUFW(data,(0x08)); uint8 action = RBUFB(data,(0x0A)); - switch (action) { case 0x00: // trigger @@ -686,7 +685,31 @@ PChar->pushPacket(new CServerIPPacket(PChar,2)); } break; - case 0x0C: break; // assist + + case 0x0C: // assist + { + CBaseEntity* PEntity = PChar->loc.zone->GetEntity(TargID, TYPE_MOB | TYPE_PC | TYPE_NPC | TYPE_PET); + CMobEntity* PMob; + switch (PEntity->objtype) + { + case TYPE_MOB: + PMob = (CMobEntity*)PEntity; + if (PMob->animation == ANIMATION_ATTACK) + { + PChar->pushPacket(new CLockOnPacket(PChar, PMob->PBattleAI->GetBattleTarget())); + } + break; + + case TYPE_PC: + if (PChar->animation == ANIMATION_ATTACK) + { + PChar->pushPacket(new CLockOnPacket(PChar, PChar->PBattleAI->GetBattleTarget())); + } + break; + } + } + break; + case 0x0D: // raise menu { if(RBUFB(data,(0x0C)) == 0) //ACCEPTED RAISE