Advertisement
MatheusMagnani

Untitled

May 23rd, 2016
347
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 44.61 KB | None | 0 0
  1.     DWORD WINAPI Variados(int i)
  2. {
  3.     char msg[255];
  4.  
  5.     int num[4];
  6.     srand(time(NULL));
  7.  
  8.     while (1)
  9.     {
  10.         time_t rawnow = time(NULL);
  11.         struct tm *now = localtime(&rawnow);
  12. for (int32_t i = 1; i < MAX_USER; i++)
  13.         {
  14.             auto mob = GetMobFromIndex(i);
  15.             auto user = Functions::getInstance().GetUserFromIndex(i);
  16.             CMobTwo *player = (CMobTwo*)GetMobFromIndex(i);
  17.             auto* user2 = Functions::getInstance().GetUserFromIndex(i);
  18. /*ITEM POR LEVEL*/
  19.             if (mob->Mob.Equip[84].EF2 <= 7)
  20.             {
  21.                 switch (mob->Mob.Equip[84].EFV2)
  22.                 {
  23.                 case 1:
  24.                     switch (mob->Mob.Equip[84].EF2)
  25.                     {
  26.                     case 0:
  27.                         if (mob->Mob.bStatus.Level >= 49)
  28.                         {
  29.                             auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  30.                             mob->Mob.Inventory[slot].Index = 1146;
  31.                             SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  32.  
  33.                             auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  34.                             mob->Mob.Inventory[slot1].Index = 1158;
  35.                             SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  36.  
  37.                             auto slot2 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  38.                             mob->Mob.Inventory[slot2].Index = 1110;
  39.                             SendItem(i, (int32_t)SlotType::Inventory, slot2, &mob->Mob.Inventory[slot2]);
  40.  
  41.                             auto slot3 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  42.                             mob->Mob.Inventory[slot3].Index = 1134;
  43.                             SendItem(i, (int32_t)SlotType::Inventory, slot3, &mob->Mob.Inventory[slot3]);
  44.  
  45.                             auto slot4 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  46.                             mob->Mob.Inventory[slot4].Index = 1122;
  47.                             SendItem(i, (int32_t)SlotType::Inventory, slot4, &mob->Mob.Inventory[slot4]);
  48.                             SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  49.                             mob->Mob.Equip[84].EF2 = 1;
  50.                             break;
  51.                         }
  52.                     case 1:
  53.                         if (mob->Mob.bStatus.Level >= 99)
  54.                         {
  55.                             auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  56.                             mob->Mob.Inventory[slot].Index = 1879;
  57.                             SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  58.  
  59.                             auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  60.                             mob->Mob.Inventory[slot1].Index = 1880;
  61.                             SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  62.  
  63.                             auto slot2 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  64.                             mob->Mob.Inventory[slot2].Index = 1876;
  65.                             SendItem(i, (int32_t)SlotType::Inventory, slot2, &mob->Mob.Inventory[slot2]);
  66.  
  67.                             auto slot3 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  68.                             mob->Mob.Inventory[slot3].Index = 1878;
  69.                             SendItem(i, (int32_t)SlotType::Inventory, slot3, &mob->Mob.Inventory[slot3]);
  70.  
  71.                             auto slot4 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  72.                             mob->Mob.Inventory[slot4].Index = 1877;
  73.                             SendItem(i, (int32_t)SlotType::Inventory, slot4, &mob->Mob.Inventory[slot4]);
  74.                             SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  75.                             mob->Mob.Equip[84].EF2 = 2;
  76.                             break;
  77.                         }
  78.                     case 2:
  79.                         if (mob->Mob.bStatus.Level >= 119)
  80.                         {
  81.                             auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  82.                             mob->Mob.Inventory[slot].Index = 2029;
  83.                             SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  84.  
  85.                             auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  86.                             mob->Mob.Inventory[slot1].Index = 2030;
  87.                             SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  88.  
  89.                             auto slot2 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  90.                             mob->Mob.Inventory[slot2].Index = 2026;
  91.                             SendItem(i, (int32_t)SlotType::Inventory, slot2, &mob->Mob.Inventory[slot2]);
  92.  
  93.                             auto slot3 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  94.                             mob->Mob.Inventory[slot3].Index = 2028;
  95.                             SendItem(i, (int32_t)SlotType::Inventory, slot3, &mob->Mob.Inventory[slot3]);
  96.  
  97.                             auto slot4 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  98.                             mob->Mob.Inventory[slot4].Index = 2027;
  99.                             SendItem(i, (int32_t)SlotType::Inventory, slot4, &mob->Mob.Inventory[slot4]);
  100.  
  101.                             SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  102.                             mob->Mob.Equip[84].EF2 = 3;
  103.                             break;
  104.                         }
  105.                     case 3:
  106.                         if (mob->Mob.bStatus.Level >= 149)
  107.                         {
  108.                             if (mob->Mob.bStatus.STR >= mob->Mob.bStatus.DEX + mob->Mob.bStatus.INT && mob->Mob.Equip[84].EF2 == 3) //full str
  109.                             {
  110.                                 auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  111.                                 mob->Mob.Inventory[slot].Index = 911;
  112.                                 mob->Mob.Inventory[slot].EF1 = 43;
  113.                                 mob->Mob.Inventory[slot].EFV1 = 3;
  114.                                 mob->Mob.Inventory[slot].EF2 = 2;
  115.                                 mob->Mob.Inventory[slot].EFV2 = 45;
  116.                                 mob->Mob.Inventory[slot].EF3 = 0;
  117.                                 mob->Mob.Inventory[slot].EFV3 = 0;
  118.                                 SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  119.  
  120.                                 auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  121.                                 mob->Mob.Inventory[slot1].Index = 2367;
  122.                                 mob->Mob.Inventory[slot1].EF1 = 100;
  123.                                 mob->Mob.Inventory[slot1].EFV1 = 100;
  124.                                 mob->Mob.Inventory[slot1].EF2 = 0;
  125.                                 mob->Mob.Inventory[slot1].EFV2 = 5;
  126.                                 mob->Mob.Inventory[slot1].EF3 = 100;
  127.                                 mob->Mob.Inventory[slot1].EFV3 = 100;
  128.                                 SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  129.                                 SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  130.                                 mob->Mob.Equip[84].EF2 = 4;
  131.                             }
  132.                             if (mob->Mob.bStatus.INT >= mob->Mob.bStatus.DEX + mob->Mob.bStatus.STR && mob->Mob.Equip[84].EF2 == 3) //Mágico
  133.                             {
  134.                                 auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  135.                                 mob->Mob.Inventory[slot].Index = 2137;
  136.                                 mob->Mob.Inventory[slot].EF1 = 43;
  137.                                 mob->Mob.Inventory[slot].EFV1 = 3;
  138.                                 mob->Mob.Inventory[slot].EF2 = 60;
  139.                                 mob->Mob.Inventory[slot].EFV2 = 20;
  140.                                 mob->Mob.Inventory[slot].EF3 = 0;
  141.                                 mob->Mob.Inventory[slot].EFV3 = 0;
  142.                                 SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  143.  
  144.                                 auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  145.                                 mob->Mob.Inventory[slot1].Index = 2367;
  146.                                 mob->Mob.Inventory[slot1].EF1 = 100;
  147.                                 mob->Mob.Inventory[slot1].EFV1 = 100;
  148.                                 mob->Mob.Inventory[slot1].EF2 = 0;
  149.                                 mob->Mob.Inventory[slot1].EFV2 = 5;
  150.                                 mob->Mob.Inventory[slot1].EF3 = 100;
  151.                                 mob->Mob.Inventory[slot1].EFV3 = 100;
  152.                                 SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  153.  
  154.                                 SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  155.                                 mob->Mob.Equip[84].EF2 = 4;
  156.                             }
  157.                             else //Dano
  158.                             {
  159.                                 if (mob->Mob.Equip[84].EF2 == 3)
  160.                                 {
  161.                                     auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  162.                                     mob->Mob.Inventory[slot].Index = 2142;
  163.                                     mob->Mob.Inventory[slot].EF1 = 43;
  164.                                     mob->Mob.Inventory[slot].EFV1 = 3;
  165.                                     mob->Mob.Inventory[slot].EF2 = 2;
  166.                                     mob->Mob.Inventory[slot].EFV2 = 45;
  167.                                     mob->Mob.Inventory[slot].EF3 = 0;
  168.                                     mob->Mob.Inventory[slot].EFV3 = 0;
  169.                                     SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  170.  
  171.                                     auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  172.                                     mob->Mob.Inventory[slot1].Index = 2367;
  173.                                     mob->Mob.Inventory[slot1].EF1 = 100;
  174.                                     mob->Mob.Inventory[slot1].EFV1 = 100;
  175.                                     mob->Mob.Inventory[slot1].EF2 = 0;
  176.                                     mob->Mob.Inventory[slot1].EFV2 = 5;
  177.                                     mob->Mob.Inventory[slot1].EF3 = 100;
  178.                                     mob->Mob.Inventory[slot1].EFV3 = 100;
  179.                                     SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  180.  
  181.                                     SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  182.                                     mob->Mob.Equip[84].EF2 = 4;
  183.                                 }
  184.                             }
  185.                             mob->Mob.Equip[84].EF2 = 4;
  186.                             break;
  187.                         }
  188.                     case 4:
  189.                         if (mob->Mob.bStatus.Level >= 169)
  190.                         {
  191.                             auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  192.                             mob->Mob.Inventory[slot].Index = 1216;
  193.                             SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  194.  
  195.                             auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  196.                             mob->Mob.Inventory[slot1].Index = 1219;
  197.                             SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  198.  
  199.                             auto slot2 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  200.                             mob->Mob.Inventory[slot2].Index = 1207;
  201.                             SendItem(i, (int32_t)SlotType::Inventory, slot2, &mob->Mob.Inventory[slot2]);
  202.  
  203.                             auto slot3 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  204.                             mob->Mob.Inventory[slot3].Index = 1213;
  205.                             SendItem(i, (int32_t)SlotType::Inventory, slot3, &mob->Mob.Inventory[slot3]);
  206.  
  207.                             auto slot4 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  208.                             mob->Mob.Inventory[slot4].Index = 1210;
  209.                             SendItem(i, (int32_t)SlotType::Inventory, slot4, &mob->Mob.Inventory[slot4]);
  210.                             SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  211.                             mob->Mob.Equip[84].EF2 = 5;
  212.                             break;
  213.                         }
  214.                     case 5:
  215.                         if (mob->Mob.bStatus.Level >= 255)
  216.                         {
  217.                             if (mob->Mob.bStatus.STR >= mob->Mob.bStatus.DEX + mob->Mob.bStatus.INT && mob->Mob.Equip[84].EF2 == 5) //full str
  218.                             {
  219.                                 auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  220.                                 mob->Mob.Inventory[slot].Index = 3591;
  221.                                 mob->Mob.Inventory[slot].EF1 = 43;
  222.                                 mob->Mob.Inventory[slot].EFV1 = 3;
  223.                                 mob->Mob.Inventory[slot].EF2 = 2;
  224.                                 mob->Mob.Inventory[slot].EFV2 = 45;
  225.                                 mob->Mob.Inventory[slot].EF3 = 0;
  226.                                 mob->Mob.Inventory[slot].EFV3 = 0;
  227.                                 SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  228.                                 SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  229.                                 mob->Mob.Equip[84].EF2 = 6;
  230.                             }
  231.                             if (mob->Mob.bStatus.INT >= mob->Mob.bStatus.DEX + mob->Mob.bStatus.STR && mob->Mob.Equip[84].EF2 == 5) //Mágico
  232.                             {
  233.                                 auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  234.                                 mob->Mob.Inventory[slot].Index = 3566;
  235.                                 mob->Mob.Inventory[slot].EF1 = 43;
  236.                                 mob->Mob.Inventory[slot].EFV1 = 3;
  237.                                 mob->Mob.Inventory[slot].EF2 = 60;
  238.                                 mob->Mob.Inventory[slot].EFV2 = 20;
  239.                                 mob->Mob.Inventory[slot].EF3 = 0;
  240.                                 mob->Mob.Inventory[slot].EFV3 = 0;
  241.                                 SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  242.                                 SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  243.                                 mob->Mob.Equip[84].EF2 = 6;
  244.                             }
  245.                             else //Dano
  246.                             {
  247.                                 if (mob->Mob.Equip[84].EF2 == 5)
  248.                                 {
  249.                                     auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  250.                                     mob->Mob.Inventory[slot].Index = 3576;
  251.                                     mob->Mob.Inventory[slot].EF1 = 43;
  252.                                     mob->Mob.Inventory[slot].EFV1 = 3;
  253.                                     mob->Mob.Inventory[slot].EF2 = 2;
  254.                                     mob->Mob.Inventory[slot].EFV2 = 45;
  255.                                     mob->Mob.Inventory[slot].EF3 = 0;
  256.                                     mob->Mob.Inventory[slot].EFV3 = 0;
  257.                                     SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  258.                                     SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  259.                                     mob->Mob.Equip[84].EF2 = 6;
  260.                                 }
  261.                             }
  262.                             mob->Mob.Equip[84].EF2 = 6;
  263.                             break;
  264.                         }
  265.                     case 6:
  266.                         if (mob->Mob.bStatus.Level >= 350)
  267.                         {
  268.                             auto shire3d = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  269.                             mob->Mob.Inventory[shire3d].Index = 3980;
  270.                             SendItem(i, (int32_t)SlotType::Inventory, shire3d, &mob->Mob.Inventory[shire3d]);
  271.  
  272.                             auto bauexp = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  273.                             mob->Mob.Inventory[bauexp].Index = 4144;
  274.                             SendItem(i, (int32_t)SlotType::Inventory, bauexp, &mob->Mob.Inventory[bauexp]);
  275.  
  276.                             SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  277.                             mob->Mob.Equip[84].EF2 = 7;
  278.                             break;
  279.                         }
  280.                     case 7:
  281.                         if (mob->Mob.bStatus.Level >= 399)
  282.                         {
  283.                             auto shire3d = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  284.                             mob->Mob.Inventory[shire3d].Index = 3980;
  285.                             SendItem(i, (int32_t)SlotType::Inventory, shire3d, &mob->Mob.Inventory[shire3d]);
  286.  
  287.                             auto bauexp = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  288.                             mob->Mob.Inventory[bauexp].Index = 4144;
  289.                             SendItem(i, (int32_t)SlotType::Inventory, bauexp, &mob->Mob.Inventory[bauexp]);
  290.                             SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  291.                             mob->Mob.Equip[84].EF2 = 8;
  292.                             break;
  293.                         }
  294.                     }
  295.                     break;
  296.                 case 11:
  297.                     switch (mob->Mob.Equip[84].EF2)
  298.                     {
  299.                     case 0:
  300.                         if (mob->Mob.bStatus.Level >= 49)
  301.                         {
  302.                             auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  303.                             mob->Mob.Inventory[slot].Index = 1296;
  304.                             SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  305.  
  306.                             auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  307.                             mob->Mob.Inventory[slot1].Index = 1308;
  308.                             SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  309.  
  310.                             auto slot2 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  311.                             mob->Mob.Inventory[slot2].Index = 1260;
  312.                             SendItem(i, (int32_t)SlotType::Inventory, slot2, &mob->Mob.Inventory[slot2]);
  313.  
  314.                             auto slot3 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  315.                             mob->Mob.Inventory[slot3].Index = 1284;
  316.                             SendItem(i, (int32_t)SlotType::Inventory, slot3, &mob->Mob.Inventory[slot3]);
  317.  
  318.                             auto slot4 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  319.                             mob->Mob.Inventory[slot4].Index = 1272;
  320.                             SendItem(i, (int32_t)SlotType::Inventory, slot4, &mob->Mob.Inventory[slot4]);
  321.                             SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  322.                             mob->Mob.Equip[84].EF2 = 1;
  323.                             break;
  324.                         }
  325.                     case 1:
  326.                         if (mob->Mob.bStatus.Level >= 99)
  327.                         {
  328.                             auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  329.                             mob->Mob.Inventory[slot].Index = 1889;
  330.                             SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  331.  
  332.                             auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  333.                             mob->Mob.Inventory[slot1].Index = 1890;
  334.                             SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  335.  
  336.                             auto slot2 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  337.                             mob->Mob.Inventory[slot2].Index = 1886;
  338.                             SendItem(i, (int32_t)SlotType::Inventory, slot2, &mob->Mob.Inventory[slot2]);
  339.  
  340.                             auto slot3 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  341.                             mob->Mob.Inventory[slot3].Index = 1888;
  342.                             SendItem(i, (int32_t)SlotType::Inventory, slot3, &mob->Mob.Inventory[slot3]);
  343.  
  344.                             auto slot4 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  345.                             mob->Mob.Inventory[slot4].Index = 1887;
  346.                             SendItem(i, (int32_t)SlotType::Inventory, slot4, &mob->Mob.Inventory[slot4]);
  347.  
  348.                             SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  349.                             mob->Mob.Equip[84].EF2 = 2;
  350.                             break;
  351.                         }
  352.                     case 2:
  353.                         if (mob->Mob.bStatus.Level >= 119)
  354.                         {
  355.                             auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  356.                             mob->Mob.Inventory[slot].Index = 1336;
  357.                             SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  358.  
  359.                             auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  360.                             mob->Mob.Inventory[slot1].Index = 1339;
  361.                             SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  362.  
  363.                             auto slot2 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  364.                             mob->Mob.Inventory[slot2].Index = 1327;
  365.                             SendItem(i, (int32_t)SlotType::Inventory, slot2, &mob->Mob.Inventory[slot2]);
  366.  
  367.                             auto slot3 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  368.                             mob->Mob.Inventory[slot3].Index = 1333;
  369.                             SendItem(i, (int32_t)SlotType::Inventory, slot3, &mob->Mob.Inventory[slot3]);
  370.  
  371.                             auto slot4 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  372.                             mob->Mob.Inventory[slot4].Index = 1330;
  373.                             SendItem(i, (int32_t)SlotType::Inventory, slot4, &mob->Mob.Inventory[slot4]);
  374.  
  375.                             SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  376.                             mob->Mob.Equip[84].EF2 = 3;
  377.                             break;
  378.                         }
  379.                     case 3:
  380.                         if (mob->Mob.bStatus.Level >= 149)
  381.                         {
  382.                             if (mob->Mob.bStatus.INT >= mob->Mob.bStatus.DEX + mob->Mob.bStatus.STR && mob->Mob.Equip[84].EF2 == 3) //Mágico
  383.                             {
  384.                                 auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  385.                                 mob->Mob.Inventory[slot].Index = 2127;
  386.                                 mob->Mob.Inventory[slot].EF1 = 43;
  387.                                 mob->Mob.Inventory[slot].EFV1 = 3;
  388.                                 mob->Mob.Inventory[slot].EF2 = 60;
  389.                                 mob->Mob.Inventory[slot].EFV2 = 20;
  390.                                 mob->Mob.Inventory[slot].EF3 = 0;
  391.                                 mob->Mob.Inventory[slot].EFV3 = 0;
  392.                                 SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  393.  
  394.                                 auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  395.                                 mob->Mob.Inventory[slot1].Index = 2367;
  396.                                 mob->Mob.Inventory[slot1].EF1 = 100;
  397.                                 mob->Mob.Inventory[slot1].EFV1 = 100;
  398.                                 mob->Mob.Inventory[slot1].EF2 = 0;
  399.                                 mob->Mob.Inventory[slot1].EFV2 = 5;
  400.                                 mob->Mob.Inventory[slot1].EF3 = 100;
  401.                                 mob->Mob.Inventory[slot1].EFV3 = 100;
  402.                                 SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  403.                                 SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  404.                                 mob->Mob.Equip[84].EF2 = 4;
  405.                             }
  406.                             else //Dano
  407.                             {
  408.                                 if (mob->Mob.Equip[84].EF2 == 3)
  409.                                 {
  410.                                     auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  411.                                     mob->Mob.Inventory[slot].Index = 2122;
  412.                                     mob->Mob.Inventory[slot].EF1 = 43;
  413.                                     mob->Mob.Inventory[slot].EFV1 = 3;
  414.                                     mob->Mob.Inventory[slot].EF2 = 2;
  415.                                     mob->Mob.Inventory[slot].EFV2 = 45;
  416.                                     mob->Mob.Inventory[slot].EF3 = 0;
  417.                                     mob->Mob.Inventory[slot].EFV3 = 0;
  418.                                     SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  419.                                     mob->Mob.Equip[84].EF2 = 4;
  420.  
  421.                                     auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  422.                                     mob->Mob.Inventory[slot1].Index = 2367;
  423.                                     mob->Mob.Inventory[slot1].EF1 = 100;
  424.                                     mob->Mob.Inventory[slot1].EFV1 = 100;
  425.                                     mob->Mob.Inventory[slot1].EF2 = 0;
  426.                                     mob->Mob.Inventory[slot1].EFV2 = 5;
  427.                                     mob->Mob.Inventory[slot1].EF3 = 100;
  428.                                     mob->Mob.Inventory[slot1].EFV3 = 100;
  429.                                     SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  430.                                     SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  431.                                     mob->Mob.Equip[84].EF2 = 4;
  432.                                 }
  433.                             }
  434.                             mob->Mob.Equip[84].EF2 = 4;
  435.                             break;
  436.                         }
  437.                     case 4:
  438.                         if (mob->Mob.bStatus.Level >= 169)
  439.                         {
  440.                             auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  441.                             mob->Mob.Inventory[slot].Index = 1351;
  442.                             SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  443.  
  444.                             auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  445.                             mob->Mob.Inventory[slot1].Index = 1354;
  446.                             SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  447.  
  448.                             auto slot2 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  449.                             mob->Mob.Inventory[slot2].Index = 1342;
  450.                             SendItem(i, (int32_t)SlotType::Inventory, slot2, &mob->Mob.Inventory[slot2]);
  451.  
  452.                             auto slot3 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  453.                             mob->Mob.Inventory[slot3].Index = 1348;
  454.                             SendItem(i, (int32_t)SlotType::Inventory, slot3, &mob->Mob.Inventory[slot3]);
  455.  
  456.                             auto slot4 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  457.                             mob->Mob.Inventory[slot4].Index = 1345;
  458.                             SendItem(i, (int32_t)SlotType::Inventory, slot4, &mob->Mob.Inventory[slot4]);
  459.                             SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  460.                             mob->Mob.Equip[84].EF2 = 5;
  461.                             break;
  462.                         }
  463.                     case 5:
  464.                         if (mob->Mob.bStatus.Level >= 255)
  465.                         {
  466.                             if (mob->Mob.bStatus.INT >= mob->Mob.bStatus.DEX + mob->Mob.bStatus.STR && mob->Mob.Equip[84].EF2 == 5) //Mágico
  467.                             {
  468.                                 auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  469.                                 mob->Mob.Inventory[slot].Index = 3582;
  470.                                 mob->Mob.Inventory[slot].EF1 = 43;
  471.                                 mob->Mob.Inventory[slot].EFV1 = 3;
  472.                                 mob->Mob.Inventory[slot].EF2 = 60;
  473.                                 mob->Mob.Inventory[slot].EFV2 = 20;
  474.                                 mob->Mob.Inventory[slot].EF3 = 0;
  475.                                 mob->Mob.Inventory[slot].EFV3 = 0;
  476.                                 SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  477.                                 SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  478.                                 mob->Mob.Equip[84].EF2 = 6;
  479.                             }
  480.                             else //Dano
  481.                             {
  482.                                 if (mob->Mob.Equip[84].EF2 == 5)
  483.                                 {
  484.                                     auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  485.                                     mob->Mob.Inventory[slot].Index = 3556;
  486.                                     mob->Mob.Inventory[slot].EF1 = 43;
  487.                                     mob->Mob.Inventory[slot].EFV1 = 3;
  488.                                     mob->Mob.Inventory[slot].EF2 = 2;
  489.                                     mob->Mob.Inventory[slot].EFV2 = 45;
  490.                                     mob->Mob.Inventory[slot].EF3 = 0;
  491.                                     mob->Mob.Inventory[slot].EFV3 = 0;
  492.                                     SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  493.                                     SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  494.                                     mob->Mob.Equip[84].EF2 = 6;
  495.                                 }
  496.                             }
  497.                             mob->Mob.Equip[84].EF2 = 6;
  498.                             break;
  499.                         }
  500.                     case 6:
  501.                         if (mob->Mob.bStatus.Level >= 350)
  502.                         {
  503.                             auto shire3d = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  504.                             mob->Mob.Inventory[shire3d].Index = 3980;
  505.                             SendItem(i, (int32_t)SlotType::Inventory, shire3d, &mob->Mob.Inventory[shire3d]);
  506.  
  507.                             auto bauexp = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  508.                             mob->Mob.Inventory[bauexp].Index = 4144;
  509.                             SendItem(i, (int32_t)SlotType::Inventory, bauexp, &mob->Mob.Inventory[bauexp]);
  510.  
  511.                             SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  512.                             mob->Mob.Equip[84].EF2 = 7;
  513.                             break;
  514.                         }
  515.                     case 7:
  516.                         if (mob->Mob.bStatus.Level >= 399)
  517.                         {
  518.                             auto shire3d = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  519.                             mob->Mob.Inventory[shire3d].Index = 3980;
  520.                             SendItem(i, (int32_t)SlotType::Inventory, shire3d, &mob->Mob.Inventory[shire3d]);
  521.  
  522.                             auto bauexp = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  523.                             mob->Mob.Inventory[bauexp].Index = 4144;
  524.                             SendItem(i, (int32_t)SlotType::Inventory, bauexp, &mob->Mob.Inventory[bauexp]);
  525.                             SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  526.                             mob->Mob.Equip[84].EF2 = 8;
  527.                             break;
  528.                         }
  529.                     }
  530.                     break;
  531.                 case 21:
  532.                     switch (mob->Mob.Equip[84].EF2)
  533.                     {
  534.                     case 0:
  535.                         if (mob->Mob.bStatus.Level >= 49)
  536.                         {
  537.                             auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  538.                             mob->Mob.Inventory[slot].Index = 1455;
  539.                             SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  540.  
  541.                             auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  542.                             mob->Mob.Inventory[slot1].Index = 1458;
  543.                             SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  544.  
  545.                             auto slot2 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  546.                             mob->Mob.Inventory[slot2].Index = 1446;
  547.                             SendItem(i, (int32_t)SlotType::Inventory, slot2, &mob->Mob.Inventory[slot2]);
  548.  
  549.                             auto slot3 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  550.                             mob->Mob.Inventory[slot3].Index = 1452;
  551.                             SendItem(i, (int32_t)SlotType::Inventory, slot3, &mob->Mob.Inventory[slot3]);
  552.  
  553.                             auto slot4 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  554.                             mob->Mob.Inventory[slot4].Index = 1449;
  555.                             SendItem(i, (int32_t)SlotType::Inventory, slot4, &mob->Mob.Inventory[slot4]);
  556.  
  557.                             SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  558.                             mob->Mob.Equip[84].EF2 = 1;
  559.                             break;
  560.                         }
  561.                     case 1:
  562.                         if (mob->Mob.bStatus.Level >= 99)
  563.                         {
  564.                             auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  565.                             mob->Mob.Inventory[slot].Index = 1999;
  566.                             SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  567.  
  568.                             auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  569.                             mob->Mob.Inventory[slot1].Index = 2000;
  570.                             SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  571.  
  572.                             auto slot2 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  573.                             mob->Mob.Inventory[slot2].Index = 1996;
  574.                             SendItem(i, (int32_t)SlotType::Inventory, slot2, &mob->Mob.Inventory[slot2]);
  575.  
  576.                             auto slot3 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  577.                             mob->Mob.Inventory[slot3].Index = 1998;
  578.                             SendItem(i, (int32_t)SlotType::Inventory, slot3, &mob->Mob.Inventory[slot3]);
  579.  
  580.                             auto slot4 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  581.                             mob->Mob.Inventory[slot4].Index = 1997;
  582.                             SendItem(i, (int32_t)SlotType::Inventory, slot4, &mob->Mob.Inventory[slot4]);
  583.  
  584.                             SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  585.                             mob->Mob.Equip[84].EF2 = 2;
  586.                             break;
  587.                         }
  588.                     case 2:
  589.                         if (mob->Mob.bStatus.Level >= 119)
  590.                         {
  591.                             auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  592.                             mob->Mob.Inventory[slot].Index = 2004;
  593.                             SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  594.  
  595.                             auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  596.                             mob->Mob.Inventory[slot1].Index = 2005;
  597.                             SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  598.  
  599.                             auto slot2 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  600.                             mob->Mob.Inventory[slot2].Index = 2001;
  601.                             SendItem(i, (int32_t)SlotType::Inventory, slot2, &mob->Mob.Inventory[slot2]);
  602.  
  603.                             auto slot3 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  604.                             mob->Mob.Inventory[slot3].Index = 2003;
  605.                             SendItem(i, (int32_t)SlotType::Inventory, slot3, &mob->Mob.Inventory[slot3]);
  606.  
  607.                             auto slot4 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  608.                             mob->Mob.Inventory[slot4].Index = 2002;
  609.                             SendItem(i, (int32_t)SlotType::Inventory, slot4, &mob->Mob.Inventory[slot4]);
  610.                             mob->Mob.Equip[84].EF2 = 3;
  611.                             SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  612.                             break;
  613.                         }
  614.                     case 3:
  615.                         if (mob->Mob.bStatus.Level >= 149)
  616.                         {
  617.                             if (mob->Mob.Status.INT >= mob->Mob.Status.DEX + mob->Mob.Status.STR && mob->Mob.Equip[84].EF2 == 3) //Mágico
  618.                             {
  619.                                 auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  620.                                 mob->Mob.Inventory[slot].Index = 2137;
  621.                                 mob->Mob.Inventory[slot].EF1 = 43;
  622.                                 mob->Mob.Inventory[slot].EFV1 = 3;
  623.                                 mob->Mob.Inventory[slot].EF2 = 60;
  624.                                 mob->Mob.Inventory[slot].EFV2 = 20;
  625.                                 mob->Mob.Inventory[slot].EF3 = 0;
  626.                                 mob->Mob.Inventory[slot].EFV3 = 0;
  627.                                 SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  628.  
  629.                                 auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  630.                                 mob->Mob.Inventory[slot1].Index = 2367;
  631.                                 mob->Mob.Inventory[slot1].EF1 = 100;
  632.                                 mob->Mob.Inventory[slot1].EFV1 = 100;
  633.                                 mob->Mob.Inventory[slot1].EF2 = 0;
  634.                                 mob->Mob.Inventory[slot1].EFV2 = 5;
  635.                                 mob->Mob.Inventory[slot1].EF3 = 100;
  636.                                 mob->Mob.Inventory[slot1].EFV3 = 100;
  637.                                 SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  638.                                 SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  639.                                 mob->Mob.Equip[84].EF2 = 4;
  640.                             }
  641.                             else //Dano
  642.                             {
  643.                                 if (mob->Mob.Equip[84].EF2 == 3)
  644.                                 {
  645.                                     auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  646.                                     mob->Mob.Inventory[slot].Index = 2112;
  647.                                     mob->Mob.Inventory[slot].EF1 = 43;
  648.                                     mob->Mob.Inventory[slot].EFV1 = 3;
  649.                                     mob->Mob.Inventory[slot].EF2 = 2;
  650.                                     mob->Mob.Inventory[slot].EFV2 = 45;
  651.                                     mob->Mob.Inventory[slot].EF3 = 0;
  652.                                     mob->Mob.Inventory[slot].EFV3 = 0;
  653.                                     SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  654.  
  655.                                     auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  656.                                     mob->Mob.Inventory[slot1].Index = 2367;
  657.                                     mob->Mob.Inventory[slot1].EF1 = 100;
  658.                                     mob->Mob.Inventory[slot1].EFV1 = 100;
  659.                                     mob->Mob.Inventory[slot1].EF2 = 0;
  660.                                     mob->Mob.Inventory[slot1].EFV2 = 5;
  661.                                     mob->Mob.Inventory[slot1].EF3 = 100;
  662.                                     mob->Mob.Inventory[slot1].EFV3 = 100;
  663.                                     SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  664.                                     SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  665.                                     mob->Mob.Equip[84].EF2 = 4;
  666.                                 }
  667.                             }
  668.                             mob->Mob.Equip[84].EF2 = 4;
  669.                             break;
  670.                         }
  671.                     case 4:
  672.                         if (mob->Mob.bStatus.Level >= 169)
  673.                         {
  674.                             auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  675.                             mob->Mob.Inventory[slot].Index = 1501;
  676.                             SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  677.  
  678.                             auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  679.                             mob->Mob.Inventory[slot1].Index = 1504;
  680.                             SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  681.  
  682.                             auto slot2 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  683.                             mob->Mob.Inventory[slot2].Index = 1492;
  684.                             SendItem(i, (int32_t)SlotType::Inventory, slot2, &mob->Mob.Inventory[slot2]);
  685.  
  686.                             auto slot3 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  687.                             mob->Mob.Inventory[slot3].Index = 1498;
  688.                             SendItem(i, (int32_t)SlotType::Inventory, slot3, &mob->Mob.Inventory[slot3]);
  689.  
  690.                             auto slot4 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  691.                             mob->Mob.Inventory[slot4].Index = 1495;
  692.                             SendItem(i, (int32_t)SlotType::Inventory, slot4, &mob->Mob.Inventory[slot4]);
  693.  
  694.                             SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  695.                             mob->Mob.Equip[84].EF2 = 5;
  696.                             break;
  697.                         }
  698.                     case 5:
  699.                         if (mob->Mob.bStatus.Level >= 255)
  700.                         {
  701.                             if (mob->Mob.bStatus.INT >= mob->Mob.bStatus.DEX + mob->Mob.bStatus.STR && mob->Mob.Equip[84].EF2 == 5) //Mágico
  702.                             {
  703.                                 auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  704.                                 mob->Mob.Inventory[slot].Index = 3566;
  705.                                 mob->Mob.Inventory[slot].EF1 = 43;
  706.                                 mob->Mob.Inventory[slot].EFV1 = 3;
  707.                                 mob->Mob.Inventory[slot].EF2 = 60;
  708.                                 mob->Mob.Inventory[slot].EFV2 = 20;
  709.                                 mob->Mob.Inventory[slot].EF3 = 0;
  710.                                 mob->Mob.Inventory[slot].EFV3 = 0;
  711.                                 SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  712.                                 SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  713.                                 mob->Mob.Equip[84].EF2 = 6;
  714.                             }
  715.                             else //Dano
  716.                             {
  717.                                 if (mob->Mob.Equip[84].EF2 == 5)
  718.                                 {
  719.                                     auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  720.                                     mob->Mob.Inventory[slot].Index = 3551;
  721.                                     mob->Mob.Inventory[slot].EF1 = 43;
  722.                                     mob->Mob.Inventory[slot].EFV1 = 3;
  723.                                     mob->Mob.Inventory[slot].EF2 = 2;
  724.                                     mob->Mob.Inventory[slot].EFV2 = 45;
  725.                                     mob->Mob.Inventory[slot].EF3 = 0;
  726.                                     mob->Mob.Inventory[slot].EFV3 = 0;
  727.                                     SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  728.                                     SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  729.                                     mob->Mob.Equip[84].EF2 = 6;
  730.                                 }
  731.                             }
  732.                             mob->Mob.Equip[84].EF2 = 6;
  733.                             break;
  734.                         }
  735.                     case 6:
  736.                         if (mob->Mob.bStatus.Level >= 350)
  737.                         {
  738.                             auto shire3d = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  739.                             mob->Mob.Inventory[shire3d].Index = 3980;
  740.                             SendItem(i, (int32_t)SlotType::Inventory, shire3d, &mob->Mob.Inventory[shire3d]);
  741.  
  742.                             auto bauexp = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  743.                             mob->Mob.Inventory[bauexp].Index = 4144;
  744.                             SendItem(i, (int32_t)SlotType::Inventory, bauexp, &mob->Mob.Inventory[bauexp]);
  745.  
  746.                             SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  747.                             mob->Mob.Equip[84].EF2 = 7;
  748.                             break;
  749.                         }
  750.                     case 7:
  751.                         if (mob->Mob.bStatus.Level >= 399)
  752.                         {
  753.                             auto shire3d = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  754.                             mob->Mob.Inventory[shire3d].Index = 3980;
  755.                             SendItem(i, (int32_t)SlotType::Inventory, shire3d, &mob->Mob.Inventory[shire3d]);
  756.  
  757.                             auto bauexp = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  758.                             mob->Mob.Inventory[bauexp].Index = 4144;
  759.                             SendItem(i, (int32_t)SlotType::Inventory, bauexp, &mob->Mob.Inventory[bauexp]);
  760.                             mob->Mob.Equip[84].EF2 = 8;
  761.                             SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  762.                             break;
  763.                         }
  764.                     }
  765.                     break;
  766.                 case 31:
  767.                     switch (mob->Mob.Equip[84].EF2)
  768.                     {
  769.                     case 0:
  770.                         if (mob->Mob.bStatus.Level >= 49)
  771.                         {
  772.                             auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  773.                             mob->Mob.Inventory[slot].Index = 1605;
  774.                             SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  775.  
  776.                             auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  777.                             mob->Mob.Inventory[slot1].Index = 1608;
  778.                             SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  779.  
  780.                             auto slot2 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  781.                             mob->Mob.Inventory[slot2].Index = 1596;
  782.                             SendItem(i, (int32_t)SlotType::Inventory, slot2, &mob->Mob.Inventory[slot2]);
  783.  
  784.                             auto slot3 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  785.                             mob->Mob.Inventory[slot3].Index = 1602;
  786.                             SendItem(i, (int32_t)SlotType::Inventory, slot3, &mob->Mob.Inventory[slot3]);
  787.  
  788.                             auto slot4 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  789.                             mob->Mob.Inventory[slot4].Index = 1599;
  790.                             SendItem(i, (int32_t)SlotType::Inventory, slot4, &mob->Mob.Inventory[slot4]);
  791.  
  792.                             SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  793.                             mob->Mob.Equip[84].EF2 = 1;
  794.                             break;
  795.                         }
  796.                     case 1:
  797.                         if (mob->Mob.bStatus.Level >= 99)
  798.                         {
  799.                             auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  800.                             mob->Mob.Inventory[slot].Index = 1621;
  801.                             SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  802.  
  803.                             auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  804.                             mob->Mob.Inventory[slot1].Index = 1624;
  805.                             SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  806.  
  807.                             auto slot2 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  808.                             mob->Mob.Inventory[slot2].Index = 1612;
  809.                             SendItem(i, (int32_t)SlotType::Inventory, slot2, &mob->Mob.Inventory[slot2]);
  810.  
  811.                             auto slot3 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  812.                             mob->Mob.Inventory[slot3].Index = 1618;
  813.                             SendItem(i, (int32_t)SlotType::Inventory, slot3, &mob->Mob.Inventory[slot3]);
  814.  
  815.                             auto slot4 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  816.                             mob->Mob.Inventory[slot4].Index = 1615;
  817.                             SendItem(i, (int32_t)SlotType::Inventory, slot4, &mob->Mob.Inventory[slot4]);
  818.  
  819.                             SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  820.                             mob->Mob.Equip[84].EF2 = 2;
  821.                             break;
  822.                         }
  823.                     case 2:
  824.                         if (mob->Mob.bStatus.Level >= 119)
  825.                         {
  826.                             auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  827.                             mob->Mob.Inventory[slot].Index = 1636;
  828.                             SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  829.  
  830.                             auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  831.                             mob->Mob.Inventory[slot1].Index = 1639;
  832.                             SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  833.  
  834.                             auto slot2 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  835.                             mob->Mob.Inventory[slot2].Index = 1627;
  836.                             SendItem(i, (int32_t)SlotType::Inventory, slot2, &mob->Mob.Inventory[slot2]);
  837.  
  838.                             auto slot3 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  839.                             mob->Mob.Inventory[slot3].Index = 1633;
  840.                             SendItem(i, (int32_t)SlotType::Inventory, slot3, &mob->Mob.Inventory[slot3]);
  841.  
  842.                             auto slot4 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  843.                             mob->Mob.Inventory[slot4].Index = 1630;
  844.                             SendItem(i, (int32_t)SlotType::Inventory, slot4, &mob->Mob.Inventory[slot4]);
  845.  
  846.                             SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  847.                             mob->Mob.Equip[84].EF2 = 3;
  848.                             break;
  849.                         }
  850.                     case 3:
  851.                         if (mob->Mob.bStatus.Level >= 149)
  852.                         {
  853.                             if (mob->Mob.bStatus.INT >= mob->Mob.bStatus.DEX + mob->Mob.bStatus.STR && mob->Mob.Equip[84].EF2 == 3) //Mágico
  854.                             {
  855.                                 auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  856.                                 mob->Mob.Inventory[slot].Index = 2122;
  857.                                 mob->Mob.Inventory[slot].EF1 = 43;
  858.                                 mob->Mob.Inventory[slot].EFV1 = 3;
  859.                                 mob->Mob.Inventory[slot].EF2 = 60;
  860.                                 mob->Mob.Inventory[slot].EFV2 = 20;
  861.                                 mob->Mob.Inventory[slot].EF3 = 0;
  862.                                 mob->Mob.Inventory[slot].EFV3 = 0;
  863.                                 SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  864.  
  865.                                 auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  866.                                 mob->Mob.Inventory[slot1].Index = 2367;
  867.                                 mob->Mob.Inventory[slot1].EF1 = 100;
  868.                                 mob->Mob.Inventory[slot1].EFV1 = 100;
  869.                                 mob->Mob.Inventory[slot1].EF2 = 0;
  870.                                 mob->Mob.Inventory[slot1].EFV2 = 5;
  871.                                 mob->Mob.Inventory[slot1].EF3 = 100;
  872.                                 mob->Mob.Inventory[slot1].EFV3 = 100;
  873.                                 SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  874.                                 SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  875.                                 mob->Mob.Equip[84].EF2 = 4;
  876.                             }
  877.                             else //Dano
  878.                             {
  879.                                 if (mob->Mob.Equip[84].EF2 == 3)
  880.                                 {
  881.                                     auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  882.                                     mob->Mob.Inventory[slot].Index = 2122;
  883.                                     mob->Mob.Inventory[slot].EF1 = 43;
  884.                                     mob->Mob.Inventory[slot].EFV1 = 3;
  885.                                     mob->Mob.Inventory[slot].EF2 = 2;
  886.                                     mob->Mob.Inventory[slot].EFV2 = 45;
  887.                                     mob->Mob.Inventory[slot].EF3 = 0;
  888.                                     mob->Mob.Inventory[slot].EFV3 = 0;
  889.                                     SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  890.  
  891.                                     auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  892.                                     mob->Mob.Inventory[slot1].Index = 2367;
  893.                                     mob->Mob.Inventory[slot1].EF1 = 100;
  894.                                     mob->Mob.Inventory[slot1].EFV1 = 100;
  895.                                     mob->Mob.Inventory[slot1].EF2 = 0;
  896.                                     mob->Mob.Inventory[slot1].EFV2 = 5;
  897.                                     mob->Mob.Inventory[slot1].EF3 = 100;
  898.                                     mob->Mob.Inventory[slot1].EFV3 = 100;
  899.                                     SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  900.                                     SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  901.                                     mob->Mob.Equip[84].EF2 = 4;
  902.                                 }
  903.                             }
  904.                             mob->Mob.Equip[84].EF2 = 4;
  905.                             break;
  906.                         }
  907.                     case 4:
  908.                         if (mob->Mob.bStatus.Level >= 169)
  909.                         {
  910.                             auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  911.                             mob->Mob.Inventory[slot].Index = 1651;
  912.                             SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  913.  
  914.                             auto slot1 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  915.                             mob->Mob.Inventory[slot1].Index = 1654;
  916.                             SendItem(i, (int32_t)SlotType::Inventory, slot1, &mob->Mob.Inventory[slot1]);
  917.  
  918.                             auto slot2 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  919.                             mob->Mob.Inventory[slot2].Index = 1642;
  920.                             SendItem(i, (int32_t)SlotType::Inventory, slot2, &mob->Mob.Inventory[slot2]);
  921.  
  922.                             auto slot3 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  923.                             mob->Mob.Inventory[slot3].Index = 1648;
  924.                             SendItem(i, (int32_t)SlotType::Inventory, slot3, &mob->Mob.Inventory[slot3]);
  925.  
  926.                             auto slot4 = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  927.                             mob->Mob.Inventory[slot4].Index = 1645;
  928.                             SendItem(i, (int32_t)SlotType::Inventory, slot4, &mob->Mob.Inventory[slot4]);
  929.  
  930.                             SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  931.                             mob->Mob.Equip[84].EF2 = 5;
  932.                             break;
  933.                         }
  934.                     case 5:
  935.                         if (mob->Mob.bStatus.Level >= 255)
  936.                         {
  937.                             if (mob->Mob.bStatus.INT >= mob->Mob.bStatus.DEX + mob->Mob.bStatus.STR && mob->Mob.Equip[84].EF2 == 5) //Mágico
  938.                             {
  939.                                 auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  940.                                 mob->Mob.Inventory[slot].Index = 3556;
  941.                                 mob->Mob.Inventory[slot].EF1 = 43;
  942.                                 mob->Mob.Inventory[slot].EFV1 = 3;
  943.                                 mob->Mob.Inventory[slot].EF2 = 60;
  944.                                 mob->Mob.Inventory[slot].EFV2 = 20;
  945.                                 mob->Mob.Inventory[slot].EF3 = 0;
  946.                                 mob->Mob.Inventory[slot].EFV3 = 0;
  947.                                 SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  948.                                 SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  949.                                 mob->Mob.Equip[84].EF2 = 6;
  950.                             }
  951.                             else //Dano
  952.                             {
  953.                                 if (mob->Mob.Equip[84].EF2 == 5)
  954.                                 {
  955.                                     auto slot = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  956.                                     mob->Mob.Inventory[slot].Index = 3556;
  957.                                     mob->Mob.Inventory[slot].EF1 = 43;
  958.                                     mob->Mob.Inventory[slot].EFV1 = 3;
  959.                                     mob->Mob.Inventory[slot].EF2 = 2;
  960.                                     mob->Mob.Inventory[slot].EFV2 = 45;
  961.                                     mob->Mob.Inventory[slot].EF3 = 0;
  962.                                     mob->Mob.Inventory[slot].EFV3 = 0;
  963.                                     SendItem(i, (int32_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
  964.                                     SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  965.                                     mob->Mob.Equip[84].EF2 = 6;
  966.                                 }
  967.                             }
  968.                             mob->Mob.Equip[84].EF2 = 6;
  969.                             break;
  970.                         }
  971.                     case 6:
  972.                         if (mob->Mob.bStatus.Level >= 350)
  973.                         {
  974.                             auto shire3d = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  975.                             mob->Mob.Inventory[shire3d].Index = 3980;
  976.                             SendItem(i, (int32_t)SlotType::Inventory, shire3d, &mob->Mob.Inventory[shire3d]);
  977.  
  978.                             auto bauexp = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  979.                             mob->Mob.Inventory[bauexp].Index = 4144;
  980.                             SendItem(i, (int32_t)SlotType::Inventory, bauexp, &mob->Mob.Inventory[bauexp]);
  981.  
  982.                             SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  983.                             mob->Mob.Equip[84].EF2 = 7;
  984.                             break;
  985.                         }
  986.                     case 7:
  987.                         if (mob->Mob.bStatus.Level >= 399)
  988.                         {
  989.                             auto shire3d = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  990.                             mob->Mob.Inventory[shire3d].Index = 3980;
  991.                             SendItem(i, (int32_t)SlotType::Inventory, shire3d, &mob->Mob.Inventory[shire3d]);
  992.  
  993.                             auto bauexp = Functions::getInstance().GetFirstSlot(i, SlotType::Inventory, 0);
  994.                             mob->Mob.Inventory[bauexp].Index = 4144;
  995.                             SendItem(i, (int32_t)SlotType::Inventory, bauexp, &mob->Mob.Inventory[bauexp]);
  996.                             SendClientMessage(i, "!Chegou novos itens em seu inventário.");
  997.                             mob->Mob.Equip[84].EF2 = 8;
  998.                             break;
  999.                         }
  1000.                     }
  1001.                     break;
  1002.                 }
  1003.             }  
  1004. }
  1005. }
  1006. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement