Quest Problem (Steine aus Truhe)

10/30/2011 11:32 Ðαrkbøζζ#1
Hey...
Ich wollte eine Quest machen damit wenn man auf die Truhe klickt immer ein Stein +3 daraus kommt, allerdings immer nur 1ner und auch zufällig !

Könnt ihr mir sagen was hierdran falsch ist :D ?

quest steine begin
state start begin
when 50034.use begin

pc.removeitem("50034", 1)

local r=number(1, 14)
if 1>=r then
pc.give_item2("28339", 1)
say_reward("Es kam ein Stein des Duckens+3 aus der Truhe!")
elseif 2>=r then
pc.give_item2("28338", 1)
say_reward("Es kam ein Stein des Ausweichens+3 aus der Truhe!")
elseif 3>=r then
pc.give_item2("28333", 1)
say_reward("Es kam ein Stein gegen Krieger+3 aus der Truhe!")
elseif 4>=r then
pc.give_item2("28335", 1)
say_reward("Es kam ein Stein gegen Sura+3 aus der Truhe!")
elseif 5>=r then
pc.give_item2("28336", 1)
say_reward("Es kam ein Stein gegen Schamanen+3 aus der Truhe!")
elseif 6>=r then
pc.give_item2("28334", 1)
say_reward("Es kam ein Stein gegen Ninja+3 aus der Truhe!")
elseif 7>=r then
pc.give_item2("28343", 1)
say_reward("Es kam ein Stein der Hast+3 aus der Truhe!")
elseif 8>=r then
pc.give_item2("28342", 1)
say_reward("Es kam ein Stein des Schutzes+3 aus der Truhe!")
elseif 9>=r then
pc.give_item2("28332", 1)
say_reward("Es kam ein Stein der Wiederkehr+3 aus der Truhe!")
elseif 10>=r then
pc.give_item2("28330", 1)
say_reward("Es kam ein Stein des Durchbruch+3 aus der Truhe!")
elseif 11>=r then
pc.give_item2("28331", 1)
say_reward("Es kam ein Stein des Todesstoß+3 aus der Truhe!")
elseif 12>=r then
pc.give_item2("28341", 1)
say_reward("Es kam ein Stein der Vitalität+3 aus der Truhe!")
elseif 13>=r then
pc.give_item2("28340", 1)
say_reward("Es kam ein Stein der Magie+3 aus der Truhe!")
elseif 14>=r then
pc.give_item2("28337", 1)
say_reward("Es kam ein Stein gegen Monster+3 aus der Truhe!")
end
end
end
end
10/30/2011 12:06 .Delta#2
versuchs damit^^
Code:
quest give_stone begin
	state start begin
		when 50034.use begin
			local stones = {28330, 28331, 28332, 28333, 28334, 28335, 28336, 28337, 28338, 28339, 28340, 28341, 28342, 28343}
			local nr = number(1, table.getn(stones))
			pc.give_item2(stones[nr], 1)
			say_reward("Es kam ein "..item_name(stones[nr]).." aus der Truhe")
			pc.remove_item(50034, 1)
		end
	end
end
Item-type auf 18 stellen net vergessen.
10/30/2011 12:11 .$Terra$.#3
Quote:
Originally Posted by .Delta View Post
versuchs damit^^
Code:
quest give_stone begin
	state start begin
		when 50034.use begin
			local stones = {28330, 28331, 28332, 28333, 28334, 28335, 28336, 28337, 28338, 28339, 28340, 28341, 28342, 28343}
			local nr = number(1, table.getn(stones))
			pc.give_item2(stones[nr], 1)
			say_reward("Es kam ein "..item_name(stones[nr]).." aus der Truhe")
			pc.remove_item(50034, 1)
		end
	end
end
Item-type auf 18 stellen net vergessen.
Warum so umständlich?


PHP Code:
quest truheeinhand begin
    state start begin
        when ITEM
.use begin 
         say_title
("Hey ".. pc.get_name() ..".")
            
say("So wie es aus sieht hast du die Krieger-Truhe-Einhand!")
            
say("Die Kiste enthällt eines von drei verschiedenen EQ-Sorten.")
            
say_reward("Der Zufall bestimmt, welche Items du bekommst!")
            
say_reward("Öffne die Truhe nur, wenn du dir sichher bist,")
            
say_reward("denn ein Umtausch ist ausgeschlossen!")
            
say_reward("Im Forum stehen nähere Infos zu den Truhen.")
            
say_reward("Möchtest du die Kiste nun öffnen?")
             
local s select("Item Geben","Abrechen")
              if 
== 1 then
                local r
=number(14) --Zähler von 1-4 beliebig erweiterbar
                    
if r==1 then
                         pc
.give_item2("ITEM"1)
                         
pc.give_item2("ITEM"1)
                         
pc.give_item2("ITEM"1)
                         
pc.remove_item("ITEM"1)
                    elseif 
r==2 then
                         pc
.give_item2("ITEM"1)
                         
pc.give_item2("ITEM"1)
                         
pc.give_item2("ITEM"1)
                         
pc.remove_item("ITEM"1
                    elseif 
r==3 then
                         pc
.give_item2("ITEM"1)
                         
pc.give_item2("ITEM"1)
                         
pc.give_item2("ITEM"1)
                         
pc.remove_item("ITEM"1
                    elseif 
r==4 then
                         pc
.give_item2("ITEM"1)
                         
pc.give_item2("ITEM"1)
                         
pc.give_item2("ITEM"1)
                         
pc.remove_item("ITEM"1
                           else
                  return
                
end
            end
        end 
     end
  end 
10/30/2011 12:13 .Delta#4
was heißt hier umständlich xD
Das ist die vom code her kürzeste Lösung für sein Anliegen ;)
10/30/2011 12:24 Ðαrkbøζζ#5
Danke ihr beiden ^^
Mir geht es nicht darum wie umständlich ! Soll user freundlich sein.

@.$Terra$. aber dann gibt er doch gleichzeitig mehrere Items oder? oder meinteste ich soll das weiterführen ^^?
10/30/2011 12:35 .$Terra$.#6
Quote:
Originally Posted by *DarkBozZ* View Post
Danke ihr beiden ^^
Mir geht es nicht darum wie umständlich ! Soll user freundlich sein.

@.$Terra$. aber dann gibt er doch gleichzeitig mehrere Items oder? oder meinteste ich soll das weiterführen ^^?
Kannst so wie du magst Items rauslöschen oder noch welche hinzufügen.
10/30/2011 12:41 Ðαrkbøζζ#7
Teste es gleich ! Danke schonmal !!! ihr beiden
(Thx Give)
10/30/2011 12:44 Lord Avo​#8
Falls die Quest´s nicht klappen sollten, was ich zwar nicht glaube:

Kannst du den Truheninhalt auch in der special_item_group.txt festlegen.
Dabei kannst du genauso vorgehen wie hier:

[Only registered and activated users can see links. Click Here To Register...]