rendered paste bodyIndex: java/net/sf/l2j/gameserver/model/actor/instance/L2NpcInstance.java
===================================================================
--- java/net/sf/l2j/gameserver/model/actor/instance/L2NpcInstance.java (revision 1775)
+++ java/net/sf/l2j/gameserver/model/actor/instance/L2NpcInstance.java (working copy)
@@ -1373,75 +1373,75 @@
html.setFile(filename);
html.replace("1race",""+Lottery.getInstance().getId());
html.replace("0adena",""+Lottery.getInstance().getPrize());
- }
+ }
else if (val > 24){
int lotonumber = Lottery.getInstance().getId();
- L2ItemInstance item = player.getInventory().getItemByObjectId(val);
- if (item == null || item.getItemId()!=4442 || item.getCustomType1()>=lotonumber)
- return;
- int[] check = Lottery.getInstance().checkTicket(item);
+ L2ItemInstance item = player.getInventory().getItemByObjectId(val);
+ if (item == null || item.getItemId()!=4442 || item.getCustomType1()>=lotonumber)
+ return;
+ int[] check = Lottery.getInstance().checkTicket(item);
sm = new SystemMessage(SystemMessage.DISSAPEARED_ITEM);
sm.addItemName(4442);
player.sendPacket(sm);
- int adena = check[1];
- if (adena<=0)
- adena = 1;
+ int adena = check[1];
+ if (adena<=0)
+ adena = 1;
player.addAdena("Loto", adena, this, true);
- player.destroyItem("Loto", item, this, false);
- return;
- }
+ player.destroyItem("Loto", item, this, false);
+ return;
+ }
else if (val == 24){
- int found = 0;
+ int found = 0;
int lotonumber = Lottery.getInstance().getId();
- String message = "<html><body>";
- for (L2ItemInstance item : player.getInventory().getItems())
- {
- if (item == null)
- continue;
- if (item.getItemId() == 4442 && item.getCustomType1()<lotonumber)
- {
- found++;
- message = message+"<a action=\"bypass -h npc_%objectId%_Loto "+item.getObjectId()+"\">"+item.getCustomType1()+" Event Number ";
- int[] numbers = Lottery.getInstance().decodeNumbers(item.getEnchantLevel(),item.getCustomType2());
- for (int i=0;i<5;i++){
- message += numbers[i]+" ";
- }
- int[] check = Lottery.getInstance().checkTicket(item);
- if (check[0]>0)
- {
- switch (check[0]){
- case 1: message += "- 1st Prize";break;
- case 2: message += "- 2nd Prize";break;
- case 3: message += "- 3th Prize";break;
- case 4: message += "- 4th Prize";break;
- }
- message += " "+check[1]+"a.";
- }
- message += "</a><br1>";
- }
- }
- if (found > 0)
- {
- message += "<br><a action=\"bypass -h npc_%objectId%_Chat 0\">Return</a></body></html>";
- html.setHtml(message);
- }
- else
- {
+ String message = "<html><body>";
+ for (L2ItemInstance item : player.getInventory().getItems())
+ {
+ if (item == null)
+ continue;
+ if (item.getItemId() == 4442 && item.getCustomType1()<lotonumber)
+ {
+ found++;
+ message = message+"<a action=\"bypass -h npc_%objectId%_Loto "+item.getObjectId()+"\">"+item.getCustomType1()+" Event Number ";
+ int[] numbers = Lottery.getInstance().decodeNumbers(item.getEnchantLevel(),item.getCustomType2());
+ for (int i=0;i<5;i++){
+ message += numbers[i]+" ";
+ }
+ int[] check = Lottery.getInstance().checkTicket(item);
+ if (check[0]>0)
+ {
+ switch (check[0]){
+ case 1: message += "- 1st Prize";break;
+ case 2: message += "- 2nd Prize";break;
+ case 3: message += "- 3th Prize";break;
+ case 4: message += "- 4th Prize";break;
+ }
+ message += " "+check[1]+"a.";
+ }
+ message += "</a><br1>";
+ }
+ }
+ if (found > 0)
+ {
+ message += "<br><a action=\"bypass -h npc_%objectId%_Chat 0\">Return</a></body></html>";
+ html.setHtml(message);
+ }
+ else
+ {
filename = (getHtmlPath(npcId, 4));
html.setFile(filename);
- }
- }
+ }
+ }
else if (val != 21){
- if (!Lottery.getInstance().isStarted()){
- //tickets can't be sold
- player.sendPacket(new SystemMessage(930));
- return;
- }
- if (!Lottery.getInstance().isSellableTickets()){
- //tickets can't be sold
- player.sendPacket(new SystemMessage(784));
- return;
- }
+ if (!Lottery.getInstance().isStarted()){
+ //tickets can't be sold
+ player.sendPacket(new SystemMessage(930));
+ return;
+ }
+ if (!Lottery.getInstance().isSellableTickets()){
+ //tickets can't be sold
+ player.sendPacket(new SystemMessage(784));
+ return;
+ }
filename = (getHtmlPath(npcId, 5));
// Send a Server->Client NpcHtmlMessage containing the text of the L2NpcInstance to the L2PcInstance
html.setFile(filename);
@@ -1479,16 +1479,16 @@
html.replace(search,replace);
}
} else {
- if (!Lottery.getInstance().isStarted()){
- //tickets can't be sold
- player.sendPacket(new SystemMessage(930));
- return;
- }
- if (!Lottery.getInstance().isSellableTickets()){
- //tickets can't be sold
- player.sendPacket(new SystemMessage(784));
- return;
- }
+ if (!Lottery.getInstance().isStarted()){
+ //tickets can't be sold
+ player.sendPacket(new SystemMessage(930));
+ return;
+ }
+ if (!Lottery.getInstance().isSellableTickets()){
+ //tickets can't be sold
+ player.sendPacket(new SystemMessage(784));
+ return;
+ }
int price = 2000;
int lotonumber = Lottery.getInstance().getId();
@@ -1511,7 +1511,7 @@
return;
}
if (!player.reduceAdena("Loto", price, this, true)) return;
- Lottery.getInstance().increasePrize(price);
+ Lottery.getInstance().increasePrize(price);
sm = new SystemMessage(SystemMessage.ACQUIRED);
sm.addNumber(lotonumber);
sm.addItemName(4442);
@@ -1651,6 +1651,8 @@
/* For use with Seven Signs implementation */
String filename = SevenSigns.SEVEN_SIGNS_HTML_PATH;
+ int sealAvariceOwner = SevenSigns.getInstance().getSealOwner(SevenSigns.SEAL_AVARICE);
+ int sealGnosisOwner = SevenSigns.getInstance().getSealOwner(SevenSigns.SEAL_GNOSIS);
int playerCabal = SevenSigns.getInstance().getPlayerCabal(player);
boolean isSealValidationPeriod = SevenSigns.getInstance().isSealValidationPeriod();
int compWinner = SevenSigns.getInstance().getCabalHighestScore();
@@ -1664,11 +1666,15 @@
case 8083:
case 8084:
case 8168:
- switch (playerCabal) {
+ switch (playerCabal)
+ {
case SevenSigns.CABAL_DAWN:
if (isSealValidationPeriod)
if (compWinner == SevenSigns.CABAL_DAWN)
- filename += "dawn_priest_2a.htm";
+ if (compWinner == sealGnosisOwner)
+ filename += "dawn_priest_2c.htm";
+ else
+ filename += "dawn_priest_2a.htm";
else
filename += "dawn_priest_2b.htm";
else
@@ -1699,11 +1705,15 @@
case 8090:
case 8091:
case 8169:
- switch (playerCabal) {
+ switch (playerCabal)
+ {
case SevenSigns.CABAL_DUSK:
if (isSealValidationPeriod)
if (compWinner == SevenSigns.CABAL_DUSK)
- filename += "dusk_priest_2a.htm";
+ if (compWinner == sealGnosisOwner)
+ filename += "dusk_priest_2c.htm";
+ else
+ filename += "dusk_priest_2a.htm";
else
filename += "dusk_priest_2b.htm";
else
@@ -1734,18 +1744,22 @@
case 8100: //
case 8101: //
case 8102: //
- if (isSealValidationPeriod) {
- if (compWinner == SevenSigns.CABAL_DAWN && playerCabal != SevenSigns.CABAL_DAWN)
+ if (isSealValidationPeriod)
+ {
+ if (compWinner == SevenSigns.CABAL_DAWN && playerCabal != SevenSigns.CABAL_DAWN || sealAvariceOwner != SevenSigns.CABAL_DAWN)
player.sendPacket(new SystemMessage(1301));
- else if (compWinner == SevenSigns.CABAL_DUSK && playerCabal != SevenSigns.CABAL_DUSK)
+ else if (compWinner == SevenSigns.CABAL_DUSK && playerCabal != SevenSigns.CABAL_DUSK || sealAvariceOwner != SevenSigns.CABAL_DUSK)
player.sendPacket(new SystemMessage(1302));
if (compWinner != playerCabal)
filename += "necro_no.htm";
- else
- filename = (getHtmlPath(npcId, val)); // do the default!
+ else if (sealAvariceOwner != playerCabal)
+ filename += "necro_no.htm";
+ else
+ filename = (getHtmlPath(npcId, val)); // do the default!
}
- else {
+ else
+ {
if (playerCabal == SevenSigns.CABAL_NULL)
filename += "necro_no.htm";
else
@@ -1758,18 +1772,22 @@
case 8117: //
case 8118: //
case 8119: //
- if (isSealValidationPeriod) {
- if (compWinner == SevenSigns.CABAL_DAWN && playerCabal != SevenSigns.CABAL_DAWN)
+ if (isSealValidationPeriod)
+ {
+ if (compWinner == SevenSigns.CABAL_DAWN && playerCabal != SevenSigns.CABAL_DAWN || sealGnosisOwner != SevenSigns.CABAL_DAWN)
player.sendPacket(new SystemMessage(1301));
- else if (compWinner == SevenSigns.CABAL_DUSK && playerCabal != SevenSigns.CABAL_DUSK)
+ else if (compWinner == SevenSigns.CABAL_DUSK && playerCabal != SevenSigns.CABAL_DUSK || sealGnosisOwner != SevenSigns.CABAL_DUSK)
player.sendPacket(new SystemMessage(1302));
if (compWinner != playerCabal)
filename += "cata_no.htm";
- else
+ else if (sealGnosisOwner != playerCabal)
+ filename += "cata_no.htm";
+ else
filename = (getHtmlPath(npcId, val)); // do the default!
}
- else {
+ else
+ {
if (playerCabal == SevenSigns.CABAL_NULL)
filename += "cata_no.htm";
else
@@ -1777,21 +1795,29 @@
}
break;
case 8111: // Gatekeeper Spirit (Disciples)
- if (isSealValidationPeriod)
- {
- int sealAvariceOwner = SevenSigns.getInstance().getSealOwner(SevenSigns.SEAL_AVARICE);
-
- if (sealAvariceOwner == SevenSigns.CABAL_DUSK)
- filename += "spirit_dusk.htm";
- else if (sealAvariceOwner == SevenSigns.CABAL_DAWN)
- filename += "spirit_dawn.htm";
- else
- filename += "spirit_null.htm";
- }
- else {
- filename += "spirit_null.htm";
- }
+ if (playerCabal == sealAvariceOwner && playerCabal == compWinner)
+ {
+ switch (sealAvariceOwner)
+ {
+ case SevenSigns.CABAL_DAWN:
+ filename += "spirit_dawn.htm";
+ break;
+ case SevenSigns.CABAL_DUSK:
+ filename += "spirit_dusk.htm";
+ break;
+ case SevenSigns.CABAL_NULL:
+ filename += "spirit_null.htm";
+ break;
+ }
+ }
+ else
+ {
+ filename += "spirit_null.htm";
+ }
break;
+ case 8112: // Gatekeeper Spirit (Disciples)
+ filename += "spirit_exit.htm";
+ break;
case 8127: //
case 8128: //
case 8129: // Dawn Festival Guides
@@ -1806,6 +1832,15 @@
case 8141: //
filename += "festival/dusk_guide.htm";
break;
+ case 8092: // Black Marketeer of Mammon
+ filename += "blkmrkt_1.htm";
+ break;
+ case 8113: // Merchant of Mammon
+ filename += "mammmerch_1.htm";
+ break;
+ case 8126: // Blacksmith of Mammon
+ filename += "mammblack_1.htm";
+ break;
default:
if ((npcId >= 8093 && npcId <= 8094) ||
(npcId >= 8172 && npcId <= 8201) ||
@@ -1954,8 +1989,8 @@
_spawn.decreaseCount(this);
// Reset the _decayTask for this L2NpcInstance
- if (_decayTask != null)
- _decayTask.cancel(false);
+ if (_decayTask != null)
+ _decayTask.cancel(false);
_decayTask = null;
}
@@ -2002,7 +2037,7 @@
return;
_decayTask.cancel(true);
- _decayTask = null;
+ _decayTask = null;
this.onDecay();
}