Code:
package server.model.players.quests;
import server.model.items.Item;
import server.Server;
import server.model.players.Client;
import server.util.Misc;
public class luckQuest {
public static int[][] rewardItems = {
{995, 386, -1},
{995, 386, 4151, 535, 537, 1378, 4588, 9244, -1},
{2435, 995, 2581, 9244, 3025, 4152, 4213, 4753, 4745, 4709, 4716, 4724, 4732, 4740, 11235, 11212, -1}
};
public static int[][] itemToGet = {
{1512, 1518, 1522, 437, 441, 454, 378, -1},
{2360, 2354, 67, -1},
{116, 230, 995, 527, 844, -1}
};
public static int level1 = itemToGet[0][Misc.random(7)];
public static int level2 = itemToGet[1][Misc.random(3)];
public static int level3 = itemToGet[2][Misc.random(5)];
public static int value5 = 0;
public static int amountNeeded(Client c) {
if (c.luckQuest == 1) {
switch(level1){
case 1512:
case 1518:
case 1522:
case 437:
case 441:
case 454:
case 378:
value5 = 40;
break;
}
} else if (c.luckQuest == 2) {
switch(level2) {
case 2360:
value5 = 20;
break;
case 2354:
value5 = 30;
break;
case 67:
value5 = 50;
break;
}
} else if (c.luckQuest == 3) {
switch(level3){
case 116:
value5 = 20;
break;
case 230:
value5 = 60;
break;
case 995:
value5 = 100000;
break;
case 527:
value5 = 50;
break;
case 844:
value5 = 30;
break;
}
}
return value5;
}
public static void rewardPlayer(Client c) {
int reward1 = rewardItems[0][Misc.random(2)];
int reward2 = rewardItems[1][Misc.random(8)];
int reward3 = rewardItems[2][Misc.random(16)];
if (c.luckQuest == 1) {
if (reward1 == 995) {
c.getItems().addItem(995, Misc.random(500000));
} else if (reward1 == 386) {
c.getItems().addItem(386, Misc.random(500));
}
//reward2 {995, 386, 4151, 535, 537, 1378, 4588, 9244},
} else if (c.luckQuest == 2) {
switch(reward2) {
case 995:
c.getItems().addItem(995, Misc.random(1000000));
break;
case 386:
c.getItems().addItem(386, Misc.random(1000));
break;
case 4151:
c.getItems().addItem(4151, 1);
break;
case 535:
c.getItems().addItem(535, Misc.random(200));
break;
case 537:
c.getItems().addItem(537, Misc.random(100));
break;
case 1378:
c.getItems().addItem(1378, Misc.random(5));
break;
case 4588:
c.getItems().addItem(4588, Misc.random(10));
break;
case 9244:
c.getItems().addItem(9244, Misc.random(1000));
break;
}
//reward3 {2435, 995, 2581, 9244, 3025, 4152, 4213, 4753, 4745, 4709, 4716, 4724, 4732, 4740, 11235, 11212}
} else if (c.luckQuest == 3) {
switch(reward3) {
case 995:
c.getItems().addItem(995, Misc.random(3000000));
break;
case 2435:
c.getItems().addItem(2435, Misc.random(500));
break;
case 2581:
c.getItems().addItem(2581, 1);
break;
case 9244:
c.getItems().addItem(9244, Misc.random(1000));
break;
case 3025:
c.getItems().addItem(3025, Misc.random(1000));
break;
case 4152:
c.getItems().addItem(4152, Misc.random(2));
break;
case 4213:
c.getItems().addItem(4213, Misc.random(2));
break;
case 4753:
c.getItems().addItem(4753, Misc.random(1));
break;
case 4745:
c.getItems().addItem(4745, Misc.random(1));
break;
case 4709:
c.getItems().addItem(4709, Misc.random(1));
break;
case 4716:
c.getItems().addItem(4716, 1);
break;
case 4724:
c.getItems().addItem(4724, Misc.random(1));
break;
case 4732:
c.getItems().addItem(4732, Misc.random(1));
break;
case 4740:
c.getItems().addItem(4740, Misc.random(1000));
break;
case 11235:
c.getItems().addItem(11235, Misc.random(1));
break;
case 11212:
c.getItems().addItem(11212, Misc.random(100));
break;
}
}
}
public static void showQuest(Client c) {
if (c.luckQuest == 0) {
c.getPA().sendFrame126("To start this quest I must first speak with", 8147);
c.getPA().sendFrame126("The farmer in the gamblers lounge.", 8148);
} else if (c.luckQuest == 1) {
c.getPA().sendFrame126("@GRE@To start this quest I must first speak with", 8147);
c.getPA().sendFrame126("@GRE@The farmer in the gamblers lounge.", 8148);
c.getPA().sendFrame126("I need to find " + amountNeeded(c) + " of " + Item.getItemName(level1) + "?", 8149);
} else if (c.luckQuest == 2) {
c.getPA().sendFrame126("@GRE@To start this quest I must first speak with", 8147);
c.getPA().sendFrame126("@GRE@The farmer in the gamblers lounge.", 8148);
c.getPA().sendFrame126("I need to find " + amountNeeded(c) + " of " + Item.getItemName(level2) + "?", 8149);
} else if (c.luckQuest == 3) {
c.getPA().sendFrame126("@GRE@To start this quest I must first speak with", 8147);
c.getPA().sendFrame126("@GRE@The farmer in the gamblers lounge.", 8148);
c.getPA().sendFrame126("I need to find " + amountNeeded(c) + " of " + Item.getItemName(level3) + "?", 8149);
}
c.getPA().showInterface(8134);
}
}
and i guess actionhandler
Code:
case 36:
if (c.luckQuest == 0) { // so it displays first chat at beginning
c.getDH().sendDialogues(100, npcType);
} else if (c.luckQuest == 1) { // so it displays first chat at beginning
if (!c.getItems().playerHasItem(luckQuest.level1, luckQuest.amountNeeded(c))){
c.getDH().sendDialogues(102, npcType);
} else {
c.getItems().deleteItem(luckQuest.level1, luckQuest.amountNeeded(c));
c.getDH().sendDialogues(103, npcType);
}
} else if (c.luckQuest == 2) { // so it displays first chat at beginning
if (!c.getItems().playerHasItem(luckQuest.level2, luckQuest.amountNeeded(c))){
c.getDH().sendDialogues(104, npcType);
} else {
c.getItems().deleteItem(luckQuest.level2, luckQuest.amountNeeded(c));
c.getDH().sendDialogues(105, npcType);
}
} else if (c.luckQuest == 3) { // so it displays first chat at beginning
if (!c.getItems().playerHasItem(luckQuest.level3, luckQuest.amountNeeded(c))){
c.getDH().sendDialogues(106, npcType);
} else {
c.getItems().deleteItem(luckQuest.level3, luckQuest.amountNeeded(c));
c.getDH().sendDialogues(107, npcType);
luckQuest.rewardPlayer(c);
c.luckQuest = 0;
}
}
break;
and clicking buttons (under case 9157