Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > Metin2 > Metin2 Private Server > Metin2 PServer Guides & Strategies
You last visited: Today at 03:28

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Release Eventkalender inkl. Ingame Verwaltung

Discussion on Release Eventkalender inkl. Ingame Verwaltung within the Metin2 PServer Guides & Strategies forum part of the Metin2 Private Server category.

Reply
 
Old 05/11/2015, 10:40   #31
 
elite*gold: 2785
Join Date: Dec 2014
Posts: 403
Received Thanks: 1,354
@Micha:

Den quatsch:
Code:
	self.verwaltung_button = ui.Button()
	self.verwaltung_button.SetParent(self.verwaltung)
	self.verwaltung_button.SetEvent(self._verwaltung_aktualisieren)
	self.verwaltung_button.SetPosition(24, 35)
	self.verwaltung_button.SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
	self.verwaltung_button.SetOverVisual("d:/ymir work/ui/public/middle_button_02.sub")
	self.verwaltung_button.SetDownVisual("d:/ymir work/ui/public/middle_button_03.sub")
	self.verwaltung_button.SetText("Aktualisieren")
	self.verwaltung_button.Show()
	
	self.verwaltung_button2 = ui.Button()
	self.verwaltung_button2.SetParent(self.verwaltung)
	self.verwaltung_button2.SetEvent(self._event_planen)
	self.verwaltung_button2.SetPosition(24, 65)
	self.verwaltung_button2.SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
	self.verwaltung_button2.SetOverVisual("d:/ymir work/ui/public/middle_button_02.sub")
	self.verwaltung_button2.SetDownVisual("d:/ymir work/ui/public/middle_button_03.sub")
	self.verwaltung_button2.SetText("Event planen")
	self.verwaltung_button2.Show()
	
	self.verwaltung_button3 = ui.Button()
	self.verwaltung_button3.SetParent(self.verwaltung)
	self.verwaltung_button3.SetEvent(lambda arg= 14: self.Ek_Button_Click(arg))
	self.verwaltung_button3.SetPosition(24, 95)
	self.verwaltung_button3.SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
	self.verwaltung_button3.SetOverVisual("d:/ymir work/ui/public/middle_button_02.sub")
	self.verwaltung_button3.SetDownVisual("d:/ymir work/ui/public/middle_button_03.sub")
	self.verwaltung_button3.SetText("Event löschen")
	self.verwaltung_button3.Show()
Hätte man auch etwas kürzer machen können wenn man schon so codet wie du


Sonst danke das du dir die arbeit gemacht hast und mir arbeit gespart hast

Wenn es dazu auch noch geht wäre das auch schön leider kan ich es nicht testen....


.Kori

#Edit

Jezt mal richtig habe den code von Micha nochmal etwas kleiner gemacht, ob es jezt nun besser ist oder nicht kann ich nicht sagen

HowTO:

Des von Micha einfach mit dem ersetzen:
Code:
def Eventkalender(self, cmd, arg1 = 0, arg2 = 0):
	cmd = str(cmd)
	if(cmd == "opn"):
		if(constinfo.ek == 0):
			self.EkOpen()
			constinfo.ek = 1
			return
		else:
			self.Ek_board.Hide()
			constinfo.ek = 0
	if(cmd == "ins"):
		self.EkInsEvent(arg1, arg2)
	if(cmd == "upd"):
		self.EkUpdate(arg1, int(arg2))
	if(cmd == "qid"):
		constinfo.ek_qid[int(arg1)] = int(arg2)
	if(cmd == "typ"):
		for i in arg1.split("#"):
			if(i != "none"):
				constinfo.ek_types.append(i)

def EkOpen(self):
	self.Ek_board = ui.ExpandedImageBox()
	self.Ek_boardr.SetCenterPosition()
	self.Ek_board.AddFlag("movable")
	self.Ek_board.AddFlag('float')
	self.Ek_board.LoadImage("d:/ymir work/ui/eventkalender/board.tga")
	self.Ek_board.Show()
	self.Ek_Slot = []
	for x in xrange(0,4):
		E_kalender_slot = ui.ExpandedImageBox()
		E_kalender_slot.SetPosition(50, 50)
		E_kalender_slot.SetParent(self.E_kalender)
		E_kalender_slot.AddFlag("not_pick")
		E_kalender_slot.LoadImage("d:/ymir work/ui/eventkalender/slot_" + str(28 + i) + ".tga")
		E_kalender_slot.Hide()
		self.Ek_Slot[x] = E_kalender_slot
	self.Monat = ui.TextLine()
	self.Monat.SetParent(self.Ek_board)
	self.Monat.SetPosition(250,10)
	self.Monat.SetDefaultFontName()
	self.Monat.SetFontName("Arial:20")
	self.Monat.SetText("Monat")
	self.Monat.SetFontColor(1.0, 0.6, 0.2)
	self.Monat.SetOutline()
	self.Monat.Show()
	
	for Optionen in xrange(len(Option)):
		self.Option[str(Optionen)] = ui.Button()
		self.Option[str(Optionen)].SetParent(self.Ek_board)
		self.Option[str(Optionen)].SetEvent(Option[Optionen][3])
		self.Option[str(Optionen)].SetPosition(Option[Optionen][0], Option[Optionen][1])
		self.Option[str(Optionen)].SetUpVisual("d:/ymir work/ui/public/"+ Option[Optionen][4]+ "_button_01.sub")
		self.Option[str(Optionen)].SetOverVisual("d:/ymir work/ui/public/"+ Option[Optionen][4]+ "_button_02.sub")
		self.Option[str(Optionen)].SetDownVisual("d:/ymir work/ui/public/"+ Option[Optionen][4]+ "_button_03.sub")
		self.Option[str(Optionen)].SetText(Option[Optionen][2])
		self.Option[str(Optionen)].Show()
	if str(player.GetName())[0] == "[":
		self.Option[str(1)].Show()
	self.ek_event = []
	for e_type in constinfo.ek_types:
		self.ek_event[e_type] = []
		zeile = 0
		for x in xrange(0,32):
			event_pvp1 = ui.ExpandedImageBox()
			event_pvp1.SetPosition(50 + ( (x - 7* zeile) * 60) , 70 + (zeile * 60) )
			event_pvp1.SetParent(self.E_kalender)
			event_pvp1.AddFlag("not_pick")
			event_pvp1.LoadImage("d:/ymir work/ui/eventkalender/"+ e_type + ".tga")
			event_pvp1.Hide()
			if( (x % 7 == 0) and ( x != 0)):
				zeile += 1
			self.ek_event[e_type][x] = event_pvp1

def EkInsEvent(self, e_type, nr):
	self.ek_event[e_type][int(nr)].Show()

def EkUpdate(self, month, days):
	self.Monat.SetText(month)
	for x in xrange(0,4):
		self.Ek_Slot[x].Hide()
	self.Ek_Slot[days - 28].Show()

def _event_settings(self):

	self.verwaltung = ui.BoardWithTitleBar()
	self.verwaltung.SetSize(110, 150)
	self.verwaltung.SetCenterPosition()
	self.verwaltung.AddFlag('movable')
	self.verwaltung.AddFlag('float')
	self.verwaltung.SetTitleName('Verwaltung')
	self.verwaltung.SetCloseEvent(self._verwaltung_close)
	self.verwaltung.Show()

	for Verwaltung in xrange(len(VerwaltungsButton)):
		self.Verwaltung[str(Verwaltung)] = ui.Button()
		self.Verwaltung[str(Verwaltung)].SetParent(self.verwaltung)
		self.Verwaltung[str(Verwaltung)].SetEvent(VerwaltungsButton[Verwaltung][3])
		self.Verwaltung[str(Verwaltung)].SetPosition(VerwaltungsButton[Verwaltung][0], VerwaltungsButton[Verwaltung][1])
		self.Verwaltung[str(Verwaltung)].SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
		self.Verwaltung[str(Verwaltung)].SetOverVisual("d:/ymir work/ui/public/middle_button_02.sub")
		self.Verwaltung[str(Verwaltung)].SetDownVisual("d:/ymir work/ui/public/middle_button_03.sub")
		self.Verwaltung[str(Verwaltung)].SetText(VerwaltungsButton[Verwaltung][2])
		self.Verwaltung[str(Verwaltung)].Show()

def _verwaltung_aktualisieren(self):
		
	self.Verwaltung[str(0)].Hide()
	self.Verwaltung[str(1)].Hide()
	self.Verwaltung[str(2)].Hide()
	self.verwaltung.SetSize(330, 180)
	self.verwaltung.SetTitleName('Monat aktualisieren')
	months = ["Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"]
	self.ek_months = []
	zeile = 0
	for i in xrange(0,12):
		bt = ui.Button()
		bt.SetParent(self.verwaltung)
		bt.SetEvent(lambda arg= (i+1): self.Ek_Button_Click(arg))
		bt.SetPosition(10 + ( (i - zeile*4) * 80), 50+ (40 * zeile))
		bt.SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
		bt.SetOverVisual("d:/ymir work/ui/public/middle_button_02.sub")
		bt.SetDownVisual("d:/ymir work/ui/public/middle_button_03.sub")
		bt.SetText(months[i])
		bt.Show()
		self.ek_months[i] = bt
		if( (i % 4 == 0) and ( i != 0)):
			zeile += 1
def Ek_Button_Click(self, nr):
	event.QuestButtonClick(constinfo.ek_qid[int(nr)])

def _event_planen(self):	
	self.Verwaltung[str(0)].Hide()
	self.Verwaltung[str(1)].Hide()
	self.Verwaltung[str(2)].Hide()
	self.verwaltung.SetSize(330, 190)
	self.verwaltung.SetTitleName('Event planen')	
	self.event_planen = ui.Button()
	self.event_planen.SetParent(self.verwaltung)
	self.event_planen.SetEvent(lambda arg= 13: self.Ek_Button_Click(arg))
	self.event_planen.SetPosition(120, 140)
	self.event_planen.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
	self.event_planen.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
	self.event_planen.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
	self.event_planen.SetText("Event planen!")
	self.event_planen.Show()	
	self.info = ui.ThinBoard()
	self.info.SetSize(270, 70)
	self.info.SetParent(self.verwaltung)
	self.info.SetPosition(30, 50)
	self.info.AddFlag('not_pick')
	self.info.Show()	
	for Info in xrange(len(InfoText)):
		self.InfoText[str(Info)] = ui.TextLine()
		self.InfoText[str(Info)].SetParent(self.info)
		self.InfoText[str(Info)].SetPosition(Info[InfoText][0], Info[InfoText][1])
		self.InfoText[str(Info)].SetText(Info[InfoText][2])
		self.InfoText[str(Info)].SetOutline()
		self.InfoText[str(Info)].Show()
def _verwaltung_close(self):
	self.verwaltung.Hide()
	constInfo.verwaltung = 0
Sucht nun "from _weakref import proxy" und fügt das darunter ein:
Code:
VerwaltungsButton = [[24, 35, "Aktualisieren", "self._verwaltung_aktualisieren"], [24, 65, "Event planen", "self._event_planen"], [24, 95, "Event löschen", "lambda arg= 14: self.Ek_Button_Click(arg)"]]
Option = [[518, 10, "", "self._Eventkalender_close", "close"], [475, 90, "Verwaltung", "self._event_settings", "middle"]]
InfoText = [[5, 10 ,"Bitte geben Sie das in folgendem Format ein:"], [5, 30, "EVENT/TT/MM - Beispiel: 010101 für PvP-Event am 1. Jan."], [5, 50, "PvP-Event = 01 | OX-Event = 02 | Mondlicht-Event = 03"]]
Zum schluss sucht ihr "self.pressNumber = None" und fügt das darunter:

Code:
self.Option = {}
self.Verwaltung = {}
self.InfoText = {}
.K0rí is offline  
Thanks
2 Users
Old 05/14/2015, 16:23   #32
 
xCPx's Avatar
 
elite*gold: 20
Join Date: Jun 2011
Posts: 2,897
Received Thanks: 3,336
Kori? ich hasse es strings abzuschreiben
Das is der Grund warum ichs ned gemacht hab


Aber dann mach wenigstens ne Berechnung für die Positionen ^^
xCPx is offline  
Old 05/17/2015, 14:06   #33
 
elite*gold: 0
Join Date: Feb 2013
Posts: 12
Received Thanks: 0
hi i have litle problem with the system. when i clic on the button nothing open but i can login on the game without error where is my error? :/
ben80 is offline  
Old 05/17/2015, 15:21   #34
 
[Patrick]'s Avatar
 
elite*gold: 50
Join Date: May 2012
Posts: 1,136
Received Thanks: 401
Check ur local_list
Code:
eventkalender/event.quest
kalender/januar.quest
kalender/februar.quest
kalender/maerz.quest
kalender/april.quest
kalender/mai.quest
kalender/juni.quest
kalender/juli.quest
kalender/august.quest
kalender/september.quest
kalender/oktober.quest
kalender/november.quest
kalender/dezember.quest
kalender/event_plan.quest
kalender/event_l.quest
Paste this in the first line.
first line of local_list eventkalender/event.quest
second line kalender/januar.quest ... etc.
Do u know what i mean?

And reload ur quest or do a reboot..
[Patrick] is offline  
Old 05/17/2015, 15:39   #35
 
elite*gold: 0
Join Date: Feb 2013
Posts: 12
Received Thanks: 0
yes i have make that and i have place all the quest in kalender. and the quest "event.quest" in eventkalender but its the same. when i clic in game on the button nothing open. realy nothing no interface etc... its just nothing pass
ben80 is offline  
Old 05/17/2015, 16:35   #36

 
.yorliK's Avatar
 
elite*gold: 0
Join Date: Nov 2011
Posts: 1,448
Received Thanks: 1,258
Quote:
Originally Posted by ben80 View Post
yes i have make that and i have place all the quest in kalender. and the quest "event.quest" in eventkalender but its the same. when i clic in game on the button nothing open. realy nothing no interface etc... its just nothing pass
Did you restart the server? If not, do so.
.yorliK is offline  
Old 05/17/2015, 16:47   #37
 
elite*gold: 0
Join Date: Feb 2013
Posts: 12
Received Thanks: 0
yes i have restart but nothing open again... for info my client is a fr client so locale_fr i dont know if its can make the problem
ben80 is offline  
Old 05/26/2015, 02:13   #38
 
PlayaStylee's Avatar
 
elite*gold: 10
Join Date: Jun 2013
Posts: 314
Received Thanks: 24
Hallo wenn ich auf den button clicke dann portet er mich auf map 1 wieso kann mir villt einer helfen
PlayaStylee is offline  
Old 05/27/2015, 14:02   #39
 
[Patrick]'s Avatar
 
elite*gold: 50
Join Date: May 2012
Posts: 1,136
Received Thanks: 401
xD
Quest richtig zugeordnet? Denke nicht
[Patrick] is offline  
Reply


Similar Threads Similar Threads
[Release] Eventkalender (auch für Toplist) für eure Homepage
05/22/2020 - Metin2 PServer Guides & Strategies - 12 Replies
Hey Leute, ich habe hier für euch ein Script, welches einen vollständigen Eventkalender auf eurer Webseite einbindet. Das Beste daran: Die Events werden ebenfalls automatisch auf dem Eventkalender auf metin2pserver.info eingetragen. Installation: 1. Alle Dateien im Ordner "upload" ins Rootverzeichnis eurer Homepage hochladen. 2. Die SQL-Datei "event.sql" in der Homepage-Mysql-Datenbank ausführen, sodass ihr eine neue Tabelle (event) habt. 3. Logindaten für die Topliste in der Datei...
[Preview] Eventkalender mit InGame Verwaltung
05/08/2015 - Metin2 Private Server - 13 Replies
Hallo liebe Com, da ich bald fertig bin mit meinem Eventkalender, den man auch Ingame verwalten kann, ( Events planen, löschen und Monate aktualisieren) habe ich mich mal dazu bereit erklärt den jetzt schon mal vorzustellen. Ich möchte gern wissen, wie ihr den findet und ob ihr selber den nutzen würdet.. Das ganze wurde nicht wirklich von jemandem abgekupfert, habe mich lediglich inspirieren lassen....
[Release] Genauere Rechte Verwaltung
01/06/2014 - Metin2 PServer Guides & Strategies - 27 Replies
Hey. hatte vorhin ne schnapsidee mal wd und hab mal das Clientside befehle Sperren bissl ausgebaut. man kann für jeden befehl einzeln angeben wer ihn ausführen darf und wer nicht. dafür hab ich euch mal ein beispiel gemacht: ihr braucht: eine commands.py in eurer Root.epk commands =","","",],}, {"name":"/a","can_use& quot;:xCPx","","",],},
[Release] PoPNetwork-DB Account Verwaltung
03/03/2011 - Flyff PServer Guides & Releases - 5 Replies
Hallo leute und hier ist auch schon mein zweites Tool das ich gecodet habe es ist diesmal ein Helper Tool für den Server der euch hilft bei eurem Server Accounts zu erstellen das dies ja seit v14 nicht mehr so einfach ist. Außer dem Hilft es euch dabei zu entscheiden welche Rechte jeder Account haben soll. Das Tool hat eine Update Funktion und sobald ich bugs oder neue Sachen hinzufügen werde ich diese auf den Ftp server hochladen und ihr sie patchen. Keine ANgst es sind keine Viren...
[Release]PSC Manager/Verwaltung by .Pilzbauer
07/24/2010 - Metin2 PServer Guides & Strategies - 26 Replies
Hallo, Also ich bin neu hier in der Community und werde ausschließlich erstmal nur für Releases da sein, um Hilfestellungen zu geben, sprich ich werde nicht viel Posten halt nur Programme/TuTs etc. der Community beitragen bis dato! Meine heutige Vorstellung: PSC Manager / Verwaltung Wiso poste ich es in der Metin2 Section?



All times are GMT +2. The time now is 03:28.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.