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

Вопрос

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

//PvP Rank by 20 PvP

if (activeChar.getPvpKills() >= 20)

activeChar.setTitle("Newbie Killer");

activeChar.sendMessage("Congratulation You Reach 20 Kills");

activeChar.sendMessage("You Promoted to Newbie Killer Rank");

{

//PvP Rank by 50 PVP

if (activeChar.getPvpKills() >= 50)

activeChar.setTitle("Professional Killer");

activeChar.sendMessage("Congratulation You Reach 50 Kills");

activeChar.sendMessage("You Promoted to Professional Killer Rank");

}

//PvP Rank by 150 PVP

if (activeChar.getPvpKills() >= 150)

activeChar.setTitle("Full Killer");

activeChar.sendMessage("Congratulation You Reach 150 Kills");

activeChar.sendMessage("You Promoted to Full Killer Rank");

{

//PvP Rank by 350 PVP

if (activeChar.getPvpKills() >= 350)

activeChar.setTitle("The Killer");

activeChar.sendMessage("Congratulation You Reach 350 Kills");

activeChar.sendMessage("You Promoted to The Killer Rank");

{

//PvP Rank by 650 PVP

if (activeChar.getPvpKills() >= 650)

activeChar.setTitle("Expert Killer");

activeChar.sendMessage("Congratulation You Reach 650 Kills");

activeChar.sendMessage("You Promoted to Expert Killer Rank");

}

//PvP Rank by 1000 PVP

if (activeChar.getPvpKills() >= 1000)

activeChar.setTitle("HitMan");

activeChar.sendMessage("Congratulation You Reach 1000 Kills");

activeChar.sendMessage("You Promoted to HitMan Rank");

}

 

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

Пример:

HitMan - это как по обычному коду будет

 

 

[HitMan]YouTitle - как по новому или тип етого

 

Плюсы раздаю всем, кто поможет в теме!!

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


Ссылка на сообщение
Поделиться на другие сайты
как сделать что бы титул не полностью изменялся а, просто добавлялся к основному

Пример:

HitMan - это как по обычному коду будет

 

 

[HitMan]YouTitle - как по новому или тип етого

 

Плюсы раздаю всем, кто поможет в теме!!

activeChar.setTitle(activeChar.getTitle() + " " + "HitMan");

думаю всё понятно.

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


Ссылка на сообщение
Поделиться на другие сайты
activeChar.setTitle(activeChar.getTitle() + " " + "HitMan");

думаю всё понятно.

 

В таком случае, при присвоении нового ранга будет косяк :rolleyes:

Делайте доп. сеттер и геттер для нового объекта аналогично исходному титулу. Далее модифицируйте CharInfo и UserInfo.

 

Вот похожая реализация в моем GVE:

 

writeS(_cha.getTitle() + (!_cha.isGM() ? "[" + _cha.getPrice() + "a]" : "[GM]"));

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


Ссылка на сообщение
Поделиться на другие сайты
activeChar.setTitle(activeChar.getTitle() + " " + "HitMan");

думаю всё понятно.

 

 

ууу оперативно спасиб большое выручилл)

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


Ссылка на сообщение
Поделиться на другие сайты
В таком случае, при присвоении нового ранга будет косяк :rolleyes:

Делайте доп. сеттер и геттер для нового объекта аналогично исходному титулу. Далее модифицируйте CharInfo и UserInfo.

 

Вот похожая реализация в моем GVE:

 

writeS(_cha.getTitle() + (!_cha.isGM() ? "[" + _cha.getPrice() + "a]" : "[GM]"));

 

 

 

стоп, что таке сеттер и геттер?

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


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

 

private int status;

public void setStatus(int status)
{
this.status = status;
}

public int getStatus()
{
return this.status;
}

 

Вот вам пример сеттера и геттера. Тут по аналогии достаточно превести к другому типу, и готово.

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


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

if (activeChar.getPvpKills() >= 1000)

writeS(activeChar.setTitle() + (!activeChar.isGM() ? "[" + activeChar.getPrice() + "a]" : "[HitMan]"));

activeChar.sendMessage("Congratulation You Reach 20 Kills");

activeChar.sendMessage("You Promoted to Newbie Killer Rank");

 

 

правильно написал код?

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


Ссылка на сообщение
Поделиться на другие сайты
if (activeChar.getPvpKills() >= 1000)

writeS(activeChar.setTitle() + (!activeChar.isGM() ? "[" + activeChar.getPrice() + "a]" : "[HitMan]"));

activeChar.sendMessage("Congratulation You Reach 20 Kills");

activeChar.sendMessage("You Promoted to Newbie Killer Rank");

 

 

правильно написал код?

 

Нет.

Учите Java, базовые принцыпы ООП и будет вам профит.

 

Нет желания?

Используйте метод iceman, но будте готовы к багу что я описал выше.

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

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


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

 

а что не так подскажите

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


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

 

1. Добавляете новый сеттер и геттер объекту L2Pc

2. В пакете CharInfo и UserInfo корректируете отправку титула клиенту с добавлением данных из геттера. (пример я давал выше)

3. Далее, для установки "префикса" (или как вы эту шнягу называете) используете сеттер.

4. После установки "префикса" бродкастите инфо о чаре.

5. ??????

6. PROFIT!!1

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


Ссылка на сообщение
Поделиться на другие сайты
1. Добавляете новый сеттер и геттер объекту L2Pc

2. В пакете CharInfo и UserInfo корректируете отправку титула клиенту с добавлением данных из геттера. (пример я давал выше)

3. Далее, для установки "префикса" (или как вы эту шнягу называете) используете сеттер.

4. После установки "префикса" бродкастите инфо о чаре.

5. ??????

6. PROFIT!!1

 

 

не... мне ето походу не дано) мб чёт наковыряю дак получится) спасибо)

 

может ещё кто-то мне поможет? :unsure:

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

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


Ссылка на сообщение
Поделиться на другие сайты
В таком случае, при присвоении нового ранга будет косяк :unsure:

Точняк, завтыкал что у него он будет каждый раз обновлятся.)

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


Ссылка на сообщение
Поделиться на другие сайты
Точняк, завтыкал что у него он будет каждый раз обновлятся.)

 

Вы ещё не учли одну плохую особенность клиента. Он не готов принять титулы длиннее 16 символов.

Так что вперед, делайте обрезание :unsure:

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


Ссылка на сообщение
Поделиться на другие сайты
не... мне ето походу не дано) мб чёт наковыряю дак получится) спасибо)

 

может ещё кто-то мне поможет? :unsure:

 

У вас два выхода:

 

а. Учиться

б. Заказывать

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


Ссылка на сообщение
Поделиться на другие сайты
Вы ещё не учли одну плохую особенность клиента. Он не готов принять титулы длиннее 16 символов.

Так что вперед, делайте обрезание :unsure:

Ну я как бы за это и сказал что забыл что он у него будет обновлятся и придёт время когда он достигнет придела. :):spiteful:

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

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


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

В L2Character.java (или как там в Вашей сборке называется класс, являющийся родителем класса игрока):

 

	// Изменить:
public final String getTitle(){
	if (this instanceof L2PcInstance){
		String tempTitle = getPvpRank() + " - " + _title;
		return tempTitle.length() > 16 ? tempTitle.substring(0, 15) : tempTitle;
	} else return _title;
}
// Добавить:
private final String getPvpRank(){
	if (((L2PcInstance) this).getPvpKills() > 1000 ){
		return "Hitman";
	} else if (((L2PcInstance) this).getPvpKills() > 500 ){
		return "Expert Killer";
	} else if (((L2PcInstance) this).getPvpKills() > 250 ){
		return "Killer";
	} else if (((L2PcInstance) this).getPvpKills() > 100 ){
		return "Newbie";
	} else {
		return "Elpy";
	}
}

 

Только вот остается вопрос того, что игрокам не понравится бегать с нубскими титулами. А если добавлять ранк только после 500 киллов - то все нубы будут "подделывать" этот фирменный титул.

Выход - при 500+ титул делать другого цвета и выводить ранг, тогда будет сразу понятно, подделал игрок титул, или настоящий.

 

Но, так или иначе, необходимо игроку самому решить, показывать свой ранк или нет. Я для таких вещей сделал у себя "пользовательские переменные", которых хранятся в базе. А через комьюнити игрок настраивает их (автолут, достижения, экономия трафика и другое).

 

PS: ТопикСтартер, сервер уже работает, или только балуешься? Есть ли профит от него? Могу предложить свои услуги программиста. За деньги, разумеется.

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

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


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

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

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

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

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

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

Войти

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

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

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

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

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