Register for your free account! | Forgot your password?

You last visited: Today at 21:29

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

Advertisement



[MOD]Easy-Chatblock + Kick

Discussion on [MOD]Easy-Chatblock + Kick within the Metin2 PServer Guides & Strategies forum part of the Metin2 Private Server category.

Reply
 
Old   #1
 
musicinstructor's Avatar
 
elite*gold: 190
Join Date: Nov 2008
Posts: 1,670
Received Thanks: 3,368
Lightbulb [MOD]Easy-Chatblock + Kick

Moin,

ich hab´ ein Skript für euch, mit dem man als GM den Spielern einen Chatblock geben kann, ohne deren Namen eingeben oder die Zeit in Sekunden ausrechnen zu müssen, denn das macht die Erweiterung automatisch.

Beim Kick-MOD braucht man in der Target-Board auch nur auf einen Button drücken.

Screenshot:

Nun zum Installieren:
Als erstes öffnet ihr die uitarget.py aus der root-Datei.

Erstmal schreibt ihr zu den Imports das neue Modul dazu.
Code:
import uiChatBlock
Wir müssen die beiden Buttons in die BUTTON_NAME_LIST einfügen.
Dazu am Ende der Liste einfach noch das hinzufügen:
Code:
		"Kick",
		"ChatBlock",
So sollte die Liste dann bei euch aussehen:

Dann weisen wir dem Button ein Event zu.
Sucht nach
Code:
		self.buttonDict[locale.TARGET_BUTTON_WHISPER].SetEvent(ui.__mem_func__(self.OnWhisper))
und setzt diese beiden Zeilen darunter:
Code:
		self.buttonDict["Kick"].SetEvent(ui.__mem_func__(self.OnKick))
		self.buttonDict["ChatBlock"].SetEvent(ui.__mem_func__(self.OnChatBlock))
Um den Dialog zu laden, sucht nach
Code:
self.name = name
und setzt Folgendes darunter:
Code:
		dlgChatBlock = uiChatBlock.ChatBlockDialog()
		dlgChatBlock.LoadDialog()
		dlgChatBlock.SetTitleName("ChatBlock")
		dlgChatBlock.Hide()
		self.dlgChatBlock = dlgChatBlock
Der Dialog muss auch wieder entladen werden können, also sucht nach
Code:
	def Destroy(self):
und schreibt darunter
Code:
		self.dlgChatBlock.Destroy()
		self.dlgChatBlock = 0
Die entsprechenden Events kommen ganz ans Ende der Datei:
Code:
	def OnKick(self):
		net.SendChatPacket("/dc " + str(chr.GetNameByVID(self.vid)))

	def OnChatBlock(self):
		#if os.path.exists('gm.txt') and os.path.isfile('gm.txt'):
		if str(player.GetName())[0] == "[":
			self.dlgChatBlock.SetTitleName("ChatBlock: " + str(chr.GetNameByVID(self.vid)))
			self.dlgChatBlock.Open(str(chr.GetNameByVID(self.vid)))
Als letztes sucht ihr nach
Code:
self.ShowDefaultButton()
und setzt darunter
Code:
		if str(player.GetName())[0] == "[":
			self.__ShowButton("Kick")
			self.__ShowButton("ChatBlock")
Jetzt könnt ihr die Datei speichern.

Zum Schluss müsst ihr noch uichatblock.py aus dem Archiv im Anhang in euer root-Archiv und chatblockdialog.py in euer uiscript-Archiv (in den Ordner uiscript) packen.
Ihr dürft nicht vergessen, die Dateien auch wieder in eure Repack-XML reinzuschreiben.
Wenn bei euch Fehler in der uitarget.py kommen, löscht alle Tabs und macht sie nochmal neu, denn vBulletin wandelt sie in Leerzeichen um.
Attached Files
File Type: rar CB_Kick_MOD.rar (1.7 KB, 1810 views)
musicinstructor is offline  
Thanks
111 Users
Old 04/11/2011, 15:48   #2
 
elite*gold: 35
Join Date: Jun 2009
Posts: 2,187
Received Thanks: 6,906
Schaut schick aus.
Thanks given
CranK™ is offline  
Thanks
1 User
Old 04/11/2011, 15:50   #3
 
elite*gold: 4
Join Date: Mar 2011
Posts: 321
Received Thanks: 54
dein patcher is gaail...
dein kick und cb giver is gail..

music instructer is gaail!!! thanks given
.GameFrosch™ is offline  
Old 04/11/2011, 15:51   #4
 
elite*gold: 0
Join Date: Jan 2011
Posts: 818
Received Thanks: 974
Sieht gut aus
#THX GIVEN
0x4D617276 is offline  
Old 04/11/2011, 15:53   #5
 
.TreVor#'s Avatar
 
elite*gold: 265
Join Date: Nov 2010
Posts: 918
Received Thanks: 403
Nice
.TreVor# is offline  
Old 04/11/2011, 15:54   #6
 
elite*gold: 600
Join Date: Dec 2010
Posts: 1,625
Received Thanks: 1,866
Sehr nützlich danke
Bataleon is offline  
Old 04/11/2011, 16:04   #7
 
elite*gold: 35
Join Date: Jun 2009
Posts: 2,187
Received Thanks: 6,906
Habe noch ne kleine Idee:
Ne Nachricht für den Spieler anzeigen lassen der geblockt ist.
( Keine pn sondern auch so appendChat ...)
Wäre das denn überhaupt möglichß
CranK™ is offline  
Old 04/11/2011, 16:12   #8
 
musicinstructor's Avatar
 
elite*gold: 190
Join Date: Nov 2008
Posts: 1,670
Received Thanks: 3,368
Quote:
Originally Posted by CranK™ View Post
Habe noch ne kleine Idee:
Ne Nachricht für den Spieler anzeigen lassen der geblockt ist.
( Keine pn sondern auch so appendChat ...)
Wäre das denn überhaupt möglichß
man könnte dem spieler die nachricht per pn schicken und dann einbauen, dass wenn die pn z.B. mit CBR: (ChatBlockReason) beginnt, man im chat "Dein Chat wurde von " + NamedesSenders + " für " + Sekunden + " wegen " + Grund + " geblockt." ausgibt. Die Informationen kann man dann aus der PN rausholen und die PN wird nur akzeptiert, wenn der name des Senders mit [ beginnt.

Mal sehen, ob ich dafür mal zeit habe...
musicinstructor is offline  
Old 04/11/2011, 16:14   #9
 
elite*gold: 35
Join Date: Jun 2009
Posts: 2,187
Received Thanks: 6,906
Okay, ich werd's auch mal testen.
Aber dann wäre es auch gut wenn man noch so einbaut, das die chatline wieder geleert wird, wenn du weißt wie ich meine.
Also so dass der Spieler gar nichts von der pn mit bekommt..
CranK™ is offline  
Old 04/11/2011, 16:42   #10
 
musicinstructor's Avatar
 
elite*gold: 190
Join Date: Nov 2008
Posts: 1,670
Received Thanks: 3,368
Quote:
Originally Posted by CranK™ View Post
Okay, ich werd's auch mal testen.
Aber dann wäre es auch gut wenn man noch so einbaut, das die chatline wieder geleert wird, wenn du weißt wie ich meine.
Also so dass der Spieler gar nichts von der pn mit bekommt..
das geht ganz einfach, das habe ich schon in einem anderen mod von mir benutzt.
musicinstructor is offline  
Thanks
1 User
Old 04/11/2011, 16:53   #11
 
.Rebel's Avatar
 
elite*gold: 60
Join Date: May 2010
Posts: 766
Received Thanks: 1,025
musicinstructor

can you release your uitarget.py i am get some dificultes set your release
.Rebel is offline  
Old 04/11/2011, 16:55   #12
 
elite*gold: 0
Join Date: Dec 2010
Posts: 262
Received Thanks: 15
Nice

#Thx

Welcher Server ist das wenn ich Fragen darf?

Und dann habe ich noch eine Frage könnte man es nicht auch mit anderen Sachen? z.B das man auf einen Metin draufklickt und neben der Anzeige dann sowas wie Kill Metin oder Weak Metin machen?

Dadurch lassen sich doch auch per Klick die Namenlosen bannen oder nicht?


MFG Fake
FakeTool is offline  
Old 04/11/2011, 16:55   #13
 
elite*gold: 0
Join Date: Apr 2010
Posts: 1,264
Received Thanks: 485
Quote:
Originally Posted by musicinstructor View Post
Moin,

ich hab´ ein Skript für euch, mit dem man als GM den Spielern einen Chatblock geben kann, ohne deren Namen eingeben zu müssen oder die Zeit in Sekunden ausrechnen muss, denn das macht die Erweiterung automatisch.

Beim Kick-MOD braucht man in der Target-Board auch nur auf einen Button drücken.

Screenshot:

Nun zum Installieren:
Als erstes öffnet ihr die uitarget.py aus der root-Datei.

Erstmal schreibt ihr zu den Imports das neue Modul dazu.
Code:
import uiChatBlock
Wir müssen die beiden Buttons in die BUTTON_NAME_LIST einfügen.
Dazu am Ende der Liste einfach noch das hinzufügen:
Code:
		"Kick",
		"ChatBlock",
So sollte die Liste dann bei euch aussehen:

Dann weisen wir dem Button ein Event zu.
Sucht nach
Code:
		self.buttonDict[locale.TARGET_BUTTON_WHISPER].SetEvent(ui.__mem_func__(self.OnWhisper))
und setzt diese beiden Zeilen darunter:
Code:
		self.buttonDict["Kick"].SetEvent(ui.__mem_func__(self.OnKick))
		self.buttonDict["ChatBlock"].SetEvent(ui.__mem_func__(self.OnChatBlock)
Um den Dialog zu laden, sucht nach
Code:
self.name = name
und setzt Folgendes darunter:
Code:
		dlgChatBlock = uiChatBlock.ChatBlockDialog()
		dlgChatBlock.LoadDialog()
		dlgChatBlock.SetTitleName("ChatBlock")
		dlgChatBlock.Hide()
		self.dlgChatBlock = dlgChatBlock
Der Dialog muss auch wieder entladen werden können, also sucht nach
Code:
	def Destroy(self):
und schreibt darunter
Code:
		self.dlgChatBlock.Destroy()
		self.dlgChatBlock = 0
Die entsprechenden Events kommen ganz ans Ende der Datei:
Code:
	def OnKick(self):
		net.SendChatPacket("/dc " + str(chr.GetNameByVID(self.vid)))

	def OnChatBlock(self):
		#if os.path.exists('gm.txt') and os.path.isfile('gm.txt'):
		if str(player.GetName())[0] == "[":
			self.dlgChatBlock.SetTitleName("ChatBlock: " + str(chr.GetNameByVID(self.vid)))
			self.dlgChatBlock.Open(str(chr.GetNameByVID(self.vid)))
Als letztes sucht ihr nach
Code:
self.ShowDefaultButton()
und setzt darunter
Code:
		if str(player.GetName())[0] == "[":
			self.__ShowButton("Kick")
			self.__ShowButton("ChatBlock")
Jetzt könnt ihr die Datei speichern.

Zum Schluss müsst ihr noch uichatblock.py aus dem Archiv im Anhang in euer root-Archiv und chatblockdialog.py in euer uiscript-Archiv (in den Ordner uiscript) packen.
Ihr dürft nicht vergessen, die Dateien auch wieder in eure Repack-XML reinzuschreiben.
Wenn bei euch Fehler in der uitarget.py kommen, löscht alle Tabs und macht sie nochmal neu, denn vBulletin wandelt sie in Leerzeichen um.
LOL like you haven`t made it easy enough already. Thanks anyways.

LG+
.99Percent
Almari is offline  
Old 04/11/2011, 16:57   #14
 
elite*gold: 35
Join Date: Jun 2009
Posts: 2,187
Received Thanks: 6,906
Quote:
Originally Posted by FakeTool View Post
Nice

#Thx

Welcher Server ist das wenn ich Fragen darf?

Und dann habe ich noch eine Frage könnte man es nicht auch mit anderen Sachen? z.B das man auf einen Metin draufklickt und neben der Anzeige dann sowas wie Kill Metin oder Weak Metin machen?

Dadurch lassen sich doch auch per Klick die Namenlosen bannen oder nicht?


MFG Fake
LongDong2
Ich lade ihn mir gerade auch runter
CranK™ is offline  
Old 04/11/2011, 17:24   #15
 
Critone's Avatar
 
elite*gold: 149
Join Date: Feb 2010
Posts: 1,297
Received Thanks: 345
Muss man den root ordner wo die "uichatblock.py" drin ist, ganz in den root.epk ordner stecken oder nur die datei?
Critone is offline  
Reply

Tags
/j, block_chat, dialog, mod, python


Similar Threads Similar Threads
help me leute chatblock
03/27/2011 - Metin2 Private Server - 3 Replies
Hallo leute ich will jemand chatblock geben und es geht ned obwoll ich alles richtig mache und er kann weiter schreiben kann mir vill jemand helfen?
Chatblock direkt..
01/18/2011 - Metin2 Private Server - 5 Replies
Hey, Bei Metin2.DE bekommt man ja direkt einen Chatblock wenn man z.B. die Namen der Yangseller in den Chat schreibt. Nun ist meine Frage wie die das eingestellt haben bzw. ob das eine neue Funktion der '10er Files ist? Hat jemand eine Idee :D?
Chatblock umgehen?
09/29/2010 - Metin2 - 4 Replies
Hey Com.. wollte schon immer mal wissen , ob man nen chatblock umgehen kann.. ich frage mich , wo das gespeichert wird.. kann man am client rumspielen ? das man trotz chatblock einfach weiter schreiben kann?
ChatBlock wegmachen ?
07/13/2010 - Metin2 Private Server - 2 Replies
Kann man einen Chatblock machen wolte nämlich nur 10 Stunden machen habe jetzt 102 Tage pls help
Chatblock entnehmen
01/16/2010 - Metin2 Private Server - 3 Replies
Welchen befehl brauche ich um den chatblock zu entnehmen von einem spieler? Bitte um schnelle antwort thx



All times are GMT +2. The time now is 21:29.


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.