CalypsoToolz

Постоялец
  • Публикаций

    994
  • Зарегистрирован

  • Посещение

  • Победитель дней

    11
  • Отзывы

    100%

CalypsoToolz стал победителем дня 25 января

CalypsoToolz имел наиболее популярный контент!

Репутация

436

11 Подписчиков

Информация о CalypsoToolz

  • Звание
    Коренной житель

Информация

  • Пол
    Мужчина
  • Город
    Кировская область, г. Яранск

Контакты

Посетители профиля

10747 просмотров профиля
  1. Ошибка скорее всего возникает при попытке получить таргет игрока (вероятно не удачный копипаст, ибо не логично что делевел идёт не на используемого игрока) А вообще, ответ на 101 строке скрипта
  2. Именно исходы самой игры - не получить, если только есть связи в отделе гейм-дева мелкософт, а так - ответили выше - есть api на все случаи.
  3. CalypsoToolz

    ТвТ , что не так?

    В скрипте ивента вызввается Rnd.get() с аргументом равным нулю(0). А так, в ошибке всё написано, почему и как.
  4. CalypsoToolz

    Пвп-Фан зона

    ты сам то проверил свой пример? или рандомный файл из дп скинул? Инстанс и зона - вещи разные. а по теме, вот набросок скрипта, импорты сам сменишь: package events.PvpRewardZone; import org.mmocore.gameserver.listener.actor.OnDeathListener; import org.mmocore.gameserver.listener.script.OnInitScriptListener; import org.mmocore.gameserver.model.Creature; import org.mmocore.gameserver.model.Zone; import org.mmocore.gameserver.model.actor.listener.CharListenerList; import org.mmocore.gameserver.utils.ItemFunctions; import org.mmocore.gameserver.utils.ReflectionUtils; public class PvpRewardZone implements OnInitScriptListener { // Здесь указывается зона ([colosseum_battle] - имя зоны из /data/zone) private static final Zone zone = ReflectionUtils.getZone("[colosseum_battle]"); private class OnDeathListenerImpl implements OnDeathListener { @Override public void onDeath(Creature actor, Creature killer) { if(killer.isPlayer() && actor.isPlayer()) { if(zone.getInsidePlayers().contains(killer.getPlayer()) && zone.getInsidePlayers().contains(actor.getPlayer())) { // выдача итема (ид, кол-во) ItemFunctions.addItem(killer.getPlayer(), 57, 1000); } } } } @Override public void onInit() { CharListenerList.addGlobal(new OnDeathListenerImpl()); } }
  5. CalypsoToolz

    Ошибка скрипта ACIS

    Костыли те еще, но думаю проблема была в том, что переменную i нужно обнулять.
  6. Нет такой фунции, нужно самому дописывать, аки: else if (command.startsWith("exit")) { if(player.isInGuild()) { int id = player.getGuildSide(); player.setGuildSide(0); player.setGuildPenalty(0); GuildManager.Guild g = GuildManager.getInstance().getGuild(id); if(g != null) g.takeExitItems(player); Connect con = null; PreparedStatement st = null; try { con = L2DatabaseFactory.get(); st = con.prepareStatement("DELETE FROM `z_guild_mod` WHERE `char_id`=?"); st.setInt(1, player.getObjectId()); st.execute(); } catch (SQLException e) { _log.severe("Could not delete z_guild_mod: " + e); } finally { Close.CS(con, st); } player.sendMessage("Вы успешно покинули гильдию " + g.name + "!"); } else player.sendMessage("Вы не состоите в гильдии!"); } Конечно не тупо копипастить куда угодно
  7. нет, открываешь ядро, например через JD-GUI, ищешь файл(пакет) NpcInfo, и смотришь, какими данными заполняется пакет (обращаешь внимание на строки, содержащие "color")
  8. Смотри что отправляет сервер пакетом NpcInfo (открой декомпилом ядро, если что)
  9. не диалоги, а сам обработчик
  10. Ищи хендлер админ-команды admin_edit_npc и там уже "колупай"
  11. Замени class-файл "NpcHtmlMessage" в ядре по пути /net/sf/l2j/gameserver/network/serverpackets/ на этот https://yadi.sk/d/Mj91NFt03RsUBv В логе будет указан путь до проблемной htm