Перейти к содержанию
Авторизация  
Connect

java script

Рекомендуемые сообщения

Какие основы надо знать java скрипра, что бы уметь работать в ядре или переписать кв?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

надо знать java

Зачем посты набивать? Весь курс явы все равно не пригодится.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Зачем посты набивать? Весь курс явы все равно не пригодится.

Не весь курс. Почитайте Гиберта Шилдта. Все что там написано - вам пригодиться !

  • Upvote 4

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите, как переделать код? уже 3й день ломаю голову, как дни переделать в часы. Что бы давало не по дням, а по часам.
 

package custom.core;

import time;
import ru.catssoftware.gameserver.model.actor.instance.L2NpcInstance;
import ru.catssoftware.gameserver.model.actor.instance.L2PcInstance;
import ru.catssoftware.tools.random.Rnd;
import ru.catssoftware.gameserver.datatables.SkillTable;
import ru.catssoftware.gameserver.model.L2Party;
import ru.catssoftware.gameserver.model.quest.Quest;
import ru.catssoftware.gameserver.util.PcAction;


public class NpcScript extends Quest
{
	//Босс Иды
	private final static int[] BossIds = {20001};
    //Выдавать награду всей пати?
    private static boolean PartyDrop = true;
    //Включить награду нублом?
    private static boolean NOBLE = false;
    //Включить награду хиро?
    private static boolean HERO = true;
    //На сколько давать хиро
	private final static int timeHero = 3;
    //Включить награду премиум?
    private static boolean PREMIUM = true;
    //На сколько давать премиум
	private final static int timePremium = 3;
    //Включить награду итемом?
    private static boolean RewardItem = true;
    //Итем ид
	private final static int RewardItemId = 4037;
    //Количество
	private final static int RewardItemCount = 1;
    //Шанс дропа предмета
    private final static int chance = 50;
    //Сколько разрешено иметь в инве таких предметов
    private final static int count = 65535;
    //Включить награду скилами?
    private static boolean RewardSkill = false;
    //Скилл ид
	private final static int RewardSkillId = 2F;
    //Скилл лвл
	private final static int RewardSkillLvl = 1;
	
	public NpcScript()
	{
		super(-1, NpcScript.class.getSimpleName(), "NpcScript");
		for(int boss : BossIds)
		{
            addKillId(boss);
		}
	}
	
    @Override
    public String onKill(L2NpcInstance npc, L2PcInstance player, boolean isPet)
    {
		
		int npcId = npc.getNpcId();
		for (int id : BossIds)
		{
			if (npcId == id)
			{
				if (HERO)
				{
					L2Party party = player.getParty();
					if (party != null && PartyDrop)
					{
						for (L2PcInstance playerpaty : party.getPartyMembers())
						{
							PcAction.addHeroStatus(playerpaty, timeHero);
							player.sendMessage("Вы получили Хиро на 1 день.");
						}
					}
					else
					{
						PcAction.addHeroStatus(player, timeHero);
					}
				}
			}
		}
		if (PREMIUM)
		{
			L2Party party = player.getParty();
			if ((party != null) && PartyDrop)
			{
				for (L2PcInstance playerpaty : party.getPartyMembers())
				{
					PcAction.addPremiumServices(playerpaty, playerpaty.getAccountName(), timePremium);
					playerpaty.sendMessage("Вы получили премиум на 1 день.");
				}
			}
			else
			{
				PcAction.addPremiumServices(player, player.getAccountName(), timePremium);
				player.sendMessage("Вы получили премиум на 1 день.");
			}
		}
		if (NOBLE)
		{
			L2Party party = player.getParty();
			if ((party != null) && PartyDrop)
			{
				for (L2PcInstance playerpaty : party.getPartyMembers())
				{
					playerpaty.setNoble(true);
					playerpaty.sendMessage("\u0412\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u043d\u0443\u0431\u043b\u0435\u0441.");
				}
			}
			else
			{
				player.setNoble(true);
				player.sendMessage("\u0412\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u043d\u0443\u0431\u043b\u0435\u0441.");
			}
		}
		if (RewardItem)
		{
			L2Party party = player.getParty();
			if ((party != null) && PartyDrop)
			{
				for (L2PcInstance playerpaty : party.getPartyMembers())
				{
					if (Rnd.get(100) < chance)
					{
						if (playerpaty.getInventory().getInventoryItemCount(RewardItemId, 0) < count)
						{
							PcAction.giveItems(playerpaty, RewardItemId, RewardItemCount);
						}
					}
				}
			}
			else
			{
				if (Rnd.get(100) < chance)
				{
					if (player.getInventory().getInventoryItemCount(RewardItemId, 0) < count)
					{
						PcAction.giveItems(player, RewardItemId, RewardItemCount);
					}
				}
			}
		}
		if (RewardSkill)
		{
			L2Party party = player.getParty();
			if ((party != null) && PartyDrop)
			{
				for (L2PcInstance playerpaty : party.getPartyMembers())
				{
					 playerpaty.removeSkill(SkillTable.getInstance().getInfo(RewardSkillId, RewardSkillLvl));
					 playerpaty.addSkill(SkillTable.getInstance().getInfo(RewardSkillId, RewardSkillLvl), true);
					 playerpaty.sendMessage("\u0412\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u043d\u043e\u0432\u044b\u0439 \u0441\u043a\u0438\u043b.");
				}
			}
			else
			{
				 player.removeSkill(SkillTable.getInstance().getInfo(RewardSkillId, RewardSkillLvl));
				 player.addSkill(SkillTable.getInstance().getInfo(RewardSkillId, RewardSkillLvl), true);
				 player.sendMessage("\u0412\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u043d\u043e\u0432\u044b\u0439 \u0441\u043a\u0438\u043b.");
			}
		}
		return null;

    }

	public static void main(String[] args)
	{
		new NpcScript();
	}
} 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

PcAction методы смотрите.

Они отвечают за время. Точнее за конвертацию дней в мс.

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

PcAction методы смотрите.

Они отвечают за время. Точнее за конвертацию дней в мс.

 

А у вас Какие нибудь стары исходы есть?) От ваше сборке.

Изменено пользователем Connect

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А у вас Какие нибудь стары исходы есть?) От ваше сборке.

декомпил ядра и смотри классы

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  public static void addHeroStatus(L2PcInstance paramL2PcInstance, int paramInt)
  {
    if (paramL2PcInstance == null) {
      return;
    }
    Connection localConnection = null;
    try
    {
      Calendar localCalendar = Calendar.getInstance();
      localCalendar.setTimeInMillis(System.currentTimeMillis());
      localCalendar.set(13, 0);
      localCalendar.add(5, paramInt);
      localConnection = L2DatabaseFactory.getInstance().getConnection(localConnection);
      PreparedStatement localPreparedStatement = localConnection.prepareStatement("UPDATE character_herolist SET enddate=? WHERE charId=?");
      localPreparedStatement.setLong(1, localCalendar.getTimeInMillis());
      localPreparedStatement.setInt(2, paramL2PcInstance.getObjectId());
      localPreparedStatement.execute();
      localPreparedStatement.close();
      paramL2PcInstance.setHero(true);
      paramL2PcInstance.broadcastUserInfo();
      paramL2PcInstance.sendMessage(Message.getMessage(paramL2PcInstance, Message.MessageId.MSG_YOU_ARE_HERO_NOW));
      return;
    }
    catch (SQLException localSQLException2)
    {
      _log.warn("PremiumService:  Could not increase data");
    }
    finally
    {
      try
      {
        if (localConnection != null) {
          localConnection.close();
        }
      }
      catch (SQLException localSQLException4)
      {
        localSQLException4.printStackTrace();
      }
    }
  }

Я запутался..... До конца не до понял. Можете подсказать, какие методы отвечаю за часы, секунды. Хочу найти и сам попробовать....

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...