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 16:26

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

Advertisement



[Release] Warpring-Quest (mit endlos vielen Kategorien, Itemabgabe, Levelbegrenzung)

Discussion on [Release] Warpring-Quest (mit endlos vielen Kategorien, Itemabgabe, Levelbegrenzung) within the Metin2 PServer Guides & Strategies forum part of the Metin2 Private Server category.

Reply
 
Old 05/03/2015, 09:11   #16
 
Kampfzwerg!'s Avatar
 
elite*gold: 0
Join Date: Feb 2015
Posts: 306
Received Thanks: 171
das ist in der quest_funktion eingetragen.
PHP Code:
menu
check_item
search_tbl 
das in der questlib.lua
PHP Code:
function search_tbl(tblsearchfor)
    
local maps = {} or maps
    local 
function _search_tbl(tbl)
        for 
k,v in pairs(tbl) do
            if 
string.find(ksearchforthen
                maps
[k] = v
            
elseif type(v) == "table" then
                _search_tbl
(v)
            
end
        end
    end
    _search_tbl
(tbl)
    return 
maps
end 
jetzt zeigt er mir diesen fehler an
PHP Code:
WHEN  70007.use
FUNCTION 
menu(s,warp)
FUNCTION 
check_item(tbl)
Calls undeclared function! :
pairs
warpring
.search_tbl
Error occured on compile warpring
.quest 
Kampfzwerg! is offline  
Old 05/03/2015, 11:52   #17
 
elite*gold: 5
Join Date: Mar 2015
Posts: 499
Received Thanks: 376
Quote:
Originally Posted by Kampfzwerg! View Post
das ist in der quest_funktion eingetragen.
PHP Code:
menu
check_item
search_tbl 
das in der questlib.lua
PHP Code:
function search_tbl(tblsearchfor)
    
local maps = {} or maps
    local 
function _search_tbl(tbl)
        for 
k,v in pairs(tbl) do
            if 
string.find(ksearchforthen
                maps
[k] = v
            
elseif type(v) == "table" then
                _search_tbl
(v)
            
end
        end
    end
    _search_tbl
(tbl)
    return 
maps
end 
jetzt zeigt er mir diesen fehler an
PHP Code:
WHEN  70007.use
FUNCTION 
menu(s,warp)
FUNCTION 
check_item(tbl)
Calls undeclared function! :
pairs
warpring
.search_tbl
Error occured on compile warpring
.quest 
schreib pairs in die quest_functions datei.
KΛIƬӨ is offline  
Thanks
1 User
Old 05/03/2015, 11:55   #18
 
HighWave's Avatar
 
elite*gold: 0
Join Date: Feb 2010
Posts: 487
Received Thanks: 76
Quote:
Originally Posted by Kampfzwerg! View Post
das ist in der quest_funktion eingetragen.
PHP Code:
menu
check_item
search_tbl 
das in der questlib.lua
PHP Code:
function search_tbl(tblsearchfor)
    
local maps = {} or maps
    local 
function _search_tbl(tbl)
        for 
k,v in pairs(tbl) do
            if 
string.find(ksearchforthen
                maps
[k] = v
            
elseif type(v) == "table" then
                _search_tbl
(v)
            
end
        end
    end
    _search_tbl
(tbl)
    return 
maps
end 
jetzt zeigt er mir diesen fehler an
PHP Code:
WHEN  70007.use
FUNCTION 
menu(s,warp)
FUNCTION 
check_item(tbl)
Calls undeclared function! :
pairs
warpring
.search_tbl
Error occured on compile warpring
.quest 
Habe zwar kein compile Fehler, aber ich werde nicht teleportiert :P
HighWave is offline  
Thanks
1 User
Old 05/03/2015, 12:23   #19

 
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
Die Funktionen können auch in der Quest bleiben. Ihr müsst nur folgende Sachen in die quest_functions eintragen, damit der compiler nicht stoppt:

Code:
pairs
_search_tbl
€:
wenn ihr wollt schicke ich euch die compilte quest, dann müsst ihr nur ingame reload q machen^^
rollback is offline  
Thanks
1 User
Old 05/03/2015, 12:43   #20
 
Kampfzwerg!'s Avatar
 
elite*gold: 0
Join Date: Feb 2015
Posts: 306
Received Thanks: 171
Quote:
Originally Posted by usr.setVnum(1093) View Post
Die Funktionen können auch in der Quest bleiben. Ihr müsst nur folgende Sachen in die quest_functions eintragen, damit der compiler nicht stoppt:

Code:
pairs
_search_tbl
€:
wenn ihr wollt schicke ich euch die compilte quest, dann müsst ihr nur ingame reload q machen^^
was so kleinigkeiten ausmachen

Quote:
Originally Posted by HighWave View Post
Habe zwar kein compile Fehler, aber ich werde nicht teleportiert :P
das selbe Problem habe ich jetzt auch
Kampfzwerg! is offline  
Old 05/03/2015, 13:14   #21

 
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
Habt ihr was an der Koordinaten geändert?
rollback is offline  
Old 05/03/2015, 13:15   #22
 
Kampfzwerg!'s Avatar
 
elite*gold: 0
Join Date: Feb 2015
Posts: 306
Received Thanks: 171
PHP Code:
                ["Map 1"] = {
                    [
"Rotes Reich"] = {
                        [
"koord"] = {474300954800}, 
zum test das eingetragen
Kampfzwerg! is offline  
Old 05/03/2015, 13:25   #23

 
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
kompletten table bitte ^^
rollback is offline  
Old 05/03/2015, 13:32   #24
 
Kampfzwerg!'s Avatar
 
elite*gold: 0
Join Date: Feb 2015
Posts: 306
Received Thanks: 171
PHP Code:
quest warpring begin
    state start begin
        when 70007.
use begin
            local warp 
= {--koord Pflichtrest optional!
                [
"Map 1"] = {
                    [
"Rotes Reich"] = {
                        [
"koord"] = {474300954800},
                    },
                    [
"Gelbes Reich"] = {
                        [
"koord"] = {63800166400},
                    },
                    [
"Blaues Reich"] = {
                        [
"koord"] = {959900269200},
                    }
                },
                [
"Ab Lv.1"] = {
                    [
"Blubmap"] = {
                        [
"koord"] = {965784275242},
                        [
"level"] = {5075},
                        [
"item"] = {1891}
                    }
                },
                [
"Ab Lv.50"] = {
                    [
"Heftige Map"] = {
                        [
"koord"] = {965784275242},
                        [
"level"] = {5075},
                        [
"item"] = {1891}
                    }
                },
                [
"Dungeons"] = {
                    [
"niedrige"] = {
                        [
"Dämonenturm"] = {
                            [
"koord"] = {965784275242},
                            [
"level"] = {5075},
                            [
"item"] = {1891}
                        }
                    },
                    [
"hohe"] = {
                        [
"Drachenraum"] = {
                            [
"koord"] = {965784275242},
                            [
"level"] = {50105},
                            [
"item"] = {1891}
                        }
                    }
                }
            }
            
say("Warpring")
            
local s select("Map suchen""Map-Liste""Abbrechen")
            if 
== 1 then
                repeat
                    say
("Gib den Namen der Map oder Kategorie ein, nach der")
                    
say("du suchen möchtest.")
                    
maps warpring.search_tbl(warpinput())
                    if 
not maps then
                        say
("Die suche ergab keine Treffer")
                        
local s select("Neue Eingabe""Map-Liste""Abbrechen")
                        if 
== 2 then
                            warpring
.menu(warp)
                            return
                        elseif 
== 3 then
                            
return
                        
end
                    end
                until maps
                warpring
.menu(mapswarp)
                return
            elseif 
== 2 then
                warpring
.menu(warp)
                return
            else
                return
            
end
        end
        
function menu(swarp)
            if 
not warp then
                warp 
s
            end
            repeat
                repeat
                    local s_names 
= {}
                    for 
k,_ in pairs(s) do
                        
table.insert(s_namesk)
                    
end
                    s 
s[s_names[select3(s_names)]] or false
                    
if not s then return end
                until s
["koord"]
                --
chat("Levelcheck start")
                if 
s["level"then
                    
if pc.get_level() < s["level"][1] or pc.get_level() > s["level"][2then
                        say
("Mit deinem Level kannst du diese Map nicht betreten.")
                        
say("Min. Level: "..s["level"][1])
                        
say("Max. Level: "..s["level"][2])
                        if 
select("Zum Hauptmenue""Abbrechen") == 2 then return end
                        warpring
.menu(warp)
                        return
                    
end
                end
                
--chat("Itemcheck start")
                if 
s["item"then
                    
if warpring.check_item(s["item"]) then
                        say
("Zum Teleportieren benötigst du folgendes Item:")
                        
say("")
                        
say(s["item"][2].."x "..item_name(s["item"][1]))
                        
local really select("Teleportieren""Zum Hauptmenue""Abbrechen")
                        if 
really == 3 then
                            
return
                        elseif 
really == 2 then
                            warpring
.menu(warp)
                            return
                        
end
                    
else
                        return
                    
end
                end
                
--chat("Can Warp start")
                while 
pc.can_warp() != true do
                    
say("Du kannst dich noch nicht teleportieren, da du in")
                    
say("den letzten 10 Sekunden gehandelt hast.")
                    
local retry select("Erneut versuchen""Zum Hauptmenue""Abbrechen")
                    if 
retry == 3 then
                        
return
                    elseif 
retry == 2 then
                        warpring
.menu(warp)
                        return
                    
end
                end
                
--chat("Itemcheck 2 start")
                if 
warpring.check_item(s["item"]) then
                    pc
.remove_item(s["item"][1], s["item"][2])
                else
                    return
                
end
                
--chat("Warp start")
                
pc.warp(s["koord"][1], s["koord"][2])
                return
            
until false
        end
        
function check_item(tbl)
            if 
tbl then
                
if pc.count_item(tbl[1]) >= tbl[2then
                    
return true
                end
                say
("Du hast das zum Teleportieren benötigte Item nicht")
                
say("dabei. Du benötigst folgendes Item:")
                
say("")
                
say(tbl[2].."x "..item_name(tbl[1]))
                if 
select("Zum Hauptmenue""Abbrechen") == 2 then return false end
                warpring
.menu(warp)
                return 
false
            end
        end
        
function search_tbl(tblsearchfor)
            
local maps = {} or maps
            local 
function _search_tbl(tbl)
                for 
k,v in pairs(tbl) do
                    if 
string.find(ksearchforthen
                        maps
[k] = v
                        changed 
true
                    
elseif type(v) == "table" then
                        _search_tbl
(v)
                    
end
                end
            end
            _search_tbl
(tbl)
            return (
changed and maps or false)
        
end
    end
end 
Kampfzwerg! is offline  
Old 05/03/2015, 14:03   #25
 
HighWave's Avatar
 
elite*gold: 0
Join Date: Feb 2010
Posts: 487
Received Thanks: 76
ich habe auch nur die koordinaten aus meinem alten warpring kopiert und nur vom blauen reich, der rest läuft aber auch nicht leider :P
HighWave is offline  
Old 05/03/2015, 14:03   #26

 
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
Hab den Fehler gefunden ...

Hier müsst ihr unter dem end noch ein return false reinsetzen:


und hier:

das else return entfernen.


Die Koordinaten immer am besten so aufrufen:

(965601x275586)
rollback is offline  
Thanks
2 Users
Old 05/03/2015, 14:55   #27
 
Kampfzwerg!'s Avatar
 
elite*gold: 0
Join Date: Feb 2015
Posts: 306
Received Thanks: 171
jetzt funktioniert alles so wie es sollte, danke super einfache zu bearbeitende warpring quest! freue mich auf weitere sachen von dir.
Kampfzwerg! is offline  
Thanks
1 User
Old 05/03/2015, 19:18   #28
 
HighWave's Avatar
 
elite*gold: 0
Join Date: Feb 2010
Posts: 487
Received Thanks: 76
Funktioniert auch hier, Vielen Dank !
HighWave is offline  
Old 05/04/2015, 18:05   #29
 
Kampfzwerg!'s Avatar
 
elite*gold: 0
Join Date: Feb 2015
Posts: 306
Received Thanks: 171
ist es irgendwie möglich das er das noch aufgelistet anzeigt so wie man es in der quest schreibt?


Kampfzwerg! is offline  
Old 05/04/2015, 19:32   #30

 
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
Quote:
Originally Posted by Kampfzwerg! View Post
ist es irgendwie möglich das er das noch aufgelistet anzeigt so wie man es in der quest schreibt?


Code:
repeat
	local s_names = {}
	for k,_ in pairs(s) do
		table.insert(s_names, k)
	end
	s = s[s_names[select3(s_names)]] or false
	if not s then return end
until s["koord"]
-->

Code:
repeat
	local s_names = {}
	for k,_ in pairs(s) do
		table.insert(s_names, k)
	end
	table.sort(s_names)
	s = s[s_names[select3(s_names)]] or false
	if not s then return end
until s["koord"]
rollback is offline  
Thanks
1 User
Reply


Similar Threads Similar Threads
[Release] kleine Warpring-Quest | leicht zu verwalten
03/22/2015 - Metin2 PServer Guides & Strategies - 17 Replies
Ich mal wieder, heute mal was sehr kleines - eine Warpring-Quest. Ich weiss, dass es schon lange die Warpkarte gibt, allerdings finde ich die nicht so toll ... ist halt Geschmackssache. Ausserdem waren alle Warpring-Quests die ich so gefunden habe nicht so toll geschrieben um nicht #?@??<# zu sagen. Also, hier mal eine Warpring-Quest von mir - leicht zu verwalten und übersichtlich. video: https://www.youtube.com/watch?v=xmSATCT-jjc quest warpring begin state start begin when...
[Release] Warpring Quest
01/12/2015 - Metin2 PServer Guides & Strategies - 6 Replies
eine kleine vorlage quest warpring begin state start begin when 70007.use begin local data { {"Map1 Rot", x, y}, {"Map2 Rot", x, y}, {"Map1 Gelb", x, y}, {"Map2 Gelb", x, y},
PvP-Quest mit Levelbegrenzung
08/31/2011 - Metin2 Private Server - 1 Replies
Hier diese Quest: http://www.elitepvpers.com/forum/metin2-pserver-g uides-strategies/832727-release-funktionierende-pv p-quest.html Kann man diese Quest auch mit Levelbegrenzung schreiben? . So , dass man nur Spieler 5 level unter und über dir dazu zählen? €dit: Und kann man es so machen , dass die Kills nur in einer bestimmten Map zählen?
[Quest Release]Warpring *redesigned*
08/21/2010 - Metin2 PServer Guides & Strategies - 3 Replies
this quest is the normal warpring, but redesigned so that's easier to add maps and change maps. if you like it, thank it =) Features: -enables players to warp to maps with an item. Things that can be better:



All times are GMT +2. The time now is 16:26.


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.