Рейтинг темы:
  • 33 Голос(ов) - 4.67 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Почта России
#51
[Изображение: 74010_inogda.jpg]
Ответ
#52
Ozzy Написал:[Изображение: 74010_inogda.jpg]
А интересно цены так же будут расти, как размеры ?)))
Ответ
#53
xamelion Написал:А интересно цены так же будут расти, как размеры ?)))

Не только цены, но и бесполезность устройстваBig Grin
Ответ
#54
А это вот для тех, кто свято верит что Sun-Dev труЪ команда и вообще ничего ни у кого не копируют:

Код:
package ai;

import l2p.gameserver.ai.CtrlEvent;
import l2p.gameserver.ai.Fighter;
import l2p.gameserver.model.L2Character;
import l2p.gameserver.model.L2Spawn;
import l2p.gameserver.model.instances.L2NpcInstance;
import l2p.gameserver.tables.NpcTable;
import l2p.util.Rnd;

/**
*
* @author Ozzy
*
*/
public class ForgeOfGods extends Fighter
{
    private static final int MOBS[] = {18799, 18800, 18801, 18802, 18803};

    public ForgeOfGods(L2Character actor)
    {
        super(actor);
    }

    @Override
    protected void onEvtDead(L2Character killer)
    {
        L2NpcInstance actor = getActor();
        if(actor == null)
            return;

            if(actor.isDead())
            {
                if(Rnd.chance(40))//Шанс стоит от балды, так как точной инфы нет.
                    for(int i = 0; i < 1; i++)
                        try
                        {
                            L2Spawn spawn = new L2Spawn(NpcTable.getTemplate(MOBS[Rnd.get(MOBS.length)]));
                            spawn.setLoc(actor.getLoc());
                            L2NpcInstance npc = spawn.doSpawn(true);
                            npc.getAI().notifyEvent(CtrlEvent.EVT_AGGRESSION, killer, Rnd.get(1, 100));
                        }
                        catch(Exception e)
                        {
                            e.printStackTrace();
                        }
            }
        super.onEvtDead(killer);
    }
}

Код:
package ai;

import l2p.commons.random.Rnd;
import l2p.gameserver.ai.CtrlEvent;
import l2p.gameserver.ai.Fighter;
import l2p.gameserver.model.L2Character;
import l2p.gameserver.model.L2Spawn;
import l2p.gameserver.model.instances.L2NpcInstance;
import l2p.gameserver.tables.NpcTable;

/**
* @author ManageR
*/
public class ForgeOfGods extends Fighter
{
    private static final int MOBS[] = {18799, 18800, 18801, 18802, 18803};

    public ForgeOfGods(L2Character actor)
    {
        super(actor);
    }

    @Override
    protected void onEvtDead(L2Character killer)
    {
        L2NpcInstance actor = getActor();
        if(actor == null)
            return;

            if(actor.isDead())
            {
                if(Rnd.chance(40)) //TODO: Уточнить шанс
                    for(int i = 0; i < 1; i++)
                        try
                        {
                            L2Spawn spawn = new L2Spawn(NpcTable.getTemplate(MOBS[Rnd.get(MOBS.length)]));
                            spawn.setLoc(actor.getLoc());
                            L2NpcInstance npc = spawn.doSpawn(true);
                            npc.getAI().notifyEvent(CtrlEvent.EVT_AGGRESSION, killer, Rnd.get(1, 100));
                        }
                        catch(Exception e)
                        {
                            e.printStackTrace();
                        }
            }
        super.onEvtDead(killer);
    }
}

Код:
package ai;

import l2p.gameserver.ai.DefaultAI;
import l2p.gameserver.model.L2Player;
import l2p.gameserver.model.L2Effect;
import l2p.gameserver.model.L2Skill;
import l2p.gameserver.model.L2World;
import l2p.gameserver.model.instances.L2NpcInstance;
import l2p.gameserver.serverpackets.MagicSkillUse;
import l2p.gameserver.tables.SkillTable;
import l2p.util.GArray;
import l2p.util.Rnd;

/**
*
* @author Ozzy
*
*/
public class TarBeetle extends DefaultAI
{
    private long _spawnTime = 0;
    private boolean _spawned = false;
    private static final int DESPAWN_TIME = 300000;

    public TarBeetle(L2NpcInstance actor)
    {
        super(actor);
        AI_TASK_DELAY = 1000;
        AI_TASK_ACTIVE_DELAY = 1000;
    }

    @Override
    protected boolean thinkActive()
    {
        L2NpcInstance actor = getActor();
        if(actor == null)
            return true;

        for(L2Player player : L2World.getAroundPlayers(actor, 300, 200))
        {
            if(Rnd.chance(5))
                addEffect(actor, player);
        }

        if(_def_think)
        {
            doTask();
            _spawned = false;
            return true;
        }

        if(!_spawned)
        {
            _spawned = true;
            _spawnTime = System.currentTimeMillis() + DESPAWN_TIME;
        }

        if(_spawnTime != 0 && _spawned && _spawnTime < System.currentTimeMillis())
        {
            actor.onDecay();
            return true;
        }
        return true;
    }
    private void addEffect(L2NpcInstance actor, L2Player player)
    {
        GArray<L2Effect> effect = player.getEffectList().getEffectsBySkillId(6142);
        if(effect != null)
        {
            int level = effect.get(0).getSkill().getLevel();
            if(level < 3)
            {
                effect.get(0).exit();
                L2Skill skill = SkillTable.getInstance().getInfo(6142, level + 1);
                skill.getEffects(actor, player, false, false);
                actor.broadcastPacket(new MagicSkillUse(actor, player, skill.getId(), level, skill.getHitTime(), 0));
            }
        }
        else
        {
            L2Skill skill = SkillTable.getInstance().getInfo(6142, 1);
            if(skill != null)
            {
                skill.getEffects(actor, player, false, false);
                actor.broadcastPacket(new MagicSkillUse(actor, player, skill.getId(), 1, skill.getHitTime(), 0));
            }
        }
    }

    protected boolean randomWalk()
    {
        return false;
    }
}

Код:
package ai;

import l2p.commons.collections.GArray;
import l2p.commons.random.Rnd;
import l2p.gameserver.ai.DefaultAI;
import l2p.gameserver.model.L2Effect;
import l2p.gameserver.model.L2Player;
import l2p.gameserver.model.L2Skill;
import l2p.gameserver.model.L2World;
import l2p.gameserver.model.instances.L2NpcInstance;
import l2p.gameserver.serverpackets.MagicSkillUse;
import l2p.gameserver.tables.SkillTable;

/**
* @author ManageR
*/
public class TarBeetle extends DefaultAI
{
    private long _spawnTime = 0;
    private boolean _spawned = false;
    private static final int DESPAWN_TIME = 300000;

    public TarBeetle(L2NpcInstance actor)
    {
        super(actor);
        AI_TASK_DELAY = 1000;
        AI_TASK_ACTIVE_DELAY = 1000;
    }

    @Override
    protected boolean thinkActive()
    {
        L2NpcInstance actor = getActor();
        if(actor == null)
            return true;

        for(L2Player player : L2World.getAroundPlayers(actor, 300, 200))
        {
            if(Rnd.chance(5))
                addEffect(actor, player);
        }

        if(_def_think)
        {
            doTask();
            _spawned = false;
            return true;
        }

        if(!_spawned)
        {
            _spawned = true;
            _spawnTime = System.currentTimeMillis() + DESPAWN_TIME;
        }

        if(_spawnTime != 0 && _spawned && _spawnTime < System.currentTimeMillis())
        {
            actor.onDecay();
            return true;
        }
        return true;
    }
    private void addEffect(L2NpcInstance actor, L2Player player)
    {
        GArray<L2Effect> effect = player.getEffectList().getEffectsBySkillId(6142);
        if(effect != null)
        {
            int level = effect.get(0).getSkill().getLevel();
            if(level < 3)
            {
                effect.get(0).exit();
                L2Skill skill = SkillTable.getInstance().getInfo(6142, level + 1);
                skill.getEffects(actor, player, false, false);
                actor.broadcastPacket(new MagicSkillUse(actor, player, skill.getId(), level, skill.getHitTime(), 0));
            }
        }
        else
        {
            L2Skill skill = SkillTable.getInstance().getInfo(6142, 1);
            if(skill != null)
            {
                skill.getEffects(actor, player, false, false);
                actor.broadcastPacket(new MagicSkillUse(actor, player, skill.getId(), 1, skill.getHitTime(), 0));
            }
        }
    }

    @Override
    protected boolean randomWalk()
    {
        return false;
    }
}

Найдите 10 отличий, помимо смены копирайтов. Так же глянув таймлайн команды заметил еще не один и не два и даже не десять коммитов со стертыми моими копирайтами:

Код:
package quests._119_LastImperialPrince;

import l2p.extensions.scripts.ScriptFile;
import l2p.gameserver.model.instances.L2NpcInstance;
import l2p.gameserver.model.quest.Quest;
import l2p.gameserver.model.quest.QuestState;

/**
* Квест 119 (Last Imperial Prince (Последний Принц Империи))
*
* @author Ozzy
*/
public class _119_LastImperialPrince extends Quest implements ScriptFile
{
    //NPC's
    private static final int SPIRIT = 31453;
    private static final int DEVORIN = 32009;

    //Items
    private static final int BROOCH = 7262;

    public CheckStatus LAST_CHECK_STATUS = CheckStatus.GRACIA_EPILOGUE;

    public void onLoad()
    {}

    public void onReload()
    {}

    public void onShutdown()
    {}

    public _119_LastImperialPrince()
    {
        super(false);
        addStartNpc(SPIRIT);
        addTalkId(DEVORIN);
    }

    @Override
    public String onEvent(String event, QuestState st, L2NpcInstance npc)
    {
        String htmltext = event;
        if(event.equalsIgnoreCase("31453-06.htm"))
        {
            st.set("cond", "1");
            st.setState(STARTED);
            st.playSound(SOUND_ACCEPT);
        }
        else if(event.equalsIgnoreCase("32009-02.htm"))
        {
            if(st.getQuestItemsCount(BROOCH) < 1)
            {
                htmltext = "32009-02a.htm";
                st.exitCurrentQuest(true);
            }
        }
        else if(event.equalsIgnoreCase("32009-03.htm"))
        {
            st.set("cond", "2");
            st.playSound(SOUND_MIDDLE);
        }
        else if(event.equalsIgnoreCase("31453-10.htm"))
        {
            st.giveItems(ADENA_ID, 150292, true);
            st.addExpAndSp(902439, 90067);
            st.playSound(SOUND_FINISH);
            st.setState(COMPLETED);
            st.exitCurrentQuest(false);
        }
        return htmltext;
    }

    @Override
    public String onTalk(L2NpcInstance npc, QuestState st)
    {
        String htmltext = "noquest";
        int npcId = npc.getNpcId();
        int cond = st.getInt("cond");

        if(npcId == SPIRIT)
        {
            if(st.getState() == CREATED)
            {
                if(st.getPlayer().getLevel() >= 74 && st.getQuestItemsCount(BROOCH) >= 1)
                    htmltext = "31453-01.htm";
                else
                {
                    htmltext = "31453-02.htm";
                    st.exitCurrentQuest(true);
                }
            }
            else if(cond == 1)
            {
                if(st.getQuestItemsCount(BROOCH) >= 1)
                    htmltext = "31453-07.htm";
                else
                {
                    htmltext = "31453-07a.htm";
                    st.exitCurrentQuest(true);
                }
            }
            else if(cond == 2)
                htmltext = "31453-08.htm";
            /*else if(st.getState() == COMPLETED)
                htmltext = "31453-03.htm"; //TODO: Придумать что-то с выводом HTML при стейте COMPLETED. Сейчас стоит вывод сообщения по умолчанию. */
        }
        else if(npcId == DEVORIN)
        {
            if(cond == 1)
                htmltext = "32009-01.htm";
            else if (cond == 2)
                htmltext = "32009-04.htm";
        }
        return htmltext;
    }
}

Код:
package quests._119_LastImperialPrince;

import l2p.extensions.scripts.ScriptFile;
import l2p.gameserver.model.instances.L2NpcInstance;
import l2p.gameserver.model.quest.Quest;
import l2p.gameserver.model.quest.QuestState;

/**
* @author ManageR
*/
public class _119_LastImperialPrince extends Quest implements ScriptFile
{
    //NPC's
    private static final int SPIRIT = 31453;
    private static final int DEVORIN = 32009;

    //Items
    private static final int BROOCH = 7262;

    public CheckStatus LAST_CHECK_STATUS = CheckStatus.GRACIA_EPILOGUE;

    @Override
    public void onLoad()
    {}

    @Override
    public void onReload()
    {}

    @Override
    public void onShutdown()
    {}

    public _119_LastImperialPrince()
    {
        super(false);
        addStartNpc(SPIRIT);
        addTalkId(DEVORIN);
    }

    @Override
    public String onEvent(String event, QuestState st, L2NpcInstance npc)
    {
        String htmltext = event;
        if(event.equalsIgnoreCase("31453-06.htm"))
        {
            st.set("cond", "1");
            st.setState(STARTED);
            st.playSound(SOUND_ACCEPT);
        }
        else if(event.equalsIgnoreCase("32009-02.htm"))
        {
            if(st.getQuestItemsCount(BROOCH) < 1)
            {
                htmltext = "32009-02a.htm";
                st.exitCurrentQuest(true);
            }
        }
        else if(event.equalsIgnoreCase("32009-03.htm"))
        {
            st.set("cond", "2");
            st.playSound(SOUND_MIDDLE);
        }
        else if(event.equalsIgnoreCase("31453-10.htm"))
        {
            st.giveItems(ADENA_ID, 150292, REWARD);
            st.addExpAndSp(902439, 90067);
            st.playSound(SOUND_FINISH);
            st.setState(COMPLETED);
            st.exitCurrentQuest(false);
        }
        return htmltext;
    }

    @Override
    public String onTalk(L2NpcInstance npc, QuestState st)
    {
        String htmltext = "noquest";
        int npcId = npc.getNpcId();
        int cond = st.getCond();

        if(npcId == SPIRIT)
        {
            if(st.getState() == CREATED)
            {
                if(st.getPlayer().getLevel() >= 74 && st.getQuestItemsCount(BROOCH) >= 1)
                    htmltext = "31453-01.htm";
                else
                {
                    htmltext = "31453-02.htm";
                    st.exitCurrentQuest(true);
                }
            }
            else if(cond == 1)
            {
                if(st.getQuestItemsCount(BROOCH) >= 1)
                    htmltext = "31453-07.htm";
                else
                {
                    htmltext = "31453-07a.htm";
                    st.exitCurrentQuest(true);
                }
            }
            else if(cond == 2)
                htmltext = "31453-08.htm";
            /*else if(st.getState() == COMPLETED)
                htmltext = "31453-03.htm"; //TODO: Придумать что-то с выводом HTML при стейте COMPLETED. Сейчас стоит вывод сообщения по умолчанию. */
        }
        else if(npcId == DEVORIN)
        {
            if(cond == 1)
                htmltext = "32009-01.htm";
            else if (cond == 2)
                htmltext = "32009-04.htm";
        }
        return htmltext;
    }
}

Так же повеселили коммиты и не только по квестам/аи, которые магическим образом перекочевали с моей сборки в Sun-Dev, при этом таким же магическим образом мои копирайты сменились копирайтами Sun-Dev. Кстати, еще хотелось бы обратиться к одному человеку (а может и не одному, но один из них точно связан с той же конторкой Sun-Dev), который очень классно поливал меня дерьмом, только видимо у него не хватило смелости сказать мне это в лицо, мне, человеку, которого он закидывал какашками, зная обо мне чуть меньше чем ничего, и заявлял о моей продажности. Оказывается я не могу продавать свою работу, которую я выполнял для кого-то (только из-за сложной обстановки в семье), а затем только заливал к себе на SVN. Бог вам судья.
Ответ
#55
Посмотрев на их СВН ..... Могу сказать одно , данная команда копипастеры - более менее что то пытался делать Javamen.
Ни какой оптимизации ядра я вообще не видел и не потому что я слепой , а потому что кору никто не оптимизил Все 600 комитов OPS OPS , фиксы батников и sh ников Big Grin
В сборке поправлено только next target (через жопу), Сои (хз как я даже не смотрел), гео разрезана по плоскостям, чуток петов помуслолили.
Все остальное тупое месилово откатов скилов , батников ,sh ников и копипасты.


bloodshed я говорил что оценочная цифра оптимизации вашей сборки 4% и ты со мной спорил - да я согласен , я был не прав - она ровна НУЛЮ круглому и дырявому как бублик ! :_smile_:
Ответ
#56
Deazer Написал:Посмотрев на их СВН ..... Могу сказать одно , данная команда копипастеры - более менее что то пытался делать Javamen.
Ни какой оптимизации ядра я вообще не видел и не потому что я слепой , а потому что кору никто не потимизил Все 600 комитов OPS OPS , фиксы батников и sh ников .
В сборке поправлено только next target (через жопу), Сои (хз как я даже не смотрел), гео разрезана по плоскостям.
Все остальное тупое месилово откатов скилов , батников ,sh ников и копипасты.

А мне чел утверждал что я у них КУПИЛ фикс NextTarget (за помощь в исправлении спасибо izen), т.к. у меня он позже появился:banan:
Ответ
#57
epic fail, l2j-copypaste, manager нуб, omglol, sun-dev ололо, аугментированный варниш, геодата бункера, гопники, квадротигры, летающий напильник, микрофоны фирмы гуандон, оптимизация батников, почта россии ололо, пыщь, саркисян лох, сделано в китае, эякуляция

XD
Ответ
#58
Deazer Главное метки пополняются.:_smile_:
Ответ
#59
ALeKsIuS Написал:Deazer Главное метки пополняются.:_smile_:

Стараемся:banan:
Ответ
#60
а ещё они чего то говорили про нас,мол типа мы их тупо как конкуренты обсираемBig Grin

ой лоло,сразу всё было понятно,был на моей памяти один хороший копипастер, GreenHope звали,объединял С3 балансера с С3 SF, притом очень грамотно,загнулся на том, что "школоло" решило более страшие ревизии брать у тех и других,и соединять самим ну и выкладывать типа как новый пак от грини,естественно паки от "школоло" были не стабильны,ну грини и закрылся,со словами слишком много умников развелось.

Копи пастить тоже уметь надо а коли там всё настолько плохо как тут пишут,лес лес лееееес,больше нету слов

Лично мне манагер заявлял что у них переписан двиг тридов,фаловый кеш,работа с базой,интересно в каком месте?
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Резонансный антипиратский закон вступил в силу в России Ramzes 35 8,426 02-28-2021, 06:16 PM
Последний пост: seotaylor1
  Почта и контакты Froxz 1 1,196 04-15-2015, 02:39 PM
Последний пост: Froxz
  Почта России SmuFF4iK 3 1,223 03-20-2015, 10:55 PM
Последний пост: Influence
  Статус Lineage II Classic в России SmileForMe 82 16,460 11-19-2014, 07:52 PM
Последний пост: Bow
  Быстрый и недорогой хостинг в россии Double 9 2,364 06-27-2014, 06:29 PM
Последний пост: Double
  С Днём России! kick 16 2,495 06-13-2014, 06:54 PM
Последний пост: SoniPro
  Онлайн трансляция пресс-конференции команды Pearl Abyss в Москве о запуске Black Desert в России Ashe 2 1,466 05-14-2014, 05:58 PM
Последний пост: Main
  С Днем России! Asmodiel 24 3,257 06-12-2013, 07:00 PM
Последний пост: darkevil
  Шокирующие вести. Пожар на почта России shokinside 11 4,168 05-15-2013, 10:25 PM
Последний пост: LostInTheEch
  Почта России №2 или Дестр 80 лвл BlackPR 10 3,772 04-24-2013, 10:48 PM
Последний пост: ade0t

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


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