STR+1 NPC

  • Автор темы Автор темы securao
  • Дата начала Дата начала

securao

Единомышленник
Пользователь
Сообщения
20
Розыгрыши
0
Репутация
0
Реакции
2
Баллы
130
Хроники
  1. Interlude
Исходники
Присутствуют
Сборка
acis 409
Я создаю NPC, который будет продавать увеличение силы на +1 для оружия, но это не касается оружия, может кто-нибудь мне помочь?

JavaScript:
public void onBypassFeedback(Player player, String command)
    {
        StringTokenizer st = new StringTokenizer(command, " ");
        st.nextToken();
        
        if (command.startsWith("Augmenter_str"))
        {
            ItemInstance rhand = player.getInventory().getItemFrom(Paperdoll.RHAND);
            
            if (rhand == null)
            {
                showChatWindow(player, 0);
                player.sendMessage(player.getName() + "You need to equip a weapon to learn a skill.");
                return;
            }
            
            NpcHtmlMessage html = new NpcHtmlMessage(0);
            StringBuilder list = new StringBuilder(1500);
            
            ItemInstance item = player.getInventory().getItemFrom(Paperdoll.RHAND);
            
            StringUtil.append(list, "<img src=\"" + IconTable.getIcon(item.getItemId()) + "\" width=32 height=32>");
            
            html.setFile("data/html/mods/atributeaugmenteshop/Augments/Buy-STR.htm");
            
            html.replace("%list%", list.toString());
            player.sendPacket(html);
        }
        
        
        
        else if (command.startsWith("buy_str"))
        {
            Augments(player, 1071202261, 0, 0);
            //return false;
        }
        
        else if (command.startsWith("augIndex"))
            Index(player);
        //return true;
    }
 
попробуй сформулировать подробнее и понятнее
 
если ты хочешь сделать игроку +1 STR? должно быть что то такое:
Код:
player.getStats().STR
 
Зна
Я создаю NPC, который будет продавать увеличение силы на +1 для оружия, но это не касается оружия, может кто-нибудь мне помочь?

JavaScript:
public void onBypassFeedback(Player player, String command)
    {
        StringTokenizer st = new StringTokenizer(command, " ");
        st.nextToken();
       
        if (command.startsWith("Augmenter_str"))
        {
            ItemInstance rhand = player.getInventory().getItemFrom(Paperdoll.RHAND);
           
            if (rhand == null)
            {
                showChatWindow(player, 0);
                player.sendMessage(player.getName() + "You need to equip a weapon to learn a skill.");
                return;
            }
           
            NpcHtmlMessage html = new NpcHtmlMessage(0);
            StringBuilder list = new StringBuilder(1500);
           
            ItemInstance item = player.getInventory().getItemFrom(Paperdoll.RHAND);
           
            StringUtil.append(list, "<img src=\"" + IconTable.getIcon(item.getItemId()) + "\" width=32 height=32>");
           
            html.setFile("data/html/mods/atributeaugmenteshop/Augments/Buy-STR.htm");
           
            html.replace("%list%", list.toString());
            player.sendPacket(html);
        }
       
       
       
        else if (command.startsWith("buy_str"))
        {
            Augments(player, 1071202261, 0, 0);
            //return false;
        }
       
        else if (command.startsWith("augIndex"))
            Index(player);
        //return true;
    }
Знать бы ещё что происходит в методе Augments
 
Давно придумали ЛС STR+1 в оружие, автор же изобретает велосипед.
В теории можно как-то так

Код:
if(player.getVarB("STRadd")) {
    player.sendMessage("ПОШОЛ НАХОЙ,ХУЛЯ КНОПКИ ДРОЧЭШЬ УАСЯ");
}
player.addSkill(skill.id,skill.lvl);
player.setVar("STRadd", "true", -1);
 
Скорее всего
Хочет добавить вставку +1 к стате, даже когда стоит ЛС. Стоит майт, закинул донку и стоит майт+1стр
Для начала полезно узнать ИД этих статов конечно же будет

в принципе этим кодом можно впихнуть лс и добавить стату
Java:
    public L2Augmentation generateAugmentation(L2ItemInstance item, int skillId, int skillLvl, int type, int bonyID) {
        int lifeStoneLevel = 10;
        int lifeStoneGrade = 3;
        // 0:yellow, 1:blue, 2:purple, 3:red
        int resultColor = Rnd.get(0, 3);

        int colorOffset = (resultColor * (STAT_SUBBLOCKSIZE * 10)) + ((lifeStoneLevel - 1) * STAT_SUBBLOCKSIZE);
        int offset = ((3 - lifeStoneGrade) * STAT_BLOCKSIZE) + colorOffset;
        int stat12 = bonyID == 0 ? Rnd.get(offset, offset + STAT_SUBBLOCKSIZE) : bonyID;
        int stat34 = 0;

        // generate a skill if neccessary
        L2Skill skill = null;
        AugmentationSkill temp;

        switch (type) {
            case 1:    // chance skill
                for (AugmentationSkill value : _chanceSkills) {
                    if (value._skillId == skillId) {
                        temp = value;
                        skill = temp.getSkill(skillLvl);
                        stat34 = temp.getAugmentationSkillId();
                    }
                }
                break;
            case 2: // active skill
                for (AugmentationSkill value : _activeSkills) {
                    if (value._skillId == skillId) {
                        temp = value;
                        skill = temp.getSkill(skillLvl);
                        stat34 = temp.getAugmentationSkillId();
                    }
                }
                break;
            case 3: // passive skill
                for (AugmentationSkill value : _passiveSkills) {
                    if (value._skillId == skillId) {
                        temp = value;
                        skill = temp.getSkill(skillLvl);
                        stat34 = temp.getAugmentationSkillId();
                    }
                }
                break;
            default:
                stat34 = Rnd.get(offset, offset + STAT_SUBBLOCKSIZE);
        }
        return new L2Augmentation(item, ((stat34 << 16) + stat12), skill, true);
    }
 
Скорее всего
Хочет добавить вставку +1 к стате, даже когда стоит ЛС. Стоит майт, закинул донку и стоит майт+1стр
Для начала полезно узнать ИД этих статов конечно же будет

в принципе этим кодом можно впихнуть лс и добавить стату
Java:
    public L2Augmentation generateAugmentation(L2ItemInstance item, int skillId, int skillLvl, int type, int bonyID) {
        int lifeStoneLevel = 10;
        int lifeStoneGrade = 3;
        // 0:yellow, 1:blue, 2:purple, 3:red
        int resultColor = Rnd.get(0, 3);

        int colorOffset = (resultColor * (STAT_SUBBLOCKSIZE * 10)) + ((lifeStoneLevel - 1) * STAT_SUBBLOCKSIZE);
        int offset = ((3 - lifeStoneGrade) * STAT_BLOCKSIZE) + colorOffset;
        int stat12 = bonyID == 0 ? Rnd.get(offset, offset + STAT_SUBBLOCKSIZE) : bonyID;
        int stat34 = 0;

        // generate a skill if neccessary
        L2Skill skill = null;
        AugmentationSkill temp;

        switch (type) {
            case 1:    // chance skill
                for (AugmentationSkill value : _chanceSkills) {
                    if (value._skillId == skillId) {
                        temp = value;
                        skill = temp.getSkill(skillLvl);
                        stat34 = temp.getAugmentationSkillId();
                    }
                }
                break;
            case 2: // active skill
                for (AugmentationSkill value : _activeSkills) {
                    if (value._skillId == skillId) {
                        temp = value;
                        skill = temp.getSkill(skillLvl);
                        stat34 = temp.getAugmentationSkillId();
                    }
                }
                break;
            case 3: // passive skill
                for (AugmentationSkill value : _passiveSkills) {
                    if (value._skillId == skillId) {
                        temp = value;
                        skill = temp.getSkill(skillLvl);
                        stat34 = temp.getAugmentationSkillId();
                    }
                }
                break;
            default:
                stat34 = Rnd.get(offset, offset + STAT_SUBBLOCKSIZE);
        }
        return new L2Augmentation(item, ((stat34 << 16) + stat12), skill, true);
    }
демон плачу как ты опустился брать чужой код
 
демон плачу как ты опустился брать чужой код
помоги человеку, раз такой умный
жду кода со вставкой +1 статой + аугмента

ПС ты свой эпилог с нуля писали шо ли, умник?:ROFLMAO:
где-то так должно получится со вставкой лс если что
 

Вложения

  • изображение_2024-11-28_144202503.webp
    изображение_2024-11-28_144202503.webp
    33,5 КБ · Просмотры: 52
помоги человеку, раз такой умный
жду кода со вставкой +1 статой + аугмента

ПС ты свой эпилог с нуля писали шо ли, умник?:ROFLMAO:
где-то так должно получится со вставкой лс если что
мог бы помочь
 

Похожие темы

Ответы
5
Просмотры
228
Ответы
3
Просмотры
211
Ответы
11
Просмотры
Ответы
2
Просмотры
645
Назад
Сверху