Jump to content
  • 0

Question

Posted (edited)

Hi, i've got this event  "Raid Event" from Freya, which automatic respawns a random raid and then gives a reward.

 

import math
import sys
from com.l2jserver.gameserver              import Announcements
from com.l2jserver.util                    import Rnd
from java.lang                      import System
from com.l2jserver.gameserver.model.actor.appearance   import PcAppearance
from com.l2jserver.gameserver              import GameTimeController
from com.l2jserver.gameserver.model.quest          import State
from com.l2jserver.gameserver.model.quest          import QuestState
from com.l2jserver.gameserver.model.quest.jython       import QuestJython as JQuest
from com.l2jserver.gameserver.model.actor.instance     import L2PcInstance
from com.l2jserver.gameserver.model.actor.instance     import L2NpcInstance
 
 

qn = "2002_EventRaid"
QuestDesc   = "custom"

Raids =  [ 22799,18792,18863 ] 
 

 
#time between events in milliseconds
eventInterval = 7200000  # 2 hours after the first event there is the second one and the others after are 2 hours too
FirstStart = 60000  #1 minute after each restart there is the first event
 
 
class Quest (JQuest):
 
    def __init__(self,id,name,descr):
        JQuest.__init__(self,id,name,descr)
        self.RaidBosses ={
                0: {'name':"Gabriel" , 'id':22799},
                1: {'name':"Draken" , 'id':18792},
                2: {'name':"Ugoros" , 'id':18863},
                }
        self.RbCoords ={
                0: {'name':"in A Raid Zone" , 'X':115191 , 'Y':16607 , 'Z':10085},
                1: {'name':"in A Raid Zone" , 'X':115191 , 'Y':16607 , 'Z':10085},
                2: {'name':"in A Raid Zone" , 'X':115191 , 'Y':16607 , 'Z':10085},
                }
        self.startQuestTimer("EventTrigger", FirstStart, None, None)
        self.RbSpawn = []
        self.rewards ={
                0: {'prize':7609 , 'number':1}, 
                }
        self.Event = []
 
 
    def onAdvEvent (self,event,npc,player):
        if event == "EventTrigger" :
                self.Event = 1
                #the spawn coords and which raidboss are both random and
                #independant from each other
                ra = int(Rnd.get(3))
                rb = int(Rnd.get(3))
                raidboss = self.RaidBosses[ra]['name']
                location = self.RbCoords[rb]['name']
                Announcements.getInstance().announceToAll(raidboss + " spawned " + location + " you have 30 minutes!")
                self.RbSpawn = self.addSpawn(self.RaidBosses[ra]['id'],self.RbCoords[rb]['X'],self.RbCoords[rb]['Y'],self.RbCoords[rb]['Z'],0,False,0)
                self.startQuestTimer("RbDespawn", 1800000, npc, player)                           
                         
        if event == "RbDespawn":
            self.RbSpawn.deleteMe()
            Announcements.getInstance().announceToAll("The Raid has survived!")
            self.startQuestTimer("EventTrigger", eventInterval, npc, player)

 
 
    def onKill (self,npc,player,isPet):
        npcId = npc.getNpcId()
        if npcId in Raids:
            Announcements.getInstance().announceToAll("RaidBoss event ended, the Raid has been killed, good job!")
            self.cancelQuestTimer("RbDespawn", None, None)
            self.startQuestTimer("EventTrigger", eventInterval, npc, player)
 
# Quest class and state definition
QUEST     = Quest(-1,qn,QuestDesc)
 
for i in Raids:
    QUEST.addKillId(i)
 
 
print "Event Manager loaded!!!"

 

 

i need something like this for Interlude (Frozen) .. more specific, what i just need is the auto spawn/despawn of a certain NPC every xxxxx time with an announcement.

Does somebody has this?

Edited by IvanLabonia

2 answers to this question

Recommended Posts

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Posts

    • try to send the PID of l2.bin to active64.sys service and we will avoid to buy aac license xD. i will try it in the next days. 😄
    • 🤝 SocNet is looking for new partners and suppliers!  We are building a reliable partner network across all areas of online business.  If you're in digital, traffic, accounts, or media — let’s discuss collaboration opportunities.   📌 Open to:  — Webmasters and media buyers  — Telegram channel and website owners  — Sellers of accounts and auto-registered profiles  — Developers of digital services  — Marketing agencies and freelancers 💬 We value quality, transparency, and growth. If that resonates with you — get in touch!   📎 Our current list of partners:  🔗 https://socnet.bgng.io/partners   📦 Our key products:  🛒 Online Store: Click ✅  🤖 Telegram Bot: Click ✅  📲 SMM Panel: Click ✅   📩 Contact us:  💬 Telegram: https://t.me/solomon_bog  📱 WhatsApp: https://wa.me/79051904467  🎮 Discord: https://discord.gg/y9AStFFsrh  📧 Email: solomonbog@socnet.store   📢 Follow updates: https://t.me/accsforyou_shop ✅
    • 🤝 SocNet is looking for new partners and suppliers!  We are building a reliable partner network across all areas of online business.  If you're in digital, traffic, accounts, or media — let’s discuss collaboration opportunities. 📌 Open to:  — Webmasters and media buyers  — Telegram channel and website owners  — Sellers of accounts and auto-registered profiles  — Developers of digital services  — Marketing agencies and freelancers 💬 We value quality, transparency, and growth. If that resonates with you — get in touch! 📎 Our current list of partners:  🔗 https://socnet.bgng.io/partners 📦 Our key products:  🛒 Online Store: Click ✅  🤖 Telegram Bot: Click ✅  📲 SMM Panel: Click ✅ 📩 Contact us:  💬 Telegram: https://t.me/solomon_bog  📱 WhatsApp: https://wa.me/79051904467  🎮 Discord: https://discord.gg/y9AStFFsrh  📧 Email: solomonbog@socnet.store 📢 Follow updates: https://t.me/accsforyou_shop ✅
    • 🤝 SocNet is looking for new partners and suppliers!  We are building a reliable partner network across all areas of online business.  If you're in digital, traffic, accounts, or media — let’s discuss collaboration opportunities. 📌 Open to:  — Webmasters and media buyers  — Telegram channel and website owners  — Sellers of accounts and auto-registered profiles  — Developers of digital services  — Marketing agencies and freelancers 💬 We value quality, transparency, and growth. If that resonates with you — get in touch!   📎 Our current list of partners:  🔗 https://socnet.bgng.io/partners   📦 Our key products:  🛒 Online Store: Click ✅  🤖 Telegram Bot: Click ✅  📲 SMM Panel: Click ✅   📩 Contact us:  💬 Telegram: https://t.me/solomon_bog   📱 WhatsApp: https://wa.me/79051904467  🎮 Discord: https://discord.gg/y9AStFFsrh  📧 Email: solomonbog@socnet.store   📢 Follow updates: https://t.me/accsforyou_shop ✅
    • 🔥 **L2MADPvP - Interlude x1200 | GRAND OPENING 19  2025!** 🔥 ✅ Classic Interlude PvP experience — No custom items, only fair gameplay. ✅ Balanced classes — No OP donations, pure skill PvP. ✅ Epic battles, daily GM events, active community. ✅ Auto Farm areas — No grind, just fight! ✅ Vote Reward system — Earn Donate Coins for free. 🌍 Website: www.l2madpvp.com   💬 Join our Discord: https://discord.gg/qDmRjMQ2   🎁 Grand Opening Giveaway  🗓️ Opening: **23/07/2025 at 16:00 GMT+2** 👉 Gather your clan, dominate the battlefield & become legend!
  • Topics

×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock