La2Phoenix rev. 17352M (шара.) - Страница 4 - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Сообщество Календарь
Вернуться   Форум администраторов игровых серверов > MMO > Lineage II

Lineage II
Дискуссии на тему создания, настройки и обслуживания серверов Lineage 2. При поддержке: Премиум услуги по рекламе

Ответ
Опции темы
Непрочитано 15.02.2010, 22:08   #31
Пользователь

По умолчанию Re: La2Phoenix rev. 17352M (шара.)

Цитата:
Сообщение от Goodday Посмотреть сообщение
http://planetka.net/PVPCommunityBoard.zip

Кому надо могу дать исходники, хотя тут декомпил будет 100%й, т.к. (обуфикацию не делал)

Вобщем тут баффер и телепортер, баффер не бафает в бою не бафает на олимпе, у баффера убрал время каста и анимацию.

Ну телепортер так же. (Скрипты заточены под коммунити гудшадов которая в сборке.)

Установка для ламеров: Меняем расширение у файла Scripts.jar на Scripts.zip заходим в архив идём в папку services и копируем туда папку PVPCommunityBoard которую я дал выше. Далее изменяем Scripts.zip на Scripts.jar делаем и рестарт.
Цитата:
Сообщение от Kashiro Посмотреть сообщение
Всё хорошо с телепортер, но бафер и класменеджер неработает
уй, всё работает, надо было конфиг править но ещё надо сделать EnchCB

Goodday, могу я получить исходники? спс
Kashiro вне форума Ответить с цитированием
Непрочитано 15.02.2010, 23:24   #32
Герой

По умолчанию Re: La2Phoenix rev. 17352M (шара.)

исходы в студию=)
incognito вне форума Ответить с цитированием
Непрочитано 16.02.2010, 00:07   #33
Герой

Автор темы (Топик Стартер) Re: La2Phoenix rev. 17352M (шара.)

О ёпт там с 14** ревы пару минут переписать под эту

PHP код:
package services.PVPCommunityBoard;

import l2p.Config;
import l2p.extensions.scripts.Functions;
import l2p.extensions.scripts.ScriptFile;
import l2p.gameserver.ThreadPoolManager;
import l2p.gameserver.cache.Msg;
import l2p.gameserver.instancemanager.TownManager;
import l2p.gameserver.model.L2Character;
import l2p.gameserver.model.L2Player;
import l2p.gameserver.model.L2Skill;
import l2p.gameserver.model.L2Summon;
import l2p.gameserver.model.entity.olympiad.Olympiad;
import l2p.gameserver.model.entity.residence.Residence;
import l2p.gameserver.model.entity.siege.Siege;
import l2p.gameserver.model.instances.L2NpcInstance;
import l2p.gameserver.serverpackets.MagicSkillLaunched;
import l2p.gameserver.skills.effects.EffectTemplate;
import l2p.gameserver.tables.SkillTable;
import l2p.util.Files;
import l2p.util.Util;

public class 
CBBuffer extends Functions implements ScriptFile
{
    public 
L2NpcInstance npc;

    
/** Количество бафов в группах */
    
    
private static int CAST_TIME 0;
     
    private static 
int grpCount1grpCount2grpCount3grpCount4grpCount5;

    
// Количество бафов в 1 и второй группах должно быть одинаковое
    
private static int buffs[][] = { // id, lvl, group
            // Chants
                
{125125}, // Chant of Fury
                
{125235}, // Chant of Evasion
                
{125335}, // Chant of Rage
                
{146135}, // Chant of protect
                
{130835}, // Chant of Predator
                
{130935}, // Chant of Eagle
                
{131045}, // Chant of Vampire
                
{136215}, // Chant of Spirit
                
{136315}, // Chant of Victory
                
{139035}, // War Chant
                
{139135}, // Earth Chant
                // Songs
                
{26414}, // Song of Earth
                
{26514}, // Song of Life
                
{26614}, // Song of Water
                
{26714}, // Song of Warding
                
{26814}, // Song of Wind
                
{26914}, // Song of Hunter
                
{27014}, // Song of Invocation
                
{30414}, // Song of Vitality
                
{30614}, // Song of Flame Guard
                
{30814}, // Song of Storm Guard
                
{34914}, // Song of Renewal
                
{36314}, // Song of Meditation
                
{36414}, // Song of Champion
                // Dances
                
{27113}, // Dance of Warrior
                
{27213}, // Dance of Inspiration
                
{27313}, // Dance of Mystic
                
{27413}, // Dance of Fire
                
{27513}, // Dance of Fury
                
{27613}, // Dance of Concentration
                
{27713}, // Dance of Light
                
{30713}, // Dance of Aqua Guard
                
{30913}, // Dance of Earth Guard
                
{31013}, // Dance of Vampire
                
{31113}, // Dance of Protection
                
{36513}, // Dance of Siren
                // Группа для магов 2
            
70591}, // Wild Magic
            
43563}, // Empower
            
43553}, // Acumen
            
43521}, // Berserker Spirit
            
43464}, // Mental Shield
            
43443}, // Shield
            
43516}, // Concentration
            
43422}, // Wind Walk
            
43476}, // Bless the Body
            
43486}, // Bless the Soul
            
43504}, // Resist Shock
              
43504}, // Resist Shock
             
43476}, // Bless the Body
            
43486}, // Bless the Soul
            
43492}, // Magic Barrier
              
13913}, // Earth Chant
             
12523}, // Chant of Evasion
             
12843}, // Chant of Revenge
             
13621}, // Chant of Spirit
             
14131}, // Chant of Victory
            
13231}, // Noblesse of Blessing
             
2731}, // Dance of Mystic
              
2761}, // Dance of Concentration
             
3651}, // Dance of Siren
             
2641}, // Song of Earth
             
2661}, // Song of Water
            
2671}, // Song of Warding
            
2681}, // Song of Wind
             
3041}, // Song of Vitality
             
3061}, // Song of Flame Guard
            
3081}, // Song of Storm Guard
            
3491}, // Song of Renewal
            
3631}, // Song of Meditation        
             
45544}, // Hot Springs Malaria 4 lvl
                // Группа для воинов 1
            
43453}, // Might
            
43443}, // Shield
            
43492}, // Magic Barrier
            
43422}, // Wind Walk
            
43572}, // Haste
            
43593}, // Focus
            
43583}, // Guidance
            
43603}, // Death Whisper
            
43544}, // Vampiric Rage
            
43464}, // Mental Shield
             
43521}, // Berserker Spirit
             
43504}, // Resist Shock
             
43476}, // Bless the Body
            
43486}, // Bless the Soul
             
13913}, // Earth Chant
             
12523}, // Chant of Evasion
             
12843}, // Chant of Revenge
             
13621}, // Chant of Spirit
            
13631}, // Chant of Victory
            
13231},  // Noblesse of Blessing
            
2711}, // Dance of Warrior
            
2741}, // Dance of Fire
            
2751}, // Dance of Fury
             
2641}, // Song of Earth
             
2671}, // Song of Warding
            
2681}, // Song of Wind
            
2691}, // Song of Hunter
            
3041}, // Song of Vitality
             
3061}, // Song of Flame Guard
            
3081}, // Song of Storm Guard
             
3491}, // Song of Renewal
            
3641}  // Song of Champion            
            
};

    public 
void onLoad()
    {
        if(
Config.SERVICES_BUFFER_ENABLED)
            
System.out.println("Loaded Service: CBBuffer [state: ON]");
        else
            
System.out.println("Loaded Service: CBBuffer [state: OFF]");

        for(final 
int buff[] : buffs)
            switch(
buff[2])
            {
                case 
1:
                    
grpCount1++;
                    break;
                case 
2:
                    
grpCount2++;
                    break;
                case 
3:
                    
grpCount3++;
                    break;
                case 
4:
                    
grpCount4++;
                    break;
                case 
5:
                    
grpCount5++;
                    break;
            }
    }

    public 
void onReload()
    {}

    public 
void onShutdown()
    {}

    
/**
     * Бафает группу баффов, снимает плату за бафф, отображает диалог с кнопкой возврата к списку бафов
     * 
     * @param args
     *            массив строк, где элемент 0 - id группы бафов
     */
    
public void doBuffGroup(final String[] args)
    {
        
//final L2Player player = (L2Player) self;
        
        
final L2Player player = (L2Player)getSelf();
        final 
L2Summon pet player.getPet();


        
        if( !
checkCondition(player))
            return;

        if(
player.getAdena() < Config.SERVICES_BUFFER_PRICE * (Integer.valueOf(args[1]) + 2))
        {
            
player.sendPacket(Msg.YOU_DO_NOT_HAVE_ENOUGH_ADENA);
            return;
        }
        
player.reduceAdena(Config.SERVICES_BUFFER_PRICE * (Integer.valueOf(args[1]) + 2));

        
int time 0;
        final 
int id_groups Integer.valueOf(args[0]);
        final 
int select_id Integer.valueOf(args[1]);
        
L2Skill skill;
        for(final 
int buff[] : buffs)
            if(
buff[2] == id_groups)
            {
                if(
select_id == 0)
                {
                    
skill SkillTable.getInstance().getInfo(buff[0], buff[1]);
                                    
                    
// time += skill.getHitTime();
                    
ThreadPoolManager.getInstance().scheduleGeneral(new BeginBuff(playerskillplayer), CAST_TIME);
                    
time += 0;
                }
                if(
select_id == 1)
                {
                    if(
pet == null)
                        return;

                    
skill SkillTable.getInstance().getInfo(buff[0], buff[1]);
                                        
                    
// time += skill.getHitTime();
                    
ThreadPoolManager.getInstance().scheduleGeneral(new BeginPetBuff(playerskillpet), CAST_TIME);
                    
time += 0;
                }
            }
    }

    
/**
     * Бафает один бафф, снимает плату за бафф, отображает диалог с кнопкой возврата к списку бафов
     * 
     * @param args
     *            массив строк: элемент 0 - id скида, элемент 1 - уровень скила
     */
    
public void doBuff(final String[] args)
    {
        
//final L2Player player = (L2Player) self;
        
final L2Player player = (L2Player)getSelf();
        final 
L2Summon pet player.getPet();

        if( !
checkCondition(player))
            return;

        if(
player.getAdena() < Config.SERVICES_BUFFER_PRICE)
        {
            
player.sendPacket(Msg.YOU_DO_NOT_HAVE_ENOUGH_ADENA);
            return;
        }

        try
        {
            final 
int skill_id Integer.valueOf(args[0]);
            final 
int skill_lvl Integer.valueOf(args[1]);
            final 
int select_id Integer.valueOf(args[2]);
            final 
L2Skill skill SkillTable.getInstance().getInfo(skill_idskill_lvl);
                    
            
            if(
select_id == 0)
                
ThreadPoolManager.getInstance().scheduleGeneral(new BeginBuff(playerskillplayer), CAST_TIME);
            if(
select_id == 1)
            {
                if(
pet == null)
                    return;

                
ThreadPoolManager.getInstance().scheduleGeneral(new BeginPetBuff(playerskillpet), CAST_TIME);
            }
            
player.reduceAdena(Config.SERVICES_BUFFER_PRICE);
        }
        catch(final 
Exception e)
        {
            
player.sendMessage("Invalid skill!");
        }

    }

    
/**
     * Проверяет возможность бафа персонажа.<BR>
     * В случае невозможности бафа показывает игроку html с ошибкой и возвращает false.
     * 
     * @param player
     *            персонаж
     * @return true, если можно бафать персонажа
     */
    
public boolean checkCondition(final L2Player player)
    {
        if( !
Config.SERVICES_BUFFER_ENABLED || player == null)
            return 
false;

        if(
player.getOlympiadGameId() != -|| Olympiad.isRegisteredInComp(player))
        {
            
show("Buff sell are closed for Oly time."player);
            return 
false;
        }
        
String html;

        
// Проверяем по уровню
        
if(player.getLevel() > Config.SERVICES_BUFFER_MAX_LVL || player.getLevel() < Config.SERVICES_BUFFER_MIN_LVL)
        {
            
html Files.read("data/scripts/services/NPCBuffer/no-lvl.htm"player);
            
html html.replace("%min_lvl%"Integer.toString(Config.SERVICES_BUFFER_MIN_LVL));
            
html html.replace("%max_lvl%"Integer.toString(Config.SERVICES_BUFFER_MAX_LVL));
            
show(htmlplayer);
            return 
false;
        }

        
// Можно ли юзать бафера во время осады?
        
if( !Config.SERVICES_BUFFER_SIEGE)
        {
            
//final Residence castle = TownManager.getInstance().getClosestTown(self).getCastle();
            //final Siege siege = castle.getSiege();
            
            
final Residence castle TownManager.getInstance().getClosestTown(getSelf()).getCastle();
            final 
Siege siege castle.getSiege();
            
            if(
siege != null && siege.isInProgress())
            {
                
show(Files.read("data/scripts/services/NPCBuffer/no-siege.htm"player), player);
                return 
false;
            }
        }
        return 
true;
    }

    
/* Выбор меню */
    
public void SelectMenu(final String[] args)
    {
        final 
int select_menu Integer.valueOf(args[0]);
        
        
//final L2Player player = (L2Player) self;
        
final L2Player player = (L2Player)getSelf();

        
String html null;

        if(
select_menu == 0)
            
html Files.read("data/scripts/services/NPCBuffer/buffschar.htm"player);

        if(
select_menu == 1)
        {
            if(
Config.SERVICES_BUFFER_PET_ENABLED != true)
                return;
            if(
player.getPet() == null)
                return;
            
html Files.read("data/scripts/services/NPCBuffer/buffspet.htm"player);
        }

        
assert html != null;
        
html html.replace("%grp_price1%"Util.formatAdena(Config.SERVICES_BUFFER_PRICE * (grpCount1 2)));
        
html html.replace("%grp_price2%"Util.formatAdena(Config.SERVICES_BUFFER_PRICE * (grpCount2 2)));
        
html html.replace("%grp_price3%"Util.formatAdena(Config.SERVICES_BUFFER_PRICE * (grpCount3 2)));
        
html html.replace("%grp_price4%"Util.formatAdena(Config.SERVICES_BUFFER_PRICE * (grpCount4 2)));
        
html html.replace("%grp_price5%"Util.formatAdena(Config.SERVICES_BUFFER_PRICE * (grpCount5 2)));
        
html html.replace("%buffs_in_grp1%"Integer.toString(grpCount1));
        
html html.replace("%buffs_in_grp2%"Integer.toString(grpCount2));
        
html html.replace("%buffs_in_grp3%"Integer.toString(grpCount3));
        
html html.replace("%buffs_in_grp4%"Integer.toString(grpCount4));
        
html html.replace("%buffs_in_grp5%"Integer.toString(grpCount5));
        
html html.replace("%price%"Util.formatAdena(Config.SERVICES_BUFFER_PRICE));
        
show(htmlplayer);
    }

    public class 
BeginBuff implements Runnable
    
{
        
L2Character _buffer;
        
L2Skill _skill;
        
L2Player _target;

        public 
BeginBuff(final L2Character buffer, final L2Skill skill, final L2Player target)
        {
            
_buffer buffer;
            
_skill skill;
            
_target target;
            
        }

        public 
void run()
        {
            if(
_target.isInOlympiadMode() || _target.isAttackingNow() || _target.isCastingNow() || _target.isInCombat())
                return;
            
//_buffer.broadcastPacket(new MagicSkillUse(_buffer, _target, _skill.getDisplayId(), _skill.getLevel(), _skill.getHitTime(), 0));
            
ThreadPoolManager.getInstance().scheduleGeneral(new EndBuff(_buffer_skill_target), CAST_TIME);
        }
    }

    public class 
EndBuff implements Runnable
    
{
        
L2Character _buffer;
        
L2Skill _skill;
        
L2Player _target;

        public 
EndBuff(final L2Character buffer, final L2Skill skill, final L2Player target)
        {
            
_buffer buffer;
            
_skill skill;
            
_target target;
        }

        public 
void run()
        {
            
_skill.getEffects(_buffer_targetfalsefalse);
            
//_buffer.broadcastPacket(new MagicSkillLaunched(_buffer.getObjectId(), _skill.getId(), _skill.getLevel(), _target, _skill.isOffensive()));
        
}
        
    }

    public class 
BeginPetBuff implements Runnable
    
{
        
L2Character _buffer;
        
L2Skill _skill;
        
L2Summon _target;

        public 
BeginPetBuff(final L2Character buffer, final L2Skill skill, final L2Summon target)
        {
            
_buffer buffer;
            
_skill skill;
            
_target target;
        }

        public 
void run()
        {
            
//_buffer.broadcastPacket(new MagicSkillUse(_buffer, _target, _skill.getDisplayId(), _skill.getLevel(), _skill.getHitTime(), 0));
            
ThreadPoolManager.getInstance().scheduleGeneral(new EndPetBuff(_buffer_skill_target), CAST_TIME);
        }
    }

    public class 
EndPetBuff implements Runnable
    
{
        
L2Character _buffer;
        
L2Skill _skill;
        
L2Summon _target;

        public 
EndPetBuff(final L2Character buffer, final L2Skill skill, final L2Summon target)
        {
            
_buffer buffer;
            
_skill skill;
            
_target target;
        }

        public 
void run()
        {
            
_skill.getEffects(_buffer_targetfalsefalse);
            
//_buffer.broadcastPacket(new MagicSkillLaunched(_buffer.getObjectId(), _skill.getId(), _skill.getLevel(), _target, _skill.isOffensive()));
        
}
    }

PHP код:
package services.PVPCommunityBoard;

import javolution.util.FastMap;
import l2p.Config;
import l2p.extensions.scripts.Functions;
import l2p.extensions.scripts.ScriptFile;
import l2p.gameserver.cache.Msg
import l2p.gameserver.idfactory.IdFactory;
import l2p.gameserver.instancemanager.InstancedZoneManager;
import l2p.gameserver.instancemanager.TownManager;
import l2p.gameserver.instancemanager.ZoneManager;
import l2p.gameserver.model.entity.residence.TeleportLocation;
import l2p.gameserver.model.L2Effect;
import l2p.gameserver.model.L2Object;
import l2p.gameserver.model.L2Player;
import l2p.gameserver.model.L2Spawn;
import l2p.gameserver.model.L2Zone;
import l2p.gameserver.model.Reflection;
import l2p.gameserver.model.L2Zone.ZoneType;
import l2p.gameserver.model.entity.SevenSigns;
import l2p.gameserver.model.entity.residence.Castle;
import l2p.gameserver.model.entity.olympiad.Olympiad;
import l2p.gameserver.model.entity.residence.Residence;
import l2p.gameserver.model.entity.siege.Siege;
import l2p.gameserver.model.instances.L2DoorInstance;
import l2p.gameserver.model.items.L2ItemInstance;
import l2p.gameserver.model.instances.L2ReflectionBossInstance;
import l2p.gameserver.serverpackets.SystemMessage;
import l2p.gameserver.tables.NpcTable;
import l2p.gameserver.tables.ReflectionTable;
import l2p.util.Location;

public class 
CBUtil extends Functions implements ScriptFile
{

    public 
void onLoad()
    {
        
System.out.println("CB Utilites Loaded [state: OK]");
    }

    public 
void onReload()
    {}

    public 
void onShutdown()
    {}

    
/**
     * Перемещает за плату в аденах
     * 
     * @param x
     * @param y
     * @param z
     * @param price
     */
    
public void Gatekeeper(final String[] param)
    {

        final 
L2Player player = (L2PlayergetSelf();
        if(
player == null)
        {
            return;
        }

        final 
int price Integer.parseInt(param[3]);

        if(
player.isActionsDisabled() || player.isSitting())
        {
            return;
        }

        if(
price && player.getAdena() < price)
        {
            
player.sendPacket(Msg.YOU_DO_NOT_HAVE_ENOUGH_ADENA);
            return;
        }

        if(
player.getMountType() == 2)
        {
            
player.sendMessage("Телепортация верхом на виверне невозможна.");
            return;
        }

        
/*
         * Затычка, npc Mozella не ТПшит чаров уровень которых превышает заданный в конфиге
         * Off Like >= 56 lvl, данные по ограничению lvl'a устанавливаются в altsettings.properties.
         */
        
if(player.getLastNpc() != null)
        {
            final 
int mozella_cruma 30483// NPC Mozella id 30483
            
if(player.getLastNpc().getNpcId() == mozella_cruma && player.getLevel() >= Config.CRUMA_GATEKEEPER_LVL)
            {
                
show("data/html/teleporter/30483-no.htm"player);
                return;
            }
        }

        final 
int x Integer.parseInt(param[0]);
        final 
int y Integer.parseInt(param[1]);
        final 
int z Integer.parseInt(param[2]);
        

        if(
player.getOlympiadGameId() != -|| Olympiad.isRegisteredInComp(player))
        {
        
player.sendMessage("Дождитесь окончания боя на олимпиаде!");
        return;
        }
        
        if(
player.isAttackingNow() || player.isCastingNow() || player.isInCombat())
        {
        
player.sendMessage("В бою телепортация запрещена!");
        return;
        }
        
        final 
Castle castle TownManager.getInstance().getClosestTown(xy).getCastle();
        if(
castle != null && castle.getSiege().isInProgress())
        {
            
// Определяем, в город ли телепортируется чар
            
boolean teleToTown false;
            
int townId 0;
            for(final 
L2Zone town ZoneManager.getInstance().getZoneByType(ZoneType.Town))
            {
                if(
town.checkIfInZone(xy))
                {
                    
teleToTown true;
                    
townId town.getIndex();
                    break;
                }
            }

            if(
teleToTown && townId == castle.getTown())
            {
                
player.sendPacket(new SystemMessage(SystemMessage.YOU_CANNOT_TELEPORT_TO_A_VILLAGE_THAT_IS_IN_A_SIEGE));
                return;
            }
        }

        
//final Location pos = GeoEngine.findPointToStay(x, y, z, 50, 100);

        
if(price 0)
        {
            
player.reduceAdena(price);
        }
        
player.teleToLocation(xyz);
    }




Последний раз редактировалось PROGRAMMATOR; 16.02.2010 в 03:03. Причина: Нужно использовать java для обозначения или просто php.
Goodday вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 16.02.2010, 01:37   #34
Пользователь

По умолчанию Re: La2Phoenix rev. 17352M (шара.)

это только для меня, что ли? Когда я ставлю 150 атрибута с атрибутом камень и когда я начинаю положить 150 + с атрибутом кристалл он говорит что у меня уже есть атрибут и не позволяет мне ставлять. WTF?
Kashiro вне форума Ответить с цитированием
Непрочитано 16.02.2010, 02:08   #35
Изгнанные

По умолчанию Re: La2Phoenix rev. 17352M (шара.)

нубс детектед рофл
возми камень повышаюший с 3 уровня атрибута. И будет тебе счастье нафик.
FlowWK вне форума Ответить с цитированием
Непрочитано 16.02.2010, 02:21   #36
Аватар для SkyWard
Олдфаг

Unhappy Re: La2Phoenix rev. 17352M (шара.)

Народ впринцепи с ошибками я дохожу до загрузки геодаты потом выдазит вот такая ошибка и все!!
Ошибка сылается на папку может файл "main"
могу кинуть даже скрины если будет нуно !! Прошу помощи!!
SkyWard вне форума Отправить сообщение для SkyWard с помощью Skype™ Ответить с цитированием
Непрочитано 16.02.2010, 13:11   #37
Пользователь

По умолчанию Re: La2Phoenix rev. 17352M (шара.)

Цитата:
Сообщение от FlowWK Посмотреть сообщение
нубс детектед рофл
возми камень повышаюший с 3 уровня атрибута. И будет тебе счастье нафик.
а что это за камень? как он називается?

Последний раз редактировалось Kashiro; 16.02.2010 в 15:50.
Kashiro вне форума Ответить с цитированием
Непрочитано 16.02.2010, 16:04   #38
Герой

Автор темы (Топик Стартер) Re: La2Phoenix rev. 17352M (шара.)

Цитата:
Сообщение от KapkapoB Посмотреть сообщение
Народ впринцепи с ошибками я дохожу до загрузки геодаты потом выдазит вот такая ошибка и все!!
Ошибка сылается на папку может файл "main"
могу кинуть даже скрины если будет нуно !! Прошу помощи!!
переименуйте папку geodata в geodata2
Goodday вне форума Ответить с цитированием
Непрочитано 16.02.2010, 16:09   #39
Пользователь

По умолчанию Re: La2Phoenix rev. 17352M (шара.)

Цитата:
Сообщение от Goodday Посмотреть сообщение
переименуйте папку geodata в geodata2
а ты незнаешь что за херня с атрибут?
Kashiro вне форума Ответить с цитированием
Непрочитано 16.02.2010, 20:51   #40
Аватар для Drastik
Пользователь

По умолчанию Re: La2Phoenix rev. 17352M (шара.)

прошу ,дайте исходники или рабочую сборку,с работующими скриптами,и не вылажуйте плис фейк
Drastik вне форума Ответить с цитированием
Ответ


Здесь присутствуют: 2 (пользователей: 0 , гостей: 2)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
La2Phoenix rev. 13900++ - Gracia Part 2 от 22 апреля 2009 [Шара сборки с asterios.tm] Xonx Lineage II 209 10.07.2013 07:53
Мануал La2Phoenix rev14312 CommunityBoard ilyxa Архив 1 18.04.2010 08:17
Шара от GoodShadow #2 GoodShadow Lineage II 20 05.04.2010 04:59
Гмшоп в админке la2Phoenix Jao Работа со скриптами 5 17.06.2009 20:38
Помогите разобраться с La2Phoenix rev. 13900++ MrArt Lineage II 8 05.06.2009 11:41


© 2007–2024 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 09:57. Часовой пояс GMT +3.

Вверх