Quest

05/01/2013 21:10 KliKli1998#1
Hallo liebe Com,

Ich versuche eine Quest zu machen das man z.b. ein SSP+9 gegen ein BSP oder Giftpanzer umtauschen kann aber nicht durch uppen. Allerding will es aber so haben das wenn z.b. der Krieger auf den NPC klickt nur die Krieger rüstungen angezeigt werden also wenn der Sura auf den NPC klickt kommen die sura rüstungen und so weiter halt.
05/01/2013 21:12 mrapc#2
das geht mit
if pc . job == 0 then
--Krieger
elseif pc . job == 1 then
--Ninja
elseif pc . job == 2 then
--sura
elseif pc . job == 3 then
--schamane
end
05/01/2013 21:20 KliKli1998#3
achso wo muss das eingefügt werden? nach dem "local s = select" oder vor dem "local s = select"???
05/01/2013 21:27 mrapc#4
Direkt nach dem when activated oder wie du das machst (also direkt nachdem der NPC aktiviert wurde checkt der dann um welche Klasse es sich handelt und öffnet dann dein Menü oder was auch immer :)
05/01/2013 21:29 KliKli1998#5
PHP Code:
quest Rustausch begin 
    state start begin 
        when 20090.chat
."Rüsstung eintauschen" begin 
            say_title
("Heuk-Yong:"
            
say(""
            
say("Hallo, bei mir kannst du deine Rüsstung eintauschen."
            
say("Du fragst dich Welche?"
            
say("Die 66er+9 eine Truhe mit dem dazu gehörigen Schlüssel.")
            
say("Die 50er(PvM) eine Truhe mit dem dazu gehörigen Schlüssel.")
            
say("Bitte beachte das deine Bonis verschwinden und der Tausch nicht")
            
say("rückgängig gemacht werden kann.")
            
say_reward("66er+9 +rote Truhe+Schlüssel= Rote-Rüstung"
            
say_reward("66er+9 +gelbe Truhe+Schlüssel= Gelbe-Rüstung")
            
say_reward("66er+9 +orange Truhe+Schlüssel= Antike-Rüstung"
            
say_reward("66er+9 +grüne Truhe+Schlüssel= Gift-Rüstung")
            
say_reward("66er+9 +lila Truhe+Schlüssel= Phönix-Rüstung")
            
say("Welche Rüstung willst du haben?"
            
local s select("Rote""Gelbe""Antike""Gift""Phönix""Abbrechen"
            if 
== and pc.count_item(27990)>49 then 
                say_reward
("Du erhälst Weiße Perle."
                
pc.give_item2(279921
                
pc.remove_item(2799050
            
end 
            
if == and pc.count_item(27990)>99 then 
                say_reward
("Du erhälst Blaue Perle."
                
pc.give_item2(279931
                
pc.remove_item(27990100
            
end 
            
if == and pc.count_item(27990)>149 then 
                say_reward
("Du erhälst Blutrote Perle."
                
pc.give_item2(279941
                
pc.remove_item(27990150
            
end 
            
if == and pc.count_item(27990)>149 then 
                say_reward
("Du erhälst Blutrote Perle."
                
pc.give_item2(279941
                
pc.remove_item(27990150
            
end 
            
if == and pc.count_item(27990)>149 then 
                say_reward
("Du erhälst Blutrote Perle."
                
pc.give_item2(279941
                
pc.remove_item(27990150
            
end 
            
if == 6 then 
                say_title
("Heuk-Yong:"
                
say(""
                
say("Dann bis später."
            
end 
        end 
    end 
end 
Also das wäre meine quest zwar noch nicht fertig aber naja wo genau muss ich das einfügen?^^ Also ich will das jetzte so haben das wenn ich Kriger bin da überprüft wird ob ich ein SSP habe und wenn ich Sura bin da überprüft wird ob ich ein MPP habe und halt die schlüssel etc.

PS: ich weis das da noch weiße perle und so steht das war kopiert von meine perlentausch quest.
05/01/2013 21:45 mrapc#6
Also so würde er jetzt nach der Auswahl überprüfen
PHP Code:
if == and pc.count_item(27990)>49 then 
       pc
.remove_item(2799050)         
       if 
pc job == 0 then
              say_reward
("Weiße Perle (als Kieger)"
              
pc.give_item2(279921
       elseif 
pc job == 2 then
               say_reward
("Du erhälst zwei weiße perlen (als Ninja)"
              
pc.give_item2(279922)      
       
end   
end 
Aber wenn du für jeden einen anderen Text und ein anderes Menü willst musst du es direkt nach
PHP Code:
when 20090.chat."Rüsstung eintauschen" begin 
machen
05/01/2013 21:53 KliKli1998#7
kann ich es auch so machen das ich vor diesen codes die bestimmte klassen auswähle oder muss ich vor jedem wechselcode das job ding machen?

PHP Code:
    (HIER EINFACH DAS JOB DING DANN KOPIEREN DAS GLEICHE MIT ANDREN JOB)        
if 
== and pc.count_item(27990)>49 then 
                say_reward
("Du erhälst Weiße Perle."
                
pc.give_item2(279921
                
pc.remove_item(2799050
            
end 
            
if == and pc.count_item(27990)>99 then 
                say_reward
("Du erhälst Blaue Perle."
                
pc.give_item2(279931
                
pc.remove_item(27990100
            
end 
            
if == and pc.count_item(27990)>149 then 
                say_reward
("Du erhälst Blutrote Perle."
                
pc.give_item2(279941
                
pc.remove_item(27990150
            
end 
            
if == and pc.count_item(27990)>149 then 
                say_reward
("Du erhälst Blutrote Perle."
                
pc.give_item2(279941
                
pc.remove_item(27990150
            
end 
            
if == and pc.count_item(27990)>149 then 
                say_reward
("Du erhälst Blutrote Perle."
                
pc.give_item2(279941
                
pc.remove_item(27990150
            
end 
            
if == 6 then 
                say_title
("Heuk-Yong:"
                
say(""
                
say("Dann bis später."
05/01/2013 21:58 mrapc#8
musst du jetzt mal ausprobieren dazu bin ich jetzt gerade nicht mehr konzentriert genug, aber an sich sollte das gehen er kann dann bei dem ein anderen Text anzeigen allerdings w#äre die auswahl beim local select dann immer gleich...
05/01/2013 22:04 KliKli1998#9
also bei mir kommt immer eine fehler meldung
"qc in malloc(): error: allocation failed
Error occured on compile rustausch.quest"

kann mir bitte jemand helfen? ://