[HILFE]Map ab bestimmten Level <<<-----!

11/17/2011 15:18 .SliceR#1
Hallo,
habe ein problem undzwar ich möchte eine Map ab einem bestimmtem level machen.Also das man sich erst dort hin teleportieren kann wenn man das bestimmte lvl erreicht hat.

Zu der Map kann man vom Warpring also die neue map wurde in den warpring eingefügt und dort soll man sich halt erst ab z.B lvl 90 hinporten können.Ich weiß jetz jedoch nicht was ich mit dieser Quest anfangen soll ich weiß das ich sie in die warpring.quest packen muss doch wohin ????

Quest :
if pc.get_level < 98 then
pc.warp(3000 , 3000)


end

Bitte um Hilfe.

Mfg. Klum
11/17/2011 15:22 Zierpflanze#2
Müsste eig. so sein...
Weiß das auch nicht so genau hab das
mit einem NPC versucht das man den Shop
nur mit einem Bestimmten level öffnen kann...
Hat nur iwie nicht Funktioniert...^^

nur > 20 bringt eig. nix d.h. ja dann unter 20?
und nicht drüber?^^
11/17/2011 15:25 .SliceR#3
Das war jetz ein beispiel :P mit dem lvl

#Suche immer noch die lösung :P
11/17/2011 15:36 Zierpflanze#4
Hmmm weiß nicht ob ich dich richtig verstehe...
aber wenn es eine Quest ist enden die datein
verschieden z.b. arg, script und when...
in Arg kommt da rein was dort Stehen soll z.b. du bentutz den Ring
dann steht dort: [Teleportieren]
Und unter Script schreibste dann z.b. sowas wie beim Teleporter
das zeug rein.. und die when datei muss frei bleiben^^

Hoffe hast das son bissel verstanden bin nich so der erklär bär im schreiben^^
jedenfalls nicht auf dem gebiet^^
11/17/2011 15:42 .SliceR#5
was ?!? xDD
11/17/2011 15:43 Structurix#6
du schreibst das als quest,oder in eine vorhandene quest rein,und das kommt in den quest ordner,in die questlist eintragen und make.sh ausführen

MFG
11/17/2011 15:46 Sp0ngeb0b ist cool#7
du suchst in der quest nach der bestimmten map, genauer gesagt nach der auswahl der map

bsp :
PHP Code:
say("in welche map möchtest du?")
local s select("Bsp""Bsp""Bsp""Bsp""Deine Map")
if 
== 5 then
    
if pc.get_level() >= 98 then
        say
("du wirst teleportiert")
        
pc.warp(3000 3000)
    else
        
say("dein level ist zu niedrig!")
    
end
end 
so ähnlich müsste das aussehen ;)
ich denke, das beispiel ist gut zu verstehen

bei den koords einfach die normalen koords+00 eintragen
bsp: standard koords = 4444, 4444
also: pc.warp(444400, 444400)

natürlich finden spieler imer möglichkeiten, trotz dessen auf die map zu gelangen
zb. durch führung oder so^^

diese kann man beispielweise dadurch umgehen:

PHP Code:
when login or logout or levelup or kill or ran with pc.get_map_index() == *INDEXbegin
    
if pc.get_level() < *MINDEST_LEVELthen
        pc
.warp(koordskoords)
    
end
end 
dadurch wird der spieler, wenn er irgendetwas auf der map ausführt(einloggen, killen, bewegen, ausloggen oder levelup) und unter dem mindest level ist, in eine andere map geportet

die koords muss man noch eintragen ;)
11/17/2011 16:32 .Hiяo#8
Quote:
Originally Posted by Sp0ngeb0b ist cool View Post
du suchst in der quest nach der bestimmten map, genauer gesagt nach der auswahl der map

bsp :
PHP Code:
say("in welche map möchtest du?")
local s select("Bsp""Bsp""Bsp""Bsp""Deine Map")
if 
== 5 then
    
if pc.get_level() >= 98 then
        say
("du wirst teleportiert")
        
pc.warp(3000 3000)
    else
        
say("dein level ist zu niedrig!")
    
end
end 
so ähnlich müsste das aussehen ;)
ich denke, das beispiel ist gut zu verstehen

bei den koords einfach die normalen koords+00 eintragen
bsp: standard koords = 4444, 4444
also: pc.warp(444400, 444400)

natürlich finden spieler imer möglichkeiten, trotz dessen auf die map zu gelangen
zb. durch führung oder so^^

diese kann man beispielweise dadurch umgehen:

PHP Code:
when login or logout or levelup or kill or ran with pc.get_map_index() == *INDEXbegin
    
if pc.get_level() < *MINDEST_LEVELthen
        pc
.warp(koordskoords)
    
end
end 
dadurch wird der spieler, wenn er irgendetwas auf der map ausführt(einloggen, killen, bewegen, ausloggen oder levelup) und unter dem mindest level ist, in eine andere map geportet

die koords muss man noch eintragen ;)
Sehr nice das mit dem
PHP Code:
when login or logout or levelup or kill or ran with pc.get_map_index() == *INDEXbegin
    
if pc.get_level() < *MINDEST_LEVELthen
        pc
.warp(koordskoords)
    
end
end 
wustt ich ja auch ncoh ned :D dafür bekommste 100% nen Thx :)
11/17/2011 17:51 .SliceR#9
OKeey habs versuch hat aber i-wie nicht geklappt meine quest sieht jetzt so aus :
Code:
quest warpring begin
    state start begin
        when 70007.use with pc.get_level() >= 10 begin 
        
            if pc.countitem("70007")>=1 then
                pc.removeitem("70007", 1)
            end
            
            say_title("Ring:")
            say("Dies ist eine faszinierende Gegend. Aber")
            say("passiert hier denn auch mal etwas")
            say("Außergewöhnliches? Eher wohl nicht. In anderen")
            say("Teilen des Landes sieht es mitunter ganz anders.")
            say("aus! Es gibt daher sicher einen intressanten")
            say("Ort, an den ich dich teleportieren könnte. Da")
            say("jedoch die Kräfte des Bösen wieder stärker")
            say("geworden sind, wurden Raum und Zeit ins Chaos")
            say("gestürzt. Dadurch kann es passieren, dass deine")
            say("Rückkehr nicht immer augenblicklich funktioniert.")
            say("Möchtest du dennoch teleportiert werden?")

            local main_set = select("Ja","Nein")
            if main_set == 2 then
                return
            end
            
            if pc.get_level() <= 10 then
                say_title("Ring:")
                say("Hm… Mit deinem derzeitigen Level bist du noch")
                say("zu schwach für die Reise durch Zeit und Raum.")
                say("Komm wieder, wenn du höher als Level 10 bist.")
                return
            end

            local map = pc.get_map_index()
            local empire = pc.get_empire()
            local level = pc.get_level()

            say_title("Ring:")
            say("Wohin möchtest du teleportiert werden?")

            -- ?? ?? ???? ?? ?? (? ?? 1,2 ??)
            if map == 1 or map == 3 or map == 21 or map == 23 or map == 41 or map == 43 then

                local guild_map_names = {
                    "Gnom Welt ab Level 100",
                    "Gnom Welt ab Level 100",
                    "Gnom Welt ab Level 100",
                }

                guild_map_name = guild_map_names[empire]
                local empire_castle={
                    "Farmmap",
                    "Farmmap",
                    "Farmmap",
                }
                empire_castle =empire_castle[empire]
                local sub_set = 0
                if level < 60 then -- 60?? : ?????, ???, ????, ???
                    sub_set = select(guild_map_name, "Orktal", "Wüste", "Tempel", empire_castle,"Reichsteleporter")
                    if sub_set == 6 then -- ??
						if s == 1 then
							if pc.get_level() >= 98 then
								say("du wirst teleportiert")
								pc.warp(819200 , 716800)
						else
							say("Dein Level ist zu niedrig!")
						end
					end
						return
                    end
                else -- 61?? : ????, ???, ????, ????
                    sub_set = select(guild_map_name, "Orktal", "Wüste", "Tempel",  empire_castle,"Reichsteleporter")
                    if sub_set == 6 then -- ??
						if s == 1 then
							if pc.get_level() >= 98 then
								say("du wirst teleportiert")
								pc.warp(819200 , 716800)
						else
							say("Dein Level ist zu niedrig!")
						end
					end 
                        say_title("Teleporter:")
                        say("Wohin möchtest du teleportiert werden?")
                        sub_set = select("Rotes Reich", "Blaues Reich", "Zurück", "Abbrechen") + 5
                        if sub_set == 9 then -- ??
                            return
                        end
                        if sub_set == 8 then -- ??
                            say_title("Teleporter:")
                            say("Wohin möchtest du teleportiert werden?")
                                                 ---                                                   l
                            sub_set = select(guild_map_name, "Orktal", "Wüste", "Tempel",  empire_castle,"Reichsteleporter")
                            if sub_set == 6 then -- ??
						if s == 1 then
							if pc.get_level() >= 98 then
								say("du wirst teleportiert")
								pc.warp(819200 , 716800)
						else
							say("Dein Level ist zu niedrig!")
						end
					end 
                                say_title("Teleporter:")
                                say("Wohin möchtest du teleportiert werden?")
                                sub_set = select("Rotes Reich", "Blaues Reich", "Abbrechen") + 5
                                if sub_set == 8 then -- ??
                                    return
                                end
                            end
                        end
                    end
                end


                local warp = {
                    -- guild_map
                    {
                        { 819200, 716800 },
                        { 819200, 716800 },
                        { 819200, 716800 },
                    },
                    -- 64 map_n_threeway
                    {
                        { 402100, 673900 },
                        { 270400, 739900 },
                        { 321300, 808000 },
                    },
                    -- 63 metin2_map_n_desert_01
                    {
                        { 217800, 627200 },
                        { 221900, 502700 },
                        { 344000, 502500 },
                    },
                    -- 61 map_n_snowm_01
                    {
                        { 434200, 290600 },
                        { 375200, 174900 },
                        { 491800, 173600 },
                    },
                    --empire_castle
                    {
                        {83200, 0},
                        {83200, 0},
                        {83200, 0},
                    
                    } ,
                    -- 62 metin2_map_n_flame_01
                    {
                        { 474300, 954800 },
                        { 474300, 954800 },
                        { 474300, 954800 },
                    },
                    -- devil_tower
                    {
                        { 959900, 269200 },
                        { 959900, 269200 },
                        { 959900, 269200 },
                    },
                }
                test_chat(warp[sub_set][empire][1]..warp[sub_set][empire][2])
                say_title("Ring:")
                say("Achtung, ich teleportiere dich jetzt. Du wirst")
                say("an einem gefährlichen Ort landen, also pass auf")
                say("dich auf. Viel Glück!")
                wait()
                pc.warp(warp[sub_set][empire][1], warp[sub_set][empire][2])
            

            else -- ? ?? 1,2 ? ??? ?????? ? ?? 1,2 ? ??? ?? ??    
                local sub_set2 = 3

                --sub_set2 = select(locale.vileage1_name[empire], locale.vileage2_name[empire], locale.cancel)
                if empire==1 then    
                    sub_set2 = select("Map1","Map2" , locale.cancel)
                elseif  empire ==2 then  
                    sub_set2 = select("Map1","Map2" , locale.cancel)
                elseif  empire ==3 then 
                    sub_set2 = select("Map1","Map2" , locale.cancel)
                end    
                if sub_set2 != 3 then
                    if sub_set2 == 1 then
                        say_title("Ring:")
                        say("Ich teleportiere dich dorthin.")
                        wait()

                        if empire == 1 then
                            pc.warp(474300,954800)
                        elseif empire == 2 then
                            pc.warp(63800,166400)
                        elseif empire == 3 then
                            pc.warp(959900,269200)
                        end    
                    elseif sub_set2 == 2 then
                        say_title("Ring:")
                        say("Ich teleportiere dich dorthin.")

                        wait()
                        if empire == 1 then
                            pc.warp(353100,882900)
                        elseif empire == 2 then
                            pc.warp(145500,240000)
                        elseif empire == 3 then
                            pc.warp(863900,246000)
                        end    
                    end -- end sub set check2 if
                end -- end sub set check1 if
            end    -- end map check if
        end -- end when use item
    end -- end state start
end -- end quest warpring

Wo steckt der Fehler ?? Wer's raus findet kriegt nen' fettes THX ;)
Habe das eingefügt :
Code:
if s == 5 then
    if pc.get_level() >= 98 then
        say("du wirst teleportiert")
        pc.warp(3000 , 3000)
    else
        say("dein level ist zu niedrig!")
    end
end