Guest User

Untitled

a guest
May 26th, 2018
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 11.26 KB | None | 0 0
  1. #include "ScriptPCH.h"
  2. #include <cstring>
  3.  
  4.  
  5. #define GOSSIP_ITEM_1       "I want to take the Quizz!"
  6. #define GOSSIP_ITEM_2       "Question: 2 x 2 = ?"
  7. #define GOSSIP_ITEM_3       "Question: 3 x 3 = ?"
  8. #define GOSSIP_ITEM_4       "Question: 4 x 4 = ?"
  9. #define GOSSIP_ITEM_5       "Question: 5 x 5 = ?"
  10. #define GOSSIP_ITEM_6       "Question: 6 x 6 = ?"
  11. #define GOSSIP_ITEM_7       "Question: 7 x 7 = ?"
  12. #define GOSSIP_ITEM_8       "Question: 8 x 8 = ?"
  13. #define GOSSIP_ITEM_9       "Question: 9 x 9 = ?"
  14. #define GOSSIP_ITEM_10      "Question: 10 x 10 = ?"
  15.  
  16.  
  17.  
  18.  
  19.  
  20. class kheyira2 : public CreatureScript
  21. {
  22.     public:
  23.  
  24.         kheyira2()
  25.             : CreatureScript("kheyira2")
  26.         {
  27.         }
  28.             // Inceputul scriptului cu gossip.
  29.         bool OnGossipHello(Player* player, Creature* creature)
  30.         {
  31.              
  32.             player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_1, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1);
  33.             player->PlayerTalkClass->SendGossipMenu(907, creature->GetGUID());
  34.            
  35.             return true;
  36.         }
  37.  
  38.  
  39. bool OnGossipSelect(Player* player, Creature* creature, uint32 uiSender, uint32 uiAction)
  40. {      
  41.         player->PlayerTalkClass->ClearMenus();
  42.  if (uiAction == GOSSIP_ACTION_INFO_DEF+1)
  43.  
  44.      
  45.             player->ADD_GOSSIP_ITEM_EXTENDED(0, GOSSIP_ITEM_2, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+2, "", 0, true);
  46.            
  47.             player->SEND_GOSSIP_MENU(907,/*aici vine textul custom din meniu*/ creature->GetGUID());
  48.             return true;
  49.  
  50.    
  51. }
  52.  
  53.  
  54. bool OnGossipSelectCode(Player* player, Creature* creature, uint32 uiSender, uint32 uiAction, const char* code)
  55. {      
  56.             if (uiSender == GOSSIP_SENDER_MAIN)
  57.             {
  58.                 switch (uiAction)
  59.                 {
  60.                 case GOSSIP_ACTION_INFO_DEF+2:
  61.                     if (std::strcmp(code, "4") != 0)
  62.                     {
  63.                        char msg[500];
  64.  sprintf(msg, "Wrong! Unfortunatelly you must die!");
  65.  creature->MonsterWhisper(msg, player->GetGUID());
  66.                         player->CastSpell(player, 7,/*death spell*/ true);
  67.                     }
  68.                     else
  69.                     {
  70.                         char msg[500];
  71.  sprintf(msg, "Correct! A cookie for you!");
  72.  creature->MonsterWhisper(msg, player->GetGUID());
  73.                         creature->CastSpell(player, 20217, true);
  74.                     }
  75.                   player->PlayerTalkClass->ClearMenus();
  76.                   //Sfarsit prima intrebare!
  77.                  
  78.             player->ADD_GOSSIP_ITEM_EXTENDED(0, GOSSIP_ITEM_3, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+3, "", 0, true);         
  79.             player->SEND_GOSSIP_MENU(907,/*aici vine textul custom din meniu*/ creature->GetGUID());   
  80.             return true;
  81.                 }
  82.             }
  83.             if (uiSender == GOSSIP_SENDER_MAIN)
  84.             {
  85.                 switch (uiAction)
  86.                 {
  87.                 case GOSSIP_ACTION_INFO_DEF+3:
  88.                     if (std::strcmp(code, "9") != 0)
  89.                     {
  90.                        char msg[500];
  91.  sprintf(msg, "Wrong! Unfortunatelly you must die!");
  92.  creature->MonsterWhisper(msg, player->GetGUID());
  93.                         player->CastSpell(player, 7,/*death spell*/ true);
  94.                     }
  95.                     else
  96.                     {
  97.                         char msg[500];
  98.  sprintf(msg, "Correct! A cookie for you!");
  99.  creature->MonsterWhisper(msg, player->GetGUID());
  100.                         creature->CastSpell(player, 20217, true);
  101.                     }
  102.                   player->PlayerTalkClass->ClearMenus();
  103.                   //Sfarsit a doua intrebare!
  104.                   player->ADD_GOSSIP_ITEM_EXTENDED(0, GOSSIP_ITEM_4, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+4, "", 0, true);           
  105.             player->SEND_GOSSIP_MENU(907,/*aici vine textul custom din meniu*/ creature->GetGUID());       
  106.             return true;
  107.                 }
  108.             }
  109.             if (uiSender == GOSSIP_SENDER_MAIN)
  110.             {
  111.  
  112.                 switch (uiAction)
  113.                 {
  114.                 case GOSSIP_ACTION_INFO_DEF+4:
  115.                     if (std::strcmp(code, "16") != 0)
  116.                     {
  117.                        char msg[500];
  118.  sprintf(msg, "Wrong! Unfortunatelly you must die!");
  119.  creature->MonsterWhisper(msg, player->GetGUID());
  120.                         player->CastSpell(player, 7,/*death spell*/ true);
  121.                     }
  122.                     else
  123.                     {
  124.                         char msg[500];
  125.  sprintf(msg, "Correct! A cookie for you!");
  126.  creature->MonsterWhisper(msg, player->GetGUID());
  127.                         creature->CastSpell(player, 20217, true);
  128.                     }
  129.                   player->PlayerTalkClass->ClearMenus();
  130.                   //Sfarsit a treia intrebare!
  131.                   player->ADD_GOSSIP_ITEM_EXTENDED(0, GOSSIP_ITEM_5, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+5, "", 0, true);           
  132.             player->SEND_GOSSIP_MENU(907,/*aici vine textul custom din meniu*/ creature->GetGUID());       
  133.             return true;
  134.                 }
  135.             }
  136.             if (uiSender == GOSSIP_SENDER_MAIN)
  137.             {
  138.                 switch (uiAction)
  139.                 {
  140.                 case GOSSIP_ACTION_INFO_DEF+5:
  141.                     if (std::strcmp(code, "25") != 0)
  142.                     {
  143.                        char msg[500];
  144.  sprintf(msg, "Wrong! Unfortunatelly you must die!");
  145.  creature->MonsterWhisper(msg, player->GetGUID());
  146.                         player->CastSpell(player, 7,/*death spell*/ true);
  147.                     }
  148.                     else
  149.                     {
  150.                         char msg[500];
  151.  sprintf(msg, "Correct! A cookie for you!");
  152.  creature->MonsterWhisper(msg, player->GetGUID());
  153.                         creature->CastSpell(player, 20217, true);
  154.                     }
  155.                   player->PlayerTalkClass->ClearMenus();
  156.                   //Sfarsit a patra intrebare!
  157.                   player->ADD_GOSSIP_ITEM_EXTENDED(0, GOSSIP_ITEM_6, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+6, "", 0, true);           
  158.             player->SEND_GOSSIP_MENU(907,/*aici vine textul custom din meniu*/ creature->GetGUID());       
  159.             return true;
  160.                 }
  161.             }
  162.             if (uiSender == GOSSIP_SENDER_MAIN)
  163.             {
  164.                 switch (uiAction)
  165.                 {
  166.                 case GOSSIP_ACTION_INFO_DEF+6:
  167.                     if (std::strcmp(code, "36") != 0)
  168.                     {
  169.                        char msg[500];
  170.  sprintf(msg, "Wrong! Unfortunatelly you must die!");
  171.  creature->MonsterWhisper(msg, player->GetGUID());
  172.                         player->CastSpell(player, 7,/*death spell*/ true);
  173.                     }
  174.                     else
  175.                     {
  176.                         char msg[500];
  177.  sprintf(msg, "Correct! A cookie for you!");
  178.  creature->MonsterWhisper(msg, player->GetGUID());
  179.                         creature->CastSpell(player, 20217, true);
  180.                     }
  181.                   player->PlayerTalkClass->ClearMenus();
  182.                   //Sfarsit a cincea intrebare!
  183.                   player->ADD_GOSSIP_ITEM_EXTENDED(0, GOSSIP_ITEM_7, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+7, "", 0, true);           
  184.             player->SEND_GOSSIP_MENU(907,/*aici vine textul custom din meniu*/ creature->GetGUID());       
  185.             return true;
  186.                 }
  187.             }
  188.             if (uiSender == GOSSIP_SENDER_MAIN)
  189.             {
  190.  
  191.                 switch (uiAction)
  192.                 {
  193.                 case GOSSIP_ACTION_INFO_DEF+7:
  194.                     if (std::strcmp(code, "49") != 0)
  195.                     {
  196.                        char msg[500];
  197.  sprintf(msg, "Wrong! Unfortunatelly you must die!");
  198.  creature->MonsterWhisper(msg, player->GetGUID());
  199.                         player->CastSpell(player, 7,/*death spell*/ true);
  200.                     }
  201.                     else
  202.                     {
  203.                         char msg[500];
  204.  sprintf(msg, "Correct! A cookie for you!");
  205.  creature->MonsterWhisper(msg, player->GetGUID());
  206.                         creature->CastSpell(player, 20217, true);
  207.                     }
  208.                   player->PlayerTalkClass->ClearMenus();
  209.                   //Sfarsit a sasea intrebare!
  210.                   player->ADD_GOSSIP_ITEM_EXTENDED(0, GOSSIP_ITEM_8, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+8, "", 0, true);           
  211.             player->SEND_GOSSIP_MENU(907,/*aici vine textul custom din meniu*/ creature->GetGUID());
  212.                     return true;
  213.                 }
  214.             }
  215.             if (uiSender == GOSSIP_SENDER_MAIN)
  216.             {
  217.                 switch (uiAction)
  218.                 {
  219.                 case GOSSIP_ACTION_INFO_DEF+8:
  220.                     if (std::strcmp(code, "64") != 0)
  221.                     {
  222.                        char msg[500];
  223.  sprintf(msg, "Wrong! Unfortunatelly you must die!");
  224.  creature->MonsterWhisper(msg, player->GetGUID());
  225.                         player->CastSpell(player, 7,/*death spell*/ true);
  226.                     }
  227.                     else
  228.                     {
  229.                         char msg[500];
  230.  sprintf(msg, "Correct! A cookie for you!");
  231.  creature->MonsterWhisper(msg, player->GetGUID());
  232.                         creature->CastSpell(player, 20217, true);
  233.                     }
  234.                   player->PlayerTalkClass->ClearMenus();
  235.                   //Sfarsit a saptea intrebare!
  236.                   player->ADD_GOSSIP_ITEM_EXTENDED(0, GOSSIP_ITEM_9, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+9, "", 0, true);           
  237.             player->SEND_GOSSIP_MENU(907,/*aici vine textul custom din meniu*/ creature->GetGUID());
  238.        
  239.             return true;
  240.                 }
  241.             }
  242.             if (uiSender == GOSSIP_SENDER_MAIN)
  243.             {
  244.                 switch (uiAction)
  245.                 {
  246.                 case GOSSIP_ACTION_INFO_DEF+9:
  247.                     if (std::strcmp(code, "81") != 0)
  248.                     {
  249.                        char msg[500];
  250.  sprintf(msg, "Wrong! Unfortunatelly you must die!");
  251.  creature->MonsterWhisper(msg, player->GetGUID());
  252.                         player->CastSpell(player, 7,/*death spell*/ true);
  253.                     }
  254.                     else
  255.                     {
  256.                         char msg[500];
  257.  sprintf(msg, "Correct! A cookie for you!");
  258.  creature->MonsterWhisper(msg, player->GetGUID());
  259.                         creature->CastSpell(player, 20217, true);
  260.                     }
  261.                   player->PlayerTalkClass->ClearMenus();
  262.                   //Sfarsit a opta intrebare!
  263.                   player->ADD_GOSSIP_ITEM_EXTENDED(0, GOSSIP_ITEM_10, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+10, "", 0, true);         
  264.             player->SEND_GOSSIP_MENU(907,/*aici vine textul custom din meniu*/ creature->GetGUID());
  265.        
  266.             return true;
  267.                 }
  268.             }
  269.             if (uiSender == GOSSIP_SENDER_MAIN)
  270.             {
  271.                 switch (uiAction)
  272.                 {
  273.                 case GOSSIP_ACTION_INFO_DEF+10:
  274.                     if (std::strcmp(code, "100") != 0)
  275.                     {
  276.                        char msg[500];
  277.  sprintf(msg, "Wrong! Unfortunatelly you must die!");
  278.  creature->MonsterWhisper(msg, player->GetGUID());
  279.                         player->CastSpell(player, 7,/*death spell*/ true);
  280.                     }
  281.                     else
  282.                     {
  283.                         char msg[500];
  284.  sprintf(msg, "Congrats! You finished this quizz! Take this Token as a reward for your HARD work!");
  285.  creature->MonsterWhisper(msg, player->GetGUID());
  286.                         creature->CastSpell(player, 20217, true);
  287.                     }
  288.                   player->CLOSE_GOSSIP_MENU();
  289.                   //Sfarsit a noua intrebare.
  290.  
  291.                   return true;             
  292.                 }
  293.             }          
  294. }
  295.  
  296. };
  297.  
  298.  
  299. void AddSC_kheyira2()
  300. {
  301.     new kheyira2();
  302.    
  303. }
Add Comment
Please, Sign In to add comment