Jump to content

Dialog with Gameobject

Guest maguus

Recommended Posts

Hi all,

there are several objects that interact with the player by presenting a dialog.

E.g. the wind stones in silithus oder skull piles in skettis, where you choose the summoning boss.

I just can figure out how to present an dialog if the player clicks on a gameobject.

I didn't find a example, so please give ma a hint.

Link to comment
Share on other sites

sounds like a scripting question?

Yes the topic touches scripting, but I don't ask how to script.

It's no problem to implement custom dialogs with creatures.

The functions pGossipHello and and especially pGossipSelect are used for this.

But I don't see any similar for GOs.

So I try to figure out if there is a lack of core support.

Hopefully not, which can be proven best by an example.

Sorry for my bad english, not my mother tongue.

Link to comment
Share on other sites

sounds like a scripting question?

No, this is Mangos. This feature must be implemented before script library can (additionally) make any sort of script.

GO's use a different system for this (for selection of textId's), but the gossip item / menus are same/very similar.

Link to comment
Share on other sites

There's the same problem with items. Items can support gossip but this is not supported in MaNGOS.

The difference is that I'm not sure of any items on official which use gossip (if I'm wrong, please correct me). However, if GOs use gossip like you mentioned on official, then this must be added to MaNGOS.

Link to comment
Share on other sites

Well, it's possible to present ONE dialog.

But if you use the guid from the GO, nothing happens.

So IMHO it's a lag of core support.

Well, after selecting an option in the dialog the function WorldSession::HandleGossipSelectOptionOpcode() is called, but this support creatures only, because it uses GetNPCIfCanInteractWith().

Till further support, we can use a _BAD_ work-around. Just use a guid from a special NPC, that will be used to supprt the dialog. That NPC must implement a function for newscript->pGossipSelect().

If anyone, want a full example, drop me a line.

Can anyone write a proper request to support custom scripted dialogs from GO direct like for NPCs.

My english is far not good enough for that.

AFAIK there are just two points:

* Support GO in WorldSession::HandleGossipSelectOptionOpcode(). That's relative easy, because you can decide which object is 'calling' by the HIGH GUID. (NPC: 0xF130, GO: 0xF110)

For that a function like "GetGOIfCanInteractWith()" is needed.

* If GO is 'calling' we need a script function like newscript->pGOGossipSelect(Player*, GameObject*, uint32 , uint32 ) being called.

Link to comment
Share on other sites

  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use