Перейти к содержанию
Авторизация  
P1ckw1ck

Аванпосты на ГВЕ aCis

Рекомендуемые сообщения

Добрый день, подскажите по какому примеру можно сделать аванпосты?

Буду блогодарен. Сборка aCis.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Скажите принцип, что они из себя представляют?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

База определеной фракции, при убистве данного аванпоста, фракция его теряет пока не отобьет у другой фракции. которая из ночально его отбила.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Форты же, брать их и перепиливать

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Все просто, создаем бд... Если несколько аванпостов, то например id аванпоста это колонка и еще одна колонка кто владеет со значениями good или evil. В случае убийства аванпоста просто обновим значение в бд например с evil на good, и все) все просто же)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На интерлюде форты же не работают, если я не ошибаюсь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С бд разобрался, теперь то надо сделать хотяб 1 аванпост по примеру, вот только какой пример брать я хз.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На интерлюде форты же не работают, если я не ошибаюсь.

реализация то есть, пакетов они вроде бы не требуют

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На интерлюде форты же не работают, если я не ошибаюсь.

Зачем по примеру? 2-а условия вот тебе и аванпосты) а если тебе еще и нужно с охраной, пиши AI))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

бери пример фортов с любой другой сборки. суть примерно та же,но надо будет переписывать под себя х)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну вот как я сделал:

Создал новый клас с основными методами :

public class AvanpostInstance extends L2MonsterInstance

 public AvanpostInstance (int id, int x,int y,int z,String name,int factionid,int lvl,int istele)
    {
        super(id,NpcTable.getInstance().getTemplate(NPC_ID));
        ID = id;
           X = x ;
           Y = y ;
            Z = z ;
            NAME = name;
           FACTIONID = factionid;
           LVL = lvl ;
          TELE = istele;

    }

 public static void Avanpostcreate ()
    {
    Connection con = null;
    PreparedStatement statement = null;
    ResultSet rset = null;
    try {
    con =                                L2DatabaseFactory.getInstance().getConnection();
    statement =                          con.prepareStatement("SELECT * FROM rama_avanposts");
    rset =                               statement.executeQuery();
    while (rset.next())
    {
        list.add(new AvanpostInstance(rset.getInt("ID"),rset.getInt("spawnX"),rset.getInt("SpawnY"),rset.getInt("SpawnZ"),rset.getString("name"),rset.getInt("factionId"),rset.getInt("lvl"),rset.getInt("istele")));
    }
} catch (SQLException e) {
    e.printStackTrace();
}
    finally {
    try {
        rset.close();
        statement.close();
        con.close();
    } catch (SQLException e) {
        e.printStackTrace();
    }
}


   }
    public static   void  AvanpostSpawn()
    {   _log.info("[Ramaworld Siedge System :]");
        int i = 1;
        while (i < list.size()) {
            AvanpostInstance spawner = AvanpostInstance.list.get(i);
          int  x = spawner.X;
          int  y = spawner.Y;
           int z = spawner.Z;
           int id = spawner.ID;
           int factionid = spawner.FACTIONID;
            int lvl = spawner.LVL;
            int istele = spawner.TELE;
           String  name = spawner.NAME;
            spawner.set_name(spawner.getNAME());
            spawner.spawnMe(x,y,z);
            AvanpostGateBridgehead.spawn(spawner);

Ну и в классе L2Charecter в метод doKill добавил проверку на убийство собстна нашего аванпоста и смена значения в колонке factionid на factionid, которое у игрока.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну вот как я сделал:

Создал новый клас с основными методами :

public class AvanpostInstance extends L2MonsterInstance


Ну и в классе L2Charecter в метод doKill добавил проверку на убийство собстна нашего аванпоста и смена значения в колонке factionid на factionid, которое у игрока.

конечно все пишут как могут. но зачем хранить в базе int x,int y,int z, Координаты он у вас что бегает? :)  Статик данные лучше определить в .xml

и передача объекта Location из .xml аванпоста намного лучше.

Изменено пользователем LifeGame32

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

конечно все пишут как могут. но зачем хранить в базе int x,int y,int z, Координаты он у вас что бегает? :)  Статик данные лучше определить в .xml

и передача объекта Location из .xml аванпоста намного лучше.

Да может и лучше, просто я написал, этот код, после изучения явы 1-2 недели) вроде все работает, поэтому переписывать желания не возникало.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...