Jump to content
  • 0

Question

Posted

hello, I have a question.... I have a NPC on my server , that you get clan Points and Clan lvl 8...

But the problem is you can get only one time Clan points to one Clan.

How I can make it , that you can get how much times you want Clan points`?

 

Here is the _init_

 

import sys

from com.l2jfrozen.gameserver.model.actor.instance import L2PcInstance

from com.l2jfrozen.gameserver.model.actor.instance import L2NpcInstance

from java.util import Iterator

from com.l2jfrozen.util.database import L2DatabaseFactory

from com.l2jfrozen.gameserver.model.quest import State

from com.l2jfrozen.gameserver.model.quest import QuestState

from com.l2jfrozen.gameserver.model.quest.jython import QuestJython as JQuest

 

qn = "6667_ClanManager"

 

NPC=[66667]

REQUESTED_ITEM=9883

REQUESTED_AMOUNT=2000

NEW_REP_SCORE=5000

QuestId     = 6667

QuestName   = "ClanManager"

QuestDesc   = "custom"

InitialHtml = "66667-1.htm"

 

print "Clan Manager (66667) Enabled..."

 

class Quest (JQuest) :

 

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

 

def onEvent(self,event,st):

              htmltext = "<html><head><body>I have nothing to say you</body></html>"

              count=st.getQuestItemsCount(REQUESTED_ITEM)

              if event == "66667-clanOk.htm" :

                  if st.getPlayer().isClanLeader() and st.getPlayer().getClan().getLevel()<8:

                      if st.getPlayer().isNoble() and count >= REQUESTED_AMOUNT:

                           htmltext=event

                           st.getPlayer().getClan().changeLevel(8)

                           st.playSound("ItemSound.quest_finish")

                           st.takeItems(REQUESTED_ITEM,REQUESTED_AMOUNT)

                      else :

                           htmltext="66667-no_clan.htm"

                           st.exitQuest(1)

                  else :

                      htmltext="66667-no_clan.htm"

                      st.exitQuest(1)

              elif event == "66667-repOk.htm" :

                  if st.getPlayer().isClanLeader() and st.getPlayer().getClan().getLevel() >= 5 and st.getPlayer().getClan().getReputationScore() < NEW_REP_SCORE :

                      if st.getPlayer().isNoble() and count > REQUESTED_AMOUNT:

                           htmltext=event

                           st.getPlayer().getClan().setReputationScore(NEW_REP_SCORE, 1);

                           st.playSound("ItemSound.quest_finish")

                           st.takeItems(REQUESTED_ITEM,REQUESTED_AMOUNT)

                      else :

                           htmltext="66667-no_points.htm"

                           st.exitQuest(1)

                  else :

                      htmltext="66667-no_points.htm"

                      st.exitQuest(1)

              return htmltext

 

def onTalk (self,npc,player):

  htmltext = "<html><head><body>I have nothing to say you</body></html>"

          st = player.getQuestState(qn)

          if not st : return htmltext

          npcId = npc.getNpcId()

          id = st.getState()

          if id == CREATED :

              htmltext="66667-1.htm"

          elif id == COMPLETED :

              htmltext = "<html><head><body>This quest have already been completed.</body></html>"

          else :

              st.exitQuest(1)

          return htmltext

 

 

QUEST = Quest(6667,qn,"custom")

CREATED     = State('Start', QUEST)

STARTING    = State('Starting', QUEST)

STARTED     = State('Started', QUEST)

COMPLETED   = State('Completed', QUEST)

QUEST.setInitialState(CREATED)

 

for npcId in NPC:

QUEST.addStartNpc(npcId)

QUEST.addTalkId(npcId)

 

 

 

I hope some one have better knewlege on scrips then Im, and can help me :) Thanks

4 answers to this question

Recommended Posts

  • 0
Posted

In your script, when trying to add rep points, this is the first check it gotta pass  before add points

 

if st.getPlayer().isClanLeader() and st.getPlayer().getClan().getLevel() >= 5 and st.getPlayer().getClan().getReputationScore() < NEW_REP_SCORE :

 

It checks that the clan is level 5 or below and your clan rep points are below 5000 points.

Just erase the clan level and clan points check or just the points check, which is:

and st.getPlayer().getClan().getReputationScore() < NEW_REP_SCORE

  • 0
Posted

hmm maybe you not understand me... The problem is not the Clan lvl... , I mean ; If I do this one time .. I can't do it again.

1 Clan = 1x Clan Points

but I want ,

1 Clan = 99999999x Clan Point (how much you want)

 

anyway I have try it with your code, but I can't make it more then 1x :/

 

Thanks, for your answer

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Posts

    • competitive prices shyeed bow+10/ maj light set/maj jwl sets discord : gabe9410
    • L2 NEXUM — SERVER FEATURES High Five · PvP · x300 · GMT+3 Play. Fight. Earn SOL. ✨ SERVER FEATURES ──────────────── ⚡ XP / SP: x300 💰 Adena: x50 👥 Party Exp / Party SP: x1.1 🐉 Raid Boss Drop: x2 🔥 Epic Boss Drop: x2 📜 Quest: x5 💚 Vitality: ON (up to x2) 🛡️ ENCHANT ──────────────── Safe Enchant: +6 Max Enchant: +30 Normal 60% · Blessed 80% · Crystal 65% · Divine 100% Olympiad field: +6 / +6 / +6 💻 WINDOWS / HWID ──────────────── 2 free · up to 4 windows VIP (HWID) 🎮 GAMEPLAY ──────────────── AutoFarm · Community Board (ALT+B) · Custom Hi5 interface DressMe · Active AntiCheat · Newbie / Safe / PvP farm zones Daily events: TvT · CTF · Domination · DM Weekly Olympiad · Weekly Sieges 📅 SCHEDULE (GMT+3) ──────────────── 🏰 Castle Sieges: Sun 20:00–22:00 (Lord 16:00 or 20:00) ⚔️ Territory War: Sat 20:00–22:00 🏆 Olympiad: Thu / Fri / Sat 18:00–00:00 · non-class 🐉 Baium: Sat random 20:00–21:00 🌋 Antharas / Valakas: Sun every 2 weeks 22:30–23:30 🧪 QA / Core / Orfen: 18–24h after death 💎 PLAY TO EARN ──────────────── Farm & fight like High Five. Crypto Auction — sell rare items for SOL. One SOL balance on the panel (Donate + Auction). ──────────────────────────────── SERVER BETA  OPENING Saturday 17 October · 20:00 GMT+3 · PvP x300 https://l2nexum.com    https://discord.com/invite/TmHftynKe5
    • I'm in to help test and trial stuff. L2 Pride brings back memories of countless farming in Cave of Trials
    • Version 0.4.0 - A geodata generator and L2J format support have been added   - Now, you can generate geodata for the server directly from the client. Most regions match server files at 99-100%. - Cruma opens and saves geodata in L2J format (.l2j). - Geodata can be converted from L2OFF to L2J and vice versa. - When exporting to L2OFF, you can immediately build a path node even if the original format is L2J. - Zones and NPCs are only displayed where there is geodata and no longer appear in mid-air.   Download
    • https://github.com/luannbr/L2Voice-Chat
  • Topics

×
×
  • Create New...

Important Information

This community uses essential cookies to function properly. Non-essential cookies and third-party services are used only with your consent. Read our Privacy Policy and We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue..