Рейтинг темы:
  • 1 Голос(ов) - 1 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
ПРоблема с антарасом
#1
Вообщем дело в чём , что при разговоре с Heart of warding (НПС который ТПшит к антарасу) ничего не происходит , итем есть. Нажимаешь войти , а никакого действия нет.
сборка Silentium r10
Буду очень благодарен если поможете!
Ответ
#2
Что лог пишет?
Ответ
#3
Посмотрите какой класс у НПС с id 13001.
Если L2Npc, то выложите код кнопки из диалога data/html-*/default/13001.htm
Если L2Teleporter, то из диалога data/html-*/teleporter/13001.htm
Ответ
#4
У него не портает, а не с диологом проблема.
Ответ
#5
SoniPro Написал:У него не портает, а не с диологом проблема.
Чтобы понять где искать причину почему не телепортирует, нужно знать куда обращается запрос. А это указывается в кнопке диалога.
Ответ
#6
bot2b Написал:Чтобы понять где искать причину почему не телепортирует, нужно знать куда обращается запрос. А это указывается в кнопке диалога.

Не правильно Ваше сообщение прочитал, извеняюсь.
Ответ
#7
L2Npc
вот код кнопки :
<html><body>A voice whispers in your ear:<br>
<font color="LEVEL">Will you confront Antharas, the worshipper of the dark holy place and the creation of Shilen?</font><br>
<a action="bypass -h npc_%objectId%_Quest GrandBossTeleporters">Go to the Lair of Antharas.</a>
</body></html>
Ответ
#8
Диалоги в папке(и вообще сама папка) существуют?
По пути: data\html-en\Teleports\GrandBossTeleporters\13001-*.htm

В логах сервера что-нибудь пишет в момент попытки телепорта?
В секции загрузки скриптов не выдает ошибок касательно скрипта data\scripts\teleports\GrandBossTeleporters.java?
Ответ
#9
файлы 13001-01, 13001-02, 13001-03 есть
ничего не пишет в логах сервера
не знаю) вот скрипт)
Код:
/*
* This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU General Public License as published by the Free Software
* Foundation, either version 3 of the License, or (at your option) any later
* version.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
* details.
*
* You should have received a copy of the GNU General Public License along with
* this program. If not, see <http://www.gnu.org/licenses/>.
*/
package scripts.teleports;

import silentium.commons.Rnd;
import silentium.gameserver.GameProperties;
import silentium.gameserver.datatables.DoorTable;
import silentium.gameserver.instancemanager.GrandBossManager;
import silentium.gameserver.instancemanager.QuestManager;
import silentium.gameserver.model.actor.L2Npc;
import silentium.gameserver.model.actor.instance.L2GrandBossInstance;
import silentium.gameserver.model.actor.instance.L2PcInstance;
import silentium.gameserver.model.quest.Quest;
import silentium.gameserver.model.quest.QuestState;
import silentium.gameserver.model.zone.type.L2BossZone;

import scripts.ai.Baium;

/**
* This script leads behavior of multiple bosses teleporters.
* <ul>
* <li>13001, Heart of Warding : Teleport into Lair of Antharas</li>
* <li>29055, Teleportation Cubic : Teleport out of Baium zone</li>
* <li>31859, Teleportation Cubic : Teleport out of Lair of Antharas</li>
* <li>31384, Gatekeeper of Fire Dragon : Opening some doors</li>
* <li>31385, Heart of Volcano : Teleport into Lair of Valakas</li>
* <li>31540, Watcher of Valakas Klein : Teleport into Hall of Flames</li>
* <li>31686, Gatekeeper of Fire Dragon : Opens doors to Heart of Volcano</li>
* <li>31687, Gatekeeper of Fire Dragon : Opens doors to Heart of Volcano</li>
* <li>31759, Teleportation Cubic : Teleport out of Lair of Valakas</li>
* <li>31862, Angelic Vortex : Baium Teleport (3 different HTMs according of situation)</li>
* <li>32109, Shilen's Stone Statue : Teleport to Sailren Lair</li>
* </ul>
* @author Plim, original python script by Emperorc
*/
public class GrandBossTeleporters extends Quest
{
    private static final String qn = "GrandBossTeleporters";
    
    private static final int VALAKAS = 29028;
    
    // private static final int ANTHARAS = 29019; // Dummy Antharas used for status updates only.
    
    public GrandBossTeleporters(int questId, String name, String descr)
    {
        super(questId, name, descr);
        
        addFirstTalkId(29055, 31862);
        addStartNpc(13001, 29055, 31859, 31384, 31385, 31540, 31686, 31687, 31759, 31862, 32109);
        addTalkId(13001, 29055, 31859, 31384, 31385, 31540, 31686, 31687, 31759, 31862, 32109);
    }
    
    private Quest valakasAI()
    {
        return QuestManager.getInstance().getQuest("valakas");
    }
    
    private Quest antharasAI()
    {
        return QuestManager.getInstance().getQuest("antharas");
    }
    
    @SuppressWarnings("unused")
    private Quest sailrenAI()
    {
        return QuestManager.getInstance().getQuest("sailren");
    }
    
    private static int _valakasPlayersCount = 0;
    
    @Override
    public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
    {
        String htmltext = "";
        QuestState st = player.getQuestState(qn);
        if (st == null)
        {
            st = newQuestState(player);
        }
        
        if (event.equalsIgnoreCase("baium"))
        {
            // Player is mounted on a wyvern, cancel it.
            if (player.isFlying())
            {
                htmltext = "31862-05.htm";
            }
            else if (!st.hasQuestItems(4295))
            {
                htmltext = "31862-03.htm";
                // All is ok, take the item and teleport the player inside.
            }
            else
            {
                st.takeItems(4295, 1);
                
                // allow entry for the player for the next 30 secs.
                GrandBossManager.getInstance().getZone(113100, 14500, 10077).allowPlayerEntry(player, 30);
                player.teleToLocation(113100, 14500, 10077);
            }
        }
        else if (event.equalsIgnoreCase("baium_story"))
        {
            htmltext = "31862-02.htm";
        }
        else if (event.equalsIgnoreCase("baium_exit"))
        {
            final int chance = Rnd.get(3);
            int x, y, z;
            
            switch (chance)
            {
                case 0:
                    x = 108784 + Rnd.get(100);
                    y = 16000 + Rnd.get(100);
                    z = -4928;
                    break;
                
                case 1:
                    x = 113824 + Rnd.get(100);
                    y = 10448 + Rnd.get(100);
                    z = -5164;
                    break;
                
                default:
                    x = 115488 + Rnd.get(100);
                    y = 22096 + Rnd.get(100);
                    z = -5168;
                    break;
            }
            player.teleToLocation(x, y, z);
        }
        else if (event.equalsIgnoreCase("31540"))
        {
            if (st.hasQuestItems(7267))
            {
                st.takeItems(7267, 1);
                player.teleToLocation(183813, -115157, -3303);
                st.set("allowEnter", "1");
            }
            else
            {
                htmltext = "31540-06.htm";
            }
        }
        return htmltext;
    }
    
    @Override
    public String onFirstTalk(L2Npc npc, L2PcInstance player)
    {
        String htmltext = "";
        QuestState st = player.getQuestState(qn);
        if (st == null)
        {
            st = newQuestState(player);
        }
        
        switch (npc.getNpcId())
        {
            case 29055:
                htmltext = "29055-01.htm";
                break;
            
            case 31862:
                final int status = GrandBossManager.getInstance().getBossStatus(29020);
                if (status == Baium.AWAKE)
                {
                    htmltext = "31862-01.htm";
                }
                else if (status == Baium.DEAD)
                {
                    htmltext = "31862-04.htm";
                }
                else
                {
                    htmltext = "31862-00.htm";
                }
                break;
        }
        
        return htmltext;
    }
    
    @Override
    public String onTalk(L2Npc npc, L2PcInstance player)
    {
        String htmltext = "";
        QuestState st = player.getQuestState(getName());
        if (st == null)
        {
            return null;
        }
        
        switch (npc.getNpcId())
        {
            case 13001:
                if (antharasAI() != null) // TODO: reactive for antharas
                {/*
                    * final int status = GrandBossManager.getInstance().getBossStatus(ANTHARAS); if (status == Antharas.FIGHTING) htmltext = "13001-02.htm"; else if (status == Antharas.DEAD) htmltext = "13001-01.htm"; else if (status == Antharas.DORMANT || status == Antharas.WAITING) { if
                    * (st.hasQuestItems(3865)) { st.takeItems(3865, 1); final L2BossZone zone = GrandBossManager.getInstance().getZone(179700, 113800, -7709); if (zone != null) zone.allowPlayerEntry(player, 30); player.teleToLocation(179700 + Rnd.get(700), 113800 + Rnd.get(2100), -7709); if (status ==
                    * Antharas.DORMANT) { GrandBossManager.getInstance().setBossStatus(ANTHARAS, 1); antharasAI().startQuestTimer("beginning", GameProperties.WAIT_TIME_ANTHARAS, null, null, false); } } else htmltext = "13001-03.htm"; }
                    */
                }
                break;
            
            case 31859:
                player.teleToLocation(79800 + Rnd.get(600), 151200 + Rnd.get(1100), -3534);
                break;
            
            case 31385:
                if (valakasAI() != null)
                {
                    final int status = GrandBossManager.getInstance().getBossStatus(VALAKAS);
                    if ((status == 0) || (status == 1))
                    {
                        if (_valakasPlayersCount >= 200)
                        {
                            htmltext = "31385-03.htm";
                        }
                        else if (st.getInt("allowEnter") == 1)
                        {
                            st.unset("allowEnter");
                            final L2BossZone zone = GrandBossManager.getInstance().getZone(212852, -114842, -1632);
                            if (zone != null)
                            {
                                zone.allowPlayerEntry(player, 30);
                            }
                            
                            player.teleToLocation(204328 + Rnd.get(600), -111874 + Rnd.get(600), 70);
                            
                            _valakasPlayersCount++;
                            
                            if (status == 0)
                            {
                                L2GrandBossInstance valakas = GrandBossManager.getInstance().getBoss(VALAKAS);
                                valakasAI().startQuestTimer("beginning", GameProperties.WAIT_TIME_VALAKAS, valakas, null, false);
                                GrandBossManager.getInstance().setBossStatus(VALAKAS, 1);
                            }
                        }
                        else
                        {
                            htmltext = "31385-04.htm";
                        }
                    }
                    else if (status == 2)
                    {
                        htmltext = "31385-02.htm";
                    }
                    else
                    {
                        htmltext = "31385-01.htm";
                    }
                }
                else
                {
                    htmltext = "31385-01.htm";
                }
                break;
            
            case 31384:
                DoorTable.getInstance().getDoor(24210004).openMe();
                break;
            
            case 31686:
                DoorTable.getInstance().getDoor(24210006).openMe();
                break;
            
            case 31687:
                DoorTable.getInstance().getDoor(24210005).openMe();
                break;
            
            case 31540:
                if (_valakasPlayersCount < 50)
                {
                    htmltext = "31540-01.htm";
                }
                else if (_valakasPlayersCount < 100)
                {
                    htmltext = "31540-02.htm";
                }
                else if (_valakasPlayersCount < 150)
                {
                    htmltext = "31540-03.htm";
                }
                else if (_valakasPlayersCount < 200)
                {
                    htmltext = "31540-04.htm";
                }
                else
                {
                    htmltext = "31540-05.htm";
                }
                break;
            
            case 31759:
                player.teleToLocation(150037 + Rnd.get(500), -57720 + Rnd.get(500), -2976);
                break;
            
            /**
             * TODO: handle following cases once AI exists :
             * <ul>
             * <li>weak stones -- already dead state ? (04)</li>
             * <li>another party is fighting it (05)</li>
             * </ul>
             */
            case 32109:
                if (!player.isInParty())
                {
                    htmltext = "32109-03.htm";
                }
                else if (!player.getParty().isLeader(player))
                {
                    htmltext = "32109-01.htm";
                }
                else
                {
                    if (st.hasQuestItems(8784))
                    {
                        // TODO: Activate Sailren script
                    }
                    else
                    {
                        htmltext = "32109-02.htm";
                    }
                }
                break;
        }
        
        return htmltext;
    }
    
    public static void main(String[] args)
    {
        new GrandBossTeleporters(-1, qn, "Teleports");
    }
}
Ответ
#10
theonetgk, заключайте скопированный Вами код в BB-код CODE, а не QUOTE, тогда он не будет так растягивать страницу.

Проверьте файл config/scripts-main.properties, есть ли там добавленный скрипт
Код:
scripts/teleports/GrandBossTeleporters.java
Посмотрите в лог сервера и найдите начало секции
Код:
------------------------------------------------------------=[ Script Engine ]
И скиньте сюда лог до следующей секции
Код:
---------------------------------------------------------------=[ New system ]
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Lineage 2 PTS 287 Protocol Проблема PSIFAK 1 1,581 01-25-2023, 04:08 AM
Последний пост: Phantom-Dev
  Myext64HF проблема с сетью MystX 3 1,873 11-08-2022, 04:33 AM
Последний пост: Phantom-Dev
  Проблема с rguard\ftguard iDarkEmpire 13 6,373 07-22-2020, 11:31 PM
Последний пост: CTAJIIH
  Проблема с количеством ХП AerisRD 0 1,281 05-19-2020, 08:20 PM
Последний пост: AerisRD
  Проблема с запуском HF5 Shady 6 2,188 04-20-2020, 12:09 PM
Последний пост: Rork
  Проблема с откатами банок Amidamaru 14 3,632 04-04-2020, 05:52 PM
Последний пост: Blackone
  L2 PTS Проблема Reika 3 1,753 02-26-2020, 04:43 PM
Последний пост: Reika
  Проблема с купле-продажей на всех сборках Mor9k400 0 1,211 08-25-2018, 08:10 PM
Последний пост: Mor9k400
  Проблема с входом Windows 10 Alekseu28 1 1,698 03-13-2018, 09:34 AM
Последний пост: malum
  Проблема с св 13 Zelden 4 1,835 01-03-2018, 09:30 AM
Последний пост: ..Kirito..

Перейти к форуму:


Пользователи, просматривающие эту тему: 1 Гость(ей)