Перейти к содержимому
La2Base
Главная
ЗагрузкиВикиФорумFAQ
ruen
Регистрация Войти
ГлавнаяФайлыВикиВойти
  • Главная
  • Загрузки
  • Вики
  • FAQ
  • Обратная связь
  • О проекте
  • Правила
  • Конфиденциальность
  • Условия использования

© 2026 la2base.com · Все права защищены

ruen
Форум/Квесты/Как дать геройство на сутки?
Поиск

Как дать геройство на сутки?

9 ответов302 просмотровСейчас просматривают: 1
Z
Zettog

Пользователь

Участник

Постов: 27

На форуме с: 15.03.2009

Рейтинг: 0

· 28.12.2009, 11:28

Привет всем.
Вот переделываю эвент, хотел в кач-ве приза выдавать статус героя на сутки.
Эвент масовый пвп, побеждает только один либо никто...

Вот кусок кода отвечающий за выдачу приза,
как сделать выдачу статуса героя на одни сутки или до первого релога?
----------------------------------------------------------------
if event == "win" :
if len(Players) > 0 and len(Players + Deadplayers) >= Min_participate_count:
winner=L2World.getInstance().getPlayer(Players[0])
Deadplayers.append(Players[0])
if winner.isDead():
Announcements.getInstance().announceToAll("Event "+str(Event_name)+" has ended. All players is dead. Nobody Win")
else :
Announcements.getInstance().announceToAll("Event "+str(Event_name)+" has ended.")
Announcements.getInstance().announceToAll("Event: "+str(Players[0])+" win!")
for nm in Deadplayers :
i=L2World.getInstance().getPlayer(nm)
if i<>None and i.isOnline():
if i.isDead():
i.doRevive()
i.setCurrentCp(i.getMaxCp())
i.setCurrentHp(i.getMaxHp())
i.setCurrentMp(i.getMaxMp())
i.stopAllEffects()
i.broadcastStatusUpdate()
i.broadcastUserInfo()
if len(Deadplayers)>0:
n = 0
for nm in lastPlayers :
i=L2World.getInstance().getPlayer(nm)
i.teleToLocation(lastX[n],lastY[n],lastZ[n])
n = n + 1
if winner<>None:
if winner.isOnline() :
for id, count, chance in Rewards :
winner.getQuestState(qn).giveItems(id,count)
---------------------------------------------------------------------------------
Заранее спасибо!

Да и ещё,

как запустить эвент в опеределённое время?

скажем раз в неделю в 15.00 мск?

0
Z
Zettog

Пользователь

Участник

Постов: 27

На форуме с: 15.03.2009

Рейтинг: 0

· 28.12.2009, 13:06

и как запретить юзать банки?

0
King708
King708

Пользователь

Бывалый

Постов: 178

На форуме с: 18.05.2009

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

Рейтинг: 0

· 28.12.2009, 13:10

на счет кода незнаю, а если от гма то //sethero ник кол-во дней (//sethero King708 1)

0
Z
Zettog

Пользователь

Участник

Постов: 27

На форуме с: 15.03.2009

Рейтинг: 0

· 28.12.2009, 14:26

Мне нужно кодом в питоне запретить юзать банки на эвенте, и в кач-ве приза выдавать статус героя на сутки)

0
Z
Zettog

Пользователь

Участник

Постов: 27

На форуме с: 15.03.2009

Рейтинг: 0

· 28.12.2009, 15:44

Такс с призом решил проблемму с помощью:
L2World.getInstance().getPlayer(Players[0]).setHero(True)
получает хиро до первого релогина.

Надо запретить юзать банки на эвенте и запускать эвент раз в неделю в опеределённое время...

Подскажите как...

0
Хам
Хам

Пользователь

Бывалый

Постов: 179

На форуме с: 16.03.2008

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

Рейтинг: 0

· 07.01.2010, 18:12

ну запускать эвент я думаю можно сделать через xml (эвенты) а вот с банками хз

0
Хам
Хам

Пользователь

Бывалый

Постов: 179

На форуме с: 16.03.2008

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

Рейтинг: 0

· 07.01.2010, 19:27

по запуску эвента, случно наткнулся в сдре на:

Код
    public void startQuestTimer(String name, long time, L2NpcInstance npc, L2PcInstance player)
    {
        startQuestTimer(name, time, npc, player, false);
    }

в Quest.class

0
H
HeroFunk
· 08.01.2010, 08:17

команда выдачи геройства на сутки //heroget la2base 1
место la2base ставишь ник персонажа а 1 это сутки
на счёт кода хз

0
A
Akumu
· 08.01.2010, 13:51

Из исходников базы:





Дал код как реализовать, разбирайся

0
Войдите или зарегистрируйтесь чтобы ответить