NPC Appearance Breaks When Zoning
The issue is that if you set an NPC to a certain appearance either via quest scripts or command, any player that zones in after the new appearance has been set will still see the NPC as standing normally. So, if you have a script that sets NPCs to lie down, when you zone in, they will all be standing up. I have found a cheap work around for it by setting them on 1 minute timers to stand and lie down again, but that isn't a real fix to the issue.
I think all that needs to be done is to have NPCs send their appearance value to players when they zone. We should just be able to add a SendAppearancePacket to the zoning code. I can't seem to find where exactly this would need to get added. I imagine that it would be directly after sending spawn location information, but I don't see where that is in the code. Here are the related commands that might be useful for getting this issue resolved: mob.cpp Code:
int32 Mob::GetAppearanceValue(EmuAppearance iAppearance) { Code:
void Mob::SendAppearancePacket(int32 type, int32 value, bool WholeZone, bool iIgnoreSelf, Client *specific_target) { |
You know what's funny I was actually thinking about this just yesterday "hey maybe I should fix that".
|
Lmao! I swear that every time I mention something, you were already thinking of the same thing :P
I really don't think it will hard to fix, I just don't know where the actual code is that sends the spawn information when a player zones. I figured it would be in zoning.cpp, but I didn't see anything that stood out in there. |
I put in a change to send appearance updates when player zones in, from what I can tell it works.
|
All times are GMT -4. The time now is 04:30 AM. |
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.