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

ArmorSetsParser.java

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

Хочу реализовать сеты (комплекты), как в Diablo.

1. Будет давать эффекты за каждый одетый итем из сета.

Для этого я попробовал сделать так:

String[] chest = null, chest_skills = null, legs = null, legs_skills = null, head = null, head_skills = null, gloves = null, gloves_skills = null, feet = null, feet_skills = null, skills = null, shield = null, shield_skills = null, enchant6skills = null;
            Element element = iterator.next();
            int id = Integer.parseInt(element.attributeValue("id"));
            if(element.attributeValue("chest") != null)
                chest = element.attributeValue("chest").split(";");
            if(element.attributeValue("chest_skills") != null)
                chest = element.attributeValue("chest_skills").split(";");
            if(element.attributeValue("legs") != null)
                legs = element.attributeValue("legs").split(";");
            if(element.attributeValue("legs_skills") != null)
                legs = element.attributeValue("legs_skills").split(";");
            if(element.attributeValue("head") != null)
                head = element.attributeValue("head_").split(";");
            if(element.attributeValue("head_skills") != null)
                head = element.attributeValue("head_skills").split(";");
            if(element.attributeValue("gloves") != null)
                gloves = element.attributeValue("gloves").split(";");
            if(element.attributeValue("gloves_skills") != null)
                gloves = element.attributeValue("gloves_skills").split(";");
            if(element.attributeValue("feet") != null)
                feet = element.attributeValue("feet").split(";");
            if(element.attributeValue("feet_skills") != null)
                feet = element.attributeValue("feet_skills").split(";");
            if(element.attributeValue("skills") != null)
                skills = element.attributeValue("skills").split(";");
            if(element.attributeValue("shield") != null)
                shield = element.attributeValue("shield").split(";");
            if(element.attributeValue("shield_skills") != null)
                shield_skills = element.attributeValue("shield_skills").split(";");
            if(element.attributeValue("enchant6skills") != null)
                enchant6skills = element.attributeValue("enchant6skills").split(";");

            getHolder().addArmorSet(new ArmorSet(id, chest, legs, head, gloves, feet, skills, shield, shield_skills, enchant6skills));
        }

Но при компиляции никаких изменений в файле armor_sets.dtd не увидел:

<?xml version='1.0' encoding='utf-8'?>
<!ELEMENT list (set)*>
<!ELEMENT set (#PCDATA)>
<!ATTLIST set
    id CDATA #REQUIRED
    chest CDATA #REQUIRED
    legs CDATA #IMPLIED
    head CDATA #IMPLIED
    gloves CDATA #IMPLIED
    feet CDATA #IMPLIED
    skills CDATA #IMPLIED
    shield CDATA #IMPLIED
    shield_skills CDATA #IMPLIED
    enchant6skills CDATA #IMPLIED>

В чем тут может быть дело?


2.  Хочу сделать, что сетовыми будут не только слоты head, chest, legs, gloves, feet, но и: left_hand, right_hand, necklace, left_ear, right_ear, left_finger, right_finger, back, belt, right_bracelet, underwear.
Здесь часть этого вопроса в исходнике. Допустим

String[] chest = null, legs = null, head = null, gloves = null, feet = null, left_hand = null, right_hand = null, necklace = null, left_ear = null, right_ear = null, left_finger = null, right_finger = null, back = null, belt = null, right_bracelet = null, underwear = null, skills = null, shield = null, shield_skills = null, enchant6skills = null;
            Element element = iterator.next();
            int id = Integer.parseInt(element.attributeValue("id"));
            if(element.attributeValue("chest") != null)
                chest = element.attributeValue("chest").split(";");
            if(element.attributeValue("legs") != null)
                legs = element.attributeValue("legs").split(";");
            if(element.attributeValue("head") != null)
                head = element.attributeValue("head").split(";");
            if(element.attributeValue("gloves") != null)
                gloves = element.attributeValue("gloves").split(";");
            if(element.attributeValue("feet") != null)
                feet = element.attributeValue("feet").split(";");
            if(element.attributeValue("left_hand") != null)
                feet = element.attributeValue("left_hand").split(";");
            if(element.attributeValue("right_hand") != null)
                feet = element.attributeValue("right_hand).split(";");
            if(element.attributeValue("necklace") != null)
                feet = element.attributeValue("necklace").split(";");
            if(element.attributeValue("left_ear") != null)
                feet = element.attributeValue("left_ear").split(";");
            if(element.attributeValue("right_ear") != null)
                feet = element.attributeValue("right_ear").split(";");
            if(element.attributeValue("left_finger") != null)
                feet = element.attributeValue("left_finger").split(";");
            if(element.attributeValue("right_finger") != null)
                feet = element.attributeValue("right_finger").split(";");
            if(element.attributeValue("back") != null)
                feet = element.attributeValue("back").split(";");
            if(element.attributeValue("belt") != null)
                feet = element.attributeValue("belt").split(";");
            if(element.attributeValue("right_bracelet") != null)
                feet = element.attributeValue("right_bracelet").split(";");
            if(element.attributeValue("underwear") != null)
                feet = element.attributeValue("underwear").split(";");
            if(element.attributeValue("skills") != null)
                skills = element.attributeValue("skills").split(";");
            if(element.attributeValue("shield") != null)
                shield = element.attributeValue("shield").split(";");
            if(element.attributeValue("shield_skills") != null)
                shield_skills = element.attributeValue("shield_skills").split(";");
            if(element.attributeValue("enchant6skills") != null)
                enchant6skills = element.attributeValue("enchant6skills").split(";");

            getHolder().addArmorSet(new ArmorSet(id, chest, legs, head, gloves, feet, left_hand, right_hand, necklace, left_ear, right_ear, left_finger, right_finger, back, belt, right_bracelet, underwear, skills, shield, shield_skills, enchant6skills));
        }

Прокатит ли такое?

 

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

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


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

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

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

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

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

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

Войти

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

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

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

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

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