Forum pour réunir les administrateurs de serveur L2
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  

Partagez | 
 

 [RESOLU]Npc script python

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Prodige



Nombre de messages : 47
Date d'inscription : 22/10/2008

MessageSujet: [RESOLU]Npc script python   Jeu 13 Nov 2008, 17:04

Bonjour, voila donc j'apprend le python mais comme toute personne qui apprend je suis confronté à une erreur qui après plusieurs recherches je ne trouve pas de solution, alors j'espère que certains d'entre vous pourrons m'aider.

Alors j'explique:
J'essaye de faire un Npc teleporter, qui quand tu as par exemple 1 Adena te téléporte à un endroit et ajoute un item a ton inventaire ( ou l'inverse t'ajoute l'item dans ton inventaire puis te téléporte ).

Donc moi j'ai fait sa:

Code:
import sys

from com.l2jfree.gameserver.model.actor.instance import      L2PcInstance
from com.l2jfree.gameserver.model.quest        import State
from com.l2jfree.gameserver.model.quest        import QuestState
from com.l2jfree.gameserver.model.quest.jython import QuestJython as JQuest
qn = "6112_TeleportK"
PASS    = 57
GATEKEEPER      = 100001
SOE      = 736


class Quest (JQuest) :

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

 def onTalk (Self,npc,player,st):
  st = player.getQuestState(qn)
  npcId = npc.getNpcId()
  if npcId in [ GATEKEEPER ] :
    if st.getQuestItemsCount(PASS) >= 1 :
      st.takeItems(PASS,1)
     st.giveItems(SOE,5)
      player.teleToLocation(-69060,-64226,-3000)
      st.exitQuest(False)
      return
    else :
      st.exitQuest(1)
      return "1.htm"

QUEST      = Quest(6112,qn,"Teleport")

for i in [GATEKEEPER] :
  QUEST.addStartNpc(i)
  QUEST.addTalkId(i)

Mais j'ai cette erreur:

Code:
Line: -1 - Column: -1

Traceback (innermost last):
  (no code object) at line 0
SyntaxError: ('invalid syntax', ('__init__.py', 23, 12, '\t  st.giveItems(SOE,5) '))

Si je retire le " st.giveitems(SOE,5) " le npc prend le 1 adena et me teleporte. Mais si j'ajoute " st.giveitems(SOE,5) " j'obtient donc l'erreur.
J'ai aussi essayé:
Code:
      player.teleToLocation(-69060,-64226,-3000) and st.giveitems(SOE,5)

Mais toujours la meme erreur.
Voila j'espere que j'ai assez detaillé et que vous pourrez m'aider. Razz


Dernière édition par Prodige le Jeu 13 Nov 2008, 18:52, édité 1 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Skatershi



Nombre de messages : 1305
Age : 28
Date d'inscription : 09/11/2006

MessageSujet: Re: [RESOLU]Npc script python   Jeu 13 Nov 2008, 18:38

Essaye :

Code:
import sys

from com.l2jfree.gameserver.model.actor.instance import      L2PcInstance
from com.l2jfree.gameserver.model.quest        import State
from com.l2jfree.gameserver.model.quest        import QuestState
from com.l2jfree.gameserver.model.quest.jython import QuestJython as JQuest

qn = "6112_TeleportK"

PASS    = 57
SOE      = 736
GATEKEEPER    = 52004

class Quest (JQuest) :

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

 def onTalk (Self,npc,player):
  st = player.getQuestState(qn)
  npcId = npc.getNpcId()
  if npcId in [ GATEKEEPER ] :
    if st.getQuestItemsCount(PASS) >= 1:
      st.takeItems(PASS,1)
      st.rewardItems(SOE,5)
      player.teleToLocation(-69060,-64226,-3000)
      st.exitQuest(1)
      return
    else :
      st.exitQuest(1)
      return "1.htm"

QUEST      = Quest(6112,qn,"Teleport")

for i in [GATEKEEPER] :
  QUEST.addStartNpc(i)
  QUEST.addTalkId(i)

Attention les fonctions "reward" et "give" ne sont pas les mêmes.

Note : La fonction
Code:

if npcId in [ GATEKEEPER ]
Ne sers à rien si tu comptes laisser l'accés au script à un seul NPC.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Prodige



Nombre de messages : 47
Date d'inscription : 22/10/2008

MessageSujet: Re: [RESOLU]Npc script python   Jeu 13 Nov 2008, 18:52

Je te remercie sa marche du tonnerre Smile
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: [RESOLU]Npc script python   Aujourd'hui à 17:40

Revenir en haut Aller en bas
 
[RESOLU]Npc script python
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [résolu] Ce script affiche dans la barre de statut le temps passé sur la page et une alerte au moment ou la page se ferme
» [Résolu] Comment activer JavaScript (impôts)
» [RESOLU] [SCRIPT] Générateur de texte
» Problème de script gravité [RESOLU]
» [résolu] script ou code pour mettre une application sur mon forum ??

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
L2J-FR :: Général :: Aides et Conseils-
Sauter vers: