Jump to content
  • 0

[HELP] Add Restriction in NPC Buffer


rafiuskyz

Question

how do I say that the player in this event and can not use the Buff?

 

I tried without success for some forms... example

 

def onTalk (self,npc,player):

  st = player.getQuestState(qn)

  if st.getPlayer().TVTEvent.isParticipating() :

      return "Warning: You are attending the event TvT and can not use NPC Buffer!"

      st.exitQuest(1) 

 

  elif st.getPlayer()._inEventCTF() :

      return "Warning: You are attending the event CTF and can not use NPC Buffer!"

      st.exitQuest(1) 

 

  else:

      st.setState(STARTED)

      return InitialHtml

 

 

Link to comment
Share on other sites

11 answers to this question

Recommended Posts

  • 0

Que versao do core vc usa? no core que estou codificando qq evento tvt ou ctf q vc cria ele removes todos os efeitos dos char (buffs, etc) ao entrar no evento. portanto isso que vc esta querendo fazer é algo desnecessario. Ele pode se buffar quantas vezes quiser e com qq tipo de buff ao entrar no evento ele irá perder todos.

Link to comment
Share on other sites

  • 0

Quero adicionar esta restrição pro NPC BUFFER nao BUFFAR o cara se ele estiver registrado nos Eventos, eu sei que ele perde os buffs ao inicio do evento, mas tem sempre os safados que tentam de tudo

Link to comment
Share on other sites

  • 0

não adianta ele tentar, o buff sera removido, pode ver q todo server q tem evento ctf e tvt nao se preocupa com isso. Tem um função dentro do core responsavel por essa tarefa, se alguem descobrir algum bug o cara nem vai usar seu npc buffer ele vai criar um char buffer pra entra no evento buffado, isso se ele conseguir. Não sei se no python o objeto do character herda propriedades ou methodos dos eventos nunca testei isso, creio que seja possivel, mas fazer isso com uma proteçao ja existente no core na minha opniao é algo inutil, sem contar q uma codificação pelo core é mais segura que em um script python.

Link to comment
Share on other sites

  • 0

try that and tell me

 

def onEvent(self,event,st):
htmltext = event
if st.getPlayer().isInFunEvent: 
htmltext = "<html><head><body>bla bla bla</body></html>"

Link to comment
Share on other sites

  • 0

fakoykas, I tried as you said and all that without being restricted to event.

 

if st.getPlayer().isInFunEvent:
      return "Warning: You are attending the event TvT and can not use NPC Buffer!"

 

and also tried the following  adding () also unsuccessfully, not restricted anyone! =/

 

if st.getPlayer().isInFunEvent() :
      return "Warning: You are attending the event TvT and can not use NPC Buffer!"

 

sorry for my English I use translator.

Link to comment
Share on other sites

  • 0

do it

 

if st.getplayer()._inEvent()  <<<<

 

try player._inEvent or st.player._inEvent or any object related to players with this function ._inEvent [boolean]

 

I sayid maybe the object 'player' in python dont inherit methods, functions, classes from the classes related to events.

 

I think this code is useless because when the character enter in the tvt zone all effects are removed.

Link to comment
Share on other sites

  • 0

or easier way go to the tvt.java and add a check to the npc dont give buff on event

 

1st you need a private static int npcId = the buffers id;(private or public it doesnt matter here)

 

and than the check is easy

 

if (npcId == the buffers id)

    return false;(or an activeChar.sendMessage or an action failed packet or what you want)

Link to comment
Share on other sites

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.



×
×
  • 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