нубо бафф на саб

Код:
else if( ask == -7 && reply == 2 )
        {
            if( talker.level <= 75 )
            {
                if( talker.level < 6 )
                {
                    myself::ShowPage(talker, "guide_for_newbie002.htm");
                }
                else if( myself::IsInCategory(@beginner_fighter, talker.occupation) )
                {
                    myself::CastBuffForQuestReward(talker, 283246593); //s_wind_walk_for_newbie
                    myself::CastBuffForQuestReward(talker, 283312129); //s_shield_for_newbie
                    myself::CastBuffForQuestReward(talker, 369426433); //s_magic_barrier_for_adventurer
                    myself::CastBuffForQuestReward(talker, 283377665); //s_bless_the_body_for_newbie
                    myself::CastBuffForQuestReward(talker, 283443201); //s_vampiric_rage_for_newbie
                    myself::CastBuffForQuestReward(talker, 283508737); //s_regeneration_for_newbie
                    if( talker.level >= 6 && talker.level <= 39 )
                    {
                        myself::CastBuffForQuestReward(talker, 283574273); //s_haste_for_newbie
                    }
                    if( talker.level >= 40 && talker.level <= 75 )
                    {
                        myself::CastBuffForQuestReward(talker, 369098753); //s_haste_for_adventurer
                    }
                    if( talker.level >= 16 && talker.level <= 34 )
                    {
                        myself::CastBuffForQuestReward(talker, 284295169); //s_life_cubic_for_newbie
                    }
                }
                else if( myself::IsInCategory(@beginner_mage, talker.occupation) )
                {
                    myself::CastBuffForQuestReward(talker, 283246593); //s_wind_walk_for_newbie
                    myself::CastBuffForQuestReward(talker, 283312129); //s_shield_for_newbie
                    myself::CastBuffForQuestReward(talker, 369426433); //s_magic_barrier_for_adventurer
                    myself::CastBuffForQuestReward(talker, 283639809); //s_bless_the_soul_for_newbie
                    myself::CastBuffForQuestReward(talker, 283705345); //s_acumen_for_newbie
                    myself::CastBuffForQuestReward(talker, 283770881); //s_concentration_for_newbie
                    myself::CastBuffForQuestReward(talker, 283836417); //s_empower_for_newbie
                    if( talker.level >= 16 && talker.level <= 34 )
                    {
                        myself::CastBuffForQuestReward(talker, 284295169); //s_life_cubic_for_newbie
                    }
                }
            }
            else
            {
                myself::ShowPage(talker, "guide_for_newbie003.htm");
            }
        }
Офф ХФ аи, мб поможет чем-то =)
 
Реакции: 6yka

    6yka

    Баллов: 12
    За сообщение
у орка мага класс идёт изначально кусками файтерский, и бафф ему по оффу даётся файтерский. всё верно.

насчёт сабов - копать проверку по классу
 
name=[beginner_fighter]
category={@fighter;@warrior;@gladiator;@warlord;@knight;@paladin;@dark_avenger
;@rogue;@treasure_hunter;@hawkeye
;@elven_fighter;@elven_knight;@temple_knight;@swordsinger
;@elven_scout;@plains_walker;@silver_ranger;@dark_fighter;@palus_knight
;@shillien_knight;@bladedancer;@assassin;@abyss_walker;@phantom_ranger
;@orc_fighter;@orc_raider;@destroyer;@orc_monk;@tyrant;@orc_mage;@orc_shaman;@overlord;@warcryer
;@dwarven_fighter;@scavenger;@bounty_hunter;@artisan;@warsmith
;@kamael_m_soldier;@kamael_f_soldier;@trooper;@warder;@berserker;@m_soul_breaker;@f_soul_breaker;@arbalester;@inspector}

name=[beginner_mage]
category={@mage;@wizard;@sorcerer;@necromancer;@warlock;@cleric;@bishop;@prophet
;@elven_mage;@elven_wizard;@spellsinger;@elemental_summoner;@oracle;@elder
;@dark_mage;@dark_wizard;@spellhowler;@phantom_summoner;@shillien_oracle;@shillien_elder}
Снова хф.
 
Реакции: 6yka
:-D да нет, тут прикол проверки по рассе...
Для правильного распределения нужно выбить отдельно классы орков в условие, а не рассу...

Код:
if(!player.isMageClass() || player.getTemplate().race == Race.orc)
            {
                for(int[] buff : _warrBuff)
                    if(lvl >= buff[0] && lvl <= buff[1])
                    {
                        npc.broadcastPacket(new MagicSkillUse(npc, player, buff[2], buff[3], 0, 0));
                        npc.callSkill(SkillTable.getInstance().getInfo(buff[2], buff[3]), target, true);
                    }
            }
Код:
if(!player.isMageClass() || player.getTemplate().ClassId == 44 - 52) // тут додумываем сами
            {
                for(int[] buff : _warrBuff)
                    if(lvl >= buff[0] && lvl <= buff[1])
                    {
                        npc.broadcastPacket(new MagicSkillUse(npc, player, buff[2], buff[3], 0, 0));
                        npc.callSkill(SkillTable.getInstance().getInfo(buff[2], buff[3]), target, true);
                    }
            }
 
Реакции: 6yka

    6yka

    Баллов: 12
    За сообщение
да? если вы по данному представлению перепишете классификацию классов, без отдельного разделения, то определённые ограничение Rogue/Knight не будут действительны (мы вписываем их в категорию Warrior) если не добивать отдельные условия. Смысл лишнего гемороя?
 
Вообще если рассматривать бафера новичков то, он должен бафать физ баф на классы Enchanter, т.е. по мимо физ классов - (BD SVS) + overlord warcryer prophet
Либо на класс prophet ошибочно выдано определение Enchanter
 


Оно работает от начального класса.
Начальный класс оркомагов записан в группу файтеров. Начальный класс роги или кнайта, т.е хуман варриор, логично к чему относится.
 
Оно? -
if(!player.isMageClass() || player.getTemplate().race == Race.orc)
Или я недопонял?
В птске оно работает по другому. Если мне не изменяет память то л2ж реализовали это как на птске. Смотреть (примерно, не помню и не за компом) методы isChildOfMageClass(warrior).
 
у нас на хф нармальна пашет. просто где-то закрались рукожопы.
 
господа!!! да вы просто короли сарказма!!!