[SERVICE] Die Questkontrolle

07/05/2013 19:35 depa95#8461
Quote:
Originally Posted by LeykasRecordz View Post
Code:
quest infoitem begin
	state start begin
		when 50904.use begin
			local a = select("Die Projektleitung", "Unser Support", "Unsere Features", "Das Aktuelle Team", "Alternativ Dropps", "Abrechen")
		if a == 1 then
			say_title("Die Projektleitung")
			say("")
			say("~")
			say("~V.")
			say("~S")
			say("~W")
			say("")
			say("[")
			say("~S")
			say("")
			say("")
			say("~")
			say("~r")
			end
		if a == 2 then
			say("Drops")
			say("")
			say("")
		end
		if a == 3 then
			say_title("Unsere Features!")
			say("~Max Lv 99")
			say("~O")
			say("~")
			say("~")
			say("~")
			say("")
			end
		if a == 4 then
			say_title("Das aktuelle Team")
			say("")
			end
		if a == 5 then
			say("Teamerliste")
			say("")
			say("")
			end
		if a == 6 then
		return
		end
	end
end
Hier geht nix.. Typ 18 ist eingestellt.

So wird sie laufen:


was ist mit der quest von ein Post drüber?
funzt die? weil du nichts geschrieben oder sonstwas gemacht hast
07/05/2013 22:55 .Meayro*#8462
PHP Code:
quest give_basic_weapon begin 
    state start begin 
        when login begin 
            say_title
("Willkommen")   
            
say("Willkommen auf dem Server Kentashi2.")   
            
say("Danke das du diesen Server gewählt hast.")  
            
say("Wir wünschen dir viel Spaß")
            
say("Das Kentashi2-Team")   
            
pc.change_money(100000)  
            
pc.give_item2("27003",200)  
            
pc.give_item2("27003",200)  
            
pc.give_item2("27003",200)  
            
pc.give_item2("27003",200)  
            
pc.give_item2("27003",200)  
            
pc.give_item2("27006",200)  
            
pc.give_item2("27006",200)  
            
pc.give_item2("71050",200)  
            
pc.give_item2("72702",1)  
            
pc.give_item2("50051",1)  
            
horse.set_level(21)  
            
horse.ride()  
            if 
pc.get_job() == 0 then  
                pc
.give_item2("75",1)  
                
pc.give_item2("3065",1)  
                
pc.give_item2("11235",1)  
                
pc.give_item2("12225",1)  
                
pc.give_item2("13025",1)  
                
pc.give_item2("14105",1)  
                
pc.give_item2("15089",1)  
                
pc.give_item2("16105",1)  
                
pc.give_item2("17105",1)  
                
pc.set_skill_level(131,59) 
                
pc.set_skill_level(137,59) 
                
pc.set_skill_level(138,59) 
                
pc.set_skill_level(139,59) 
                
pc.set_skill_level(140,59)  
                
say_reward("Du erhielst das Kriegerset!")
                
set_state(weiter)
            elseif 
pc.get_job() == 1 then   
                pc
.give_item2("1035",1)   
                
pc.give_item2("2065",1)  
                
pc.give_item2("8009",200)  
                
pc.give_item2("8008",200)  
                
pc.give_item2("8007",200)  
                
pc.give_item2("8006",200)  
                
pc.give_item2("11435",1)  
                
pc.give_item2("12365",1)  
                
pc.give_item2("13025",1)  
                
pc.give_item2("14105",1)  
                
pc.give_item2("15089",1)  
                
pc.give_item2("16105",1)  
                
pc.give_item2("17105",1)  
                
say_reward("Du erhielst das Ninjaset!")  
                
set_state(weiter)
            elseif 
pc.get_job() == 2 then   
                pc
.give_item2("75",1 )    
                
pc.give_item2("11635",1)  
                
pc.give_item2("12505",1)  
                
pc.give_item2("13025",1)  
                
pc.give_item2("14105",1)  
                
pc.give_item2("15089",1)  
                
pc.give_item2("16105",1)  
                
pc.give_item2("17105",1)  
                
say_reward("Du erhielst das Suraset!")  
                
set_state(weiter)
            elseif 
pc.get_job() == 3 then   
                pc
.give_item2("5035",1)   
                
pc.give_item2("7065",1)   
                
pc.give_item2("11835",1)  
                
pc.give_item2("12645",1)  
                
pc.give_item2("13025",1)  
                
pc.give_item2("14105",1)  
                
pc.give_item2("15089",1)  
                
pc.give_item2("16105",1)  
                
pc.give_item2("17105",1)  
                
say_reward("Du erhielst das Schamiset!") 
                
set_state(__COMPLETE__)
            
end 
        end  
    end
    state __COMPLETE__ begin 
    end
end 
Ich Kriege jetzt gar nix mehr, wenn ich das drin habe.

€dit: Hat sich erledigt.Lag an meinem Server.
07/06/2013 05:57 .Leykas#8463
Quote:
Originally Posted by depa95 View Post
was ist mit der quest von ein Post drüber?
funzt die? weil du nichts geschrieben oder sonstwas gemacht hast
Funktioniert alles, wow. Ich geb dor da für jede Quest n thx ;)

Würde mich freuen wen ndu mich in skype addest -> skillownz

;)
07/06/2013 15:20 Pasha#8464
Die Levelanzeige wird andauernd wiederholt.
Heißt wenn ich mich auslogge und wieder einlogge kommt wieder, dass ich level 105 bin usw. Ist bei jeden Spieler so. Was hab ich falsch gemacht?

PHP Code:
quest lvl50 begin
    state start begin
        when login 
or levelup with pc.level == 50 begin
            notice_all
("Herzlichen Glückwunsch ".. pc.get_name() .." hat gerade")
            
notice_all("Level 50 erreicht!")
            
notice_all("")
            
notice_all("Weiter so!")
            
complete_quest()
        
end
        
    end
end
quest lvl90 begin
    state start begin
        when login 
or levelup with pc.level == 90 begin
            notice_all
("Herzlichen Glückwunsch ".. pc.get_name() .." hat gerade")
            
notice_all("Level 90 erreicht!")
            
notice_all("")
            
notice_all("Weiter so!")
            
complete_quest()
        
end
    end
end
quest lvl100 begin
    state start begin
        when login 
or levelup with pc.level == 100 begin
            notice_all
("Herzlichen Glückwunsch ".. pc.get_name() .." hat gerade")
            
notice_all("Level 100 erreicht!")
            
notice_all("")
            
notice_all("Weiter so!")
            
complete_quest()
        
end
    end
end
quest lvl105 begin
    state start begin
        when login 
or levelup with pc.level == 105 begin
            notice_all
("Herzlichen Glückwunsch ".. pc.get_name() .." hat gerade")
            
notice_all("Level 105 erreicht!")
            
notice_all("Er ist nun auf dem Maximal Level!")
            
complete_quest()    
        
end
    end
end 
07/06/2013 15:44 CoTzRaiZ-PaiNx#8465
Quote:
Originally Posted by Yuroshi View Post
Die Levelanzeige wird andauernd wiederholt.
Heißt wenn ich mich auslogge und wieder einlogge kommt wieder, dass ich level 105 bin usw. Ist bei jeden Spieler so. Was hab ich falsch gemacht?

PHP Code:
quest lvl50 begin
    state start begin
        when login 
or levelup with pc.level == 50 begin
            notice_all
("Herzlichen Glückwunsch ".. pc.get_name() .." hat gerade")
            
notice_all("Level 50 erreicht!")
            
notice_all("")
            
notice_all("Weiter so!")
            
complete_quest()
        
end
        
    end
end
quest lvl90 begin
    state start begin
        when login 
or levelup with pc.level == 90 begin
            notice_all
("Herzlichen Glückwunsch ".. pc.get_name() .." hat gerade")
            
notice_all("Level 90 erreicht!")
            
notice_all("")
            
notice_all("Weiter so!")
            
complete_quest()
        
end
    end
end
quest lvl100 begin
    state start begin
        when login 
or levelup with pc.level == 100 begin
            notice_all
("Herzlichen Glückwunsch ".. pc.get_name() .." hat gerade")
            
notice_all("Level 100 erreicht!")
            
notice_all("")
            
notice_all("Weiter so!")
            
complete_quest()
        
end
    end
end
quest lvl105 begin
    state start begin
        when login 
or levelup with pc.level == 105 begin
            notice_all
("Herzlichen Glückwunsch ".. pc.get_name() .." hat gerade")
            
notice_all("Level 105 erreicht!")
            
notice_all("Er ist nun auf dem Maximal Level!")
            
complete_quest()    
        
end
    end
end 
Mach doch einfach so:
PHP Code:
quest lvl 50 begin
state start begin
when levelup begin
if pc.get_level() == 50 then
notice_all
("".. pc.get_name() .." hat gerade Level 50 erreicht")
elseif 
pc.get_level() == 90 then
notice_all
("".. pc.get_name() .." hat gerade Level 90 erreicht")
elseif 
pc.get_level() == 100 then
notice_all
("".. pc.get_name() .." hat gerade Level 100 erreicht")
elseif 
pc.get_level() == 105 then
notice_all
("".. pc.get_name() .." hat gerade Level 105 erreicht")
end
end
end
end 
07/06/2013 16:17 Pasha#8466
Quote:
Originally Posted by (_8(|) View Post
Mach doch einfach so:
PHP Code:
quest lvl 50 begin
state start begin
when levelup begin
if pc.get_level() == 50 then
notice_all
("".. pc.get_name() .." hat gerade Level 50 erreicht")
elseif 
pc.get_level() == 90 then
notice_all
("".. pc.get_name() .." hat gerade Level 90 erreicht")
elseif 
pc.get_level() == 100 then
notice_all
("".. pc.get_name() .." hat gerade Level 100 erreicht")
elseif 
pc.get_level() == 105 then
notice_all
("".. pc.get_name() .." hat gerade Level 105 erreicht")
end
end
end
end 
Nope geht nicht. Hat kein begin-end clause laut Putty.
07/06/2013 17:51 CoTzRaiZ-PaiNx#8467
Quote:
Originally Posted by Yuroshi View Post
Nope geht nicht. Hat kein begin-end clause laut Putty.
Du darfst die Quest nicht lvl 50 nennen. Du musst die lvl50 nennen.
07/06/2013 18:14 .Xilent#8468
Es geht noch kürzer
PHP Code:
quest Level50 begin
    state start begin
        when login 
or levelup with pc.get_level() == 50 or pc.get_level() == 90 or pc.get_level() == 100 or pc.get_level() == 105 begin
            notice_all
("Herzlichen Glückwunsch"..pc.get_name.."hat")
            
notice_all("das Level"..pc.get_level.."erreicht")
            
notice_all("")
            
notice_all("Weiter So!")
        
end
    end
end 
07/06/2013 22:12 .Leykas#8469
Code:
quest changename begin
    state start begin
        when 71055.use begin
            say_title("Namensänderung:")
            say("")
            say("Mithilfe dieses Items kannst du deinen Namen")
            say("einmalig ändern, also überlege es dir gut, ob")
            say("du deinen Namen wirklich ändern möchtest!")
            say("")
            say_reward("Möchtest du deinen wirklich Namen ändern?")
            say("")
            local change = select("Ja", "Nein")
            if change == 1 then
                say_title("Namensänderung:")
                say("")
                say("Also du möchtest wirklich deinen Namen ändern!")
                say("Bevor du deinen Namen ändern kannst, müssen wir")
                say("erst prüfen ob dieser Name eigentlich noch frei")
                say("ist.")
                say("")
                say_reward("Gib deinen neuen Namen hier ein:")
                say("")
                local c_name = input()
                local c_search = find_pc_by_name(c_name)
                
                if c_search==0 then 
                    say_title("Namensänderung:")
                    say("")
                    say("Dieser Name ist noch frei. Bist du dir sicher, dass")
                    say("du dich "..c_name.." nennen möchtest?")
                    say("")
                    local secure = select("Ja", "Nein")
                    if secure == 1 then
                        say_title("Namensänderung:")
                        say("")
                        say("Herzlichen Glückwunsch!")
                        say("")
                        say("Deine Name wurde in "..c_name.." geändert!")
                        say("")
                        say_reward("Bitte einmal relog machen, damit die Änderung")
                        say_reward("gültig wird!")
                        say("")
                        pc.change_name(c_name)
                        pc.remove_item(71055, 1)
                        set_state(done)
                    else
                        say_title("Namensänderung:")
                        say("")
                        say("Schade, dass du dich doch anders entschieden hast,")
                        say("aber vielleicht möchtest du deinen Namen ja ein")
                        say("andermal ändern!")
                        say("")
                    end
                else
                    say_title("Namensänderung:")
                    say("")
                    say("Dieser Name ist leider schon vergeben, bitte suche")
                    say("dir einen anderen Namen, den du verwenden kannst!")
                    say("")
                end
            else
                return
            end
        end
	end
end
quest changename begin
    state done begin
        when 71055.use with pc.is_gm() begin
            say_title("Namensänderung:")
            say("")
            say("Hallo,")
            say("Als GM kannst du deinen Namen unbegrenzt oft ändern.")
            say("Wenn du deinen Namen nochmal ändern möchtest")
            say("Klicke nocheinmal auf das Item!")
            say("")
            set_state(start)
        end
    end
end
Alles funktioniert einwandffrei, nur der Name wird nach Rleog nicht geändert. Kann mir jemand das bitte fixxen?
07/06/2013 23:32 Noa_#8470
Quote:
Originally Posted by Yuroshi View Post
Die Levelanzeige wird andauernd wiederholt.
Heißt wenn ich mich auslogge und wieder einlogge kommt wieder, dass ich level 105 bin usw. Ist bei jeden Spieler so. Was hab ich falsch gemacht?

PHP Code:
quest lvl50 begin
    state start begin
        when login 
or levelup with pc.level == 50 begin
            notice_all
("Herzlichen Glückwunsch ".. pc.get_name() .." hat gerade")
            
notice_all("Level 50 erreicht!")
            
notice_all("")
            
notice_all("Weiter so!")
            
complete_quest()
        
end
        
    end
end
quest lvl90 begin
    state start begin
        when login 
or levelup with pc.level == 90 begin
            notice_all
("Herzlichen Glückwunsch ".. pc.get_name() .." hat gerade")
            
notice_all("Level 90 erreicht!")
            
notice_all("")
            
notice_all("Weiter so!")
            
complete_quest()
        
end
    end
end
quest lvl100 begin
    state start begin
        when login 
or levelup with pc.level == 100 begin
            notice_all
("Herzlichen Glückwunsch ".. pc.get_name() .." hat gerade")
            
notice_all("Level 100 erreicht!")
            
notice_all("")
            
notice_all("Weiter so!")
            
complete_quest()
        
end
    end
end
quest lvl105 begin
    state start begin
        when login 
or levelup with pc.level == 105 begin
            notice_all
("Herzlichen Glückwunsch ".. pc.get_name() .." hat gerade")
            
notice_all("Level 105 erreicht!")
            
notice_all("Er ist nun auf dem Maximal Level!")
            
complete_quest()    
        
end
    end
end 
das ihr wegen solche scheiß quests fragen müsst, hab dir eine auf die schnelle gemacht, denke sie ist komfortabler als die meisten hier.
€. Eure Quests buggt, die Ansage wird jedesmal durchgeführt wen sich der Spieler einloggt.

PHP Code:
quest teste begin
    state start begin
        when login 
or levelup begin
            local levels
={5,10,15,20,25,30,35,40,45}
            if 
pc.getqf("old_lev")==pc.get_level() then return end
            
for i=1,table.getn(levels) do
                if 
levels[i]==pc.get_level() then
                    notice_all
("Herzlichen Glückwunsch"..pc.get_name.."hat") 
                    
notice_all("das Level"..pc.get_level.."erreicht") 
                    
notice_all("") 
                    
notice_all("Weiter So!") 
                    
pc.setqf("old_lv",pc.get_level())
                
end
            end
        end
    end
end 
07/07/2013 00:44 .Lowbob#8471
Quote:
Originally Posted by ΞΠ∪Μ View Post
das ihr wegen solche scheiß quests fragen müsst, hab dir eine auf die schnelle gemacht, denke sie ist komfortabler als die meisten hier.
€. Eure Quests buggt, die Ansage wird jedesmal durchgeführt wen sich der Spieler einloggt.

PHP Code:
quest teste begin
    state start begin
        when login 
or levelup begin
            local levels
={5,10,15,20,25,30,35,40,45}
            if 
pc.getqf("old_lev")==pc.get_level() then return end
            
for i=1,table.getn(levels) do
                if 
levels[i]==pc.get_level() then
                    notice_all
("Herzlichen Glückwunsch"..pc.get_name.."hat") 
                    
notice_all("das Level"..pc.get_level.."erreicht") 
                    
notice_all("") 
                    
notice_all("Weiter So!") 
                    
pc.setqf("old_lv",pc.get_level())
                
end
            end
        end
    end
end 

so müsste es auch klappen.

PHP Code:
quest QUESTNAME begin
    state start begin
        when levelup begin
            
if pc.getqf("abc") == 0 then
            pc
.setqf("abc", 1)
            
end
            a 
= {10,20,30,40,50,60,70,80,90,99}
            if 
pc.get_level() == a[pc.getqf("abc")] then
                notice_all
("Glückwunsch, "..pc.get_name().." hat das Level "..pc.get_level().." erreicht!")
                
pc.setqf("abc", pc.getqf("abc")+1)
            
end
        end
    end
end 
07/07/2013 01:33 Noa_#8472
Quote:
Originally Posted by .Lowbob View Post
so müsste es auch klappen.

PHP Code:
quest QUESTNAME begin
    state start begin
        when levelup begin
            
if pc.getqf("abc") == 0 then
            pc
.setqf("abc", 1)
            
end
            a 
= {10,20,30,40,50,60,70,80,90,99}
            if 
pc.get_level() == a[pc.getqf("abc")] then
                notice_all
("Glückwunsch, "..pc.get_name().." hat das Level "..pc.get_level().." erreicht!")
                
pc.setqf("abc", pc.getqf("abc")+1)
            
end
        end
    end
end 
das wird nicht klappen,
pc.getqf("abc") ist zu anfang 1, a[1]=10
damit pc.getqf("abc") 2 wird muss der spieler 19x lvl 10 sein, logisch?
07/07/2013 02:20 .Lowbob#8473
Quote:
Originally Posted by ΞΠ∪Μ View Post
das wird nicht klappen,
pc.getqf("abc") ist zu anfang 1, a[1]=10
damit pc.getqf("abc") 2 wird muss der spieler 19x lvl 10 sein, logisch?
nein nicht logisch
abc steht für die position in der tabelle anfangs ist es 1 = 10

erreicht der spieler den wert dan wird die nachricht ausgegeben und abc +1 addiert somit wird die zweite position aus der tabelle ausgelesen = 20...
07/07/2013 03:08 Noa_#8474
und was ist an deine so anders als meine?
07/07/2013 03:23 .Lowbob#8475
Quote:
Originally Posted by ΞΠ∪Μ View Post
und was ist an deine so anders als meine?
deine geht bei jedem login und levelup immer jeden wert der tabelle durch meine nicht. dafür funktioniert deine auch bei level reset bei meiner müsste ich 1-2 zeilen einbauen.