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

Помогите поставить бафера

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

Доброго времени суток.Подскажите ,не могу разобраться:

У бафера есть SQL,HTML,Script файлы. 

Вот я заливаю в базу SQL файл : INSERT INTO `custom_npc` VALUES ('50000', '30175', 'BUFFER', '1', 'GM Shop', '1', 'Monster2.apostle_warrior', '8.00', '25.00', '70', 'female', 'L2Merchant', '40', '3862', '1493', 13.43, 3.09, 40, 43, 30, 21, 20, 10, 0, 0, 2242, 534, 994, 433, 200, 0, 333, 80, 0, 0, 55, 198, 'guard_of_secrets_clan', 300, 0, 0, 'LAST_HIT');

Потом файл htm кидаю по адресу: data\html\default\50000.htm 

В этом файле написано вот что :

html><body><center><title>BUFFER</title>

<br>
List of buffs:

<br>
<table width=280>
    <tr>
        <td align="center"><img src=icon.skill1036 width=32 height=32></td>
        <td align="center"><img src=icon.skill0364 width=32 height=32></td>
        <td align="center"><img src=icon.skill0311 width=32 height=32></td>
    </tr>
    <tr><td></td></tr>
    <tr>
        <td><button value="Buff" action="bypass -h Quest 2001_Buffer 2.htm" width=94 height=21 back="L2UI_ch3.bigbutton_over" fore="L2UI_ch3.bigbutton"></td>
        <td><button value="Song" action="bypass -h Quest 2001_Buffer 3.htm" width=94 height=21 back="L2UI_ch3.bigbutton_over" fore="L2UI_ch3.bigbutton"></td>
        <td><button value="Dance" action="bypass -h Quest 2001_Buffer 4.htm" width=94 height=21 back="L2UI_ch3.bigbutton_over" fore="L2UI_ch3.bigbutton"></td>
    </tr>
</table>

...

<\body><\html>

Дальше идет Script:

__init__$py.class

__init__.py

1,2,3,4,5,6,7.htm

А а файле  __init__.py  прописано это:

 

import sys
from com.l2jfrozen.gameserver.model.actor.instance import L2PcInstance
from java.util import Iterator
from com.l2jfrozen.gameserver.datatables import SkillTable
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 = "2001_Buffer"

NPC=[50000]
ADENA_ID=57
QuestId     = 2001
QuestName   = "Buffer"
QuestDesc   = "custom"
InitialHtml = "50000.htm"


print "                                                                               "
print "=========================== [ Start Custom NPC's by Smallz ] ============================"
print "                                                                               "
print "                            * Buffer                                     [ Ok ]"

class Quest (JQuest) :

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


    def onEvent(self,event,st):
        htmltext = event
        count=st.getQuestItemsCount(ADENA_ID)
        if count < 0  or st.getPlayer().getLevel() < 1 :
            htmltext = "<html><head><body>Voce nao tem Adena,<br> Ou esta com level muito baixo. Tem que ter level 40 ou mais.</body></html>

else:
            st.takeItems(ADENA_ID,0)
            st.getPlayer().setTarget(st.getPlayer())
            
            if event == "1":
                st.takeItems(ADENA_ID,0)
                st.getPlayer().stopAllEffects()
                SkillTable.getInstance().getInfo(1035,4).getEffects(st.getPlayer(),st.getPlayer())
                SkillTable.getInstance().getInfo(1040,3).getEffects(st.getPlayer(),st.getPlayer())
                SkillTable.getInstance().getInfo(1036,2).getEffects(st.getPlayer(),st.getPlayer())
                SkillTable.getInstance().getInfo(1389,3).getEffects(st.getPlayer(),st.getPlayer())
                SkillTable.getInstance().getInfo(1243,6).getEffects(st.getPlayer(),st.getPlayer())
                SkillTable.getInstance().getInfo(1045,6).getEffects(st.getPlayer(),st.getPlayer())
                SkillTable.getInstance().getInfo(1068,3).getEffects(st.getPlayer(),st.getPlayer())
                SkillTable.getInstance().getInfo(1086,2).getEffects(st.getPlayer(),st.getPlayer())
                SkillTable.getInstance().getInfo(1077,3).getEffects(st.getPlayer(),st.getPlayer())
                SkillTable.getInstance().getInfo(1242,3).getEffects(st.getPlayer(),st.getPlayer())
                SkillTable.getInstance().getInfo(1240,3).getEffects(st.getPlayer(),st.getPlayer())
                SkillTable.getInstance().getInfo(1268,4).getEffects(st.getPlayer(),st.getPlayer())
                SkillTable.getInstance().getInfo(1204,2).getEffects(st.getPlayer(),st.getPlayer())
                SkillTable.getInstance().getInfo(1363,1).getEffects(st.getPlayer(),st.getPlayer())
                SkillTable.getInstance().getInfo(271,1).getEffects(st.getPlayer(),st.getPlayer())
                SkillTable.getInstance().getInfo(275,1).getEffects(st.getPlayer(),st.getPlayer())
                SkillTable.getInstance().getInfo(274,1).getEffects(st.getPlayer(),st.getPlayer())
                SkillTable.getInstance().getInfo(272,1).getEffects(st.getPlayer(),st.getPlayer())
                SkillTable.getInstance().getInfo(264,1).getEffects(st.getPlayer(),st.getPlayer())
                SkillTable.getInstance().getInfo(267,1).getEffects(st.getPlayer(),st.getPlayer())
                SkillTable.getInstance().getInfo(269,1).getEffects(st.getPlayer(),st.getPlayer())
                SkillTable.getInstance().getInfo(268,1).getEffects(st.getPlayer(),st.getPlayer())
                SkillTable.getInstance().getInfo(304,1).getEffects(st.getPlayer(),st.getPlayer())
                SkillTable.getInstance().getInfo(349,1).getEffects(st.getPlayer(),st.getPlayer())
                SkillTable.getInstance().getInfo(1323,1).getEffects(st.getPlayer(),st.getPlayer())
                return "1.htm"
                st.setState(COMPLETED)

 

И вот в чем проблема что при нажатии кнопок ничего не происходит,что не так делаю?

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


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

В вашем баффере питон завелся

  • Haha 2

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


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

Сборка сервера какая? Куда устанавливаете?

В гейме ошибку выдаёт при запуске сервера?

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


Ссылка на сообщение
Поделиться на другие сайты
2 часа назад, Avenger сказал:

Сборка сервера какая? Куда устанавливаете?

В гейме ошибку выдаёт при запуске сервера?

Revision 1132 ,ошибку нигде не выдает .Просто штмл по скрипту не работают.Когда кликаешь по кнопке в бафере - то не бафает и не переходит на другую страницу html

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


Ссылка на сообщение
Поделиться на другие сайты
2 часа назад, Rogue сказал:

В вашем баффере питон завелся

информативно

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


Ссылка на сообщение
Поделиться на другие сайты
48 минут назад, Engineer000 сказал:

Revision 1132 ,ошибку нигде не выдает .Просто штмл по скрипту не работают.Когда кликаешь по кнопке в бафере - то не бафает и не переходит на другую страницу html

Скрипт вообще загружен? Прописан в предыдущей папке?

 

Пишет это?

"print "=========================== [ Start Custom NPC's by Smallz ] ============================""

 

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

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


Ссылка на сообщение
Поделиться на другие сайты
17 часов назад, Engineer000 сказал:

qn = "2001_Buffer"

NPC=[50000]
ADENA_ID=57
QuestId     = 2001
QuestName   = "Buffer"
QuestDesc   = "custom"
InitialHtml = "50000.htm"

ну вот в скрипте init.py прописано

и в init eror :

Error on: gameserver\data\scripts\custom\2001_Buffer\__init__.py.error.log
Line: -1 - Column: -1

Traceback (innermost last):
  (no code object) at line 0
SyntaxError: ('Lexical error at line 20, column 87.  Encountered: "\\r" (13), after : ""', ('__init__.py', 20, 87, 'print "     

 

 

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

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


Ссылка на сообщение
Поделиться на другие сайты
В 06.06.2021 в 02:24, Circalover сказал:

Ты не правильно залил его в скрипт

А как правильно залить скрипт? Это в инитру что то менять

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


Ссылка на сообщение
Поделиться на другие сайты
15 часов назад, Engineer000 сказал:

А как правильно залить скрипт? Это в инитру что то менять

Помимо инитру в самом скрипте, нужно добавить загрузку скрипта в предыдущей папке со скрипатми в тотинитру, путь до вашего  скрипта.

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


Ссылка на сообщение
Поделиться на другие сайты
2 минуты назад, Circalover сказал:

Помимо инитру в самом скрипте, нужно добавить загрузку скрипта в предыдущей папке со скрипатми в тотинитру, путь до вашего  скрипта.

Там есть script.cfg и есть в папке custom пустой инит.ру и там я прописал

gameserver\data > scripts.cfg >

# custom
custom/2001_buffer/__init__.py
custom/3995_echo/__init__.py
custom/4000_ShadowWeapons/__init__.py
custom/5000_MissQueen/__init__.py
custom/5001_NewbieCoupons/__init__.py
custom/8003_MeetBaium/__init__.py

gameserver\data > scripts.txt >

custom/2001_Buffer/__init__.py

gameserver\data\scripts\custom > __init__.py >

 '2001_Buffer'

gameserver\data\scripts\custom\2001_Buffer > __init__.py.error.log > 

Line: -1 - Column: -1

Traceback (innermost last):
  File "__init__.py", line 762, in ?
  File "__init__.py", line 21, in __init__
TypeError: org.python.proxies.main$Quest$452(): 1st arg can't be coerced to int

gameserver\data\scripts\custom\2001_Buffer > __init__.py >

21строка  def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr)


24строка	def onEvent(self,event,st):
25строка		htmltext = event
26строка		count=st.getQuestItemsCount(ADENA_ID)
27строка		if count < 0  or st.getPlayer().getLevel() < 1 :
28строка			htmltext = "<html><head><body>Voce nao tem Adena,<br> Ou esta com level muito baixo. Tem que ter level 40 ou mais.</html></head></body>"
		else:
			st.takeItems(ADENA_ID,0)
			st.getPlayer().setTarget(st.getPlayer())
			
			if event == "1":
				st.takeItems(ADENA_ID,0)
				st.getPlayer().stopAllEffects()
				SkillTable.getInstance().getInfo(1035,4).getEffects(st.getPlayer(),st.getPlayer())
				SkillTable.getInstance().getInfo(1040,3).getEffects(st.getPlayer(),st.getPlayer())
				SkillTable.getInstance().getInfo(1036,2).getEffects(st.getPlayer(),st.getPlayer())
				SkillTable.getInstance().getInfo(1389,3).getEffects(st.getPlayer(),st.getPlayer())
				SkillTable.getInstance().getInfo(1243,6).getEffects(st.getPlayer(),st.getPlayer())
				SkillTable.getInstance().getInfo(1045,6).getEffects(st.getPlayer(),st.getPlayer())
				SkillTable.getInstance().getInfo(1068,3).getEffects(st.getPlayer(),st.getPlayer())
				SkillTable.getInstance().getInfo(1086,2).getEffects(st.getPlayer(),st.getPlayer())
				SkillTable.getInstance().getInfo(1077,3).getEffects(st.getPlayer(),st.getPlayer())
				SkillTable.getInstance().getInfo(1242,3).getEffects(st.getPlayer(),st.getPlayer())
				SkillTable.getInstance().getInfo(1240,3).getEffects(st.getPlayer(),st.getPlayer())
				SkillTable.getInstance().getInfo(1268,4).getEffects(st.getPlayer(),st.getPlayer())
				SkillTable.getInstance().getInfo(1204,2).getEffects(st.getPlayer(),st.getPlayer())
				SkillTable.getInstance().getInfo(1363,1).getEffects(st.getPlayer(),st.getPlayer())
				SkillTable.getInstance().getInfo(271,1).getEffects(st.getPlayer(),st.getPlayer())
				SkillTable.getInstance().getInfo(275,1).getEffects(st.getPlayer(),st.getPlayer())
				SkillTable.getInstance().getInfo(274,1).getEffects(st.getPlayer(),st.getPlayer())
				SkillTable.getInstance().getInfo(272,1).getEffects(st.getPlayer(),st.getPlayer())
				SkillTable.getInstance().getInfo(264,1).getEffects(st.getPlayer(),st.getPlayer())
				SkillTable.getInstance().getInfo(267,1).getEffects(st.getPlayer(),st.getPlayer())
				SkillTable.getInstance().getInfo(269,1).getEffects(st.getPlayer(),st.getPlayer())
				SkillTable.getInstance().getInfo(268,1).getEffects(st.getPlayer(),st.getPlayer())
				SkillTable.getInstance().getInfo(304,1).getEffects(st.getPlayer(),st.getPlayer())
				SkillTable.getInstance().getInfo(349,1).getEffects(st.getPlayer(),st.getPlayer())
				SkillTable.getInstance().getInfo(1323,1).getEffects(st.getPlayer(),st.getPlayer())
				return "1.htm"
				st.setState(COMPLETED)


762строка		QUEST       = Quest(QuestId,str(QuestId) + "_" + QuestName,QuestDesc)
763строка		CREATED=State('Start',QUEST)
764строка		STARTED=State('Started',QUEST)
765строка		COMPLETED=State('Completed',QUEST)

 

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


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

Понятно,не подскажешь где найти бафера под яву с профилями?

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


Ссылка на сообщение
Поделиться на другие сайты
37 минут назад, Engineer000 сказал:

Понятно,не подскажешь где найти бафера под яву с профилями?

А стоп, так фрозен вроде только питон и использует.

 

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


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

поставил другого бафера ,возможно вы правы что половина кода питона была.Тут скрипт другой

 

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


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

Не подскажет кто то ,как сделать профили запоминающиеся в бафере так что бы можно было имя профиля свое дать?

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


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

Люди как в бафере сделать рестор HP MP CP? 

в скрипте прописано :

   elif event == "reload" :
        st.getPlayer().restoreCP()
        st.getPlayer().restoreHP()
        st.getPlayer().restoreMP()
        htmltext = "1.htm"

в Html я дописал строку но не пашет ,что не так?

<td align=center><button value="CP/HP/MP" action="bypass -h Quest Buffer_by_Sydhe reload" width=75 height=21 back="L2UI_ch3.Btn1_normalOn" fore="L2UI_ch3.Btn1_normalOn"></td>

 

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


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

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

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

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

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

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

Войти

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

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

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

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

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