[SERVICE] Die Questerstellung

06/19/2015 16:30 KΛIƬӨ#2926
Quote:
Originally Posted by It's me, 1093 View Post
eher:
Code:
if type(input_yang) != "number" then
weil man ja nicht abfragen möchte, ob es ein string ist, sondern, ob es keine zahl ist

Aber auch möglich, ja ;)
War nur ein Beispiel, hab mir die Quest nicht durchgelesen.
06/21/2015 13:03 Kampfzwerg!#2927
Moin Moin
möchte gerne das dieses Item 70042 sich auch mit der quest vom Lagerverwalter öffnen lässt, danke schonmal im vorraus

Code:
quest stash begin
	state start begin --Status when nothing is open
		when warehouse_keeper.chat.gameforge.warehouse._10_npcChat  begin
			say_title(gameforge.warehouse._20_sayTitle)
			-- changed handling, after we get a new button to open the storeage directly
			say(gameforge.warehouse._30_say)
			wait()

			if pc.gold < 500 then
				
				
				say_title(gameforge.warehouse._20_sayTitle)
				say(gameforge.warehouse._40_say)
			else
				local s =  select(gameforge.locale.stash.pay_ok, gameforge.locale.stash.pay_no)

				if s == 1 then
					pc.changegold(-500)
					game.set_safebox_level(1)
					set_state(use)
					say_title(gameforge.subquest_26._30_sayTitle)
					say(gameforge.warehouse._50_say)
					say_reward(gameforge.warehouse._60_sayReward)
					say(gameforge.warehouse._70_say)
				else
					say_title(gameforge.warehouse._20_sayTitle)
					say(gameforge.warehouse._80_say)
				end
			end
		end
		when warehouse_keeper.chat.gameforge.warehouse._120_npcChat  begin
			if pc.getqf("open_item_storage_count") < 3 then
				say_title(gameforge.subquest_26._30_sayTitle)
				say(gameforge.warehouse._140_say)
				wait()
				say_title(gameforge.subquest_26._30_sayTitle)
				say_show_item(90013) -- icon of item
				say(gameforge.warehouse._150_say)
				wait()
				pc.setqf("open_item_storage_count", pc.getqf("open_item_storage_count") + 1)
			end
			
			setskin(NOWINDOW)
			game.open_mall()
		end
	end
	state use begin
		when warehouse_keeper.chat.gameforge.warehouse._90_npcChat begin
			if pc.getqf("open_count") < 3 then
				say_title(gameforge.subquest_26._30_sayTitle)
				say(gameforge.warehouse._100_say)
				wait()
				say_title(gameforge.subquest_26._30_sayTitle)
				say(gameforge.warehouse._110_say)
				wait()
				pc.setqf("open_count", pc.getqf("open_count") + 1)
			end
			setskin(NOWINDOW)
			game.open_safebox()
		end
		when warehouse_keeper.chat.gameforge.warehouse._120_npcChat begin
			if pc.getqf("open_item_storage_count") < 3 then
				say_title(gameforge.subquest_26._30_sayTitle)
				say(gameforge.warehouse._140_say)
			    wait()
				say_title(gameforge.subquest_26._30_sayTitle)
				say_show_item(90013) -- icon of item
				say(gameforge.warehouse._150_say)
				wait()
				pc.setqf("open_item_storage_count", pc.getqf("open_item_storage_count") + 1)
			end
			
			setskin(NOWINDOW)
			game.open_mall()
			
		end
		when warehouse_keeper.chat.gameforge.locale.stash.buy_silver_and_gold_bar begin
			npc.open_shop()
			say_title(gameforge.subquest_26._30_sayTitle)
			say(gameforge.warehouse._130_say)
		end 

	end -- end_of_state: use
end -- end_of_quest
06/21/2015 13:07 rollback#2928
Quote:
Originally Posted by Kampfzwerg! View Post
Moin Moin
möchte gerne das dieses Item 70042 sich auch mit der quest vom Lagerverwalter öffnen lässt, danke schonmal im vorraus

Code:
quest stash begin
	state start begin --Status when nothing is open
		when warehouse_keeper.chat.gameforge.warehouse._10_npcChat  begin
			say_title(gameforge.warehouse._20_sayTitle)
			-- changed handling, after we get a new button to open the storeage directly
			say(gameforge.warehouse._30_say)
			wait()

			if pc.gold < 500 then
				
				
				say_title(gameforge.warehouse._20_sayTitle)
				say(gameforge.warehouse._40_say)
			else
				local s =  select(gameforge.locale.stash.pay_ok, gameforge.locale.stash.pay_no)

				if s == 1 then
					pc.changegold(-500)
					game.set_safebox_level(1)
					set_state(use)
					say_title(gameforge.subquest_26._30_sayTitle)
					say(gameforge.warehouse._50_say)
					say_reward(gameforge.warehouse._60_sayReward)
					say(gameforge.warehouse._70_say)
				else
					say_title(gameforge.warehouse._20_sayTitle)
					say(gameforge.warehouse._80_say)
				end
			end
		end
		when warehouse_keeper.chat.gameforge.warehouse._120_npcChat  begin
			if pc.getqf("open_item_storage_count") < 3 then
				say_title(gameforge.subquest_26._30_sayTitle)
				say(gameforge.warehouse._140_say)
				wait()
				say_title(gameforge.subquest_26._30_sayTitle)
				say_show_item(90013) -- icon of item
				say(gameforge.warehouse._150_say)
				wait()
				pc.setqf("open_item_storage_count", pc.getqf("open_item_storage_count") + 1)
			end
			
			setskin(NOWINDOW)
			game.open_mall()
		end
	end
	state use begin
		when warehouse_keeper.chat.gameforge.warehouse._90_npcChat begin
			if pc.getqf("open_count") < 3 then
				say_title(gameforge.subquest_26._30_sayTitle)
				say(gameforge.warehouse._100_say)
				wait()
				say_title(gameforge.subquest_26._30_sayTitle)
				say(gameforge.warehouse._110_say)
				wait()
				pc.setqf("open_count", pc.getqf("open_count") + 1)
			end
			setskin(NOWINDOW)
			game.open_safebox()
		end
		when warehouse_keeper.chat.gameforge.warehouse._120_npcChat begin
			if pc.getqf("open_item_storage_count") < 3 then
				say_title(gameforge.subquest_26._30_sayTitle)
				say(gameforge.warehouse._140_say)
			    wait()
				say_title(gameforge.subquest_26._30_sayTitle)
				say_show_item(90013) -- icon of item
				say(gameforge.warehouse._150_say)
				wait()
				pc.setqf("open_item_storage_count", pc.getqf("open_item_storage_count") + 1)
			end
			
			setskin(NOWINDOW)
			game.open_mall()
			
		end
		when warehouse_keeper.chat.gameforge.locale.stash.buy_silver_and_gold_bar begin
			npc.open_shop()
			say_title(gameforge.subquest_26._30_sayTitle)
			say(gameforge.warehouse._130_say)
		end 

	end -- end_of_state: use
end -- end_of_quest
Code:
quest stash begin
	state start begin --Status when nothing is open
		when warehouse_keeper.chat.gameforge.warehouse._10_npcChat or 70042.use begin
			say_title(gameforge.warehouse._20_sayTitle)
			-- changed handling, after we get a new button to open the storeage directly
			say(gameforge.warehouse._30_say)
			wait()

			if pc.gold < 500 then
				
				
				say_title(gameforge.warehouse._20_sayTitle)
				say(gameforge.warehouse._40_say)
			else
				local s =  select(gameforge.locale.stash.pay_ok, gameforge.locale.stash.pay_no)

				if s == 1 then
					pc.changegold(-500)
					game.set_safebox_level(1)
					set_state(use)
					say_title(gameforge.subquest_26._30_sayTitle)
					say(gameforge.warehouse._50_say)
					say_reward(gameforge.warehouse._60_sayReward)
					say(gameforge.warehouse._70_say)
				else
					say_title(gameforge.warehouse._20_sayTitle)
					say(gameforge.warehouse._80_say)
				end
			end
		end
		when warehouse_keeper.chat.gameforge.warehouse._120_npcChat  begin
			if pc.getqf("open_item_storage_count") < 3 then
				say_title(gameforge.subquest_26._30_sayTitle)
				say(gameforge.warehouse._140_say)
				wait()
				say_title(gameforge.subquest_26._30_sayTitle)
				say_show_item(90013) -- icon of item
				say(gameforge.warehouse._150_say)
				wait()
				pc.setqf("open_item_storage_count", pc.getqf("open_item_storage_count") + 1)
			end
			
			setskin(NOWINDOW)
			game.open_mall()
		end
	end
	state use begin
		when warehouse_keeper.chat.gameforge.warehouse._90_npcChat begin
			if pc.getqf("open_count") < 3 then
				say_title(gameforge.subquest_26._30_sayTitle)
				say(gameforge.warehouse._100_say)
				wait()
				say_title(gameforge.subquest_26._30_sayTitle)
				say(gameforge.warehouse._110_say)
				wait()
				pc.setqf("open_count", pc.getqf("open_count") + 1)
			end
			setskin(NOWINDOW)
			game.open_safebox()
		end
		when warehouse_keeper.chat.gameforge.warehouse._120_npcChat begin
			if pc.getqf("open_item_storage_count") < 3 then
				say_title(gameforge.subquest_26._30_sayTitle)
				say(gameforge.warehouse._140_say)
			    wait()
				say_title(gameforge.subquest_26._30_sayTitle)
				say_show_item(90013) -- icon of item
				say(gameforge.warehouse._150_say)
				wait()
				pc.setqf("open_item_storage_count", pc.getqf("open_item_storage_count") + 1)
			end
			
			setskin(NOWINDOW)
			game.open_mall()
			
		end
		when warehouse_keeper.chat.gameforge.locale.stash.buy_silver_and_gold_bar begin
			npc.open_shop()
			say_title(gameforge.subquest_26._30_sayTitle)
			say(gameforge.warehouse._130_say)
		end 

	end -- end_of_state: use
end -- end_of_quest
06/21/2015 15:30 Chaosnightx3#2929
Suche eine simple Quest:

Du gehst zu einem NPC und kannst dir deine standard Frisur machen lassen.
Wenn du zb das Stirntuch vom Krieger trägst, gehst du zu Npc
xyz und lässt sich dort seine normale Frisur wieder geben.^^
06/22/2015 00:07 Zaturix#2930
PHP Code:
quest sensi begin
    state start begin
        when login with pc
.get_level() >= 49 begin
            set_state
(letter_to_kill)
            
end
        end
    state letter_to_kill begin
        when enter 
or login begin
            send_letter
("Sensenmann")
        
end
        when button 
or info begin
            say_title
("Sensenmann")
            
say("")
            
say("Da bist du endlich "..pc.get_name()..",")
            
say("Ich habe ein Problem mit dem Sensenmann")
            
say("Er schiebt wieder stress")
            
say("Kannst du mir helfen?")
            if 
select("Ja","Nein") == 2 then return end
            say
("Viel Glück...")
            
pc.setqf("sensenmann"5)
            
clear_letter()
            
set_state(kill_do)
            
end
        end
    state kill_do begin
        when enter 
or login begin
            q
.set_counter("Sensenmann"pc.getqf("sensenmann"))
                
send_letter("Töte den Sensenmann")
        
end
        when button 
or info begin
            say_title
("Töte den Sensenmann")
            
say("")
            
say("Du musst noch "..pc.getqf("sensenmann")..", Sensenmänner töten")
        
end
        when kill with npc
.get_race() == 1093 begin
            local newqf 
pc.setqf("sensenmann")-1
                
if newqf 5 then
                clear_letter
()
                
set_state(kill_succes)
            
end
            q
.set_counter("Sensenmann"newqf)
            
pc.setqf("sensenmann"newqf)
            
end
        end
    state kill_succes begin
        when enter 
or login begin
            send_letter
("Töte den Sensenmann: Abgeschlossen")
        
end
        when button 
or info begin
            local reward 
= {
                
25040,200,
                
50513,200
            
}
            
say_title("Töte den Sensenmann")
            
say("")
            
say("Du hast es geschafft "..pc.get_name()..",")
            
say("Als Dank erhälst du eine Belohnung")
            for 
k,v in pairs(reward) do
                
pc.give_item2(v)
            
end
            clear_letter
()
            
set_state(COMPLETE)
            
end
        end
    state COMPLETE begin
    end
end 
Alles funktioniert außer der Counter.Er zählt von 5 nicht mit runter.
Woran kann es liegen?
06/22/2015 00:20 rollback#2931
Quote:
Originally Posted by Zaturix View Post
Alles funktioniert außer der Counter.Er zählt von 5 nicht mit runter.
Woran kann es liegen?
per skype geklärt, in der dt quest war der sensi noch mit "1093.kill" drin
06/23/2015 16:52 JulianII#2932
Hey,

brauche eine kleine PvP-Quest,

bei PvP Kill werden 1-3 Items gedroppt.. Es soll aber auch vor Bugusing geschützt sein, also irgendeine Schleife die es verhindert das man als die selben Chars killen kann..

Mfg
06/23/2015 17:25 HowToPlayxD#2933
Hallo liebe ePvP User,
Ich bräuchte eine Anti Exp quest die über einen Button funktionier also:quest clientquest_test begin
state start begin
--[[ Dieses nur auskommentieren wenn ihr die dynamische Methode benutzt
when login begin
cmdchat("loadquest2 "..q.getcurrentquestindex())
end]]
when button or info begin
und darunter die Quest.

Die Quest sollte halt wie eine Anti Exp sein nur das man 0 exp bekommt + die vorhanden exp gespeichert bleibt
06/23/2015 21:34 [TEC]Tigrex#2934
Hay ich bräuchte mal Hilfe bei einer kurzen quest

Code:
quest start_bonus begin
	state start begin
		when login begin
			if tonumber(mysql_query("SELECT count(*) FROM account.account where Bonus = 0;")[1][1]) >=1 then
				mysql_query("UPDATE account.account SET Bonus = 1 WHERE id='"..pc.get_account_id()..;")
				end
				mysql_query("UPDATE account.account SET gold_expire = gold_expire +55 WHERE id='"..pc.get_account_id().."' LIMIT 1;")
			end
		end
	end
und zwar lieg der fehler darinne, dass ich möchte sobald man sich einloggt bekommt man für einen tag gold oder exp bonus ist egal aber das nur pro account 1 mal, das Set Bonus ist in meiner Datenbank ein Feld namens Bonus wenn er die zahl 0 trägt besitzt der account den Bonus nicht und wenn es die Zahl 1 trägt besitzt er den Bonus.
06/24/2015 09:43 Metin2kenner100#2935
Hallo, ich suche jmnd der mir eine etwas komplexe Quest erstellt. bzw. 2^^
Undzwar das man unabhängig von der Rasse mit lvl 10 eine Quest bekommt, die sich jedoch nicht als Quest zeigt sondern wie das Hilfemenü direkt öffnet wenn man lvl 10 erreicht. Dort sollte dann ein Text stehen und wenn man auf weiter drückt sollte man auf eine andere Map gesetzt werden. Dort sollte man wieder lvl1 sein.

nun die 2. wenn man das level 105 erreicht hat bzw. das Max lvl soll man wieder so ein Fenster bekommen wo ein Text steht und dann wieder auf die normale Map1 zurück kommen. wo man dann lvl 10 ist.

Danke im Vorraus und wäre lieb mir die Quest in skype schicken könnte: voan.techniker
und nicht hier pub. zu machen
06/24/2015 10:10 rollback#2936
Quote:
Originally Posted by Metin2kenner100 View Post
Hallo, ich suche jmnd der mir eine etwas komplexe Quest erstellt. bzw. 2^^
Undzwar das man unabhängig von der Rasse mit lvl 10 eine Quest bekommt, die sich jedoch nicht als Quest zeigt sondern wie das Hilfemenü direkt öffnet wenn man lvl 10 erreicht. Dort sollte dann ein Text stehen und wenn man auf weiter drückt sollte man auf eine andere Map gesetzt werden. Dort sollte man wieder lvl1 sein.

nun die 2. wenn man das level 105 erreicht hat bzw. das Max lvl soll man wieder so ein Fenster bekommen wo ein Text steht und dann wieder auf die normale Map1 zurück kommen. wo man dann lvl 10 ist.

Danke im Vorraus und wäre lieb mir die Quest in skype schicken könnte: voan.techniker
und nicht hier pub. zu machen
Man kann per Quest das Level nicht (sofort) zurücksetzen, zumindest nicht mit den Standardfunktionen.
06/24/2015 11:09 Metin2kenner100#2937
man kann die quest doch in der DB die value lvl verändern lassen
06/24/2015 11:34 rollback#2938
Quote:
Originally Posted by Metin2kenner100 View Post
man kann die quest doch in der DB die value lvl verändern lassen
Dann muss man den Spieler aber ca. 10 Minuten bannen, weil die Änderungen nicht sofort übernommen werden. Deshalb habe ich ja auch "sofort" in Klammern gesetzt.
06/24/2015 11:59 Metin2kenner100#2939
oh die klammern habe ich nicht gesehen^^ aber müsste nicht die teleportation reichen úm das lvl zu ändern? könntest du mir die quests schreiben um das Problem mit dem lvl ändern kümmere ich mich dann selbst aber die funktion bitte mit einbauen ^^
06/24/2015 12:35 [Remix]#2940
Quote:
Originally Posted by Metin2kenner100 View Post
oh die klammern habe ich nicht gesehen^^ aber müsste nicht die teleportation reichen úm das lvl zu ändern? könntest du mir die quests schreiben um das Problem mit dem lvl ändern kümmere ich mich dann selbst aber die funktion bitte mit einbauen ^^
Nein, kann man nicht.