Skip to content
La2Base
Home
DownloadsWikiForumFAQ
Search
ruen
Sign up Login
HomeFilesWikiLogin
  • Home
  • Downloads
  • Wiki
  • FAQ
  • Contact Us
  • About
  • Rules
  • Privacy
  • Terms of Service

© 2026 la2base.com · All rights reserved

ruen
Forum/Квесты/Getnamecolor
Search

Getnamecolor

8 replies637 viewsCurrently viewing: 1
Tupac Shakur
Tupac Shakur

User

Бывалый

Posts: 153

На форуме с: 05/12/2008

Репутация: +38

Рейтинг: 0

· 03/17/2009, 11:00 PM

Извините что пишу сюда - но как мне показалось, этот вопрос, ну никак не относится к "Форум для новичков". Тем более это близко к квэстописанию) Если что - перенесите тему туда, где ей подобает быть.

Итак, я решил сделать такую штуку на сервере, чтоб у всех расс были свои цвета ников. Т.е, хумы - феолетовые, эльфы - зелёные, де - синие итд.. Написал в L2PcInstance метод на это дело, и что-то ничего не изменилось. Надеюсь, истолкуете что, да как. Просьба не писать, если не знаете. Также надеюсь на дяденьку AbsT :)

Вот метод:

Код
    public void getNameColor()
    {
        if (isGM())
            return;

        /** Updates name color of each race **/
        if ((getRace() == Race.darkelf) && (getAppearance().getNameColor() == 0x0000FF))
        {
            getAppearance().setNameColor(0xFFFF00);
        }    
        if ((getRace() == Race.elf) && (getAppearance().getNameColor() == 0x0000FF))
        {
            getAppearance().setNameColor(0x33FF99);
        }
        if ((getRace() == Race.human) && (getAppearance().getNameColor() == 0x0000FF))
        {
            getAppearance().setNameColor(0x994499);
        }
        if ((getRace() == Race.orc) && (getAppearance().getNameColor() == 0x0000FF))
        {
            getAppearance().setNameColor(0x0000FF);
        }
        if ((getRace() == Race.dwarf) && (getAppearance().getNameColor() == 0x0000FF))
        {
            getAppearance().setNameColor(0xA0A0A0);
        }
    }


Кстати, если кому идея помогла - кликаем пасибку.

ЗЫ да, у меня начальный цвет ника у всех чаров - красный)

Only God Can Judge Me

0
AbsT
AbsT

User

Ветеран

Posts: 1514

На форуме с: 12/10/2007

Репутация: +768

Рейтинг: 0

· 03/17/2009, 11:14 PM

А собсна где этот метод вызывается и когда?
Ведь за время пребывания игрока в игре ник может много меняться...карма, реки итд.

— Ålderdom - ingen glädje..

0
Tupac Shakur
Tupac Shakur

User

Бывалый

Posts: 153

На форуме с: 05/12/2008

Репутация: +38

Рейтинг: 0

· 03/17/2009, 11:28 PM

В каком плане "где вызывается и когда". В классе L2PcInstance, по поводу "когда" - это я немножечко не понимаю. Карму и реки я убрал с сервера) На данный момент это не является игровым сервером, на котором играют игроки, а скорее тестовым с моими разработками.

Only God Can Judge Me

0
AbsT
AbsT

User

Ветеран

Posts: 1514

На форуме с: 12/10/2007

Репутация: +768

Рейтинг: 0

· 03/17/2009, 11:43 PM

Метод, функция, класс...оно само собой не может быть вызвано.
Добавь вызов метода в серверном пакете который отвечает за статы каждого игрока.
Но ДО начала помещения данных на отправку, лучше в конструктор пакета.

— Ålderdom - ingen glädje..

0
Tupac Shakur
Tupac Shakur

User

Бывалый

Posts: 153

На форуме с: 05/12/2008

Репутация: +38

Рейтинг: 0

· 03/17/2009, 11:56 PM

Тоесть в CharInfo.java и UserInfo.java , вида: writeD(L2PcInstance.getNameColor()); ?

Only God Can Judge Me

0
AbsT
AbsT

User

Ветеран

Posts: 1514

На форуме с: 12/10/2007

Репутация: +768

Рейтинг: 0

· 03/18/2009, 12:36 AM

В обоих, но лучше в конструкторах.
1 лишний вызов не помешает.
И сделать его нужно, до того как инфа будет готовится к отправке.


Ничего в WriteImpl менять НЕ нужно.
Точно щас сказать не могу, поздно уже, моск не варит.

Цитата
writeD(L2PcInstance.getNameColor());

А это малясь абсурд )
Во первых L2PcInstance - это лишнее совсем, указывает на пустой не определенный тип.
Во вторых метод getNameColor ничего не возвращает.
Так что отставить, и не трогать write*

////////////////////////////////
Стоп...гоню, туплю ))

Вот пример на UserInfo

Код
  public UserInfo(L2PcInstance character)
    {
        _activeChar = character;

        _moveMultiplier = _activeChar.getMovementSpeedMultiplier();
        _runSpd = (int) (_activeChar.getRunSpeed() / _moveMultiplier);
        _walkSpd = (int) (_activeChar.getWalkSpeed() / _moveMultiplier);
        _swimRunSpd = _flRunSpd = _flyRunSpd = _runSpd;
        _swimWalkSpd = _flWalkSpd = _flyWalkSpd = _walkSpd;
        _relation = _activeChar.isClanLeader() ? 0x40 : 0;
        if (_activeChar.getSiegeState() == 1) _relation |= 0x180;
        if (_activeChar.getSiegeState() == 2) _relation |= 0x80;
       _activeChar.getNameColor();  // <<<<----------
    }


Аналогично сделай и на CharInfo.
Имхо должно работать.

— &#197;lderdom - ingen gl&#228;dje..

0
Tupac Shakur
Tupac Shakur

User

Бывалый

Posts: 153

На форуме с: 05/12/2008

Репутация: +38

Рейтинг: 0

· 03/18/2009, 01:03 AM

Ура! Всё работает, спасибо большое Тебе! :)

Only God Can Judge Me

0
Tupac Shakur
Tupac Shakur

User

Бывалый

Posts: 153

На форуме с: 05/12/2008

Репутация: +38

Рейтинг: 0

· 03/18/2009, 01:20 AM

ЗЫ вот результат: [attachment=2911:finalwork.JPG]
Ещё раз, огромное спасибо AbsT :) Можно закрыть тему.

Only God Can Judge Me

0
Topic is closed for replies