cmangos / wotlk-db

A content database for mangos-wotlk, and World of Warcraft Client Patch 3.3.5
GNU General Public License v3.0
109 stars 96 forks source link

[GO] Book "Soothsaying for Dummies" 177226 #26

Open NeatElves opened 7 years ago

NeatElves commented 7 years ago

http://www.wowhead.com/object=177226/book-evil-soothsaying-for-dummies

  1. database (condition_id - only UDB)
    SET @CONDITION := XXXXXX;
    #
    DELETE FROM `gossip_menu` WHERE `entry` = 7058;
    INSERT INTO `gossip_menu` (`entry`, `text_id`, `script_id`, `condition_id`) VALUES
    (7058, 8321, 0, 0),
    (7058, 8326, 0, @CONDITION+11),
    (7058, 8322, 0, @CONDITION+34);
    DELETE FROM `npc_text` WHERE `entry` = 8322;
    INSERT INTO `npc_text` (`ID`, `text0_0`, `text0_1`, `lang0`, `prob0`, `em0_0`, `em0_1`, `em0_2`, `em0_3`, `em0_4`, `em0_5`, `text1_0`, `text1_1`, `lang1`, `prob1`, `em1_0`, `em1_1`, `em1_2`, `em1_3`, `em1_4`, `em1_5`, `text2_0`, `text2_1`, `lang2`, `prob2`, `em2_0`, `em2_1`, `em2_2`, `em2_3`, `em2_4`, `em2_5`, `text3_0`, `text3_1`, `lang3`, `prob3`, `em3_0`, `em3_1`, `em3_2`, `em3_3`, `em3_4`, `em3_5`, `text4_0`, `text4_1`, `lang4`, `prob4`, `em4_0`, `em4_1`, `em4_2`, `em4_3`, `em4_4`, `em4_5`, `text5_0`, `text5_1`, `lang5`, `prob5`, `em5_0`, `em5_1`, `em5_2`, `em5_3`, `em5_4`, `em5_5`, `text6_0`, `text6_1`, `lang6`, `prob6`, `em6_0`, `em6_1`, `em6_2`, `em6_3`, `em6_4`, `em6_5`, `text7_0`, `text7_1`, `lang7`, `prob7`, `em7_0`, `em7_1`, `em7_2`, `em7_3`, `em7_4`, `em7_5`) VALUES
    (8322, 'Hundreds of various diagrams and schematics begin to take shape on the pages of the book. You recognize some of the diagrams while others remain foreign but familiar.', '', 0, 100, 0, 0, 0, 0, 0, 0, '', '', 0, 0, 0, 0, 0, 0, 0, 0, '', '', 0, 0, 0, 0, 0, 0, 0, 0, '', '', 0, 0, 0, 0, 0, 0, 0, 0, '', '', 0, 0, 0, 0, 0, 0, 0, 0, '', '', 0, 0, 0, 0, 0, 0, 0, 0, '', '', 0, 0, 0, 0, 0, 0, 0, 0, '', '', 0, 0, 0, 0, 0, 0, 0, 0);
    #
    DELETE FROM `gossip_menu_option` WHERE `menu_id` = 7058;
    INSERT INTO `gossip_menu_option` (`menu_id`, `id`, `option_icon`, `option_text`, `option_id`, `npc_option_npcflag`, `action_menu_id`, `action_poi_id`, `action_script_id`, `box_coded`, `box_money`, `box_text`, `condition_id`) VALUES
    (7058, 0, 0, 'I am 100% confident that I wish to learn in the ways of gnomish engineering.', 1, 1, -1, 0, 705801, 0, 0, NULL, @CONDITION+11),
    (7058, 1, 0, 'I am 100% confident that I wish to learn in the ways of goblin engineering.', 1, 1, -1, 0, 705802, 0, 0, NULL, @CONDITION+11),
    (7058, 2, 0, 'I wish to unlearn my Gnomish Engineering specialization!', 1, 1, -1, 0, 705803, 0, 1500000, 'Do you really want to unlearn your engineer specialty and lose all associated recipes?', @CONDITION+13),
    (7058, 3, 0, 'I wish to unlearn my Goblin Engineering specialization!', 1, 1, -1, 0, 705804, 0, 1500000, 'Do you really want to unlearn your engineer specialty and lose all associated recipes?', @CONDITION+12),
    (7058, 4, 0, 'I am absolutely certain that i want to learn Dragonscale leatherworking.', 1, 1, -1, 0, 705805, 0, 0, NULL, @CONDITION+34),
    (7058, 5, 0, 'I am absolutely certain that i want to learn Elemental leatherworking.', 1, 1, -1, 0, 705806, 0, 0, NULL, @CONDITION+34),
    (7058, 6, 0, 'I am absolutely certain that i want to learn Tribal leatherworking.', 1, 1, -1, 0, 705807, 0, 0, NULL, @CONDITION+34),
    (7058, 7, 0, 'I wish to unlearn Dragonscale Leatherworking.', 1, 1, -1, 0, 705808, 0, 1500000, 'Do you really want to unlearn your leatherworking specialty and lose all associated recipes?', @CONDITION+35),
    (7058, 8, 0, 'I wish to unlearn Elemental Leatherworking.', 1, 1, -1, 0, 705809, 0, 1500000, 'Do you really want to unlearn your leatherworking specialty and lose all associated recipes?', @CONDITION+36),
    (7058, 9, 0, 'I wish to unlearn Tribal Leatherworking.', 1, 1, -1, 0, 705810, 0, 1500000, 'Do you really want to unlearn your leatherworking specialty and lose all associated recipes?', @CONDITION+37);
    #
    DELETE FROM `dbscripts_on_gossip` WHERE `id` in (705801,705802,705803,705804,705805,705806,705807,705808,705809,705810);
    INSERT INTO `dbscripts_on_gossip` (`id`, `delay`, `command`, `datalong`, `datalong2`, `buddy_entry`, `search_radius`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `comments`) VALUES
    (705801, 0, 15, 20220, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 'cast Gnomish Engineering'),
    (705802, 0, 15, 20221, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 'cast Goblin Engineering'),
    (705803, 0, 15, 68333, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 'cast Unlearn Gnomish Engineering'),
    (705804, 0, 15, 68334, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 'cast Unlearn Goblin Engineering'),
    (705805, 0, 15, 10657, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 'cast Dragonscale Leatherworking'),
    (705806, 0, 15, 10659, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 'cast Elemental Leatherworking'),
    (705807, 0, 15, 10661, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 'cast Tribal Leatherworking'),
    (705808, 0, 15, 36434, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 'cast Forget (Unlearn Dragonscale Leatherworking)'),
    (705809, 0, 15, 36328, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 'cast Forget (Unlearn Elemental Leatherworking)'),
    (705810, 0, 15, 36433, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 'cast Forget (Unlearn Tribal Leatherworking)');
    #
    DELETE FROM `conditions` WHERE `condition_entry` in BETWEEN @CONDITION AND @CONDITION+37;
    INSERT INTO `conditions` (`condition_entry`, `type`, `value1`, `value2`) VALUES
    (@CONDITION, 15, 20, 1),
    (@CONDITION+1, 8, 3639, 0),
    (@CONDITION+2, 8, 3641, 0),
    (@CONDITION+3, 8, 3643, 0),
    (@CONDITION+4, 7, 202, 200),
    (@CONDITION+5, -2, @CONDITION+1, @CONDITION+2),
    (@CONDITION+6, -2, @CONDITION+3, @CONDITION+5),
    (@CONDITION+7, -1, @CONDITION, @CONDITION+4),
    (@CONDITION+8, -1, @CONDITION+6, @CONDITION+7),
    (@CONDITION+9, -2, 336, 339),
    (@CONDITION+10, -3, @CONDITION+9, 0),
    (@CONDITION+11, -1, @CONDITION+8, @CONDITION+10),
    (@CONDITION+12, -1, 336, @CONDITION+8), -- 336=Player Has Learned Spell: 20222
    (@CONDITION+13, -1, 339, @CONDITION+8), -- 339=Player Has Learned Spell: 20219
    (@CONDITION+14, 17, 10656, 0),
    (@CONDITION+15, 17, 10658, 0),
    (@CONDITION+16, 17, 10660, 0),
    (@CONDITION+17, 8, 5141, 0),
    (@CONDITION+18, 8, 5144, 0),
    (@CONDITION+19, 8, 5143, 0),
    (@CONDITION+20, 8, 5145, 0),
    (@CONDITION+21, 8, 5146, 0),
    (@CONDITION+22, 8, 5148, 0),
    (@CONDITION+23, 7, 165, 225),
    (@CONDITION+24, -2, @CONDITION+17, @CONDITION+18),
    (@CONDITION+25, -2, @CONDITION+19, @CONDITION+24),
    (@CONDITION+26, -2, @CONDITION+20, @CONDITION+21),
    (@CONDITION+27, -2, @CONDITION+22, @CONDITION+26),
    (@CONDITION+28, -2, @CONDITION+19, @CONDITION+27),
    (@CONDITION+29, -1, @CONDITION+23, 191), -- 191=Player Level >= 40
    (@CONDITION+30, -1, @CONDITION+28, @CONDITION+29),
    (@CONDITION+31, -2, @CONDITION+14, @CONDITION+15),
    (@CONDITION+32, -2, @CONDITION+16, @CONDITION+31),
    (@CONDITION+33, -3, @CONDITION+32, 0),
    (@CONDITION+34, -1, @CONDITION+30, @CONDITION+33),
    (@CONDITION+35, -1, @CONDITION+14, @CONDITION+30),
    (@CONDITION+36, -1, @CONDITION+15, @CONDITION+30),
    (@CONDITION+37, -1, @CONDITION+16, @CONDITION+30);
  2. core:

    
    diff --git a/src/scriptdev2/scripts/world/npc_professions.cpp b/src/scriptdev2/scripts/world/npc_professions.cpp
    index 239c649..6a05105 100644
    --- a/src/scriptdev2/scripts/world/npc_professions.cpp
    +++ b/src/scriptdev2/scripts/world/npc_professions.cpp
    @@ -25,17 +25,11 @@ EndScriptData */
    
    /*
    A few notes for future developement:
    -- A full implementation of gossip for GO's is required. They must have the same scripting capabilities as creatures. Basically,
    -there is no difference here (except that default text is chosen with `gameobject_template`.`data3` (for GO type2, different dataN for a few others)
    - It's possible blacksmithing still require some tweaks and adjustments due to the way we _have_ to use reputation.
    */

-/ --- UPDATE gameobject_template SET ScriptName = 'go_soothsaying_for_dummies' WHERE entry = 177226; -/

/*### -# to be removed from here (->ncp_text). This is data for database projects. +# to be removed from here (->npc_text). This is data for database projects.

*/

define TALK_MUST_UNLEARN_WEAPON "You must forget your weapon type specialty before I can help you. Go to Everlook in Winterspring and seek help there."

@@ -85,9 +79,6 @@ there is no difference here (except that default text is chosen with `gameobject

define BOX_UNLEARN_LEATHER_SPEC "Do you really want to unlearn your leatherworking specialty and lose all associated recipes? \n Cost: "

-#define GOSSIP_LEARN_GOBLIN "I am absolutely certain that i want to learn Goblin engineering" -#define GOSSIP_LEARN_GNOMISH "I am absolutely certain that i want to learn Gnomish engineering"

/*###

spells defines

*/

@@ -131,12 +122,6 @@ there is no difference here (except that default text is chosen with `gameobject

define S_UNLEARN_ELEMENTAL 36328

define S_UNLEARN_TRIBAL 36433

-#define S_GOBLIN 20222 -#define S_GNOMISH 20219

-#define S_LEARN_GOBLIN 20221 -#define S_LEARN_GNOMISH 20220

/*###

formulas to calculate unlearning cost

*/

@@ -724,23 +744,6 @@ bool GossipSelect_npc_prof_leather(Player pPlayer, Creature pCreature, uint32 return true; }

-/### -# start menues for GO (engineering and leatherworking) -###/

-/bool GOUse_go_soothsaying_for_dummies(Player pPlayer, GameObject* pGo) -{

NeatElves commented 7 years ago

NPC Leatherworking can be implemented, but only for Gossip alliance .. ((

Grz3s commented 7 years ago

thank you ... for your hard work @NeatElves .. ill look at this soon*

wowmui commented 7 years ago

@NeatElves 1.12.x don't have unlearn spells. need a better way.

NeatElves commented 7 years ago

@wowmui unlearn spells - need core support.

AnonXS commented 1 year ago

This has been scripted and ported to wotlk? Recent touchup.

https://github.com/cmangos/classic-db/commit/81d0863059807b0be03ae83c3fd9d98365aae8ee#diff-34a3e840cf7ea83353759e759481815cab87cb774ff1a9949890624cb652320aR33

https://github.com/cmangos/tbc-db/commit/a004cd3350a79302dfc176bf7d6e4906abe04754 -> https://github.com/cmangos/tbc-db/commit/d08e85cc3f52df17c85b986c650dce738286a1d7

(@CONDITION+4, 7, 202, 200),

here also only asks for 200 not 225.