View Single Post
  #12  
Old 04-13-2011, 03:08 AM
Secrets Secrets is offline
VIP / Contributor

Secrets's Avatar

Join Date: Oct 2009
Posts: 1,354
Default

Quote:
Originally Posted by Salty [You must be logged in to view images. Log in or Register.]
Secrets is learning how to assign textures to NPCs bro
Re-read my post, it's not just as easy as #texture 1 which sends a packet (OP_WearChange) to the client 7 times which then gets caught in CEverQuest::HandleWorldMessage in the client which then hits the "if" clusterfuck in that function which then gets parsed at the check to see if it is 0x7441, then there's a call to EQPlayer::HandleMaterialEx with the packet data which eventually gets to EQPlayer::SwapMaterial after going through several checks to see what material we should update (ie; face, any sort of dye (dye is unused in p1999 though)) which then checks through this function (EQPlayer::SwapNPCMaterials) if it is a non-player character and if it is swaps out the textures for that gender.

The issue is, some idiot at SOE put this code in here near the top of that function (EQPlayer::SwapNPCMaterials):

Code:
  if ( *(_DWORD *)(v2 + 0x150) == 60 )
  {
    if ( v3 > 0 )
      *(_BYTE *)(v2 + 0x144) = 0;
  }
which causes the issue explained in the first post.

Now if you can crawl back to the hole you came from before insulting me by insulting me saying I don't know how to set an NPC texture, that would be greatly appreciated.
__________________
Engineer of Things and Stuff, Wearer of Many Hats

“Knowing yourself is the beginning of all wisdom.” — Aristotle