[z0289] Backport new gossip system from master
Restructure gossip menus and make it possible to build selections by database
As result, gossip for GO is now possible. Moved related data structures and remove useless from code.
Please note that after some time, table npc_gossip will be fully removed (use menuId in _template in relation to gossip_menu as replacement).
Special thanks to GriffonHeart for help with research, discussions and ideas of code and thanks to Vladimir for helpful input.
Signed-off-by: NoFantasy <
nofantasy at nf dot no>
(backported from master commit 48bea8f)
Rename internal names for gossipLocale and also correct reload gossip tables
(backported from master commit bcb2541)
Implement gossip scripts to be used with gossip_menu_option.action_script_id
Note that script is implemented for GOSSIP_OPTION_GOSSIP only (as not expected needed for other gossip options).
Also add a few more startup checks for LoadGossipMenuItems with check for basic errors in fields
(backported from master commit b29c1a4)
(backported from master commit cd3fddf)
(backported from master commit 05c92f6)
Use default gossip menu options if no options exist for "top level" menu.
Also not close gossip menu in cases where no action_menu_id is set.
(backported from master commit b36712e)
Check gossip_menu_option table for GOSSIP_OPTION_NONE and output error if exist
(backported from master commit a4c38e8)
Check player class instead of just active pet for gossip stable option
(backported from master commit 515202c)
Implement gossip menu options for GameObject
(backported from master commit b3ff44a)
(backported from master commit 94f74ef)
(based on commit 1ee2ad7) -
http://bit.ly/a0P2Gh