Advertisement
Easelm

PvP Title System by, Tommy aka QQrofl

Apr 20th, 2012
3,037
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 6.31 KB | None | 0 0
  1. /*******************************************************************************************
  2. *              _   _                                      __   _                           *
  3. *              | \ | |   ___    _ __ ___    ___    ___    / _| | |_                        *
  4. *              |  \| |  / _ \  | '_ ` _ \  / __|  / _ \  | |_  | __|                       *
  5. *              | |\  | | (_) | | | | | | | \__ \ | (_) | |  _| | |_                        *
  6. *              |_| \_|  \___/  |_| |_| |_| |___/  \___/  |_|    \__|                       *
  7. *                               The policy of Nomsoftware states: Releasing our software   *
  8. *                               or any other files are protected. You cannot re-release    *
  9. *                               anywhere unless you were given permission.                 *
  10. *                           (C) Nomsoftware 2011-2012. All rights reserved.                *
  11. ********************************************************************************************/
  12. #include "ScriptPCH.h"
  13.  
  14. enum eRanks
  15. {
  16.   /* Alliance */
  17.     PRIVATE = 1,
  18.     CORPORAL = 2,
  19.     SERGEANT = 3,
  20.     MASTER_SERGEANT = 4,
  21.     SERGEANT_MAJOR = 5,
  22.     KNIGHT = 6,
  23.     KNIGHT_LIEUTENANT = 7,
  24.     KNIGHT_CAPTAIN = 8,
  25.     KNIGHT_CHAMPION = 9,
  26.     LIEUTENANT_COMMANDER = 10,
  27.     COMMANDER = 11,
  28.     MARSHAL = 12,
  29.     FIELD_MARSHAL = 13,
  30.     GRAND_MARSHAL = 14,
  31.     OF_THE_ALLIANCE = 126,
  32.   /* Horde */
  33.     SCOUT = 15,
  34.     GRUNT = 16,
  35.     SERGEANT_H = 17,
  36.     SENIOR_SERGEANT = 18,
  37.     FIRST_SERGEANT = 19,
  38.     STONE_GUARD = 20,
  39.     BLOOD_GUARD = 21,
  40.     LEGIONNAIRE = 22,
  41.     CENTURION = 23,
  42.     CHAMPION = 24,
  43.     LIEUTENANT_GENERAL = 25,
  44.     GENERAL = 26,
  45.     WARLORD = 27,
  46.     HIGH_WARLORD = 28,
  47.     OF_THE_HORDE = 127
  48. };
  49.  
  50. enum eKills
  51. {
  52.     KILLS_1 = 100,
  53.     KILLS_2 = 500,
  54.     KILLS_3 = 1000,
  55.     KILLS_4 = 2000,
  56.     KILLS_5 = 4000,
  57.     KILLS_6 = 5000,
  58.     KILLS_7 = 6000,
  59.     KILLS_8 = 8000,
  60.     KILLS_9 = 10000,
  61.     KILLS_10 = 15000,
  62.     KILLS_11 = 25000,
  63.     KILLS_12 = 40000,
  64.     KILLS_13 = 45000,
  65.     KILLS_14 = 50000,
  66.     KILLS_15 = 75000
  67. };
  68.  
  69. class PvPTitles : public PlayerScript
  70. {
  71.      public:
  72.          PvPTitles()
  73.              : PlayerScript("PvPTitles")
  74.          {
  75.          }
  76.  
  77.          void OnPVPKill(Player * killer, Player * killed)
  78.          {
  79.              if(killer == NULL)
  80.                  return;
  81.  
  82.              switch(killer->GetUInt32Value(PLAYER_FIELD_LIFETIME_HONORABLE_KILLS))
  83.              {
  84.                   case KILLS_1:
  85.                      if(killer->GetTeam() == ALLIANCE)
  86.                         killer->SetTitle(sCharTitlesStore.LookupEntry(PRIVATE));
  87.                      else if(killer->GetTeam() == HORDE)
  88.                         killer->SetTitle(sCharTitlesStore.LookupEntry(SCOUT));
  89.                   break;
  90.                  
  91.                   case KILLS_2:
  92.                           if(killer->GetTeam() == ALLIANCE)
  93.                               killer->SetTitle(sCharTitlesStore.LookupEntry(CORPORAL));
  94.                            else if(killer->GetTeam() == HORDE)
  95.                               killer->SetTitle(sCharTitlesStore.LookupEntry(GRUNT));
  96.                       break;
  97.  
  98.                   case KILLS_3:
  99.                           if(killer->GetTeam() == ALLIANCE)
  100.                               killer->SetTitle(sCharTitlesStore.LookupEntry(SERGEANT));
  101.                           else if(killer->GetTeam() == HORDE)
  102.                               killer->SetTitle(sCharTitlesStore.LookupEntry(SERGEANT_H));
  103.                       break;
  104.  
  105.                   case KILLS_4:
  106.                           if(killer->GetTeam() == ALLIANCE)
  107.                               killer->SetTitle(sCharTitlesStore.LookupEntry(MASTER_SERGEANT));
  108.                           else if(killer->GetTeam() == HORDE)
  109.                               killer->SetTitle(sCharTitlesStore.LookupEntry(SENIOR_SERGEANT));
  110.                       break;
  111.  
  112.                   case KILLS_5:
  113.                           if(killer->GetTeam() == ALLIANCE)
  114.                               killer->SetTitle(sCharTitlesStore.LookupEntry(SERGEANT_MAJOR));
  115.                           else if(killer->GetTeam() == HORDE)
  116.                               killer->SetTitle(sCharTitlesStore.LookupEntry(FIRST_SERGEANT));
  117.                       break;
  118.  
  119.                   case KILLS_6:
  120.                           if(killer->GetTeam() == ALLIANCE)
  121.                               killer->SetTitle(sCharTitlesStore.LookupEntry(KNIGHT));
  122.                           else if(killer->GetTeam() == HORDE)
  123.                               killer->SetTitle(sCharTitlesStore.LookupEntry(STONE_GUARD));
  124.                       break;
  125.  
  126.                   case KILLS_7:
  127.                           if(killer->GetTeam() == ALLIANCE)
  128.                               killer->SetTitle(sCharTitlesStore.LookupEntry(KNIGHT_LIEUTENANT));
  129.                           else if(killer->GetTeam() == HORDE)
  130.                               killer->SetTitle(sCharTitlesStore.LookupEntry(BLOOD_GUARD));
  131.                       break;
  132.  
  133.                   case KILLS_8:
  134.                           if(killer->GetTeam() == ALLIANCE)
  135.                               killer->SetTitle(sCharTitlesStore.LookupEntry(KNIGHT_CAPTAIN));
  136.                           else if(killer->GetTeam() == HORDE)
  137.                               killer->SetTitle(sCharTitlesStore.LookupEntry(LEGIONNAIRE));
  138.                       break;
  139.  
  140.                   case KILLS_9:
  141.                           if(killer->GetTeam() == ALLIANCE)
  142.                               killer->SetTitle(sCharTitlesStore.LookupEntry(KNIGHT_CHAMPION));
  143.                           else if(killer->GetTeam() == HORDE)
  144.                               killer->SetTitle(sCharTitlesStore.LookupEntry(CENTURION));
  145.                       break;
  146.  
  147.                   case KILLS_10:
  148.                           if(killer->GetTeam() == ALLIANCE)
  149.                               killer->SetTitle(sCharTitlesStore.LookupEntry(LIEUTENANT_COMMANDER));
  150.                           else if(killer->GetTeam() == HORDE)
  151.                               killer->SetTitle(sCharTitlesStore.LookupEntry(CHAMPION));
  152.                       break;
  153.  
  154.                   case KILLS_11:
  155.                           if(killer->GetTeam() == ALLIANCE)
  156.                               killer->SetTitle(sCharTitlesStore.LookupEntry(COMMANDER));
  157.                           else if(killer->GetTeam() == HORDE)
  158.                               killer->SetTitle(sCharTitlesStore.LookupEntry(LIEUTENANT_GENERAL));
  159.                       break;
  160.  
  161.                   case KILLS_12:
  162.                           if(killer->GetTeam() == ALLIANCE)
  163.                               killer->SetTitle(sCharTitlesStore.LookupEntry(MARSHAL));
  164.                           else if(killer->GetTeam() == HORDE)
  165.                               killer->SetTitle(sCharTitlesStore.LookupEntry(GENERAL));
  166.                       break;
  167.  
  168.                   case KILLS_13:
  169.                           if(killer->GetTeam() == ALLIANCE)
  170.                               killer->SetTitle(sCharTitlesStore.LookupEntry(FIELD_MARSHAL));
  171.                           else if(killer->GetTeam() == HORDE)
  172.                               killer->SetTitle(sCharTitlesStore.LookupEntry(WARLORD));
  173.                       break;
  174.  
  175.                   case KILLS_14:
  176.                           if(killer->GetTeam() == ALLIANCE)
  177.                               killer->SetTitle(sCharTitlesStore.LookupEntry(GRAND_MARSHAL));
  178.                           else if(killer->GetTeam() == HORDE)
  179.                               killer->SetTitle(sCharTitlesStore.LookupEntry(HIGH_WARLORD));
  180.                       break;
  181.  
  182.                   case KILLS_15:
  183.                           if(killer->GetTeam() == ALLIANCE)
  184.                               killer->SetTitle(sCharTitlesStore.LookupEntry(OF_THE_ALLIANCE));
  185.                           else if(killer->GetTeam() == HORDE)
  186.                               killer->SetTitle(sCharTitlesStore.LookupEntry(OF_THE_HORDE));
  187.                       break;
  188.              }
  189.          }
  190. };
  191.  
  192. void AddSC_PvPTitles()
  193. {
  194.    new PvPTitles;
  195. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement