Может пожалуйста кто помочь отредактировать шарный код java лотереи под мои потребности? Естественно не бесплатно!
package Simple;
import l2.gameserver.scripts.ScriptFile;
import l2.gameserver.GameTimeController;
import l2.gameserver.ThreadPoolManager;
import l2.gameserver.ai.CtrlIntention;
import l2.gameserver.network.serverpackets.ExShowScreenMessage;
import l2.gameserver.network.serverpackets.MagicSkillUser;
import l2.gameserver.network.serverpackets.NpcHtmlMessage;
import l2.gameserver.network.serverpackets.SetupGauge;
import l2.gameserver.network.serverpackets.SocialAction;
import l2.gameserver.templates.L2NpcTemplate;
import l2.gameserver.util.Broadcast;
import l2.util.Rnd;
import javolution.text.TextBuilder;
public class l2smart extends L2NpcInstance
{
private String filename;
public L2CasinoInstance(int objectId, L2NpcTemplate template)
{
super(objectId, template);
}
@Override
public void onBypassFeedback(L2PcInstance player, String command) {
if(player == null || player.getLastFolkNPC() == null
|| player.getLastFolkNPC().getObjectId() != this.getObjectId()) {
return;
}
if(command.startsWith("play1"))
Casino1(player);
if(command.startsWith("play2"))
Casino2(player);
if(command.startsWith("play3"))
Casino3(player);
if(command.startsWith("play4"))
Casino4(player);
}
public static void displayCongrats(L2PcInstance player)
{
player.broadcastPacket(new SocialAction(player.getObjectId(), 3));//Victory Social Action.
MagicSkillUser MSU = new MagicSkillUser(player, player, 2024, 1, 1, 0);//Fireworks Display
player.broadcastPacket(MSU);
ExShowScreenMessage screen = new ExShowScreenMessage("Congratulations "+player.getName()+"! You won!", 15000);
player.sendPacket(screen);
}
public static void displayCongrats2(L2PcInstance player)
{
ExShowScreenMessage screen = new ExShowScreenMessage(""+player.getName()+"! You lost!", 15000);
player.sendPacket(screen);
}
@Override
public void showChatWindow(L2PcInstance player, int val)
{
filename = (getHtmlPath(getNpcId(), val));
NpcHtmlMessage msg = new NpcHtmlMessage(this.getObjectId());
msg.setHtml(casinoWindow(player));
msg.replace("%objectId%", String.valueOf(this.getObjectId()));
player.sendPacket(msg);
}
private String casinoWindow(L2PcInstance player)
{
TextBuilder replyMSG = new TextBuilder();
replyMSG.append("<html><title>Casino Manager</title><body>");
replyMSG.append("<center>");
replyMSG.append("<br>");
replyMSG.append("<font color=\"999999\">Chance to win : 50%</font><br>");
replyMSG.append("<img src=\"L2UI.SquareGray\" width=\"200\" height=\"1\"><br>");
replyMSG.append("Welcome "+player.getName()+"<br>");
replyMSG.append("<tr><td>Double or Nothing ?</td></tr><br>");
replyMSG.append("<img src=\"L2UI.SquareGray\" width=\"280\" height=\"1\"></center><br>");
replyMSG.append("<center>");
replyMSG.append("Place your bets");
replyMSG.append("</center>");
replyMSG.append("<img src=\"L2UI.SquareGray\" width=\"280\" height=\"1\"></center><br>");
replyMSG.append("<br>");
replyMSG.append("<center>");
replyMSG.append("<tr>");
replyMSG.append("<td><button value= 100KK action=\"bypass -h npc_%objectId%_play1\" width=130 height=25 back = sek.cbui94 fore = sek.cbui92></td>");
replyMSG.append("<td><button value= 300KK action=\"bypass -h npc_%objectId%_play2\" width=130 height=25 back = sek.cbui94 fore = sek.cbui92></td>");
replyMSG.append("</tr>");
replyMSG.append("<tr>");
replyMSG.append("<td><button value= 500KK action=\"bypass -h npc_%objectId%_play3\" width=130 height=25 back = sek.cbui94 fore = sek.cbui92></td>");
replyMSG.append("<td><button value= 1KKK action=\"bypass -h npc_%objectId%_play4\" width=130 height=25 back = sek.cbui94 fore = sek.cbui92></td>");
replyMSG.append("</tr>");
replyMSG.append("</center>");
replyMSG.append("<center><img src=\"L2UI.SquareGray\" width=\"280\" height=\"1\">");
replyMSG.append("</body></html>");
return replyMSG.toString();
}
public static void Casino1(L2PcInstance player)
{
int unstuckTimer = (1*1000 );
player.setTarget(player);
player.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
player.disableAllSkills();
MagicSkillUser msk = new MagicSkillUser(player, 361, 1, unstuckTimer, 0);
Broadcast.toSelfAndKnownPlayersInRadius(player, msk, 810000);
SetupGauge sg = new SetupGauge(0, unstuckTimer);
player.sendPacket(sg);
Casino1 ef = new Casino1(player);
player.setSkillCast(ThreadPoolManager.getInstance().scheduleGeneral(ef, unstuckTimer));
player.setSkillCastEndTime(10+GameTimeController.getGameTicks()+unstuckTimer/GameTimeController.MILLIS_IN_TICK);
}
static class Casino1 implements Runnable
{
private L2PcInstance _player;
Casino1(L2PcInstance player)
{
_player = player;
}
public void run()
{
if (_player.isDead())
return;
_player.setIsIn7sDungeon(false);
_player.enableAllSkills();
int chance = Rnd.get(2);
if (_player.isNoble() && _player.getInventory().getInventoryItemCount(57, 0) >= 100000000)
{
if(chance == 0) {
displayCongrats(_player);
_player.getInventory().addItem("Adena", 57, 100000000, _player, null);
}
if (chance == 1)
{
displayCongrats2(_player);
_player.getInventory().destroyItemByItemId("Adena", 57, 100000000, _player, null);
}
}
else
{
_player.sendMessage("You do not have eneough items.");
}
}
}
public static void Casino2(L2PcInstance player)
{
int unstuckTimer = (1*1000 );
player.setTarget(player);
player.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
player.disableAllSkills();
MagicSkillUser msk = new MagicSkillUser(player, 361, 1, unstuckTimer, 0);
Broadcast.toSelfAndKnownPlayersInRadius(player, msk, 810000);
SetupGauge sg = new SetupGauge(0, unstuckTimer);
player.sendPacket(sg);
Casino2 ef = new Casino2(player);
player.setSkillCast(ThreadPoolManager.getInstance().scheduleGeneral(ef, unstuckTimer));
player.setSkillCastEndTime(10+GameTimeController.getGameTicks()+unstuckTimer/GameTimeController.MILLIS_IN_TICK);
}
static class Casino2 implements Runnable
{
private L2PcInstance _player;
Casino2(L2PcInstance player)
{
_player = player;
}
public void run()
{
if (_player.isDead())
return;
_player.setIsIn7sDungeon(false);
_player.enableAllSkills();
int chance = Rnd.get(3);
if (_player.isNoble() && _player.getInventory().getInventoryItemCount(57, 0) >= 300000000)
{
if(chance == 0) {
displayCongrats(_player);
_player.getInventory().addItem("Adena", 57, 300000000, _player, null);
}
if (chance == 1)
{
displayCongrats2(_player);
_player.getInventory().destroyItemByItemId("Adena", 57, 300000000, _player, null);
}
if (chance == 2)
{
displayCongrats2(_player);
_player.getInventory().destroyItemByItemId("Adena", 57, 300000000, _player, null);
}
}
else
{
_player.sendMessage("You do not have eneough items.");
}
}
}
public static void Casino3(L2PcInstance player)
{
int unstuckTimer = (1*1000 );
player.setTarget(player);
player.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
player.disableAllSkills();
MagicSkillUser msk = new MagicSkillUser(player, 361, 1, unstuckTimer, 0);
Broadcast.toSelfAndKnownPlayersInRadius(player, msk, 810000);
SetupGauge sg = new SetupGauge(0, unstuckTimer);
player.sendPacket(sg);
Casino3 ef = new Casino3(player);
player.setSkillCast(ThreadPoolManager.getInstance().scheduleGeneral(ef, unstuckTimer));
player.setSkillCastEndTime(10+GameTimeController.getGameTicks()+unstuckTimer/GameTimeController.MILLIS_IN_TICK);
}
static class Casino3 implements Runnable
{
private L2PcInstance _player;
Casino3(L2PcInstance player)
{
_player = player;
}
public void run()
{
if (_player.isDead())
return;
_player.setIsIn7sDungeon(false);
_player.enableAllSkills();
int chance = Rnd.get(3);
if (_player.isNoble() && _player.getInventory().getInventoryItemCount(57, 0) >= 500000000)
{
if(chance == 0) {
displayCongrats(_player);
_player.getInventory().addItem("Adena", 57, 500000000, _player, null);
}
if (chance == 1)
{
displayCongrats2(_player);
_player.getInventory().destroyItemByItemId("Adena", 57, 500000000, _player, null);
}
if (chance == 2)
{
displayCongrats2(_player);
_player.getInventory().destroyItemByItemId("Adena", 57, 500000000, _player, null);
}
}
else
{
_player.sendMessage("You do not have eneough items.");
}
}
}
public static void Casino4(L2PcInstance player)
{
int unstuckTimer = (1*1000 );
player.setTarget(player);
player.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
player.disableAllSkills();
MagicSkillUser msk = new MagicSkillUser(player, 361, 1, unstuckTimer, 0);
Broadcast.toSelfAndKnownPlayersInRadius(player, msk, 810000);
SetupGauge sg = new SetupGauge(0, unstuckTimer);
player.sendPacket(sg);
Casino4 ef = new Casino4(player);
player.setSkillCast(ThreadPoolManager.getInstance().scheduleGeneral(ef, unstuckTimer));
player.setSkillCastEndTime(10+GameTimeController.getGameTicks()+unstuckTimer/GameTimeController.MILLIS_IN_TICK);
}
static class Casino4 implements Runnable
{
private L2PcInstance _player;
Casino4(L2PcInstance player)
{
_player = player;
}
public void run()
{
if (_player.isDead())
return;
_player.setIsIn7sDungeon(false);
_player.enableAllSkills();
int chance = Rnd.get(3);
if (_player.isNoble() && _player.getInventory().getInventoryItemCount(57, 0) >= 1000000000)
{
if(chance == 0) {
displayCongrats(_player);
_player.getInventory().addItem("Adena", 57, 1000000000, _player, null);
}
if (chance == 1)
{
displayCongrats2(_player);
_player.getInventory().destroyItemByItemId("Adena", 57, 1000000000, _player, null);
}
if (chance == 2)
{
displayCongrats2(_player);
_player.getInventory().destroyItemByItemId("Adena", 57, 1000000000, _player, null);
}
}
else
{
_player.sendMessage("You do not have eneough items.");
}
}
}
}