SHOW:
|
|
- or go back to the newest paste.
1 | - | class LoveBoat_Gossip : public GossipScript |
1 | + | class LoveBoat_Gossip : public CreatureScript |
2 | { | |
3 | public: | |
4 | - | void GossipHello(Object* pObject, Player * plr, bool AutoSend) |
4 | + | LoveBoat_Gossip() : CreatureScript("LoveBoat_Gossip") { } |
5 | - | { |
5 | + | |
6 | - | GossipMenu *Menu; |
6 | + | bool OnGossipHello(Player* player, Creature* creature) |
7 | - | objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 40002, plr); |
7 | + | |
8 | - | Menu->AddItem( 0, "Fly to the Chimaera spot", 1 ); |
8 | + | player->ADD_GOSSIP_ITEM(0, "Fly to the Chimaera spot", GOSSIP_SENDER_MAIN, 1); // See http://www.trinitycore.org/f/topic/6320-single-gossip-item/#entry46494 on how to make single gossip menu item work |
9 | - | if(AutoSend) |
9 | + | player->ADD_GOSSIP_ITEM(0, "asd", GOSSIP_SENDER_MAIN, 0); // using 2 for now. |
10 | - | Menu->SendTo(plr); |
10 | + | player->SEND_GOSSIP_MENU(40002, creature->GetGUID()); // 40002 was textID right? |
11 | - | } |
11 | + | |
12 | - | void GossipSelectOption(Object* pObject, Player * plr, uint32 Id, uint32 IntId, const char * Code) |
12 | + | return true; |
13 | } | |
14 | - | Creature * pCreature = (pObject->GetTypeId()==TYPEID_UNIT)?((Creature*)pObject):NULL; |
14 | + | |
15 | - | if(pCreature==NULL) |
15 | + | bool OnGossipSelect(Player* player, Creature* creature, uint32 sender, uint32 action) |
16 | - | return; |
16 | + | |
17 | - | switch(IntId) |
17 | + | player->PlayerTalkClass->ClearMenus(); |
18 | - | { |
18 | + | switch(action) |
19 | { | |
20 | case 0: | |
21 | - | objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 1, Plr); |
21 | + | player->CLOSE_GOSSIP_MENU(); break; |
22 | - | if (Plr->getClass() == 2||Plr->getClass() == 3||Plr->getClass() == 4||Plr->getClass() == 5||Plr->getClass() == 6||Plr->getClass() == 7||Plr->getClass() == 8||Plr->getClass() == 9||Plr->getClass() == 10||Plr->getClass() == 11) // Gets the class WARRIOR |
22 | + | |
23 | - | Menu->AddItem(2, "You must be a Warrior to learn Warrior spells."); |
23 | + | { |
24 | - | else |
24 | + | if (player->getClass() != CLASS_WARRIOR) // Gets the class WARRIOR |
25 | - | {Menu->AddItem(0, "Teach me my spells!", 2);} // Warrior Spells Only |
25 | + | player->ADD_GOSSIP_ITEM(2, "You must be a Warrior to learn Warrior spells.", GOSSIP_SENDER_MAIN, 0); |
26 | - | Menu->SendTo(Plr); |
26 | + | else |
27 | - | |
27 | + | player->ADD_GOSSIP_ITEM(0, "Teach me my spells!", GOSSIP_SENDER_MAIN, 2); // Warrior Spells Only |
28 | - | }break; |
28 | + | player->ADD_GOSSIP_ITEM(0, "asd", GOSSIP_SENDER_MAIN, 0); // using 2 for now. |
29 | player->SEND_GOSSIP_MENU(1, creature->GetGUID()); | |
30 | - | } |
30 | + | }break; |
31 | - | } |
31 | + | |
32 | - | void Destroy() |
32 | + | } |
33 | return true; | |
34 | - | delete this; |
34 | + | |
35 | }; | |
36 | - | }; |
36 | + | |
37 | void AddSC_YourScript() | |
38 | { | |
39 | new LoveBoat_Gossip(); | |
40 | } |