Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Баночик
#11
finfan, с етим я розобрался, спасибо
Готово)

Меня еще интересует такой вопрос, по поводу htm -кам. каким образом можно сделать что персонаж только определенного лвл-а, мог ТП-шьется или открывать список вещей или магазин НПС.
Я бы изменил мир, но Бог не дает исходники...Sad
Ответ
#12
ZefirKO Написал:finfan, с етим я розобрался, спасибо
Готово)

Меня еще интересует такой вопрос, по поводу htm -кам. каким образом можно сделать что персонаж только определенного лвл-а, мог ТП-шьется или открывать список вещей или магазин НПС.
Практически любой квест содержит лимит на уровень, если брать конкретно ТП, то можно выдрать из НПЦ который стоит в ХВ и ТПшит в лоа, если хроники ХФ конечно.
Aka Stels
Ответ
#13
нет, Интерлюд
Я бы изменил мир, но Бог не дает исходники...Sad
Ответ
#14
ZefirKO Написал:finfan, с етим я розобрался, спасибо

Меня еще интересует такой вопрос, по поводу htm -кам. каким образом можно сделать что персонаж только определенного лвл-а, мог ТП-шьется или открывать список вещей или магазин НПС.

В админ командах все уже сделанно за вас, смотрите как оно работает и выдирайте.
Вам остается лишь вписать старую-добрую проверку аля:
[SRC="java"]if(activeChar.getLevel() > 10)
{
teleToLocation(координаты.);
}[/SRC]
Ответ
#15
finfan Написал:Если сборка на основе лыжи, то примерно так:

DocumentBase.java ищем метод parsePlayerCondition()

Пример не идеален ибо он не удовлетворяет вашим потребностям, в итоге вы вводите кол-во лвлов через запятую. Тем более, я в java не силён и там могут быть ошибки.
код очень неидеален - зачем перечислять все допустимые уровни, если автору требуется проверка на диапазон уровней?

лучше сделать примерно так

[SRC="java"]
...

else if ("level".equalsIgnoreCase(nodeName))
{
StringTokenizer st = new StringTokenizer(nodeValue, ";");
int minLevel = parseNumber(st.nextToken().trim()).intValue();
int maxLevel = st.hasMoreTokens() ? parseNumber(st.nextToken().trim()).intValue() : 99;
cond = joinAnd(cond, new ConditionPlayerLevel(minLevel, maxLevel));
}

...
[/SRC]

[SRC="java"]package l2p.gameserver.stats.conditions;

import l2p.gameserver.stats.Env;

public class ConditionPlayerLevel extends Condition
{
private final int _minLevel;
private final int _maxLevel;

public ConditionPlayerLevel(int minLevel, int maxLevel)
{
_minLevel = minLevel;
_maxLevel = maxLevel;
}

@Override
protected boolean testImpl(Env env)
{
return env.character.getLevel() >= _minLevel && env.character.getLevel() <= _maxLevel;
}
}[/SRC]

в результате, примеры:

[SRC="xml"]<player level="10"> <!-- для уровней от 10 до 99 -->
<player level="50;60"> <!-- для уровней от 50 до 60 -->[/SRC]

З.Ы. почти так же будет выглядеть проверка не для цели, а для кастера - просто вместо env.character проверять env.target.
Ответ
#16
спасибо. А такое дело как вместо ЛС-ов вписать 20 своих видов, типа СА каждый ЛС дает свои статы, можно как то такое перемудрить?

Добавлено через 2 минуты
Gaikotsu, я протупил даная проверка есть на эликсирах) такая же
_minLevel = minLevel;
_maxLevel = maxLevel;
Я бы изменил мир, но Бог не дает исходники...Sad
Ответ


Перейти к форуму:


Пользователи, просматривающие эту тему: 2 Гость(ей)