Форум администраторов игровых серверов

Форум администраторов игровых серверов (https://forum.zone-game.info/TT.php)
-   Работа со скриптами (https://forum.zone-game.info/forumdisplay.php?f=37)
-   -   Питон (https://forum.zone-game.info/showthread.php?t=8521)

SkyWard 10.06.2010 12:22

Питон
 
Всем доброго дня! Появился вопрос(мб тут уже была такая тема, но я не нашол и гугл не помог) как можно сделать русскую кадеровку у файлов питона, а именно у квестов ___int___.py!
PS: Тока без флуда

ginger 10.06.2010 12:32

Re: Питон
 
нет никакой "русской кодировки". Вероятно, вам нужно сохранить файл в utf-8

SkyWard 10.06.2010 12:40

Re: Питон
 
пробывал, в ютф кодеровки, так в игре 1 ироглифы!Есть еше какие нить предложения?!?!

Final-Day 10.06.2010 13:15

Re: Питон
 
Убиться об стенку(/offtop)

SkyWard 10.06.2010 13:16

Re: Питон
 
модеры попрошу почистить тему!

incognito 11.06.2010 00:09

Re: Питон
 
Можно вместо каких либо фраз в питоне сделать отдельную html для с русс фразой.
Обычно люди именно так локализуют квесты, если ты это имел ввиду.

SkyWard 11.06.2010 20:40

Re: Питон
 
нет не это!Мне нада сделать всего 1 строчку, чтоб в игре показывало на русском, а то у мну в ироглифах. (там не зя сделать сылку на htm файл, ибо сразу буит ошибка файла)

Добавлено через 1 минуту
возможно кто нить уже сталкивался с этим? Буду ждать ваших постов!

PROGRAMMATOR 11.06.2010 21:03

Re: Питон
 
Попробуйте Питоновской IDE открыть файл и добавить в самый верх файла:

PHP код:

# -*- coding:Utf-8 -*- 

С модулями для контры успешно работает такое.

Ramzessuss 11.06.2010 21:07

Re: Питон
 
мне тож это надо!!!

SkyWard 11.06.2010 21:07

Re: Питон
 
я пробывал и это, но не выходит(

Добавлено через 4 минуты
Код:

# -*- coding:Utf-8 -*-
# Made by Mr. Have fun! Version 0.2
import sys
from com.l2jserver.gameserver.model.quest import State
from com.l2jserver.gameserver.model.quest import QuestState
from com.l2jserver.gameserver.model.quest.jython import QuestJython as JQuest

qn = "1_LettersOfLove1"

#NPCs
DARIN  = 30048
ROXXY  = 30006
BAULRO = 30033

#ITEMS
DARINGS_LETTER    = 687
RAPUNZELS_KERCHIEF = 688
DARINGS_RECEIPT    = 1079
BAULS_POTION      = 1080
 
#REWARD
NECKLACE = 906
 
class Quest (JQuest) :

 def __init__(self,id,name,descr):
    JQuest.__init__(self,id,name,descr)
    self.questItemIds = [DARINGS_LETTER, RAPUNZELS_KERCHIEF, DARINGS_RECEIPT, BAULS_POTION]

 def onAdvEvent (self,event,npc, player) :
  htmltext = event
  st = player.getQuestState(qn)
  if not st : return
  if event == "daring_q0001_06.htm" :
    st.set("cond","1")
    st.setState(State.STARTED)
    st.playSound("ItemSound.quest_accept")
    if st.getQuestItemsCount(DARINGS_LETTER) == 0 :
      st.giveItems(DARINGS_LETTER,1)
  return htmltext

 def onTalk (self,npc,player):
  st = player.getQuestState(qn)
  htmltext = "quest_error_q0001_1.htm"
  if not st: return htmltext

  npcId = npc.getNpcId()
  id = st.getState()

  cond = st.getInt("cond")
  ItemsCount_DL = st.getQuestItemsCount(DARINGS_LETTER)
  ItemsCount_RK = st.getQuestItemsCount(RAPUNZELS_KERCHIEF)
  ItemsCount_DR = st.getQuestItemsCount(DARINGS_RECEIPT)
  ItemsCount_BP = st.getQuestItemsCount(BAULS_POTION)
  if id == State.COMPLETED :
    htmltext = "quest_error_q0001_2.htm"
  elif npcId == DARIN and id == State.CREATED:
    if player.getLevel() >= 2 :
      if cond < 15 :
        htmltext = "daring_q0001_02.htm"
      else:
        htmltext = "daring_q0001_01.htm"
        st.exitQuest(1)
    else:
      htmltext = "quest_error_q0001_3.htm"
      st.exitQuest(1)
  elif id == State.STARTED :
      if npcId == ROXXY and cond:
        if ItemsCount_RK == 0 and ItemsCount_DL :
          htmltext = "rapunzel_q0001_01.htm"
          st.takeItems(DARINGS_LETTER,-1)
          st.giveItems(RAPUNZELS_KERCHIEF,1)
          st.set("cond","2")
          st.playSound("ItemSound.quest_middle")
        elif ItemsCount_BP or ItemsCount_DR :
          htmltext = "rapunzel_q0001_03.htm"
        elif ItemsCount_RK :
          htmltext = "rapunzel_q0001_02.htm"
      elif npcId == DARIN and cond and ItemsCount_RK > 0:
        htmltext = "daring_q0001_08.htm"
        st.takeItems(RAPUNZELS_KERCHIEF,-1)
        st.giveItems(DARINGS_RECEIPT,1)
        st.set("cond","3")
        st.playSound("ItemSound.quest_middle")
      elif npcId == BAULRO and cond:
        if ItemsCount_DR > 0 :
          htmltext = "baul_q0001_01.htm"
          st.takeItems(DARINGS_RECEIPT,-1)
          st.giveItems(BAULS_POTION,1)
          st.set("cond","4")
          st.playSound("ItemSound.quest_middle")
        elif ItemsCount_BP > 0 :
          htmltext = "baul_q0001_02.htm"
      elif npcId == DARIN and cond and ItemsCount_RK == 0:
        if ItemsCount_DR > 0 :
          htmltext = "daring_q0001_09.htm"
        elif ItemsCount_BP > 0 :
          htmltext = "daring_q0001_10.htm"
          st.takeItems(BAULS_POTION,-1)
          st.giveItems(57,2466)
          st.giveItems(NECKLACE,1)
          st.addExpAndSp(5672,446)
          st.unset("cond")
          st.exitQuest(False)
          st.playSound("ItemSound.quest_finish")
        else:
          htmltext = "daring_q0001_07.htm"
  return htmltext

QUEST    = Quest(1,qn,"Письмо Любви")

QUEST.addStartNpc(DARIN)

QUEST.addTalkId(DARIN)
QUEST.addTalkId(ROXXY)
QUEST.addTalkId(BAULRO)

Добавлено через 8 минут
а вот еше 1 вопрос, а можно сделать так, допустим у меня есть квест написаный на яве, то его как нить можно впоять в сервак. чтоб работал?


Текущее время: 22:20. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot