Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > Metin2 > Metin2 Private Server
You last visited: Today at 08:23

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

Advertisement



[SERVICE] Die Questkontrolle

Discussion on [SERVICE] Die Questkontrolle within the Metin2 Private Server forum part of the Metin2 category.

Reply
 
Old 03/29/2017, 15:23   #12511
 
elite*gold: 0
Join Date: Dec 2016
Posts: 29
Received Thanks: 6
Kann wer helfen?

Ist nur der teil der fehlerhaft ist.
Titan_Phantom is offline  
Old 04/02/2017, 17:52   #12512

 
GYJohn's Avatar
 
elite*gold: 34
Join Date: Apr 2011
Posts: 998
Received Thanks: 136
#done
GYJohn is offline  
Old 04/02/2017, 19:06   #12513
 
Anonyme™'s Avatar
 
elite*gold: 310
Join Date: May 2011
Posts: 1,592
Received Thanks: 105
Hey,
wollte mal fragen, ob jemand über diese Quest schauen könnte?
Code:
quest bio_level90 begin 
	state start begin 
		when login or levelup with pc.level() >= 90 begin 
			set_state(information) 
		end
	end 

	state information begin
		when letter begin 
			local virtualFind = find_npc_by_vnum(20084)
			if virtualFind != 0 then 
				target.vid("__TARGET__", virtualFind, "Sammle Notizen der Anführer") 
			end
			send_letter("Sammle Notizen der Anführer") 
		end
		
		when button or info begin 
			say_title("Sammle Notizen der Anführer:")                                 
			say("Der Biologe Chaegirab, Lehrling Uriels,")          
			say("sammelt Informationen über die Bosse.")       
			say("Für seine Forschung benötigt er 10 Notizen")     
			say("Bringe sie ihm einzeln, damit er")                 
			say("sie in Ruhe studieren kann.")                    
			say("Du bekommst sie von den Bossen.")                     
			say("")
		end
		
		when __TARGET__.target.click or 20084.chat."Sammle Notizen" begin
			target.delete("__TARGET__")
			say_title("Biologe Chaegirab:")
			say("Sei gegrüßt edler  Held!")
			say("Ich sammle Informationen über die Bosse .")
			say("Doch leider bin ich nicht im stande die Bosse allein zu Untersuchen.")
			say("Darum bitte ich dich 10 Notizen der Anführer  zu beschaffen und mir zu bringen .")
			say("Man kann nicht jeden Tag etwas Großes tun, aber gewiss immer etwas Gutes.")
			say("Nur wenn man das Unerreichbare anstrebt, gelingt das Erreichbare.")
			say("")
			pc.setqf("actual_collect_count", 0)  
			pc.setqf("increase_chance", 0)       
			set_state(kill_teh_viecher)          
		end
	end
	
	state kill_teh_viecher begin
		when letter begin
			send_letter("Auftrag von Biologe Chaegirab")
		end
		
		when button or info begin
			say_title("Notiz der Anführer:")
			say("Biologe Chaegirab gab euch den Auftrag")
			say("10 Notizen der Anführer zu sammeln!")
			say("Das Item bekommst du von den Bossen.")
			say("Viel Glück!")
			say("")
			say_item_vnum(30168) 
			say_reward("Du hast bis jetzt "..pc.getqf("actual_collect_count").." Stück gesammelt!") 
			say("")
		end
	
		
		when 591.kill or 691.kill or 791.kill or 793.kill or 991.kill or 992.kill or 993.kill or 1091.kill or 1092.kill or 1093.kill or 1094.kill or 1095.kill or 1304.kill or
             1403.kill or 2091.kill or 2191.kill or 2206.kill or 2207.kill or 2306.kill or 2493.kill or 2494.kill or 5004.kill or
             5161.kill or 5162.kill or 5163.kill or 2597.kill begin  
			
			 local dropChance = number(10,100)
            if dropChance == 1 and pc.count_item(30168) < 20-pc.getqf("actual_collect_count") then
                pc.give_item2(30168, 1)
            end
			end
		end
		
		when 20084.chat."Notizen der Anführer " with pc.count_item(30168) > 0 then
			if get_time() > pc.getqf("give_next_item") then 
				local erfolgschance  
				say_title("Biologe Chaegirab:")
				say("Einen Moment!")
				say("Ich werde die Notiz überprüfen.")
				say("Hoffentlich ist sie von guter Qualität!")
				pc.remove_item(30168, 1) 
				pc.setqf("give_next_item", get_time()+1) 
				wait()
				if pc.getqf("increase_chance") == 0 then
					gebrauchte_erfolgschance = 45  
				else 
					gebrauchte_erfolgschance = 100 
				end
				local erfolg_zufall = number(1, 100)
				if erfolg_zufall <= gebrauchte_erfolgschance then 
					if pc.getqf("actual_collect_count") < 14 then 
						local newCount = pc.getqf("actual_collect_count")+1 
						pc.setqf("actual_collect_count", newCount)  
						say_title("Biologe Chaegirab:")
						say("Pefekt! Diese Notizg  ist ein Prachtexemplar.")
						say("Dir fehlen nun noch "..10-pc.getqf("actual_collect_count").." Stück")
						say("Bringe mir die Restlichen!")
						say("")
						return
					end
					say_title("Biologe Chaegirab:")
					say("Danke! Du hast alle Bosse vernichtet")
					say("und mir alle Notizen der Anführer gebracht!")
					say("Dafür werde ich dich wie versprochen belohnen!")
					say("")
 					say_reward("Deine Zaubergeschwindigkeit  hat sich permanent um 20% erhöht") 
					say_reward("Dein HP hat sich permanent um 2000 erhöht.")
					say_reward("Deine Schadenreduzierung hat sich permanent um 10% erhöht")
					say_reward("Dein Angriffswert hat sich permanent um 100 erhöht")
					
					clear_letter()
					
					affect.add_collect(apply.MAX_HP,2000,60*60*24*365*60)
					affect.add_collect(apply.ATT_GRADE_BONUS,100,60*60*24*365*60)
					affect.add_collect(apply.RESIST_TWOHAND,10,60*60*24*365*60)
					affect.add_collect(apply.RESIST_SWORD,10,60*60*24*365*60)
					affect.add_collect(apply.RESIST_DAGGER,10,60*60*24*365*60)
					affect.add_collect(apply.RESIST_BELL,10,60*60*24*365*60)
					affect.add_collect(apply.RESIST_FAN,10,60*60*24*365*60)
					affect.add_collect(apply.RESIST_BOW,10,60*60*24*365*60)
					
					set_state(__COMPLETE__) 
					return
				else 
					say_title("Biologe Chaegirab:")
					say("Die Notiz ist von schlechter Qualität!")
					say("Ich kann ihn leider nicht weiter verwenden.")
					say("Besorg mir schnell eine Neue!")
					say("")
					pc.setqf("increase_chance", 0)
					return
				end
			else -- 
				say_title("Biologe Chaegirab:")
				say("Ich bin mit dem vorherigen Exemplar noch nicht fertig")
				say("Bitte warte noch ein wenig bevor du mir eine Neue bringst.")
				return
			end
		end
	end
	
	state __COMPLETE__ begin
	
end
Er gibt beim Compilieren folgenden Fehler aus: expecting 'state'

Leider finde ich denn Fehler grade nicht selbst.
Die Quest ist nicht von mir sondern von einem anderen User.

Hoffe mir bzw ihm kann jemand Helfen.

Mit freundlichen Grüßen
Anonyme™
Anonyme™ is offline  
Old 04/08/2017, 18:29   #12514
 
elite*gold: 0
Join Date: Jun 2011
Posts: 13
Received Thanks: 0
Questhilfe

Moin, die Quest funktioniert jetzt so wie sie soll allerdings stört mich noch eine sache..
der 2. questbrief zurück zum stallburschen soll ja erscheinen sobald ich lvl 10 erreicht habe und 10 pms habe..
aber mal angenommen ich werde lvl 10, habe aber erst 9 medailen, hebe ich dann die 10. auf kommt der 2. questbrief nicht...
erscheint nur wenn ich bereits 10 medailen habe und dann lvl 10 erreiche..
kann einer das noch so umschreiben das es egal ist was ich zuerst erreiche, wenn die bedingungen lvl 10 und 10 pms erfüllt sind der questbrief automatisch aufploppt?
PHP Code:
quest horse_getting begin
    state start begin
        when login begin
            send_letter
("Der Stallbursche braucht deine Hilfe")
        
end
        when button 
or info begin
            say_title
("Ich brauche dringend Hilfe "..pc.get_name())
            
say("Ich war letztens auf einer Fortbildung.")
            
say("Auf dem Rueckweg ist mir meine Tasche gerissen")
            
say("und habe ein paar meiner Medailen verloren.")
            
say_item_vnum(50050)
            
say(string.format("Geh und bringe mir bitte %d dieser Medailen wieder"10))
            
say(string.format("wenn du hier dein %d. Lebensjahr erreicht hast."10))
        
end
        when login 
or levelup with pc.get_level()>=and pc.count_item(50050)>=9 begin
            set_state
(anfang)
        
end
    end
    state anfang begin
        when letter begin
            send_letter
("Zurueck zum Stallburschen")
            
local vid find_npc_by_vnum(20349)
            if 
vid ~= 0 then
                target
.vid("TARGET_HORSE_GETTING"vid"gehe zum Stallburschen")
            
end
        end
        when TARGET_HORSE_GETTING
.target.click begin
            
if pc.count_item(50050)<=9 then
                say
("Komme wieder wenn du 10 meiner Medailen hast")
                return
            
end
            pc
.remove_item(5005010)
            
pc.give_item2(500511)
            
pc.set_skill_level(13110)
            
horse.set_level(1)
            
horse.summon()
            
horse.ride()
            
say("Heey nicht so schnell das Ding hat")
            
say("mich viel Arbeit gekostet.")
            
set_state(ende)
        
end
    end
    state ende begin
    end
end 
noch eine frage am rande, wann benutze ich den befehl return in einer quest?
Benutze ich das dann wenn ich in einer quest einen befehl habe der erst später ausgeführt werden kann und ich hinter diesem befehl noch sachen stehen habe die davor ausgeführt werden sollen?
Delta371 is offline  
Old 04/10/2017, 20:30   #12515
 
elite*gold: 0
Join Date: Mar 2017
Posts: 103
Received Thanks: 20
Code:
		when 591.kill or 691.kill or 791.kill or 793.kill or 991.kill or 992.kill or 993.kill or 1091.kill or 1092.kill or 1093.kill or 1094.kill or 1095.kill or 1304.kill or
             1403.kill or 2091.kill or 2191.kill or 2206.kill or 2207.kill or 2306.kill or 2493.kill or 2494.kill or 5004.kill or
             5161.kill or 5162.kill or 5163.kill or 2597.kill begin  
			
			 local dropChance = number(10,100)
            if dropChance == 1 and pc.count_item(30168) < 20-pc.getqf("actual_collect_count") then
                pc.give_item2(30168, 1)
            end
			end
		end
		
		when 20084.chat."Notizen der Anführer " with pc.count_it
when ... if ... end end end when ...

Du hast 1 end zu viel, in Zukunft bitte korrekt einrücken, dann passiert sowas nicht.

Das rote end hat deinen state Block beendet. Demensprechend erwartet der quest Compiler einen state Block und keinen when Block

Edit: Das Ende deiner Quest sieht auch nicht so gesund aus. Da fehlt das end.
std::max is offline  
Old 04/10/2017, 21:44   #12516
 
Anonyme™'s Avatar
 
elite*gold: 310
Join Date: May 2011
Posts: 1,592
Received Thanks: 105
Quote:
Originally Posted by std::max View Post
Code:
		when 591.kill or 691.kill or 791.kill or 793.kill or 991.kill or 992.kill or 993.kill or 1091.kill or 1092.kill or 1093.kill or 1094.kill or 1095.kill or 1304.kill or
             1403.kill or 2091.kill or 2191.kill or 2206.kill or 2207.kill or 2306.kill or 2493.kill or 2494.kill or 5004.kill or
             5161.kill or 5162.kill or 5163.kill or 2597.kill begin  
			
			 local dropChance = number(10,100)
            if dropChance == 1 and pc.count_item(30168) < 20-pc.getqf("actual_collect_count") then
                pc.give_item2(30168, 1)
            end
			end
		end
		
		when 20084.chat."Notizen der Anführer " with pc.count_it
when ... if ... end end end when ...

Du hast 1 end zu viel, in Zukunft bitte korrekt einrücken, dann passiert sowas nicht.

Das rote end hat deinen state Block beendet. Demensprechend erwartet der quest Compiler einen state Block und keinen when Block

Edit: Das Ende deiner Quest sieht auch nicht so gesund aus. Da fehlt das end.
Könntest du eventuell genauer Erklären was du meinst?
Da ich ein Neuling im bereich Questen bin
Dankeschön im Voraus
Anonyme™ is offline  
Old 04/12/2017, 15:23   #12517
 
zuppy°'s Avatar
 
elite*gold: 0
Join Date: Jan 2015
Posts: 4
Received Thanks: 2
Code:
state kill_teh_viecher begin
		when letter begin
			send_letter("Auftrag von Biologe Chaegirab")
		end
		
		when button or info begin
			say_title("Notiz der Anführer:")
			say("Biologe Chaegirab gab euch den Auftrag")
			say("10 Notizen der Anführer zu sammeln!")
			say("Das Item bekommst du von den Bossen.")
			say("Viel Glück!")
			say("")
			say_item_vnum(30168) 
			say_reward("Du hast bis jetzt "..pc.getqf("actual_collect_count").." Stück gesammelt!") 
			say("")
		end
	
		
		when 591.kill or 691.kill or 791.kill or 793.kill or 991.kill or 992.kill or 993.kill or 1091.kill or 1092.kill or 1093.kill or 1094.kill or 1095.kill or 1304.kill or
             1403.kill or 2091.kill or 2191.kill or 2206.kill or 2207.kill or 2306.kill or 2493.kill or 2494.kill or 5004.kill or
             5161.kill or 5162.kill or 5163.kill or 2597.kill begin  
			
			 local dropChance = number(10,100)
            if dropChance == 1 and pc.count_item(30168) < 20-pc.getqf("actual_collect_count") then
                pc.give_item2(30168, 1)
            end  //beendet if-Statement
			end //beendet when 
		end //beendet State kill_teh_viecher
Sprich du hast an der Stelle ein end zuviel.

Code:
	state __COMPLETE__ begin
	
end
Das letzte end beendet die Quest, aber du beendest nie den State-Block, dass ist der andere Punkt den er meinte.
zuppy° is offline  
Old 04/20/2017, 14:47   #12518
 
elite*gold: 0
Join Date: Apr 2013
Posts: 22
Received Thanks: 13
Fehlermeldung:
Error occured on compile Runs/Trump.quest
Mytho2 is offline  
Old 04/23/2017, 17:50   #12519
 
.Risan.'s Avatar
 
elite*gold: 30
Join Date: Jul 2010
Posts: 1,627
Received Thanks: 1,450
Quote:
Originally Posted by Mytho2 View Post
Fehlermeldung:
Error occured on compile Runs/Trump.quest
Sorry, muss zugeben hast dir mühe gegeben aber das so extrem lang... vefasse dich mal mit tables.. sieht schicker aus und macht den code theoretisch gleich 85% kleiner...

mfg Risan
.Risan. is offline  
Thanks
1 User
Old 04/23/2017, 20:45   #12520

 
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
Quote:
Originally Posted by Mytho2 View Post
Fehlermeldung:
Error occured on compile Runs/Trump.quest
Ich stimme Risan zu. Du solltest immer vermeiden Code doppelt zu schreiben. Das birgt Raum für Fehler und dadurch unerwünschtes Verhalten der Quest und ist natürlich auch deutlich schwerer anzupassen.
Da du die Quest selbst geschrieben hast gehe ich davon aus, dass du mein Beispiel relativ eigenständig erweitern kannst, falls nicht melde dich einfach hier im Thread.

Die erste state ist nicht nötig, eine Questflag, die noch nicht explizit gesetzt wurde, gibt beim Anfordern des Wertes 0 zurück. Diesen Wert also Anfangs mithilfe einer anderen State auf 0 zu setzen ist nicht nötig.

Das Eintauschen von Punkten zu Coins habe ich noch nicht umgesetzt, daran kannst du dich ja mal versuchen

Code:
quest item_exchange begin
	state start begin
		function getSettings()
			if not item_exchange.settings then
				item_exchange.settings = {
					ITEM_EXCHANGE = {
						{
							name = "Beran-Setaou",
							items = {
								{vnum = 71123, value = 4},
								{vnum = 71129, value = 4},
								{vnum = 70031, value = 2},
							}
						},
						{
							name = "Azrael",
							items = {
								{vnum = 71123, value = 4},
								{vnum = 71129, value = 4},
								{vnum = 70031, value = 2},
							}
						},
						{
							name = "Metinstein",
							items = {
								{vnum = 71123, value = 4},
								{vnum = 71129, value = 4},
								{vnum = 70031, value = 2},
							}
						},
					},
				}
			end
			
			return item_exchange.settings
		end
		
		when 20041.chat."Items Umtauschen" begin
			say_title("Items Umtauschen")
			say("Hier kannst du deine Uppitems")
			say("gegen Punkte eintauschen, welche")
			say("du gegen Itemshop-Coins tauschen kannst.")
			say("")
			say("Was möchtest du tun?")
			local target = ({item_exchange.showShowCreditMenu, item_exchange.showExchangeItemMenu, item_exchange.showExchangeCreditMenu})[select("Guthaben abfragen", "Items eintauschen", "Punkte eintauschen", "Nichts")]
			if not target then return end
			
			local settings = item_exchange.getSettings()
			target(settings)
		end
		
		function showExchangeItemMenu(settings)
			item_exchange.showExchangeItemCategories({name = "Hauptmenü", categories = settings.ITEM_EXCHANGE})
		end
		
		function showExchangeItemCategories(category)
			say_title("Items eintauschen")
			say("Wähle eine Kategorie")
			
			local categoryNames = {}
			for _, subCategory in ipairs(category.categories) do
				table.insert(categoryNames, subCategory.name)
			end
			table.insert(categoryNames, "Abbrechen")
			
			local selectedCategory = category.categories[select_table(categoryNames)]
			if not selectedCategory then return end
			
			if selectedCategory.items then
				item_exchange.showExchangeItemCategoryItems(selectedCategory)
			elseif selectedCategory.categories then
				item_exchange.showExchangeItemCategories(selectedCategory)
			else
				say("Diese Kategorie enthält weder Items noch Unterkategorien.")
			end
		end
		
		function showExchangeItemCategoryItems(category)
			say_title("Items eintauschen")
			say(string.format("Wähle ein Item aus der Kategorie %s", category.name))
			
			local itemNames = {}
			for _, item in ipairs(category.items) do
				table.insert(itemNames, item_name(item.vnum))
			end
			table.insert(itemNames, "Abbrechen")
			
			local selectedItem = category.items[select_table(itemNames)]
			if not selectedItem then return end
			
			local itemName = item_name(selectedItem.vnum)
			say_title(itemName)
			say("")
			say(string.format("Ein %s ist %d Punkte wert.", itemName, selectedItem.value))
			say(string.format("Wie viele %s möchtest du eintauschen?", itemName))
			say("Die Eingabe muss zwischen 1 und 200 liegen.")
			local exchangeCount = tonumber(input())
			if not exchangeCount or exchangeCount < 1 or exchangeCount > 200 then
				say("Ungültige Eingabe")
			else
				local realExchangeCount = math.min(exchangeCount, pc.count_item(selectedItem.vnum))
				if realExchangeCount >= 1 then
					pc.remove_item(selectedItem.vnum, realExchangeCount)
					item_exchange.addToCredit(selectedItem.value * realExchangeCount)
				else
					say("Du besitzt das benötigte Item nicht.")
				end
			end
		end
		
		function showExchangeCreditMenu(settings)
			say_title("Guthaben eintauschen")
			say("Noch nicht umgesetzt")
		end
		
		function showShowCreditMenu(settings)
			say_title("Guthaben") 
			say(string.format("Dein Guthaben beträgt %d Punkte.", item_exchange.getCredit()))
		end
		
		function getCredit()
			return pc.getqf("credit")
		end
		
		function addToCredit(value)
			pc.setqf("credit", item_exchange.getCredit() + value)
		end
		
		function removeFromCredit(value)
			pc.setqf("credit", item_exchange.getCredit() - value)
		end
	end
end
rollback is offline  
Thanks
1 User
Old 05/01/2017, 10:16   #12521
 
x"Kazuki's Avatar
 
elite*gold: 50
Join Date: Aug 2014
Posts: 508
Received Thanks: 201
Könnte mir bitte einmal über die Quest schauen?

Bekomme dort einen compile Fehler in der 6. Zeile:

PHP Code:
quest warpring begin 
    state start begin 
        when letter begin 
            cmdchat
("OpenTP "..q.getcurrentquestindex()) 
        
end 
            say_title
("Warpring")  
            
say("Wohin möchtest du Teleportiert werden?"
        
local empire pc.get_empire()  
                    
local selectmap select("Map1","Wüste","Abbrechen"
                    if 
selectmap == 3 then 
                
return 
                    elseif 
selectmap == 2 then 
                        say_title
("Warpring")  
                        
say("Wohin möchtest du Teleportiert werden?"
                    
local wuestenselect select("Anfang","Abbrechen"
                    if 
wuestenselect == 2 then 
                        
return 
                    elseif 
wuestenselect == 1 then 
            pc
.warp(290500,5700
            
end 
                    
elseif selectmap == 1 then 
                        say_title
("Warpring")  
                        
say("Wohin möchtest du Teleportiert werden?"
                    
local map1select select("Rotes Reich","Gelbes Reich","Blaues Reich","Abbrechen"
                    if 
map1select == 4 then 
                        
return 
                    elseif 
map1select == 1 then 
            pc
.warp(474300954800
                    elseif 
map1select == 2 then 
            pc
.warp(63800166400
                    elseif 
map1select == 3 then 
            pc
.warp(959900269200
            
end 
        end 
    end 
end 
x"Kazuki is offline  
Old 05/02/2017, 14:45   #12522
 
.Risan.'s Avatar
 
elite*gold: 30
Join Date: Jul 2010
Posts: 1,627
Received Thanks: 1,450
Du musst eine When Bedingung setzen...

PHP Code:
quest warpring begin  
state start begin  
    when letter begin  
        cmdchat
("OpenTP "..q.getcurrentquestindex())  
    
end  
    
--[[
    
Hier muss eine Bedingung stehen. (When UseIem oder chat vom npc)
    
beispiel
    ]]
    
when 9010.chat."Warpring" begin
        say_title
("Warpring")   
        
say("Wohin möchtest du Teleportiert werden?")  
        
local empire pc.get_empire()   
        
local selectmap select("Map1","Wüste","Abbrechen")  
        if 
selectmap == 3 then  
            
return  
        elseif 
selectmap == 2 then  
            say_title
("Warpring")   
            
say("Wohin möchtest du Teleportiert werden?")  
            
local wuestenselect select("Anfang","Abbrechen")  
            if 
wuestenselect == 2 then  
            
return  
        elseif 
wuestenselect == 1 then  
            pc
.warp(290500,5700)  
        
end  
        
elseif selectmap == 1 then  
            say_title
("Warpring")   
            
say("Wohin möchtest du Teleportiert werden?")  
            
local map1select select("Rotes Reich","Gelbes Reich","Blaues Reich","Abbrechen")  
            if 
map1select == 4 then  
            
return  
            elseif 
map1select == 1 then  
            pc
.warp(474300954800)  
            elseif 
map1select == 2 then  
            pc
.warp(63800166400)  
            elseif 
map1select == 3 then  
            pc
.warp(959900269200)  
            
end  
        end  
    end
end  
end 
.Risan. is offline  
Old 05/02/2017, 15:45   #12523
 
x"Kazuki's Avatar
 
elite*gold: 50
Join Date: Aug 2014
Posts: 508
Received Thanks: 201
Quote:
Originally Posted by .Risan. View Post
Du musst eine When Bedingung setzen...

PHP Code:
quest warpring begin  
state start begin  
    when letter begin  
        cmdchat
("OpenTP "..q.getcurrentquestindex())  
    
end  
    
--[[
    
Hier muss eine Bedingung stehen. (When UseIem oder chat vom npc)
    
beispiel
    ]]
    
when 9010.chat."Warpring" begin
        say_title
("Warpring")   
        
say("Wohin möchtest du Teleportiert werden?")  
        
local empire pc.get_empire()   
        
local selectmap select("Map1","Wüste","Abbrechen")  
        if 
selectmap == 3 then  
            
return  
        elseif 
selectmap == 2 then  
            say_title
("Warpring")   
            
say("Wohin möchtest du Teleportiert werden?")  
            
local wuestenselect select("Anfang","Abbrechen")  
            if 
wuestenselect == 2 then  
            
return  
        elseif 
wuestenselect == 1 then  
            pc
.warp(290500,5700)  
        
end  
        
elseif selectmap == 1 then  
            say_title
("Warpring")   
            
say("Wohin möchtest du Teleportiert werden?")  
            
local map1select select("Rotes Reich","Gelbes Reich","Blaues Reich","Abbrechen")  
            if 
map1select == 4 then  
            
return  
            elseif 
map1select == 1 then  
            pc
.warp(474300954800)  
            elseif 
map1select == 2 then  
            pc
.warp(63800166400)  
            elseif 
map1select == 3 then  
            pc
.warp(959900269200)  
            
end  
        end  
    end
end  
end 

Dafür steht doch oben
"when letter begin" . Die Quest soll ja per Button geöffnet werden?
x"Kazuki is offline  
Old 05/02/2017, 17:47   #12524
 
.Risan.'s Avatar
 
elite*gold: 30
Join Date: Jul 2010
Posts: 1,627
Received Thanks: 1,450
Probiere das mal:

PHP Code:
quest warpring begin   
state start begin   
    when letter 
or button begin   
        cmdchat
("OpenTP "..q.getcurrentquestindex())   
        
say_title("Warpring")    
        
say("Wohin möchtest du Teleportiert werden?")    
        
local selectmap select("Map1","Wüste","Abbrechen")      
        if 
selectmap == 2 then   
            say_title
("Warpring")    
            
say("Wohin möchtest du Teleportiert werden?")   
            if 
select("Anfang","Abbrechen")  == 1 then       
                pc
.warp(290500,5700)
            
end  
        
elseif selectmap == 1 then   
            say_title
("Warpring")    
            
say("Wohin möchtest du Teleportiert werden?")   
            
local map1select select("Rotes Reich","Gelbes Reich","Blaues Reich","Abbrechen")  
            
local warps = {    {47430095480},{63800166400 } , {959900269200}    }
            if 
map1select == 4 then   
                
return   
            else
                
pc.warpwarps[map1select][1],warps[map1select][2] )
            
end --map1select end
        end    
--selectmap end
    end 
--when end
end   
end 
habs nicht getestet, nur rein theoretisch
.Risan. is offline  
Thanks
1 User
Old 05/04/2017, 10:25   #12525
 
x"Kazuki's Avatar
 
elite*gold: 50
Join Date: Aug 2014
Posts: 508
Received Thanks: 201
Hab es anders gelöst, aber deine Variante funktioniert auch!

Danke.
x"Kazuki is offline  
Reply




All times are GMT +2. The time now is 08:23.


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.