Крафт система - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Сообщество Календарь
Вернуться   Форум администраторов игровых серверов > MMO > Aion > Серверная часть

Важная информация

Серверная часть Обсуждения вопросов по установке и настройке эмулятора Aion-Emu, для совершенно новой и необыкновенно красивой игры - Aion.
Описание темы:Исправить недочёт

Ответ
Опции темы
Непрочитано 24.03.2011, 16:10   #1
Аватар для Wolfas
Пользователь

Автор темы (Топик Стартер) Крафт система

Доброго времени суток, подниму довольно сложную тему.

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

У крафт рецептов не работает свойство, race="ALL" можно указать только конкретно одну из двух расс, причём все XML поддерживаю свойство race="ALL", но видимо не хватает либо поддержки пакета в ядре, либо подходящей функции, уже всё перекопал, мб кто видел?


Код:
    <recipe_template id="155090006" nameid="1504773" skillid="40002" race="ALL" skillpoint="399" productid="100000904"
                     quantity="1" componentquantity="1">
        <component quantity="1" itemid="152000911"/>
        <comboproduct itemid="100000905"/>
        <comboproduct itemid="100000906"/>
        <comboproduct itemid="100000907"/>
        <comboproduct itemid="100000908"/>
    </recipe_template>
__________________
Консоль GameServer не советует:"Вы настраивайте сервер уже 1 час. Советуем вам немного отдохнуть".
Wolfas вне форума Ответить с цитированием
Непрочитано 26.03.2011, 06:56   #2
Аватар для Wolfas
Пользователь

Автор темы (Топик Стартер) Re: Крафт система

Заплачу ядом, если кто сможет решить)
__________________
Консоль GameServer не советует:"Вы настраивайте сервер уже 1 час. Советуем вам немного отдохнуть".
Wolfas вне форума Ответить с цитированием
Непрочитано 27.03.2011, 08:56   #3
Аватар для Wolfas
Пользователь

Автор темы (Топик Стартер) Re: Крафт система

Нашёл способ решения данной проблемы, необходимо в документе

SkillRace.java установить значение параметра ALL равным ELYOS и ASMODIANS, относительно скрипта в документе Race.java

Но как бы это написать...
__________________
Консоль GameServer не советует:"Вы настраивайте сервер уже 1 час. Советуем вам немного отдохнуть".
Wolfas вне форума Ответить с цитированием
Непрочитано 27.03.2011, 11:07   #4
Пользователь

По умолчанию Re: Крафт система

Wolfas, выложи куски кода (под спойлером) с твоими пояснениями, если что - будем дополнять. Честно говоря лично я не совсем понял что именно ты сделал.
HeY вне форума Ответить с цитированием
Непрочитано 27.03.2011, 11:17   #5
Аватар для Wolfas
Пользователь

Автор темы (Топик Стартер) Re: Крафт система

Свиток в клиенте:

client_items.xml:
Свернуть ↑Развернуть ↓


Свиток на сервере:

item_templates.xml:
Свернуть ↑Развернуть ↓


Рецепт в клиенте:

client_combine_recipe.xml:
Свернуть ↑Развернуть ↓


Рецепт на сервере:

recipe_template.xml:
Свернуть ↑Развернуть ↓


Где я вижу проблему:

skillRace.java:
Свернуть ↑Развернуть ↓


Race.java:
Свернуть ↑Развернуть ↓
__________________
Консоль GameServer не советует:"Вы настраивайте сервер уже 1 час. Советуем вам немного отдохнуть".
Wolfas вне форума Ответить с цитированием
Непрочитано 27.03.2011, 13:04   #6
Пользователь

По умолчанию Re: Крафт система

На сколько я понял за добавление рецептов в книгу рецептов отвечает CraftLearnAction (путь package com.aionengine.gameserver.itemengine.actions;) , там как раз есть проверка SkillRace и Race она там идёт таким образом:
PHP код:
        if (template.getRace().ordinal() != player.getCommonData().getRace().getRaceId())
            return 
false
как видно сверка идёт по значениям констант в обохи перечислителях(enum`ax) , но как мы знаем раса игрока не может быть ALL, поэтому та проверка и не пропускает далее если у рецепта стоит раса ALL.
Её можно замеить сделующим образом:
PHP код:
        switch(template.getRace())
        {
            case 
ALL:
                break;
            default:
                if (
template.getRace().ordinal() != player.getCommonData().getRace().getRaceId())
                    return 
false;
        } 
__________________
Дверь запили!
flashman вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 27.03.2011, 23:29   #7
Аватар для Wolfas
Пользователь

Автор темы (Топик Стартер) Re: Крафт система

flashman Спасибо! Вы меня спасли)
__________________
Консоль GameServer не советует:"Вы настраивайте сервер уже 1 час. Советуем вам немного отдохнуть".
Wolfas вне форума Ответить с цитированием
Ответ


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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Крафт Necron Серверная часть 1 30.03.2011 00:49
Система голосование Temmy Серверная часть 0 15.10.2010 09:37
Изготовление и крафт вещей. Зал мастерства Demoness Серверная часть 11 26.03.2010 21:52
Крафт Shema Aion 2 03.03.2010 22:29
система атрибутов narisyi Lineage II 2 20.02.2009 17:57


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

Вверх