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

Lineage II
Дискуссии на тему создания, настройки и обслуживания серверов Lineage 2. При поддержке: Премиум услуги по рекламе

Ответ
Опции темы
Непрочитано 18.09.2012, 13:07   #11
Аватар для Ashe
Олдфаг

По умолчанию Re: Выдаем хиро лидеру по PvP

Цитата:
Сообщение от halaymoon Посмотреть сообщение
Спасибо!
В общей сложности я понимаю как будет выглядеть проверка, но подскажите пожалуйста, как можно получить значение Max Pvp всех игроков из базы?, что бы сравнивать каждый раз с этим значение счетчика текущего игрока.
Покажите, как Вы её представляете, а мы подкорректируем в случае чего.
__________________
Fortuna - non penis, in manus non recipe.
Ashe вне форума Ответить с цитированием
Непрочитано 18.09.2012, 13:42   #12
Аватар для halaymoon
Пользователь

Автор темы (Топик Стартер) Re: Выдаем хиро лидеру по PvP

Ну если очень грубо, то примерно так:

Код:
//getPlayersMaxPvp(){...} // TODO
		
L2PcInstance PrevHero;
		
if(player.getPvpKills() > getPlayersMaxPvP())
{
	PrevHero = getPlayer().getPlayersMaxPvP();
	PrevHero.setHero(false);
	player.setHero(true);
}
Еще сейчас понял, что нужно значение предыдущего героя, сохранить по идее немного ранее, что бы можно было получить этого игрока через getPlayer().

...

Ой я что-то туплю, простите.
Или вообще будет лучше так наверное:
Сделать метод

getPlayerWithMaxPvP(){...}

Будет возвращать именно обьект игрока у которого макс пвп.
Тогда:

Код:
L2PcInstance PrevHero;

if(player.getPvpKills() > getPlayersMaxPvP())
{
	PrevHero = getPlayerWithMaxPvP();
	PrevHero.setHero(false);
	player.setHero(true);
PrevHero = null;
}
З.Ы. Начисление setPvpKills(getPvpKills() + 1); идет уже после этой проверки
halaymoon вне форума Ответить с цитированием
Непрочитано 18.09.2012, 13:55   #13
Аватар для Ozzy
Администратор

По умолчанию Re: Выдаем хиро лидеру по PvP

Вам скорее всего придется перепилить систему PVP. Сделать аналог PK в GOD (только вместо получения репутации - зачисление PVP).
Ozzy вне форума Ответить с цитированием
Непрочитано 18.09.2012, 16:28   #14
Аватар для halaymoon
Пользователь

Автор темы (Топик Стартер) Re: Выдаем хиро лидеру по PvP

Цитата:
Вам скорее всего придется перепилить систему PVP. Сделать аналог PK в GOD (только вместо получения репутации - зачисление PVP).
??? Не понял о чем вообще идет речь. GOD не видел и не пользуюсь и вряд ли буду когда-то использовать - вызывает отвращение

Код:
L2PcInstance PrevHero;

if(player.getPvpKills() > PrevHero.getPlayerWithMaxPvP().getPvpKills())
{
	PrevHero.getPlayerWithMaxPvP().setHero(false);
	player.setHero(true);
        PrevHero = null;
}
Наверное будет даже как-то так.
Плз помогите разобраться: как получить значение макс пвп из всех игроков?

для метода getPlayerWithMaxPvP()
halaymoon вне форума Ответить с цитированием
Непрочитано 18.09.2012, 17:54   #15
Аватар для coldy

По умолчанию Re: Выдаем хиро лидеру по PvP

Цитата:
Сообщение от halaymoon Посмотреть сообщение
Наверное будет даже как-то так.
Плз помогите разобраться: как получить значение макс пвп из всех игроков?
из базы данных
coldy вне форума Ответить с цитированием
Непрочитано 18.09.2012, 18:17   #16
Аватар для ExLite
.

По умолчанию Re: Выдаем хиро лидеру по PvP

Код:
select max(pvpkills) from `characters`;
вернет наибольшее значение
ExLite вне форума Отправить сообщение для ExLite с помощью ICQ Отправить сообщение для ExLite с помощью Skype™ Ответить с цитированием
Сказали спасибо:
Непрочитано 18.09.2012, 20:27   #17
Аватар для coldy

По умолчанию Re: Выдаем хиро лидеру по PvP

Цитата:
Сообщение от ExLite Посмотреть сообщение
Код:
select max(pvpkills) from `characters`;
вернет наибольшее значение
и что с этим делать? ему нужен персонаж, а точнее его objectId.
coldy вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 18.09.2012, 20:35   #18
Аватар для Visor

По умолчанию Re: Выдаем хиро лидеру по PvP

Группировать по charId, сотировать по pvpkills desc, limit 1
__________________
L2Emu Enterprise Server
Visor вне форума Отправить сообщение для Visor с помощью ICQ Отправить сообщение для Visor с помощью Skype™ Ответить с цитированием
Сказали спасибо:
Непрочитано 18.09.2012, 20:59   #19
Аватар для ExLite
.

По умолчанию Re: Выдаем хиро лидеру по PvP

Цитата:
Сообщение от coldy Посмотреть сообщение
и что с этим делать? ему нужен персонаж, а точнее его objectId.
Точно, чет не подумал что ему надо будет еще удалять предыдущего хиро
тогда
Код:
select obj_Id from characters where pvpkills = (select max(pvpkills) from characters);
ExLite вне форума Отправить сообщение для ExLite с помощью ICQ Отправить сообщение для ExLite с помощью Skype™ Ответить с цитированием
Сказали спасибо:
Непрочитано 18.09.2012, 21:08   #20
Аватар для Ozzy
Администратор

По умолчанию Re: Выдаем хиро лидеру по PvP

Цитата:
Сообщение от halaymoon Посмотреть сообщение
??? Не понял о чем вообще идет речь. GOD не видел и не пользуюсь и вряд ли буду когда-то использовать - вызывает отвращение
Вот именно что даже не видели а вызывает отвращение. Однако кое что оттуда можно позаимствовать.
Ozzy вне форума Ответить с цитированием
Ответ


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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Хиро LoveCore Работа со скриптами 5 30.08.2012 18:57
Как выдать "одноразовый хиро" игроку после Ласт Хиро duhnochi Lineage II 0 03.08.2012 06:28
Выдача хиро PellePelle Работа со скриптами 10 15.10.2011 17:32
Хиро MROBAR Игровой клиент 5 24.01.2011 21:29
ХИРО РАКОМ? JaneKyun Lineage II 3 03.07.2010 18:05


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

Вверх