Jump to content
  • 0

[Request] NPC-Change Accesslevel


Question

Posted

Hey guys,

 

First of all, I am using l2j interlude pack .

 

Could anybody share a npc that would change the accesslevel of a player that clicks it? For example, I need an npc that changes the accesslevel of players from 0 to 200.

 

If you cannot share an npc, give me some hints of how to do it on my own

 

Thanks

Recommended Posts

  • 0
Posted

This is really nice krash and matim but one question how can i make this npc choose a random Accesslevel for the player??

Press on the NPC a HTML appears saying "%player%, press the button below and you will have a random access level." and when the button is presed to choose an accesslevel from 2-7 (i dont want it to give full admin rights) But not be able to do it again if it is already changed once..

  • 0
Posted

Thanks Matim, but there is a problem when using this java file in interlude pack. So please , I would be grateful if you could post a code written not in java, but for a __init__.py file (I dont know if I am saying this correct. I mean the way like npc buffers work)

 

If you cannot post a code, all I need is the command that the npc changes the accesslevel. I mean if event == "1": "the following command"

 

 

Thanks!

  • 0
Posted

I hate python, thats why im coding everything with java instead of python for example.

 

Also im not experienced with python.

  • 0
Posted

Anyway thanks for your help, but finally I found it! ;) ;D For those who are interested the code is the following

 

import sys
from net.sf.l2j.gameserver.model.actor.instance import L2PcInstance
from java.util import Iterator
from net.sf.l2j			       import L2DatabaseFactory
from net.sf.l2j.gameserver.model.quest import State
from net.sf.l2j.gameserver.model.quest import QuestState
from net.sf.l2j.gameserver.model.quest.jython import QuestJython as JQuest
  
qn = "AccessManager"
     
NPC=[6949]
QuestId     = 4005
QuestName   = "AccessManager"
QuestDesc   = "custom"
InitialHtml = "1.htm"
    
print "importing custom: AccessManager"

class Quest (JQuest) :

def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr)


def onEvent(self,event,st):
	htmltext = event
	if st.getPlayer().getAccessLevel() == 0 :
		st.getPlayer().setAccessLevel(200)
	else:
		st.getPlayer().setTarget(st.getPlayer())
                return htmltext


def onTalk (self,npc,player):
   st = player.getQuestState(qn)
   htmltext = "<html><head><body>I have nothing to say to you</body></html>"
   st.setState(STARTED)
   return InitialHtml

QUEST       = Quest(QuestId,str(QuestId) + "_" + QuestName,QuestDesc)
CREATED=State('Start',QUEST)
STARTED=State('Started',QUEST)
COMPLETED=State('Completed',QUEST)

QUEST.setInitialState(CREATED)

for npcId in NPC:
QUEST.addStartNpc(npcId)
QUEST.addTalkId(npcId)

Guest
This topic is now closed to further replies.


×
×
  • Create New...