Javascript-форум (https://javascript.ru/forum/)
-   Оффтопик (https://javascript.ru/forum/offtopic/)
-   -   Java - Здравствуйте, вопрос про написание js (https://javascript.ru/forum/offtopic/10844-java-zdravstvujjte-vopros-pro-napisanie-js.html)

noobasik 24.07.2010 02:11

Java - Здравствуйте, вопрос про написание js
 
Здравствуйте уважаемые.
Я в js не силен, способен только на мелкое редактирование и поэтому обращаюсь к вам уважаемые знатоки
Есть скрипт
Целым его показывать смысла невижу, покажу ту часть над которой пытаюсь разобраться.
htmltext = "<html><body>Market:<br>Вещи на продажу:<br><table width=300>" + htmltext + "</table></body></html>"
   elif event.startswith("sell_"):
     itemObjId = int(event.replace("sell_", ""))
     obj = str(itemObjId)
     Item = st.getPlayer().getInventory().getItemByObjectId(itemObjId)
     itemTemplate = Item.getItem()
     if Item and itemTemplate.getDuration() == -1 and not Item.isEquipped() and not Item.isAugmented() and not Item.isConsumable() and Item.getItemType() != L2EtcItemType.OTHER and Item.getItemType() != L2EtcItemType.SCROLL and Item.getItemType() != L2EtcItemType.PET_COLLAR  and Item.isTradeable() and Item.getItemId() != 403 or Item.getItemType() == L2EtcItemType.SHOT:# and Item.getEnchantLevel() == 0:
       cnt = Item.getCount()
       count = str(cnt)
       grade = itemTemplate.getCrystalType()
       igrade = str(itemTemplate.getCrystalType())
       itype = str(Item.getItemType())
       idtest = Item.getItemId()
       con=L2DatabaseFactory.getInstance().getConnection()
       listitems=con.prepareStatement("SELECT itemIcon FROM z_market_icons WHERE itemId=?")
       listitems.setInt(1, idtest)
       rs=listitems.executeQuery()
       while (rs.next()) :
         icon=rs.getString("itemIcon")
         try :
           if grade == 1:
             pgrade = str("[D]")
           elif grade == 2:
             pgrade = str("[C]")
           elif grade == 3:
             pgrade = str("[b]")
           elif grade == 4:
             pgrade = str("[A]")
           elif grade == 5:
             pgrade = str("[S]")
           else:
             pgrade = str("")
           if Item.getEnchantLevel() == 0:
             enchant = str("")
           else:
             enchant = " +"+str(Item.getEnchantLevel())+""
           st.set("sellitem",obj)
           st.set("count",count)
           st.set("grade",igrade)
           st.set("type",itype)
           htmltext =  "<html><body>Market:<br>Вещь на продажу:<br>"
           htmltext += "<img src=\"Icon."+str(icon)+"\" width=32 height=32>"
           htmltext += "<font color=LEVEL>" + itemTemplate.getName() + ""+pgrade+" " + enchant + "</font><br><br>"
           htmltext += "Количество: "+count+"<br>"
           htmltext += "Установите цену: <br>"
           htmltext += "<edit var=\"price\" width=250><br><button value=\"Ok\" action=\"bypass -h Quest q8033_MarketSell $price\" width=40 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"><br>"
           htmltext += "<br>*установите цену за 1 предмет, конечная цена = кол-во*цену.</body></html>"
         except :
           try : insertion.close()
           except : pass
       try :
         con.close()
       except :
         pass
     #else :
       #htmltext = "<html><body>Market:<br>Oops!</body></html>"
   elif event >= 0 or event <=2144000000:
     itemPrice = int(event)
     itemObjId = st.getInt("sellitem")
     itemCount = st.getInt("count")
     itemGrade = st.getInt("grade")
     itemPrice = int(itemPrice*itemCount)
     Item = st.getPlayer().getInventory().getItemByObjectId(itemObjId)
     itemTemplate = Item.getItem()
     idtest = Item.getItemId()
     itype = str(Item.getItemType())
     itemType = str(Item.getItemType())
     if Item and not Item.isEquipped() :
       count = str(itemCount)
       if Item.getEnchantLevel() == 0:
         enchant = str("")
       else:
         enchant = " +"+str(Item.getEnchantLevel())+""
       #weapons
       if itype == "Sword":
         ptype = str ("Weapon")
       elif itype == "Blunt":
         ptype = str ("Weapon")
       elif itype == "Dagger":
         ptype = str ("Weapon")
       elif itype == "Bow":
         ptype = str ("Weapon")
       elif itype == "Etc":
         ptype = str ("Weapon")
       elif itype == "Pole":
         ptype = str ("Weapon")
       elif itype == "Fist":
         ptype = str ("Weapon")
       elif itype == "Dual Sword":
         ptype = str ("Weapon")
       elif itype == "Dual Fist":
         ptype = str ("Weapon")
       elif itype == "Big Sword":
         ptype = str ("Weapon")
       elif itype == "Big Blunt":
         ptype = str ("Weapon")
       #armor
       elif itype == "Shield":
         ptype = str ("Armor")
       elif itype == "Light":
         ptype = str ("Armor")
       elif itype == "Heavy":
         ptype = str ("Armor")
       elif itype == "Magic":
         ptype = str ("Armor")
       elif itype == "None":
         ptype = str ("Armor")
       #recipes
       elif itype == "Receipe":
         ptype = str ("Recipe")
       #resources
       elif itype == "Material":
         ptype = str ("Resource")
       #spellbook
       elif itype == "Spellbook":
         ptype = str ("Spellbook")
       #soulshot
       elif itype == "Shot":
         ptype = str ("Soulshot")
       st.getPlayer().destroyItem("q8033_MarketSell",itemObjId, itemCount, st.getPlayer(), 0)
       st.getPlayer().sendPacket(SystemMessage.sendString(""+count+ " " + itemTemplate.getName() + "" + enchant + " выстановлено на аукцион за "+str(itemPrice)+" adena"));
       htmltext = "<html><body>Market:<br>Выстановлено на аукцион:<br><font color=LEVEL>"+count+" " + itemTemplate.getName() + "" + enchant + "</font> за "+str(itemPrice)+" adena"

В кратце..
В данном скрипте происходит регистрация предмета в нужный отдел с ценой которую вписываешь.
Я хочу сделать проверку на нужную сумму денег для регистрации и коммисию за выставление предмета на аукцион.
Делаю так
#spellbook
       elif itype == "Spellbook":
         ptype = str ("Spellbook")
       #soulshot
       elif itype == "Shot":
         ptype = str ("Soulshot")
+    if st.getQuestItemsCount(57) >= 2500:
+    st.takeItems(57,2500)
       st.getPlayer().destroyItem("q8033_MarketSell",itemObjId, itemCount, st.getPlayer(), 0)
       st.getPlayer().sendPacket(SystemMessage.sendString(""+count+ " " + itemTemplate.getName() + "" + enchant + " выстановлено на аукцион за "+str(itemPrice)+" adena"));
       htmltext = "<html><body>Market:<br>Выстановлено на аукцион:<br><font color=LEVEL>"+count+" " + itemTemplate.getName() + "" + enchant + "</font> за "+str(itemPrice)+" adena"

Но скрипт таким образом не работает, если я делаю только коммисию за выставление предмета
#spellbook
       elif itype == "Spellbook":
         ptype = str ("Spellbook")
       #soulshot
       elif itype == "Shot":
         ptype = str ("Soulshot")
+    st.takeItems(57,2500)
       st.getPlayer().destroyItem("q8033_MarketSell",itemObjId, itemCount, st.getPlayer(), 0)
       st.getPlayer().sendPacket(SystemMessage.sendString(""+count+ " " + itemTemplate.getName() + "" + enchant + " выстановлено на аукцион за "+str(itemPrice)+" adena"));
       htmltext = "<html><body>Market:<br>Выстановлено на аукцион:<br><font color=LEVEL>"+count+" " + itemTemplate.getName() + "" + enchant + "</font> за "+str(itemPrice)+" adena"

То скрипт работает коммисия взымается, но вот как сделать проверку? ТОесть если есть данное колличесвто денег в нашем случае этот 2500, то скрипт выполняет работу дальше, если нет то переадресовывает на html страницу под название nocash.
Подскажите пожалуйста.

Gvozd 24.07.2010 02:38

Вы просите готовый скрипт с нуля.

Это работа, и за нее обычно платят деньги.
Для таких сообщений предназначен раздел форума "Работа".

Если вы все же хотите, чтобы вам помогли - приложите какие-то усилия сами и задавайте вопросы по ходу дела.

noobasik 24.07.2010 02:55

нет, я задаю можно сказать конкретно вопрос, каким образом поставить проверку на ид с переадресацией на страницы html страницу?

x-yuri 24.07.2010 05:10

с чего ты взял, что это javascript?
p.s. java и javascript - разные языки программирования
p.p.s. этот раздел форума никак не связан с программированием

noobasik 24.07.2010 08:37

ну это javascript, только для языка java...
Разве они не похожи?
Если кто в курсе подскажите как сделать проверку на сумму...

Kolyaj 24.07.2010 08:40

Цитата:

Сообщение от noobasik
ну это javascript, только для языка java...

Это что значит?

У вас не JavaScript.

Gvozd 24.07.2010 12:12

Цитата:

Сообщение от noobasik
ну это javascript, только для языка java...

эти слова имеют смысл?
Цитата:

Сообщение от Kolyaj
У вас не JavaScript.

по-моему это даже и не Java
мое знакомство с ним было весьма скоротечно, и ограничилось ночью написания лаб, но в этом коде я не узнаю Java ни под каким соусом
наврено это какой-то из дотнетов, знать бы только какой

noobasik 24.07.2010 14:28

да ребятки...
Как же вы невидите здесь яву, а первый пост был что то про написания скрипта с нуля...
И к чему это тогда было, если Вы здесь невидите яву :)
если поможет делу то расширение данного скрипта init.py
Это JS могу сказать точно. Только этот js для платформы которая работает с java с библиотеками jre
Тот кто знает JS, привидите свои догадки для решения задачи я попробую, попытка не пытка.
Цитата:

по-моему это даже и не Java
Ява, просто я скрипт неполностью выложил инклюдов здесь нету, наверно поэтому и неузнал, я выложил строго работу скрипта.
*Задумчиво* Если это не java, тогда максимально с каким языком оно совпадает так это Python?

Kolyaj 24.07.2010 20:30

Цитата:

Сообщение от noobasik
если поможет делу то расширение данного скрипта init.py

Цитата:

Сообщение от noobasik
тогда максимально с каким языком оно совпадает так это Python?

А если ещё и мозг попробовать включить, так вообще всё очевидным становится.

noobasik 24.07.2010 21:45

ладно уже умничать... эти выражения "мозг включить"...
Лучше подскажи как решить данную проблему?

Kolyaj 24.07.2010 22:12

Для начала найти форум Python-программистов.

noobasik 25.07.2010 22:00

да уже нашел, второй день ответа нет, неужели действительно я много прошу? Я просто немогу понять, для того что я хачу надо что пол скрипта переписывать? Или просто людям в лом с этим беспорядком вдумываться?

x-yuri 26.07.2010 05:55

просто ты не хочешь разбираться, ты хочешь чтобы за тебя сделали работу. В этом столько же смысла, сколько и радости
p.s. Для чего нужен форум

DooMer 26.07.2010 11:30

if int(st.getQuestItemsCount(57)) >= 2500:

noobasik 27.07.2010 19:08

Цитата:

Сообщение от DooMer (Сообщение 65194)
if int(st.getQuestItemsCount(57)) >= 2500:

Не, не работает (

x-yuri, классный бред, молодец дай пять...
Для чего нужен форум тебе надо почитать, так как ты своим постом уже нарушил одно из правил.

Gvozd 28.07.2010 00:01

noobasik,
со своим уставом в чужой монастырь.

noobasik 28.07.2010 03:38

Цитата:

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


Часовой пояс GMT +3, время: 13:56.