My friend, snafe recently aquired the following hex values for me:
0x025d = elf male
0x025e = elf female.
I copied the standard npc and vendor .dfn and replaced the id to the above hex values, and changed it to a uniuqe tag. melf_ or felf_ instead of the m_ and f_ prefixs.
So when you add, for example, a melf_whealer,
you get a wandering healer, that is not elf, but in fact, quite human in appearance. Not only that, but double clicking on him/her will not bring up a paper doll.
What steps must be taken to add simple elf npcs? do the hair, color, gumps, everything need to be re-written? That would suck, you'd think the simplest approach for even OSI programmers is to use the basic human layout and just have a new hex id for animation/paper doll art...
Elf NPC and vendor .dfn
-
giwo
- Developer
- Posts: 1780
- Joined: Fri Jun 18, 2004 4:17 pm
- Location: California
- Has thanked: 0
- Been thanked: 0
Note that elfs have a striking resemblance to humans. I believe only the hairstyles and ears are different.
As for not being able to open the paperdoll, that is something we will need to fix serverside, namely our isHuman() check needs to be expanded to handle elf ID's.
[EDIT]
Interestingly enough, I just had a look at isHuman() and it seems we already support ID's 0x025D and 0x025E. Are you quite sure you gave them the proper ID's?
As for not being able to open the paperdoll, that is something we will need to fix serverside, namely our isHuman() check needs to be expanded to handle elf ID's.
[EDIT]
Interestingly enough, I just had a look at isHuman() and it seems we already support ID's 0x025D and 0x025E. Are you quite sure you gave them the proper ID's?
Scott
-
Maarc
- Developer
- Posts: 576
- Joined: Sat Mar 27, 2004 6:22 am
- Location: Fleet, UK
- Has thanked: 0
- Been thanked: 0
- Contact:
isHuman() already copes with that, the elf body IDs are in for that. Though it could be the "Is a monster" check in handleCharDoubleClick, which only checks for human body IDs (and their ghosts).
Though if that is done, then we might want to consider updating isHuman() to deal with the dead body types. But if you make this change, you'll have to evaluate the places that isHuman is used. And it looks like some of it will need updating, or you can call the guards on a ghost
Though if that is done, then we might want to consider updating isHuman() to deal with the dead body types. But if you make this change, you'll have to evaluate the places that isHuman is used. And it looks like some of it will need updating, or you can call the guards on a ghost
-
giwo
- Developer
- Posts: 1780
- Joined: Fri Jun 18, 2004 4:17 pm
- Location: California
- Has thanked: 0
- Been thanked: 0
Ahh yes, good catch. We were doing special case handling.
I'll give that some thought, but not sure if we really want isHuman() to check Ghosts or not, and as you mentioned the ramifications of doing so.
For now, that specific call only happens after isNPC() and npc's can't generate ghosts, as it stands.
I'll give that some thought, but not sure if we really want isHuman() to check Ghosts or not, and as you mentioned the ramifications of doing so.
For now, that specific call only happens after isNPC() and npc's can't generate ghosts, as it stands.
Scott