You last visited: Today at 05:46
Advertisement
Problem with Bonus Window
Discussion on Problem with Bonus Window within the Metin2 Private Server forum part of the Metin2 category.
02/12/2015, 16:36
#1
elite*gold: 0
Join Date: Nov 2010
Posts: 25
Received Thanks: 0
Problem with Bonus Window
Hello, firstly sorry for my bad english.
I have installed this belt button on my client:
And Came up with this bonus window:
But every time I click open a new window:
Can someone help with this? I want to open a only window, and close it when I click again.
The code of game.py
self.Bonusuri = ui.Button()
self.Bonusuri.SetParent(self.menu_bg)
self.Bonusuri.SetPosition(9, 10)
self.Bonusuri.SetUpVisual("zeta/1.tga")
self.Bonusuri.SetOverVisual("zeta/2.tga")
self.Bonusuri.SetDownVisual("zeta/1.tga")
self.Bonusuri.SetEvent(ui.__mem_func__(self.__Bonu sPage))
self.Bonusuri.Show()
AND
def __BonusPage(self):
import PaginaBonusuri
global BPisLoaded
try:
if BPisLoaded == 0:
BPisLoaded = 1
exec 'PaginaBonusuri.BonusBoardDialog().Show()'
else:
exec 'PaginaBonusuri.BonusBoardDialog().Hide()'
except ImportError:
import dbg,app
dbg.Trace('PaginaBonusuri.py Importing error')
app.Abort
And the code of PaginaBonusuri.py
#!/usr/bin/python
# -*- coding: latin-1 -*-
import ui
import chat
import app
import player
import snd
import item
import net
import game
class BonusBoardDialog(ui.ScriptWindow):
MaxBoni = { "1": 1000000, "2": 999, "3": 999, "4": 999, "5": 999, "6": 999, "7": 999, "9": 999, "10": 999, "11": 999, "12": 999, "13": 999, "14": 999, "15": 999, "16": 999, "17": 999, "18": 999, "19": 999, "20": 999, "21": 999, "22": 999, "23": 999, "24": 999, "27": 999, "28": 999, "29": 999, "30": 999, "31": 999, "32": 999, "33": 999, "34": 999, "35": 999, "36": 999, "37": 999, "38": 999, "39": 999, "41": 999, "43": 999, "44": 999, "45": 999, "48": 1, "53": 999 }
BonusDict = ["1", "2"]
BonusIDListe = [["", 0, 0],["Max HP", 1, 0],["Max MP", 2, 0],["VIT", 3, 0],["INT", 4, 0],["FOR", 5, 0],["DEX", 6, 0],["Velocidade de ataque", 7, 0],["Velocidade de Movimento", 8, 0],["Velocidade skill", 9, 0],["Regeneração de HP", 10, 32],["Regeneração de MP", 11, 33],["Chance de envenenamento", 12, 37],["Chance de Atordoar", 13, 38],["Szansa na Spowolnienie", 14, 39],["Chance de critico", 15, 40],["Chance de Perfurar", 16, 41],["Bônus Humanoides", 17, 43],["Bônus Animais", 18, 44],["Bônus Orcs", 19, 45],["Bônus Fanaticos ", 20, 46],["Bônus Mortos-Vivos", 21, 47],["Bônus Demonios", 22, 48],["Dano Abosrvido por HP", 23, 63],["Dano Abosrvido por MP", 24, 64],["Chance de Roubar MP", 25, 65],["Szansa na Kradzie¿ P¯", 26, 66],["Szansa na Refletir Ataque Físico", 27, 67],["Esquivar flechas", 28, 68],["Resistência Espada", 29, 69],["Resistência Espadão", 30, 70],["Resistência Adagas", 31, 71],["Resistência Sinos", 32, 72],["Resistência Leque/Staff", 33, 73],["Resistência Flecha", 34, 74],["Resistência a Fogo", 35, 75],["Resistência a Relâmpagos", 36, 76],["Resistência Mágica", 37, 77],["Resistência ao Vento", 38, 78],["Refletir Ataque Físico", 39, 79],["Desativado", 40, 80],["Resistência a Veneno", 41, 81],["SP Yükselmesi Deðiþimi", 42, 82],["Bônus de XP", 43, 83],["Bônus drop de Gold", 44, 84],["Aumenta chance de drop", 45, 85],["Desativado", 46, 86],["Szansa na odzyskanie P¯", 47, 87],["Imune a Atordoamento", 48, 88],["Imune a Lentidão", 49, 89],["Imune a Quedas", 50, 90],["APPLY_SKILL", 51, 0],["Yay Menzili", 52, 95],["Bônus de Ataque", 53, 0],["Defesa", 54, 96],["Bônus de Ataque Magico", 55, 97],["Bônus de Defesa Magica", 56, 98],["", 57, 0],["Bônus de Stamina", 58, 0],["Bônus Guerreiros", 59, 54],["Bônus Ninjas", 60, 55],["Bônus Shuras", 61, 56],["Bônus Shamans", 62, 57],["Bônus Monstros", 63, 53],["Bônus Monstros", 64, 114],["Defesa", 65, 115],["Bônus de EXP", 66, 116],["Bônus de Drop", 67, 117],["Bônus de Drop Gold", 68, 118],["APPLY_MAX_HP_PCT", 69, 119],["APPLY_MAX_SP_PCT", 70, 120],["Dano de Skill", 71, 121],["Dano Medio", 72, 122],["Resistência a Skills", 73, 123],["Resistência a Dano", 74, 124],["", 75, 0],["Desativado", 76, 125],["Desativado", 77, 126],["Resistência a Guerreiros", 78, 59],["Resistência a Ninjas", 79, 60],["Resistência a Shuras", 80, 61],["Resistência a Shamans", 81, 62]]
SpecialBoni = { 1: "Norm.State", 2: "Norm.State", 3: "Norm.State", 4: "Norm.State", 5: "Norm.State", 6: "Norm.State", 55: "Norm.State", 56: "Norm.State", 58: "Norm.State" }
PvPOffenseBoni = ["Resistência Espada", "Resistência Espadão", "Resistência Adagas", "Resistência Sinos", "Resistência Leque/Staff", "Resistência Flecha", "Resistência Mágica", "Esquivar flechas", "Resistência a Guerreiros", "Resistência a Ninjas"]
PvPDefenseBoni = ["Bônus Guerreiros", "Bônus Ninjas", "Bônus Shuras", "Bônus Shamans", "Bônus Humanoides", "Resistência a Shuras", "Resistência a Shamans", "Dano Medio", "Dano de Skill", "Refletir Ataque Físico"]
PvMOffenseBoni = ["Refletir Ataque Físico", "Regeneração de HP", "Regeneração de MP", "Dano Abosrvido por HP", "Dano Abosrvido por MP", "Bônus de XP"]
PvMDefenseBoni = ["Chance de Atordoar", "Chance de envenenamento", "Chance de critico", "Chance de Perfurar", "Bônus Monstros", "Bônus drop de Gold", "Aumenta chance de drop"]
BonusList = []
UI = []
TestSystem = 0
ProcessTimeStamp = 0
def __init__(self):
ui.ScriptWindow.__init__(self)
self.LoadUI()
game.BPisLoaded = 1
def __del__(self):
ui.ScriptWindow.__del__(self)
self.Board.Hide()
game.BPisLoaded = 0
def LoadUI(self):
self.Board = ui.BoardWithTitleBar()
self.Board.SetSize(313, 420)
self.Board.SetCenterPosition()
self.Board.AddFlag("movable")
self.Board.AddFlag("float")
self.Board.SetTitleName("Página de Bônus")
self.Board.SetCloseEvent(self.__del__)
self.Board.Show()
Type = ["WWW.X5GAMES.ORG"]
Vertical = ui.Line()
Vertical.SetParent(self.Board)
Vertical.SetPosition(8, 60)
Vertical.SetSize(297, 0)
Vertical.SetColor(0xff777777)
Vertical.Show()
self.UI.append(Vertical)
x = 25
for i in xrange(3):
ChangeBonusDict = ui.Button()
ChangeBonusDict.SetParent(self.Board)
ChangeBonusDict.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
ChangeBonusDict.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
ChangeBonusDict.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
ChangeBonusDict.SetText(self.BonusDict[i])
ChangeBonusDict.SetPosition(x, 380)
ChangeBonusDict.SetEvent(lambda arg = ChangeBonusDict.GetText(): self.ChangeBonusDict(arg))
ChangeBonusDict.Show()
x += 88
self.UI.append(ChangeBonusDict)
x = 55
Type = ["WWW.X5GAMES.ORG"]
for i in xrange(2):
BonusDescription = ui.TextLine()
BonusDescription.SetParent(self.Board)
BonusDescription.SetPosition(x, 35)
BonusDescription.SetText(str(Type[i]))
BonusDescription.SetFontColor(1.0, 0.63, 0)
BonusDescription.Show()
x += 150
self.UI.append(BonusDescription)
self.SetBoni(self.BonusDict[0])
self.dict = self.BonusDict[0]
def SetBoni(self, type):
Offense = [[25, 70], [25, 100], [25, 130], [25, 160], [25, 190], [25, 220], [25, 250], [25, 280], [25, 310], [25, 340]]
Defense = [[170, 70], [170, 100], [170, 130], [170, 160], [170, 190], [170, 220], [170, 250], [170, 280], [170, 310], [170, 340]]
for bonus in self.BonusIDListe:
if type == self.BonusDict[0]:
self.CheckBonus(bonus, self.PvPOffenseBoni, Offense)
self.CheckBonus(bonus, self.PvPDefenseBoni, Defense)
elif type == self.BonusDict[1]:
self.CheckBonus(bonus, self.PvMOffenseBoni, Offense)
self.CheckBonus(bonus, self.PvMDefenseBoni, Defense)
else:
return
def CheckBonus(self, bonus, bonuslist, offset):
for boni in bonuslist:
if bonus[0] == boni:
try:
Index = bonuslist.index(boni)
BonusDescription = ui.TextLine()
BonusDescription.SetParent(self.Board)
BonusDescription.SetPosition(offset[Index][0], offset[Index][1])
BonusDescription.SetText(str(bonus[0]))
BonusDescription.Show()
BonusSlotBar = ui.SlotBar()
BonusSlotBar.SetParent(self.Board)
BonusSlotBar.SetSize(115, 15)
BonusSlotBar.SetPosition(offset[Index][0], offset[Index][1] + 15)
BonusSlotBar.Show()
BonusAttrLine = ui.TextLine()
BonusAttrLine.SetParent(self.Board)
BonusAttrLine.SetPosition(offset[Index][0] + 5, offset[Index][1] + 15)
try:
Type = self.SpecialBoni[bonus[1]]
Attribute = self.EquipAttribute(bonus)
except:
Attribute = player.GetStatus(int(bonus[2]))
if self.TestSystem != 1:
BonusAttrLine.SetText(str(Attribute))
try:
if int(Attribute) >= int(self.MaxBoni[str(bonus[1])]):
BonusAttrLine.SetFontColor(1.0, 0.63, 0)
else:
BonusAttrLine.SetFontColor(1, 1, 1)
except:
BonusAttrLine.SetFontColor(1, 1, 1)
else:
BonusAttrLine.SetText("Test system is active")
BonusAttrLine.SetFontColor(0.1, 0.7, 1.0)
BonusAttrLine.Show()
self.BonusList.append([BonusDescription, BonusAttrLine, BonusSlotBar])
except:
pass
def EquipAttribute(self, bonus):
value = 0
for slot in xrange(90, 101):
for attr in xrange(0, 7):
attr, val = player.GetItemAttribute(slot, attr)
if int(attr) == bonus[1]:
value += int(val)
return int(value)
def ChangeBonusDict(self, dict):
self.dict = dict
for bonus in self.BonusList:
try:
for array in bonus:
array.Hide()
except:
pass
self.SetBoni(dict)
def OnUpdate(self):
import item
if int(app.GetTime()) > int(self.ProcessTimeStamp) + 6:
self.SetBoni(self.dict)
self.ProcessTimeStamp = app.GetTime()
#BonusBoardDialog().Show()
Thank U, and sorry if posted in a wrong place.
02/12/2015, 16:49
#2
elite*gold: 101
Join Date: Mar 2013
Posts: 13,366
Received Thanks: 2,748
If you have a problem with your pserver, please use the pserver section in the future:
move request (don't open a new thread)
02/13/2015, 16:31
#3
elite*gold: 0
Join Date: Jan 2015
Posts: 2
Received Thanks: 0
inventory lock system?
Hello friends ;
Does the information on the inventory lock system? . Python code and quests . But incomplete or incorrect guess. Information that can help ?
02/15/2015, 14:00
#4
elite*gold: 906
Join Date: Sep 2009
Posts: 17,294
Received Thanks: 4,400
Metin2 Foreign - Discussions / Questions -> Metin2 PServer - Discussions / Questions
#moved
Similar Threads
Problem with belt window
08/24/2014 - Metin2 Private Server - 5 Replies
Hello,
I have problem with belt window.
The button is far from inventory window
http://i.epvpimg.com/f3aje.png
When I click the button to show the belt window it goes so far from inventory window.
[problem] bonus window
05/20/2013 - Metin2 Private Server - 3 Replies
Hi, i added bonus window under button which is in inventory , and ive got a little problem now. When i logout with opened bonus window it doesnt close yet.How can i fix it?
[PROBLEM] Problem opening window buying e*gold
10/02/2012 - Browsergames Trading - 2 Replies
Hey guys ..
I wanted to ask your help .. When i click buy 260 E*gold for 10 with PSC , the window loads then says some error .. Tryed many times but dont works .
Can u help me ?
Grtz
WTS HA Prot Ki + free party Window + free bonus(infuse)
07/29/2011 - Guild Wars Trading - 2 Replies
Hey guys, after long time i decided to sell my new project. the prot ki.
What is included?
-Complete Prot KI for HA
-Complete Party Window
-half Infuse ki(all non heal skills)
What is the Price?
Problem mit D2 window mode
08/25/2009 - Diablo 2 - 9 Replies
Hey Leute,
hab da seit neustem ein Problem, auf das ich keine Lösung weiß...
und zwar habe ich sobald ich window mode spiele, keine Maus mehr im windows :/ das ist äußerst lästig ....
Ich hab kP wieso das so ist... ich kann noch damit klicken, aber man sieht sie einfach nicht mehr !!!!
weiß jemand wieso?
gruß
All times are GMT +2. The time now is 05:46 .