[SERVICE] Die Questerstellung

04/18/2015 13:57 .yorliK#2566
Quote:
Originally Posted by MaxChri View Post
Moooin ich hab nen Problem und zwar ist meine Quest buggy:

Also man soll in einer Inputbox eine Zahl eintragen. Diese wird *60 gerechnet
und soll eine Zeiteinheit sein. Das Problem ist, der Input wird, wenn er im Chat ausgegeben wird, als 0 ausgegeben. Erst nach einem Relog wird sie richtig angezeigt bzw. ausgelesen.

local input = input()
game.set_event_flag("Name", input *60)
notice_all("Die Zahl lautet"..input)

Bei notice_all würde jetzt "Die Zahl lautet 0" rauskommen.
Die Func game.set_event ist dazu da, um die Zahl auf einen
anderen Spieler zu übertragen und da wird sie auch als 0 ausgegeben.
Erst nach einem Relog geht das :(

Was komischt ist, wenn die Zahl vorgefertigt ist (mit select System), dann
wird bei game.set_event die Zahl richtig übertragen aber im notice_all chat wiederrrum nicht.

Kann mir wer bei dem komischen Fail helfen?
Das liegt daran, das die Funktion input() einen String zurückgibt, z.B. "1" und nicht 1, du musst wie es DYSKaito schon getan hat, den String "1" in eine Zahl umwandeln und das geht mit tonumber(input())
04/18/2015 14:40 MaxChri#2567
Quote:
Originally Posted by Kilroy. View Post
Das liegt daran, das die Funktion input() einen String zurückgibt, z.B. "1" und nicht 1, du musst wie es DYSKaito schon getan hat, den String "1" in eine Zahl umwandeln und das geht mit tonumber(input())
Yeah danke Leute <3 Seid die besten!

Quote:
Originally Posted by DYSKaito View Post
Code:
local input = tonumber(input())*60
	notice_all("Die Zahl lautet"..input)
Wenn ich es richtig verstanden habe sollte es so gehen.
<3
04/19/2015 14:18 BizzyMontana90#2568
Code:
quest block_items begin
	state start begin
	
		when login begin
			if pc.getqf("block_items_register") == 1 then
				if pc.getqf("block_items_active") == 1 then
					cmdchat("ManagerBlockItems BlockItems|")
				else
					cmdchat("ManagerBlockItems UnBlockItems|")
				end
			end
		end
	
		when 20094.chat."Items Sichern" begin
			if pc.getqf("block_items_register") == 0 then
				say_title("Item Sicherheitssystem")
				say("Hallo "..pc.get_name())
				say("Um dieses System zu nutzen")
				say("Müssen sie sich anmelden")
				say("Wollen sie sich anmelden?")
				if select("Ja","Nein") == 1 then
					say("Geben sie nun ihr Passwort ein.")
					say("Bitte denken sie darann nur Zahlen!")
					local pw = tonumber(input())
					if pw == nil then say("Dieses Kennwort ist ungültig.") return end
					say("Bitte merke dir dein Passwort")
					say("Nun kannst du deine Sachen sichern")
					say_reward("Ihr Passwort ist : "..pw)
					say("")
					pc.setqf("block_items_register" , 1)
					pc.setqf("block_items_pw" , pw)
				end
				return
			end
			
			say("Willkommen zurück "..pc.get_name())
			say("Bitte geben sie ihr Passwort ein.")
			local a = select("Passwort eingeben", "Passwort vergessen.", "Schießen")
			if a == 1 then
				say("Passwort eingeben.")
				local pw = tonumber(input())
				if pw == nil then say("Dieses Kennwort ist ungültig.") return end
				if pw != pc.getqf("block_items_pw") then say("Dieses Passwort ist nicht korrekt.") return end
				say("Das Passwort ist richtig.")
				wait()
				local estado
				if pc.getqf("block_items_active") == 1 then
					estado = "Aktiviert"
				else
					estado = "Deaktiviert"
				end
				say("Willkommen in den Einstellungen: "..pc.get_name())
				say("System ist : "..estado)
				say("Was willst du machen?")
				local s = select("Items Sichern", "Items Entsichern", "Passwort Ändern", "Schließen")
				if s == 1 then
					if pc.getqf("block_items_active") == 1 then say("Item Sicherheit ist bereits Aktiviert.") return end
					cmdchat("ManagerBlockItems BlockItems|")
					say("Item Sicherheit wurde Aktiviert.")
					pc.setqf("block_items_active", 1)
				elseif s == 2 then
					if pc.getqf("block_items_active") == 0 then say("Item Sicherheit ist bereits Deaktiviert.") return end
					cmdchat("ManagerBlockItems UnBlockItems|")
					say("Item Sicherheit wurde Deaktiviert.")
					pc.setqf("block_items_active", 0)
				elseif s == 3 then
					say("Sie wollen also ihr passwort Ändern...")
					say("Geben sie ihr Passwort ein.")
					local pw = tonumber(input())
					if pw == nil then say("Dieses Kennwort ist ungültig.") return end
					if pw == pc.getqf("block_items_pw") then say("Das Passwort muss ein anderes sein.") return end
					say("Sie haben das Kennwort erfolgreich geändert.")
					say_reward("Das Passwort ist : "..pw)
					pc.setqf("block_items_pw" , pw)
				end
				
			elseif a == 2 then
				--[[
				say("Wie wollen sie ihr Passwort zurücksezuen?")
				local c = select("E-Mail", "Geheime Antwort", "Schließen")
				if c == 1 then
				--]]
				local email = mysql_query("SELECT email from account.account where id = "..pc.get_account_id()..";")[1][1]
				say("Um Ihr Passwort zurückzusetzen")
				say("Geben sie ihre Email ein")
				say("")
				say("")
				local mail = input()
				if mail != email then say("Die Email-Adresse ist falsch.") return end
				local new = number(10000, 99999)
				say("Das Passwort ist: "..new)
				say("Bitte notiere dir das Passwort.")
				pc.setqf("block_items_pw" , new)
			end
		end
	end
end




Meine 1 frage wie macht man das wenn man das pw vergssen hat das der jenige user sich ein neues per emial zuschicken lassen kann??

2 frage wie man anstatt nen npc zum quest rufen nimmt lieber nen item zum sichern und entsichern nimmt?
04/19/2015 15:19 MaxChri#2569
Quote:
Originally Posted by BizzyMontana90 View Post
Code:
quest block_items begin
	state start begin
	
		when login begin
			if pc.getqf("block_items_register") == 1 then
				if pc.getqf("block_items_active") == 1 then
					cmdchat("ManagerBlockItems BlockItems|")
				else
					cmdchat("ManagerBlockItems UnBlockItems|")
				end
			end
		end
	
		when 20094.chat."Items Sichern" begin
			if pc.getqf("block_items_register") == 0 then
				say_title("Item Sicherheitssystem")
				say("Hallo "..pc.get_name())
				say("Um dieses System zu nutzen")
				say("Müssen sie sich anmelden")
				say("Wollen sie sich anmelden?")
				if select("Ja","Nein") == 1 then
					say("Geben sie nun ihr Passwort ein.")
					say("Bitte denken sie darann nur Zahlen!")
					local pw = tonumber(input())
					if pw == nil then say("Dieses Kennwort ist ungültig.") return end
					say("Bitte merke dir dein Passwort")
					say("Nun kannst du deine Sachen sichern")
					say_reward("Ihr Passwort ist : "..pw)
					say("")
					pc.setqf("block_items_register" , 1)
					pc.setqf("block_items_pw" , pw)
				end
				return
			end
			
			say("Willkommen zurück "..pc.get_name())
			say("Bitte geben sie ihr Passwort ein.")
			local a = select("Passwort eingeben", "Passwort vergessen.", "Schießen")
			if a == 1 then
				say("Passwort eingeben.")
				local pw = tonumber(input())
				if pw == nil then say("Dieses Kennwort ist ungültig.") return end
				if pw != pc.getqf("block_items_pw") then say("Dieses Passwort ist nicht korrekt.") return end
				say("Das Passwort ist richtig.")
				wait()
				local estado
				if pc.getqf("block_items_active") == 1 then
					estado = "Aktiviert"
				else
					estado = "Deaktiviert"
				end
				say("Willkommen in den Einstellungen: "..pc.get_name())
				say("System ist : "..estado)
				say("Was willst du machen?")
				local s = select("Items Sichern", "Items Entsichern", "Passwort Ändern", "Schließen")
				if s == 1 then
					if pc.getqf("block_items_active") == 1 then say("Item Sicherheit ist bereits Aktiviert.") return end
					cmdchat("ManagerBlockItems BlockItems|")
					say("Item Sicherheit wurde Aktiviert.")
					pc.setqf("block_items_active", 1)
				elseif s == 2 then
					if pc.getqf("block_items_active") == 0 then say("Item Sicherheit ist bereits Deaktiviert.") return end
					cmdchat("ManagerBlockItems UnBlockItems|")
					say("Item Sicherheit wurde Deaktiviert.")
					pc.setqf("block_items_active", 0)
				elseif s == 3 then
					say("Sie wollen also ihr passwort Ändern...")
					say("Geben sie ihr Passwort ein.")
					local pw = tonumber(input())
					if pw == nil then say("Dieses Kennwort ist ungültig.") return end
					if pw == pc.getqf("block_items_pw") then say("Das Passwort muss ein anderes sein.") return end
					say("Sie haben das Kennwort erfolgreich geändert.")
					say_reward("Das Passwort ist : "..pw)
					pc.setqf("block_items_pw" , pw)
				end
				
			elseif a == 2 then
				--[[
				say("Wie wollen sie ihr Passwort zurücksezuen?")
				local c = select("E-Mail", "Geheime Antwort", "Schließen")
				if c == 1 then
				--]]
				local email = mysql_query("SELECT email from account.account where id = "..pc.get_account_id()..";")[1][1]
				say("Um Ihr Passwort zurückzusetzen")
				say("Geben sie ihre Email ein")
				say("")
				say("")
				local mail = input()
				if mail != email then say("Die Email-Adresse ist falsch.") return end
				local new = number(10000, 99999)
				say("Das Passwort ist: "..new)
				say("Bitte notiere dir das Passwort.")
				pc.setqf("block_items_pw" , new)
			end
		end
	end
end




Meine 1 frage wie macht man das wenn man das pw vergssen hat das der jenige user sich ein neues per emial zuschicken lassen kann??

2 frage wie man anstatt nen npc zum quest rufen nimmt lieber nen item zum sichern und entsichern nimmt?
Zu 1. du kannst ja in die Quest eine Sicherheitsabfrage erstellen, falls man das PW vergessen hat. Die Ausgabe der Abfrage kann dann gespeichert werden.
04/19/2015 20:54 .yorliK#2570
Quote:
Originally Posted by K.A.K.A.S.H.I View Post
Könnte mir bitte jemand eine quest erstellen die immer wenn dass bestimmte Monster getötet wird in GM Rufchat schreibt damit es jeder lesen kann *Name des Spielers* hat den Boss *Name des Bosses den ich selbst reinschreiben kann* getötet und nach dem Töten sollte er ein Item bekommen, und zwar sollte er das Item 1x bekommen, und bevor er es bekommt, sollte sein Inventar gecheckt bekommen, und bevor er es bekommt, wenn nicht dann soll das Item ins Lager gesteckt werden.
Keine Ahnung ob das mit dem Lagern klappt xD
evtl. müssen die Lagerplätze noch angegeben werden.

Code:
quest SSt7uN3Qlb5Z begin
	state start begin
		when 35002.use begin
			game.open_safebox()
		end
		function mobs_and_item(race, what)
			tab = {
					[1093] = {19, 1}, -- [Monster] = {Item, Anzahl}
					[101] = {19, 1},
					}
			if what==1 then
				return tab[race]
			else
				if tab[race]!=nil then return true end
			end
		end
		when kill with SSt7uN3Qlb5Z.mobs_and_item(npc.get_race(), 0) begin
			local MAX_LAGER_COUNT = 135
			notice_all(pc.get_name().." hat den Boss "..mob_name(npc.get_race()).." getötet.")
			local tab = SSt7uN3Qlb5Z.mobs_and_item(npc.get_race(), 1)
			if pc.enough_inventory(tab[1]) then
				--mysql
				local id = (tonumber(mysql_query("SELECT * FROM player.item order by id DESC LIMIT 1;").id[1])+1)
				local pos = mysql_query("SELECT * FROM player.item WHERE window='SAFEBOX' and owner_id='"..(pc.get_account_id()).."' ORDER BY pos ASC")
				for i=1, table.getn(pos.pos), 1 do
					if (tonumber(pos.pos[i])-1)!=i then
						pos = i
						break
					end
				end
				if pos > MAX_LAGER_COUNT then
					game.drop_item_with_ownership(tab[1], tab[2])
				else
					say_reward("Du hast zu wenig Platz gehabt, dein Item")
					say_reward("wurde in dein Lager gelegt!")
					mysql_query("INSERT INTO player.item (id, owner_id,window,pos,count,vnum,socket0,socket1,socket2,socket3,socket4,socket5,attrtype0,attrvalue0,attrtype1,attrvalue1,attrtype2,attrvalue2,attrtype3,attrvalue3,attrtype4,attrvalue4,attrtype5,attrvalue5,attrtype6,attrvalue6) VALUES ("..(id)..", "..(pc.get_account_id())..","..string.format("%q","SAFEBOX")..","..(pos)..","..(1)..","..tab[1]..","..tab[2]..","..(0)..","..(0)..","..(0)..","..(0)..","..(0)..","..(0)..","..(0)..","..(0)..","..(0)..","..(0)..","..(0)..","..(0)..","..(0)..","..(0)..","..(0)..","..(0)..","..(0)..","..(0)..","..(0)..")")
				end
			else
				pc.give_item2(tab[1], tab[2]) 
			end
		end
	end
end
04/19/2015 21:21 Tuora#2571
Könnte mir jemand ne Quest schreiben *-* ?

Quest:
04/19/2015 22:08 KΛIƬӨ#2572
Quote:
Originally Posted by ImTweet™ View Post
Könnte mir jemand ne Quest schreiben *-* ?

Quest:
PHP Code:
quest kaito begin    
    state start begin
        when vnum
.chat."Text" with pc.getqf("warten") > get_time() begin
            say
("blabla")
            if 
select("Duell","Abbrechen") == 2 then return end
            say
("Bist du dir sicher dass du gegen "..mob_name(vnum).." kämpfen willst?")
            if 
select("Ja","Nein") == 2 then return end
            
if pc.get_empire() == 1 then -- ROT
                pc
.warp(koordi,naten)
            elseif 
pc.get_empire() == 2 then
                pc
.warp(koordi,naten)
            elseif 
pc.get_empire() == 3 thenj
                pc
.warp(koordi,naten)
            
end
            setstate
(kill)
        
end
    end            
    state kill begin
        when kill with npc
.get_race() == vnum 
            kaitocount 
pc.setqf("kaitokill",pc.getqf("kaitokill")+1)
            if 
kaitocount >= 1 then
                send_letter
("Geschafft!")
            
end
        end
        when button 
or info begin
            say
("blablabla")
            
warp_to_village()
            
pc.setqf("warten",get_time()+60*6)
            
setstate(start)
        
end
    end
endd 
04/19/2015 22:13 i[Remix]#2573
Quote:
Originally Posted by DYSKaito View Post
PHP Code:
quest kaito begin    
    state start begin
        when vnum
.chat."Text" with pc.getqf("warten") > get_time() begin
            say
("blabla")
            if 
select("Duell","Abbrechen") == 2 then return end
            say
("Bist du dir sicher dass du gegen "say_mob_vnum(vnum)" kämpfen willst?")
            if 
select("Ja","Nein") == 2 then return end
            
if pc.get_empire() == 1 then -- ROT
                pc
.warp(koordi,naten)
            elseif 
pc.get_empire() == 2 then
                pc
.warp(koordi,naten)
            elseif 
pc.get_empire() == 3 thenj
                pc
.warp(koordi,naten)
            
end
            setstate
(kill)
        
end
    end            
    state kill begin
        when kill with npc
.get_race() == vnum 
            kaitocount 
pc.setqf("kaitokill",pc.getqf("kaitokill")+1)
            if 
kaitocount >= 1 then
                send_letter
("Geschafft!")
            
end
        end
        when button 
or info begin
            say
("blablabla")
            
warp_to_village()
            
pc.setqf("warten",get_time()+60*6)
        
end
    end
end 
Code:
say("Bist du dir sicher dass du gegen "say_mob_vnum(vnum)" kämpfen willst?")
Zu:

Code:
say("Bist du dir sicher dass du gegen "..mob_name(vnum).." kämpfen willst?")
2. musst du am Ende wieder den start state setzen.
04/19/2015 22:19 KΛIƬӨ#2574
Quote:
Originally Posted by i[Remix] View Post
Code:
say("Bist du dir sicher dass du gegen "say_mob_vnum(vnum)" kämpfen willst?")
Zu:

Code:
say("Bist du dir sicher dass du gegen "..mob_name(vnum).." kämpfen willst?")
2. musst du am Ende wieder den start state setzen.
Ich schwöre es, wollte ich gerade verbessern ungelogen! ( 1. )

Danke :)
04/20/2015 11:44 .Various#2575
Quote:
Originally Posted by DYSKaito View Post
PHP Code:
quest kaito begin    
    state start begin
        when vnum
.chat."Text" with pc.getqf("warten") > get_time() begin
            say
("blabla")
            if 
select("Duell","Abbrechen") == 2 then return end
            say
("Bist du dir sicher dass du gegen "..mob_name(vnum).." kämpfen willst?")
            if 
select("Ja","Nein") == 2 then return end
            
if pc.get_empire() == 1 then -- ROT
                pc
.warp(koordi,naten)
            elseif 
pc.get_empire() == 2 then
                pc
.warp(koordi,naten)
            elseif 
pc.get_empire() == 3 then
                pc
.warp(koordi,naten)
            
end
            setstate
(kill)
        
end
    end            
    state kill begin
        when kill with npc
.get_race() == vnum 
            kaitocount 
pc.setqf("kaitokill",pc.getqf("kaitokill")+1)
            if 
kaitocount >= 1 then
                send_letter
("Geschafft!")
            
end
        end
        when button 
or info begin
            say
("blablabla")
            
warp_to_village()
            
pc.setqf("warten",get_time()+60*6)
            
setstate(start)
        
end
    end
endd 
Würde es auch eher so schreiben:
Code:
quest kaito begin    
	state start begin
		when vnum.chat."Duell" begin
			if pc.getqf("time") > get_time() then
				local time_difference = pc.getqf("warten") - get_time()
				say("Du kannst erst in "..time_difference.." Minuten wieder kämpfen.")
				return
			end
			say_title("Duell")
			say("Bist du dir sicher dass du gegen "..mob_name(vnum).." kämpfen willst?")
			if select("Ja","Nein") == 2 then return end
			if pc.get_empire() == 1 then -- ROT
				pc.warp(koordi,naten)
			elseif pc.get_empire() == 2 then
				pc.warp(koordi,naten)
			elseif pc.get_empire() == 3 then
				pc.warp(koordi,naten)
			end
			setstate(kill)
		end
	end            
	state kill begin
		when kill with npc.get_race() == vnum begin
			chat("Du hast "..mob_name(vnum).." besiegt! In 10 Sekunden wirst du zurückgeportet!")
			pc.setqf("warten",get_time()+60*6)
			timer("back",10)
		end
		when back.timer begin
			warp_to_village()
			setstate(start)
		end
	end
end
04/20/2015 12:37 rollback#2576
Quote:
Originally Posted by C-3PO. View Post
Würde es auch eher so schreiben:
Code:
quest kaito begin    
	state start begin
		when vnum.chat."Duell" begin
			if pc.getqf("time") > get_time() then
				local time_difference = pc.getqf("warten") - get_time()
				say("Du kannst erst in "..time_difference.." Minuten wieder kämpfen.")
				return
			end
			say_title("Duell")
			say("Bist du dir sicher dass du gegen "..mob_name(vnum).." kämpfen willst?")
			if select("Ja","Nein") == 2 then return end
			if pc.get_empire() == 1 then -- ROT
				pc.warp(koordi,naten)
			elseif pc.get_empire() == 2 then
				pc.warp(koordi,naten)
			elseif pc.get_empire() == 3 thenj
				pc.warp(koordi,naten)
			end
			setstate(kill)
		end
	end            
	state kill begin
		when kill with npc.get_race() == vnum begin
			chat("Du hast "..mob_name(vnum).." besiegt! In 10 Sekunden wirst du zurückgeportet!")
			pc.setqf("warten",get_time()+60*6)
			timer("back",10)
		end
		when back.timer begin
			warp_to_village()
			setstate(start)
		end
	end
end
Ich so:

Code:
quest kaito begin
	state start begin
		when vnum.chat."Duell" begin
			if pc.getqf("time") > get_time() then
				local time_difference = math.floor((pc.getqf("warten")-get_time())/60)
				say("Du kannst erst in "..time_difference.." Minuten wieder kämpfen.")
				return
			end
			say_title("Duell")
			say("Bist du dir sicher, dass du gegen "..mob_name(vnum).." kämpfen willst?")
			if select("Ja","Nein") == 2 then return
			elseif pc.get_empire() == 1 then -- ROT
				pc.warp(koordi,naten)
			elseif pc.get_empire() == 2 then
				pc.warp(koordi,naten)
			elseif pc.get_empire() == 3 thenj
				pc.warp(koordi,naten)
			end
			set_state(kill)
		end
	end
	state kill begin
		when login or enter begin
			send_letter("Aufgeben")
		end
		when button or info begin
			say("Wirklich aufgeben?")
			if select("Ja", "Nein") == 2 then return end
			warp_to_village()
			set_state(start)
		end
		when kill with npc.get_race() == vnum begin
			chat("Du hast "..mob_name(vnum).." besiegt! In 10 Sekunden wirst du zurückgeportet!")
			pc.setqf("warten", get_time()+60*6)
			timer("back",10)
		end
		when back.timer begin
			warp_to_village()
			set_state(start)
		end
	end
end
fehlt allerdings noch ein purge wenn man aufgibt
04/20/2015 14:37 Tuora#2577
Quote:
Originally Posted by definitely not Sensenmann View Post
Ich so:

Code:
quest kaito begin
	state start begin
		when vnum.chat."Duell" begin
			if pc.getqf("time") > get_time() then
				local time_difference = math.floor((pc.getqf("warten")-get_time())/60)
				say("Du kannst erst in "..time_difference.." Minuten wieder kämpfen.")
				return
			end
			say_title("Duell")
			say("Bist du dir sicher, dass du gegen "..mob_name(vnum).." kämpfen willst?")
			if select("Ja","Nein") == 2 then return
			elseif pc.get_empire() == 1 then -- ROT
				pc.warp(koordi,naten)
			elseif pc.get_empire() == 2 then
				pc.warp(koordi,naten)
			elseif pc.get_empire() == 3 thenj
				pc.warp(koordi,naten)
			end
			set_state(kill)
		end
	end
	state kill begin
		when login or enter begin
			send_letter("Aufgeben")
		end
		when button or info begin
			say("Wirklich aufgeben?")
			if select("Ja", "Nein") == 2 then return end
			warp_to_village()
			set_state(start)
		end
		when kill with npc.get_race() == vnum begin
			chat("Du hast "..mob_name(vnum).." besiegt! In 10 Sekunden wirst du zurückgeportet!")
			pc.setqf("warten", get_time()+60*6)
			timer("back",10)
		end
		when back.timer begin
			warp_to_village()
			set_state(start)
		end
	end
end
fehlt allerdings noch ein purge wenn man aufgibt
:D danke euch :)
04/20/2015 16:04 i[Remix]#2578
Quote:
Originally Posted by definitely not Sensenmann View Post
Ich so:

Code:
quest kaito begin
	state start begin
		when vnum.chat."Duell" begin
			if pc.getqf("time") > get_time() then
				local time_difference = math.floor((pc.getqf("warten")-get_time())/60)
				say("Du kannst erst in "..time_difference.." Minuten wieder kämpfen.")
				return
			end
			say_title("Duell")
			say("Bist du dir sicher, dass du gegen "..mob_name(vnum).." kämpfen willst?")
			if select("Ja","Nein") == 2 then return
			elseif pc.get_empire() == 1 then -- ROT
				pc.warp(koordi,naten)
			elseif pc.get_empire() == 2 then
				pc.warp(koordi,naten)
			elseif pc.get_empire() == 3 thenj
				pc.warp(koordi,naten)
			end
			set_state(kill)
		end
	end
	state kill begin
		when login or enter begin
			send_letter("Aufgeben")
		end
		when button or info begin
			say("Wirklich aufgeben?")
			if select("Ja", "Nein") == 2 then return end
			warp_to_village()
			set_state(start)
		end
		when kill with npc.get_race() == vnum begin
			chat("Du hast "..mob_name(vnum).." besiegt! In 10 Sekunden wirst du zurückgeportet!")
			pc.setqf("warten", get_time()+60*6)
			timer("back",10)
		end
		when back.timer begin
			warp_to_village()
			set_state(start)
		end
	end
end
fehlt allerdings noch ein purge wenn man aufgibt
Ich so:

Code:
quest kaito begin
	state start begin
		when vnum.chat."Duell" begin
			if pc.getqf("time") > get_time() then
				return say(string.format("Du kannst erst in %d Minuten wieder kämpfen.", math.floor((pc.getqf("warten")-get_time())/60)))
			end
			say_title("Duell")
			say("Bist du dir sicher, dass du gegen "..mob_name(vnum).." kämpfen willst?")
			if select("Ja","Nein") == 2 then return
			local koords = {
				{x, y}, -- rot
				{x, y}, -- gelb
				{x, y}, -- blau
			}
			pc.warp(koords[pc.empire][1], koords[pc.empire][2])
			set_state(kill)
		end
	end
	state kill begin
		when login or enter begin
			send_letter("Aufgeben")
		end
		when button or info begin
			say("Wirklich aufgeben?")
			if select("Ja", "Nein") == 2 then return end
			warp_to_village()
			set_state(start)
		end
		when kill with npc.get_race() == vnum begin
			chat("Du hast "..mob_name(vnum).." besiegt! In 10 Sekunden wirst du zurückgeportet!")
			pc.setqf("warten", get_time()+60*6)
			timer("back",10)
		end
		when back.timer begin
			warp_to_village()
			set_state(start)
		end
	end
end
Btw hast beim "elseif pc.get_empire() == 3 then" ein "j" hinter'm then gehabt.
04/20/2015 16:29 rollback#2579
Quote:
Originally Posted by i[Remix] View Post
Ich so:

Code:
quest kaito begin
	state start begin
		when vnum.chat."Duell" begin
			if pc.getqf("time") > get_time() then
				return say(string.format("Du kannst erst in %d Minuten wieder kämpfen.", math.floor((pc.getqf("warten")-get_time())/60)))
			end
			say_title("Duell")
			say("Bist du dir sicher, dass du gegen "..mob_name(vnum).." kämpfen willst?")
			if select("Ja","Nein") == 2 then return
			local koords = {
				{x, y}, -- rot
				{x, y}, -- gelb
				{x, y}, -- blau
			}
			pc.warp(koords[pc.empire][1], koords[pc.empire][2])
			set_state(kill)
		end
	end
	state kill begin
		when login or enter begin
			send_letter("Aufgeben")
		end
		when button or info begin
			say("Wirklich aufgeben?")
			if select("Ja", "Nein") == 2 then return end
			warp_to_village()
			set_state(start)
		end
		when kill with npc.get_race() == vnum begin
			chat("Du hast "..mob_name(vnum).." besiegt! In 10 Sekunden wirst du zurückgeportet!")
			pc.setqf("warten", get_time()+60*6)
			timer("back",10)
		end
		when back.timer begin
			warp_to_village()
			set_state(start)
		end
	end
end
Btw hast beim "elseif pc.get_empire() == 3 then" ein "j" hinter'm then gehabt.
Ups :D
Wenn schon mit nem table dann aber schöner:
Code:
quest kaito begin
	state start begin
		when vnum.chat."Duell" begin
			if pc.getqf("time") > get_time() then
				return say(string.format("Du kannst erst in %d Minuten wieder kämpfen.", math.floor((pc.getqf("warten")-get_time())/60)))
			end
			say_title("Duell")
			say("Bist du dir sicher, dass du gegen "..mob_name(vnum).." kämpfen willst?")
			if select("Ja","Nein") == 2 then return
			local koords = ({
				{x, y}, -- rot
				{x, y}, -- gelb
				{x, y}, -- blau
			})[pc.empire]
			pc.warp(koords[1], koords[2])
			set_state(kill)
		end
	end
	state kill begin
		when login or enter begin
			send_letter("Aufgeben")
		end
		when button or info begin
			say("Wirklich aufgeben?")
			if select("Ja", "Nein") == 2 then return end
			warp_to_village()
			set_state(start)
		end
		when kill with npc.get_race() == vnum begin
			chat("Du hast "..mob_name(vnum).." besiegt! In 10 Sekunden wirst du zurückgeportet!")
			pc.setqf("warten", get_time()+60*6)
			timer("back",10)
		end
		when back.timer begin
			warp_to_village()
			set_state(start)
		end
	end
end
04/20/2015 16:51 i[Remix]#2580
Quote:
Originally Posted by definitely not Sensenmann View Post
Ups :D
Wenn schon mit nem table dann aber schöner:
Code:
quest kaito begin
	state start begin
		when vnum.chat."Duell" begin
			if pc.getqf("time") > get_time() then
				return say(string.format("Du kannst erst in %d Minuten wieder kämpfen.", math.floor((pc.getqf("warten")-get_time())/60)))
			end
			say_title("Duell")
			say("Bist du dir sicher, dass du gegen "..mob_name(vnum).." kämpfen willst?")
			if select("Ja","Nein") == 2 then return
			local koords = ({
				{x, y}, -- rot
				{x, y}, -- gelb
				{x, y}, -- blau
			})[pc.empire]
			pc.warp(koords[1], koords[2])
			set_state(kill)
		end
	end
	state kill begin
		when login or enter begin
			send_letter("Aufgeben")
		end
		when button or info begin
			say("Wirklich aufgeben?")
			if select("Ja", "Nein") == 2 then return end
			warp_to_village()
			set_state(start)
		end
		when kill with npc.get_race() == vnum begin
			chat("Du hast "..mob_name(vnum).." besiegt! In 10 Sekunden wirst du zurückgeportet!")
			pc.setqf("warten", get_time()+60*6)
			timer("back",10)
		end
		when back.timer begin
			warp_to_village()
			set_state(start)
		end
	end
end
Code:
quest kaito begin
	state start begin
		when vnum.chat."Duell" begin
			if pc.getqf("time") > get_time() then
				return say(string.format("Du kannst erst in %d Minuten wieder kämpfen.", math.floor((pc.getqf("warten")-get_time())/60)))
			end
			say_title("Duell")
			say("Bist du dir sicher, dass du gegen "..mob_name(vnum).." kämpfen willst?")
			if select("Ja","Nein") == 2 then return
			local koords = ({
				{x, y}, -- rot
				{x, y}, -- gelb
				{x, y}, -- blau
			})[pc.empire] or {0,0}
			pc.warp(koords[1], koords[2])
			set_state(kill)
		end
	end
	state kill begin
		when login or enter begin
			send_letter("Aufgeben")
		end
		when button or info begin
			say("Wirklich aufgeben?")
			if select("Ja", "Nein") == 2 then return end
			warp_to_village()
			set_state(start)
		end
		when kill with npc.get_race() == vnum begin
			chat("Du hast "..mob_name(vnum).." besiegt! In 10 Sekunden wirst du zurückgeportet!")
			pc.setqf("warten", get_time()+60*6)
			timer("back",10)
		end
		when back.timer begin
			warp_to_village()
			set_state(start)
		end
	end
end
Bughandling :p