↑ ↓

Магия с квестами

Тема в разделе "Помощь", создана пользователем novich, 10 июн 2018.

  1. Offline

    meridianblade Ефрейтор

    199
    19
    51
    Кредиты:
    $375,52
    Репутация:
    3
    Все квесты, что у тебя в сборке - это просто парс айдишников нпс и диалогов с клиента, о кастомных там и речи не идет
     
    Последние данные очков репутации:
    novich: 1 Очко 10 июн 2018
  2. TopicStarter Overlay
    Offline

    novich Рядовой

    212
    1
    46
    Кредиты:
    $134,00
    Репутация:
    -2
    я это понял. я имею ввиду, как теперь сделать аи нпсу, чтобы при лкм он забирал одну вещь и выдавал награду (опыт, предмет) - думаю такое уже давно придумано?
     
  3. Offline

    meridianblade Ефрейтор

    199
    19
    51
    Кредиты:
    $375,52
    Репутация:
    3
    Просто создай новый аи скрипт для нпса, тебе нужен метод handleDialogStart
     
  4. TopicStarter Overlay
    Offline

    novich Рядовой

    212
    1
    46
    Кредиты:
    $134,00
    Репутация:
    -2
    пытаюсь, а подробнее можно, примеры таких аи из сборок или может где-то есть информация по таким вещам?
     
  5. Offline

    klubheads Сержант Команда форума Модератор

    2.011
    356
    189
    Кредиты:
    $2.142,45
    Репутация:
    54
    AionExtract полностью распаковывает и расшифровывает все файлы. Если что то не распаковало нормально, значит клиент был уже модифицирован кем то.
    Please login or register to view links
     
  6. TopicStarter Overlay
    Offline

    novich Рядовой

    212
    1
    46
    Кредиты:
    $134,00
    Репутация:
    -2
    Каким-то чудом получилось, взял рандомный аи похожий на нужный, пару минут правки и даже не ожидал что с 1 раза запустится. Всем спасибо.
     
  7. Offline

    meridianblade Ефрейтор

    199
    19
    51
    Кредиты:
    $375,52
    Репутация:
    3
    Вообще не видел инфы по айон эмулятором в открытом доступе кроме гайдов по запуску, все приходится самому изучать)
    AIONencdec + AIONdisasm в разы удобнее, нет необходимости расшифровывать весь pak) Просто вытащил что тебе надо, запихнул обратно и всё
     
  8. Offline

    klubheads Сержант Команда форума Модератор

    2.011
    356
    189
    Кредиты:
    $2.142,45
    Репутация:
    54
    да точно так же когда надо что то конкретное поменять(когда знаешь где оно).
    Но тут речь про html пошла а вот он как раз более адекватно расшифровывает.
    Да и к тому же когда действительно занялся такой творческой работой, лучше даже распаковать весь клиент и уже поиском пройтись по клиенту(некоторые диалоги просто дублируются и могут читаться с других регионов). Вплоть до последней версии 6+ экстракт не разу не подвел с html.
     
  9. Offline

    WeRn Ефрейтор

    496
    59
    59
    Кредиты:
    $16.149,43
    Репутация:
    8
    А что там сложного обменника сделать?
     
  10. Offline

    WeRn Ефрейтор

    496
    59
    59
    Кредиты:
    $16.149,43
    Репутация:
    8
    Код:
    	@Override
    	protected void handleDialogStart(Player player) {
    		super.handleDialogStart(player);
    
    		RequestResponseHandler responseHandler = new RequestResponseHandler(player) {
    			public void acceptRequest(Creature requester, Player responder) {
    				if(!tryToReward(player)) {
    					PacketSendUtility.sendMessage(player, "Nothing to exchange.");
    				}
    			}
    			public void denyRequest(Creature requester, Player responder) {
    				return;
    			}
    		};
    		boolean requested = player.getResponseRequester().putRequest(902247, responseHandler);
    		if (requested) {
    			PacketSendUtility.sendPacket(player, new SM_QUESTION_WINDOW(902247, 0, 0, "Хотите обменять предметы?"));
    			return;
    		}
    	}
    	private boolean tryToReward(Player player) {
    		if(getOwner().getNpcId() == 205968 || getOwner().getNpcId() == 205968) {
    			if(player.getInventory().getItemCountByItemId(188100061) >= 20) // предмет который должен быть у игрока в нужном кол-ве
    				if(player.getInventory().decreaseByItemId(188100061, 20)) { //списывание предмета у игрока
    					ItemService.addItem(player, 188051147, 1); //выдача взамен на списанные итемы.
    					return true;
    				}
    		}
      }
    
    Вот простейший обменник у нпс предметов.
     
    yayaya нравится это.
  11. TopicStarter Overlay
    Offline

    novich Рядовой

    212
    1
    46
    Кредиты:
    $134,00
    Репутация:
    -2
    спасибо!