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 09:27

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

Advertisement



[Release]"Normales-Lager" Button im Inventar

Discussion on [Release]"Normales-Lager" Button im Inventar within the Metin2 PServer Guides & Strategies forum part of the Metin2 Private Server category.

Reply
 
Old   #1


 
.UnknownUser™'s Avatar
 
elite*gold: 0
The Black Market: 100/0/1
Join Date: Jun 2011
Posts: 3,364
Received Thanks: 1,743
[Release]"Normales-Lager" Button im Inventar

Hey ho E*pvp!
Da ich derzeit den Client modde für mein neues großes Projekt "Ayumi3", teile ich euch hier mal ein Feature. Es gibt es bisher nicht!

Was wird gebraucht?
-Euren Client
-Brain.exe
-Bisschen Zeit!

Fangen wir an.

Entpackt die locale_de und geht zu source\locale\de\ui.
Öffnet die inventorywindow.py und sucht nach
PHP Code:
"name" "MallButton"
Unter diesem Button fügt ihr einfach
PHP Code:
{
                            
"name" "LagerButton",
                            
"type" "button",

                            
"x" 80,
                            
"y" 150,

                            
"tooltip_text" uiScriptLocale.LAGER_TITLE,

                            
"default_image" "d:/ymir work/ui/game/TaskBar/Mall_Button_01.tga",
                            
"over_image" "d:/ymir work/ui/game/TaskBar/Mall_Button_02.tga",
                            
"down_image" "d:/ymir work/ui/game/TaskBar/Mall_Button_03.tga",
                        }, 
ein



Speichern,schließen.

Sucht die locale_interface im Ordner source\locale\de

Sucht nach
PHP Code:
MALL_TITLE    Itemshop-Lager 
Und fügt darunter
PHP Code:
LAGER_TITLE    Normales-Lager 
ein


Speichern,schließen.

Weiter gehts in der root. Entpackt euer root.epk/eix Archiv und öffnet die uiinventory.py

Sucht nach
PHP Code:
self.mallButton self.GetChild2("MallButton"
Und fügt darunter
PHP Code:
self.LagerButton self.GetChild2("LagerButton"
ein


Dann sucht ihr nach
PHP Code:
if self.mallButton:
            
self.mallButton.SetEvent(ui.__mem_func__(self.ClickMallButton)) 
und fügt darunter
PHP Code:
if self.LagerButton:
            
self.LagerButton.SetEvent(ui.__mem_func__(self.ClickLagerButton)) 
ein


Sucht nach
PHP Code:
def ClickMallButton(self):
        print 
"click_mall_button"
        
net.SendChatPacket("/click_mall"
und fügt darunter
PHP Code:
def ClickLagerButton(self):
        
import event
        event
.QuestButtonClick(67
ein


ACHTUNG: DIE 67 STEHT FÜR QUESTINDEX DAZU NUN MEHR.

Fügt eine neue Quest auf eurem Server ein.
PHP Code:
quest lagerbutton begin
    state start begin
        when button 
or info begin
            game
.open_safebox()
        
end
    end
end 
Schreibt die Quest wie immer in die quest_list (oder auch locale_list)


Bei mir liegt die Quest in Zeile 67. Deswegen habe ich in der uiinventory.py bei event.QuestButtonClick(67) 67 in der Klammer stehen. Liegt eure Quest ZUM BEISPIEL in Zeile 199 schreibt ihr event.QuestButtonClick(199) in die uiinventory.py

Speichert alles ab, Ladet eure Questen und Rebootet.
Habt ihr alles richtig gemacht siet es bei euch nun so aus



Es funktioniert zu 100% wenn ihr es so einfügt wie es hier im Thread steht.
Achtet auf TABs!

PS: Auf diese Methode, lässt sich jeder Button mit einer Quest verbinden. Beachtet in der Quest when button or info begin zu benutzen!

MFG

Special-Thanks
- der Beste Quester und meiner!

Quote:
Originally Posted by K0tn4scher View Post
Kleiner Tipp um sich das elendige Questindex gesuche zu sparen.

Schreib die Quest so:

PHP Code:
quest lagerbutton begin
    state start begin
        when letter begin
            cmdchat
("normal_mall "..q.getcurrentquestindex())
        
end
        when button 
or info begin
            game
.open_safebox()
        
end
    end
end 
Dann gehst du in die game.py bei den Servercommands und fügst das hinzu
PHP Code:
"normal_mall"            self.__Opennormalmall
Ganz unten in der Game dann folgende funktion.
PHP Code:
def __Opennormalmall(selfqid):
    
constInfo.mallqinint(qid
Gehe in deine constinfo.py und schreibe
PHP Code:
mallqin 

und aus deiner def ClickLagerButton machst du folgendes
PHP Code:
def ClickLagerButton(self):
    
import event
    qid 
constInfo.mallqin
    event
.QuestButtonClick(qid
Denn jedesmal wenn du neue Quests hinzufügst ändert sich der Questindex. Somit hast du es immer automatisch belegt.

PS: Sollte das so nicht funktionieren hab ich ein Tippfehler. Es ist 2 Uhr und ich bin müde

Mfg Blaze
.UnknownUser™ is offline  
Thanks
59 Users
Old 10/15/2013, 22:54   #2
 
[ViP]Nereus's Avatar
 
elite*gold: 0
Join Date: May 2013
Posts: 265
Received Thanks: 44
Danke ich habe den schon gesucht
[ViP]Nereus is offline  
Old 10/15/2013, 22:55   #3


 
.UnknownUser™'s Avatar
 
elite*gold: 0
The Black Market: 100/0/1
Join Date: Jun 2011
Posts: 3,364
Received Thanks: 1,743
Ich denke so lässt es sich mega einfach einbauen
.UnknownUser™ is offline  
Old 10/15/2013, 22:56   #4
 
elite*gold: 280
Join Date: May 2009
Posts: 1,208
Received Thanks: 136
Danke habe denn gesucht
Mr|NFNx is offline  
Old 10/15/2013, 22:57   #5
 
elite*gold: 0
Join Date: Sep 2013
Posts: 491
Received Thanks: 675
Könntest den Index der Quest beim Login übergeben damit es dynamischer ist und nicht jeder die Zahl anpassen muss.
.Kibito is offline  
Thanks
1 User
Old 10/15/2013, 22:59   #6


 
.UnknownUser™'s Avatar
 
elite*gold: 0
The Black Market: 100/0/1
Join Date: Jun 2011
Posts: 3,364
Received Thanks: 1,743
Quote:
Originally Posted by .Kibito View Post
Könntest den Index der Quest beim Login übergeben damit es dynamischer ist und nicht jeder die Zahl anpassen muss.
Richtig.
Siehe

Habe es so auf die schnelle geschrieben.
.UnknownUser™ is offline  
Old 10/15/2013, 23:08   #7
 
elite*gold: 0
Join Date: Oct 2013
Posts: 341
Received Thanks: 290
Gut gemacht Only, danke dir.
Shodans is offline  
Thanks
2 Users
Old 10/15/2013, 23:24   #8
 
☆NaYoN☆'s Avatar
 
elite*gold: 0
Join Date: Jun 2013
Posts: 308
Received Thanks: 136
Thx; schon auf der Suche mind. 2 jahre xD
☆NaYoN☆ is offline  
Old 10/15/2013, 23:27   #9


 
.UnknownUser™'s Avatar
 
elite*gold: 0
The Black Market: 100/0/1
Join Date: Jun 2011
Posts: 3,364
Received Thanks: 1,743
Quote:
Originally Posted by ☆NaYoN☆ View Post
Thx; schon auf der Suche mind. 2 jahre xD
Da es das auch noch nich gibt release ich es auch^^
.UnknownUser™ is offline  
Old 10/15/2013, 23:40   #10

 
Aze /..'s Avatar
 
elite*gold: 220
Join Date: Oct 2011
Posts: 7,369
Received Thanks: 7,610
Monate gesucht, nie gefunden, du released es. Besser kanns net sein yy
Aze /.. is offline  
Thanks
1 User
Old 10/16/2013, 01:17   #11
 
Da' Real Pαιη's Avatar
 
elite*gold: 0
Join Date: Aug 2013
Posts: 568
Received Thanks: 701
Nice Danke dir
Da' Real Pαιη is offline  
Old 10/16/2013, 01:30   #12
 
elite*gold: 1085
Join Date: Mar 2013
Posts: 227
Received Thanks: 436
Eigentlich ganz simple, danke trotzdem, für die Arbeit, die du dir mit dem Release gemacht hast.
[iSeven] is offline  
Old 10/16/2013, 01:41   #13
 
elite*gold: 0
Join Date: Aug 2013
Posts: 20
Received Thanks: 12
InventoryWindow' object has no attribute 'LagerButton' <- Sagt meine Sysrr :/
SilversRay is offline  
Old 10/16/2013, 02:01   #14
 
elite*gold: 0
Join Date: Sep 2012
Posts: 120
Received Thanks: 36
Kleiner Tipp um sich das elendige Questindex gesuche zu sparen.

Schreib die Quest so:

PHP Code:
quest lagerbutton begin
    state start begin
        when letter begin
            cmdchat
("normal_mall "..q.getcurrentquestindex())
        
end
        when button 
or info begin
            game
.open_safebox()
        
end
    end
end 
Dann gehst du in die game.py bei den Servercommands und fügst das hinzu
PHP Code:
"normal_mall"            self.__Opennormalmall
Ganz unten in der Game dann folgende funktion.
PHP Code:
def __Opennormalmall(selfqid)
    
constInfo.mallqinint(qid
Gehe in deine constinfo.py und schreibe
PHP Code:
mallqin 

und aus deiner def ClickLagerButton machst du folgendes
PHP Code:
def Clicklagerbutton
    import event
    qid 
constInfo.mallqin
    event
.QuestButtonClick(qid
Denn jedesmal wenn du neue Quests hinzufügst ändert sich der Questindex. Somit hast du es immer automatisch belegt.

PS: Sollte das so nicht funktionieren hab ich ein Tippfehler. Es ist 2 Uhr und ich bin müde

Mfg Blaze
K0tn4scher is offline  
Thanks
3 Users
Old 10/16/2013, 09:08   #15
 
.ProjektX²'s Avatar
 
elite*gold: 0
Join Date: Oct 2013
Posts: 194
Received Thanks: 83
Wenn wir schon beim vereinfachen sind, es reicht auch wenn du nur:

PHP Code:
when button begin 
machst. Ohne info
.ProjektX² is offline  
Reply


Similar Threads Similar Threads
Lager"button" im Inventar
03/24/2011 - Metin2 Private Server - 3 Replies
Hey es gibt ja schon länger den IS button beim Inventar bei Cranks Cliet (1.3) gibt es auch noch den Lager Button weiß jemand wie man den zum laufen bringt? LG Nick



All times are GMT +2. The time now is 09:27.


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.