Перейти к содержанию
Авторизация  
Holsten

Скрипт Покраска Ников

Рекомендуемые сообщения

Подскажите как в стандартном скрипте покраски ников, который идёт у pw, сделать покраску не за 1 определенный итем, а за 2 разных ?

 

 

import sys

from java.lang import System

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 = "q8024_ChgColor"

 

NPC = 50001

 

PRICES = {

1: [4355, 3, "Blue Eva"],

2: [4355, 1, "Blue Eva"],

}

 

COLOURS = {

1: ["00FF00","00FF00"],

2: ["16721c","1c7216"],

3: ["00FFFF","FFFF00"],

4: ["FF0000","0000FF"],

5: ["FFFB00","00FBFF"],

6: ["337fe6","e67f33"],

7: ["DDA0DD","DDA0DD"],

8: ["808080","808080"],

9: ["000000","000000"],

10: ["81c739","81c739"],

11: ["9120b1","b12091"],

12: ["7c2196","96217c"],

13: ["811664","641681"],

14: ["6b4558","58456b"],

}

 

class Quest (JQuest) :

 

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

 

def onAdvEvent (self,event,npc,player):

st = player.getQuestState(qn)

if event == "step1":

htmltext = "\

\

"

htmltext += "Что красим?*

"

htmltext += ""

htmltext += ""

htmltext += ""

htmltext += " elif event.startswith("paint_"):

get = str(event.replace("paint_", ""))

vtype,color=get.split("_")

vtype,color=int(vtype),int(color)

#<

paintcolor = int(COLOURS[0],16)

if vtype == 1:

if st.getQuestItemsCount(PRICES[1][0]) < int(PRICES[1][1]):

htmltext = ""

return htmltext

st.takeItems(PRICES[1][0],PRICES[1][1])

player.getAppearance().setNameColor(paintcolor)

else:

if st.getQuestItemsCount(PRICES[2][0]) < int(PRICES[2][1]):

htmltext = ""

return htmltext

st.takeItems(PRICES[2][0],PRICES[2][1])

player.getAppearance().setTitleColor(paintcolor)

#<

player.broadcastUserInfo()

player.store()

htmltext = " else:

htmltext = ""

return htmltext

 

def onTalk (self,npc,player):

st = player.getQuestState(qn)

npcId = npc.getNpcId()

if npcId == NPC:

htmltext = "

"

return htmltext

 

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

CREATED = State('Start', QUEST)

 

QUEST.setInitialState(CREATED)

 

QUEST.addStartNpc(NPC)

QUEST.addTalkId(NPC)

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это цена за ник и тутул, отдельно, это уже написано в скрипте. Надо именно чтоб за каждую позицию по 2 разных итема снимало.

Изменено пользователем Holsten

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это цена за ник и тутул, отдельно, это уже написано в скрипте. Надо именно чтоб за каждую позицию по 2 разных итема снимало.

1: [4037, 1, "Blue Eva"],

2: [57, 1, "Blue Eva"],

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

if st.getQuestItemsCount(PRICES[1][0]) < int(PRICES[1][1]) :// тут дописать проверку на второй итем st.getQuestItemsCount()

htmltext = ""

return htmltext

st.takeItems(PRICES[2][0],PRICES[2][1])

//Тут вставить как на строчке выше убирание итема из инвентаря st.takeItems()

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите как в стандартном скрипте покраски ников, который идёт у pw, сделать покраску не за 1 определенный итем, а за 2 разных ?

 

 

import sys

from java.lang import System

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 = "q8024_ChgColor"

 

NPC = 50001

 

PRICES = {

1: [4355, 3, "Blue Eva"],

2: [4355, 1, "Blue Eva"],

}

 

COLOURS = {

1: ["00FF00","00FF00"],

2: ["16721c","1c7216"],

3: ["00FFFF","FFFF00"],

4: ["FF0000","0000FF"],

5: ["FFFB00","00FBFF"],

6: ["337fe6","e67f33"],

7: ["DDA0DD","DDA0DD"],

8: ["808080","808080"],

9: ["000000","000000"],

10: ["81c739","81c739"],

11: ["9120b1","b12091"],

12: ["7c2196","96217c"],

13: ["811664","641681"],

14: ["6b4558","58456b"],

}

 

class Quest (JQuest) :

 

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

 

def onAdvEvent (self,event,npc,player):

st = player.getQuestState(qn)

if event == "step1":

htmltext = "><img src=

"

htmltext += "Что красим?*

"

htmltext += ""

htmltext += ""

htmltext += ""

htmltext += " elif event.startswith("paint_"):

get = str(event.replace("paint_", ""))

vtype,color=get.split("_")

vtype,color=int(vtype),int(color)

#<

paintcolor = int(COLOURS[0],16)

if vtype == 1:

if st.getQuestItemsCount(PRICES[1][0]) < int(PRICES[1][1]):

htmltext = ""

return htmltext

st.takeItems(PRICES[2][0],PRICES[2][1])

player.getAppearance().setTitleColor(paintcolor)

#<

player.broadcastUserInfo()

player.store()

htmltext = ""

return htmltext

 

def onTalk (self,npc,player):

st = player.getQuestState(qn)

npcId = npc.getNpcId()

if npcId == NPC:

htmltext = ""

return htmltext

 

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

CREATED = State('Start', QUEST)

 

QUEST.setInitialState(CREATED)

 

QUEST.addStartNpc(NPC)

QUEST.addTalkId(NPC)

 

 

 

сделай 2 скрипта

 

1. Покраска за колы

2. Покраска за кровь девственниц

 

ну и соотв. разные скрипты

делал так с геройством, почему бы и нет?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...