Using define's

This commit is contained in:
ErLullo
2026-01-14 17:37:13 +01:00
committed by GitHub
parent 955b193adc
commit 73dd1a0f42

View File

@@ -1,3 +1,20 @@
-- Flower items and bouquet
define ITEM_FLOWER_RED 30169 -- Red Flower
define ITEM_FLOWER_ORANGE 30170 -- Orange Flower
define ITEM_FLOWER_YELLOW 30171 -- Yellow Flower
define ITEM_BOUQUET 30172 -- Bouquet
-- Required amounts
define NEED_RED 1
define NEED_ORANGE 1
define NEED_YELLOW 1
-- Drop chances (percent)
define DROP_RED 45
define DROP_ORANGE 30
define DROP_YELLOW 15
quest new_quest_lv7 begin quest new_quest_lv7 begin
state start begin state start begin
-- Function declaration -- Function declaration
@@ -89,17 +106,11 @@ quest new_quest_lv7 begin
end end
when enter or login begin when enter or login begin
new_quest_lv7_AmountNeed1 = 1
new_quest_lv7_AmountNeed2 = 1
new_quest_lv7_AmountNeed3 = 1
new_quest_lv7_mob1 = 173 -- kill a 173#Hungriger Alpha-Wolf new_quest_lv7_mob1 = 173 -- kill a 173#Hungriger Alpha-Wolf
new_quest_lv7_mob2 = 174 -- kill a 174#Hungriger Blauwolf new_quest_lv7_mob2 = 174 -- kill a 174#Hungriger Blauwolf
new_quest_lv7_mob3 = 175 -- kill a 175#Hungriger Alpha-Blauwolf new_quest_lv7_mob3 = 175 -- kill a 175#Hungriger Alpha-Blauwolf
-- Einige deser Mobs werden auch in der Level 7 Aufgabe verwendet, was dazu führt, -- Einige deser Mobs werden auch in der Level 7 Aufgabe verwendet, was dazu führt,
-- dass diese dort nicht mehr hoch zählen wenn man sie tötet. -- dass diese dort nicht mehr hoch zählen wenn man sie tötet.
new_quest_lv7_drop1 = 30169 -- Blutrote Blume
new_quest_lv7_drop2 = 30170 -- Orangefarbene Blume
new_quest_lv7_drop3 = 30171 -- Duftende gelbe Blume
-- BEGIN EDIT added by Arne 18Sept09, according to Mantis 0026063, REASON: No quest letter, no questbook entry -- BEGIN EDIT added by Arne 18Sept09, according to Mantis 0026063, REASON: No quest letter, no questbook entry
send_letter(gameforge.new_quest_lv7._020_say_title) -- A Daughters Wedding send_letter(gameforge.new_quest_lv7._020_say_title) -- A Daughters Wedding
@@ -136,20 +147,20 @@ quest new_quest_lv7 begin
-- "vom Bräutigam an seine Liebste überreicht" versteht das unsere Zielgruppe? -- "vom Bräutigam an seine Liebste überreicht" versteht das unsere Zielgruppe?
wait() wait()
say(gameforge.new_quest_lv7._054_say) say(gameforge.new_quest_lv7._054_say)
say_reward(string.format("%s x", new_quest_lv7_AmountNeed1)) say_reward(string.format("%s x", NEED_RED))
say_item_vnum(new_quest_lv7_drop1) -- icon of item say_item_vnum(ITEM_FLOWER_RED) -- icon of item
say_reward(gameforge.new_quest_lv7._055_say) say_reward(gameforge.new_quest_lv7._055_say)
say(mob_name(new_quest_lv7_mob1)) say(mob_name(new_quest_lv7_mob1))
wait() wait()
say(gameforge.new_quest_lv7._056_say) say(gameforge.new_quest_lv7._056_say)
say_reward(string.format("%s x", new_quest_lv7_AmountNeed2)) say_reward(string.format("%s x", NEED_ORANGE))
say_item_vnum(new_quest_lv7_drop2) -- icon of item say_item_vnum(ITEM_FLOWER_ORANGE) -- icon of item
say_reward(gameforge.new_quest_lv7._055_say) say_reward(gameforge.new_quest_lv7._055_say)
say(mob_name(new_quest_lv7_mob2)) say(mob_name(new_quest_lv7_mob2))
wait() wait()
say(gameforge.new_quest_lv7._056_say) say(gameforge.new_quest_lv7._056_say)
say_reward(string.format("%s x", new_quest_lv7_AmountNeed3)) say_reward(string.format("%s x", NEED_YELLOW))
say_item_vnum(new_quest_lv7_drop3) -- icon of item say_item_vnum(ITEM_FLOWER_YELLOW) -- icon of item
say_reward(gameforge.new_quest_lv7._055_say ) say_reward(gameforge.new_quest_lv7._055_say )
say(mob_name(new_quest_lv7_mob3)) say(mob_name(new_quest_lv7_mob3))
wait() wait()
@@ -165,23 +176,14 @@ quest new_quest_lv7 begin
state collect_flowers begin state collect_flowers begin
-- BEGIN EDIT added by Arne 18Sept09, according to Mantis 0026063, REASON: No letter, questbook entry, button -- BEGIN EDIT added by Arne 18Sept09, according to Mantis 0026063, REASON: No letter, questbook entry, button
when enter or login begin when enter or login begin
new_quest_lv7_AmountNeed1 = 1
new_quest_lv7_AmountNeed2 = 1
new_quest_lv7_AmountNeed3 = 1
new_quest_lv7_dropProb1 = 45
new_quest_lv7_dropProb2 = 30
new_quest_lv7_dropProb3 = 15
new_quest_lv7_drop1 = 30169 -- Blutrote Blume
new_quest_lv7_drop2 = 30170 -- Orangefarbene Blume
new_quest_lv7_drop3 = 30171 -- Duftende gelbe Blume
send_letter(gameforge.new_quest_lv7._020_say_title) send_letter(gameforge.new_quest_lv7._020_say_title)
q.start() q.start()
q.set_title(gameforge.new_quest_lv7._020_say_title) q.set_title(gameforge.new_quest_lv7._020_say_title)
-- FIX: if the player already has all flowers, go directly to return_oldwoman -- FIX: if the player already has all flowers, go directly to return_oldwoman
if pc.count_item(new_quest_lv7_drop1) >= new_quest_lv7_AmountNeed1 if pc.count_item(ITEM_FLOWER_RED) >= NEED_RED
and pc.count_item(new_quest_lv7_drop2) >= new_quest_lv7_AmountNeed2 and pc.count_item(ITEM_FLOWER_ORANGE) >= NEED_ORANGE
and pc.count_item(new_quest_lv7_drop3) >= new_quest_lv7_AmountNeed3 then and pc.count_item(ITEM_FLOWER_YELLOW) >= NEED_YELLOW then
q.done() q.done()
set_state(return_oldwoman) set_state(return_oldwoman)
return return
@@ -200,9 +202,9 @@ quest new_quest_lv7 begin
-- EDIT Arne 18Sept09 moved q.done Reason: removed quest from book -- EDIT Arne 18Sept09 moved q.done Reason: removed quest from book
-- BEGIN EDIT added by Arne 18Sept09, according to Mantis 0026063, REASON: No arrow on old lady for flower return -- BEGIN EDIT added by Arne 18Sept09, according to Mantis 0026063, REASON: No arrow on old lady for flower return
--notice_multiline(gameforge.new_quest_lv7._088_notice, notice) --notice_multiline(gameforge.new_quest_lv7._088_notice, notice)
if pc.count_item(new_quest_lv7_drop3) == new_quest_lv7_AmountNeed3 if pc.count_item(ITEM_FLOWER_YELLOW) == NEED_YELLOW
and pc.count_item(new_quest_lv7_drop2) == new_quest_lv7_AmountNeed2 and pc.count_item(ITEM_FLOWER_ORANGE) == NEED_ORANGE
and pc.count_item(new_quest_lv7_drop1) == new_quest_lv7_AmountNeed1 then and pc.count_item(ITEM_FLOWER_RED) == NEED_RED then
return true return true
end end
else else
@@ -211,9 +213,9 @@ quest new_quest_lv7 begin
end end
-- FIX: also check completion when there is no drop or flowers came from trade -- FIX: also check completion when there is no drop or flowers came from trade
if pc.count_item(new_quest_lv7_drop3) >= new_quest_lv7_AmountNeed3 if pc.count_item(ITEM_FLOWER_YELLOW) >= NEED_YELLOW
and pc.count_item(new_quest_lv7_drop2) >= new_quest_lv7_AmountNeed2 and pc.count_item(ITEM_FLOWER_ORANGE) >= NEED_ORANGE
and pc.count_item(new_quest_lv7_drop1) >= new_quest_lv7_AmountNeed1 then and pc.count_item(ITEM_FLOWER_RED) >= NEED_RED then
return true return true
end end
end end
@@ -221,7 +223,7 @@ quest new_quest_lv7 begin
-------------- Blutrote Blume ------------------------------------------------------ -------------- Blutrote Blume ------------------------------------------------------
-- kill a 173#Hungriger Alpha-Wolf -- kill a 173#Hungriger Alpha-Wolf
when 173.kill begin when 173.kill begin
if new_quest_lv7.when_one_killed(new_quest_lv7_AmountNeed1, new_quest_lv7_dropProb1, new_quest_lv7_drop1) then if new_quest_lv7.when_one_killed(NEED_RED, DROP_RED, ITEM_FLOWER_RED) then
q.done() q.done()
set_state(return_oldwoman) set_state(return_oldwoman)
end end
@@ -230,7 +232,7 @@ quest new_quest_lv7 begin
-------------- Orangefarbene Blume ------------------------------------------------------ -------------- Orangefarbene Blume ------------------------------------------------------
-- kill a 174#Hungriger Blauwolf -- kill a 174#Hungriger Blauwolf
when 174.kill begin when 174.kill begin
if new_quest_lv7.when_one_killed(new_quest_lv7_AmountNeed2, new_quest_lv7_dropProb2, new_quest_lv7_drop2) then if new_quest_lv7.when_one_killed(NEED_ORANGE, DROP_ORANGE, ITEM_FLOWER_ORANGE) then
q.done() q.done()
set_state(return_oldwoman) set_state(return_oldwoman)
end end
@@ -239,7 +241,7 @@ quest new_quest_lv7 begin
-------------- Duftende gelbe Blume ------------------------------------------------------ -------------- Duftende gelbe Blume ------------------------------------------------------
-- kill a 175#Hungriger Alpha-Blauwolf -- kill a 175#Hungriger Alpha-Blauwolf
when 175.kill begin when 175.kill begin
if new_quest_lv7.when_one_killed(new_quest_lv7_AmountNeed3, new_quest_lv7_dropProb3, new_quest_lv7_drop3) then if new_quest_lv7.when_one_killed(NEED_YELLOW, DROP_YELLOW, ITEM_FLOWER_YELLOW) then
q.done() q.done()
set_state(return_oldwoman) set_state(return_oldwoman)
end end
@@ -250,14 +252,14 @@ quest new_quest_lv7 begin
when button or info begin when button or info begin
say_title(gameforge.new_quest_lv7._020_say_title) say_title(gameforge.new_quest_lv7._020_say_title)
say(gameforge.new_quest_lv7._092_say) -- collect flowers for the Bouquet say(gameforge.new_quest_lv7._092_say) -- collect flowers for the Bouquet
if pc.count_item(new_quest_lv7_drop1) < new_quest_lv7_AmountNeed1 then if pc.count_item(ITEM_FLOWER_RED) < NEED_RED then
say_reward(string.format(gameforge.new_quest_lv7._085_1_say_reward, new_quest_lv7_AmountNeed1 - pc.count_item(new_quest_lv7_drop1))) -- number of red flowers missing say_reward(string.format(gameforge.new_quest_lv7._085_1_say_reward, NEED_RED - pc.count_item(ITEM_FLOWER_RED))) -- number of red flowers missing
end end
if pc.count_item(new_quest_lv7_drop2) < new_quest_lv7_AmountNeed2 then if pc.count_item(ITEM_FLOWER_ORANGE) < NEED_ORANGE then
say_reward(string.format(gameforge.new_quest_lv7._085_2_say_reward, new_quest_lv7_AmountNeed2 - pc.count_item(new_quest_lv7_drop2))) -- number of orange flowers missing say_reward(string.format(gameforge.new_quest_lv7._085_2_say_reward, NEED_ORANGE - pc.count_item(ITEM_FLOWER_ORANGE))) -- number of orange flowers missing
end end
if pc.count_item(new_quest_lv7_drop3) < new_quest_lv7_AmountNeed3 then if pc.count_item(ITEM_FLOWER_YELLOW) < NEED_YELLOW then
say_reward(string.format(gameforge.new_quest_lv7._085_3_say_reward, new_quest_lv7_AmountNeed3 - pc.count_item(new_quest_lv7_drop3))) -- number of yellow flowers missing say_reward(string.format(gameforge.new_quest_lv7._085_3_say_reward, NEED_YELLOW - pc.count_item(ITEM_FLOWER_YELLOW))) -- number of yellow flowers missing
end end
end end
end end
@@ -265,12 +267,6 @@ quest new_quest_lv7 begin
state return_oldwoman begin -- BEGIN EDIT added by Arne 18Sept09, according to Mantis 0026063, state needed to set up quest state return_oldwoman begin -- BEGIN EDIT added by Arne 18Sept09, according to Mantis 0026063, state needed to set up quest
when enter or login begin when enter or login begin
new_quest_lv7_AmountNeed1 = 1
new_quest_lv7_AmountNeed2 = 1
new_quest_lv7_AmountNeed3 = 1
new_quest_lv7_drop1 = 30169 -- Blutrote Blume
new_quest_lv7_drop2 = 30170 -- Orangefarbene Blume
new_quest_lv7_drop3 = 30171 -- Duftende gelbe Blume
local v = find_npc_by_vnum(9006) local v = find_npc_by_vnum(9006)
send_letter(gameforge.new_quest_lv7._020_say_title) send_letter(gameforge.new_quest_lv7._020_say_title)
q.start() q.start()
@@ -294,21 +290,21 @@ quest new_quest_lv7 begin
when 9006.chat.gameforge.new_quest_lv7._020_say_title begin when 9006.chat.gameforge.new_quest_lv7._020_say_title begin
target.delete("__TARGET6__") target.delete("__TARGET6__")
say_title(gameforge.new_quest_lv7._012_say_title) say_title(gameforge.new_quest_lv7._012_say_title)
if pc.count_item(new_quest_lv7_drop1) < new_quest_lv7_AmountNeed1 if pc.count_item(ITEM_FLOWER_RED) < NEED_RED
or pc.count_item(new_quest_lv7_drop2) < new_quest_lv7_AmountNeed2 or pc.count_item(ITEM_FLOWER_ORANGE) < NEED_ORANGE
or pc.count_item(new_quest_lv7_drop3) < new_quest_lv7_AmountNeed3 then or pc.count_item(ITEM_FLOWER_YELLOW) < NEED_YELLOW then
say(gameforge.new_quest_lv7._110_say) say(gameforge.new_quest_lv7._110_say)
-- FIX: avoid negative numbers if player has more flowers than needed -- FIX: avoid negative numbers if player has more flowers than needed
say_reward(string.format(gameforge.new_quest_lv7._085_say_reward, math.max(0, new_quest_lv7_AmountNeed1 - pc.count_item(new_quest_lv7_drop1)))) say_reward(string.format(gameforge.new_quest_lv7._085_say_reward, math.max(0, NEED_RED - pc.count_item(ITEM_FLOWER_RED))))
say_reward(string.format(gameforge.new_quest_lv7._086_say_reward, math.max(0, new_quest_lv7_AmountNeed2 - pc.count_item(new_quest_lv7_drop2)))) say_reward(string.format(gameforge.new_quest_lv7._086_say_reward, math.max(0, NEED_ORANGE - pc.count_item(ITEM_FLOWER_ORANGE))))
say_reward(string.format(gameforge.new_quest_lv7._087_say_reward, math.max(0, new_quest_lv7_AmountNeed3 - pc.count_item(new_quest_lv7_drop3)))) say_reward(string.format(gameforge.new_quest_lv7._087_say_reward, math.max(0, NEED_YELLOW - pc.count_item(ITEM_FLOWER_YELLOW))))
say(gameforge.new_quest_lv7._081_say) say(gameforge.new_quest_lv7._081_say)
set_state(collect_flowers) set_state(collect_flowers)
else else
pc.remove_item(30169, 1) pc.remove_item(ITEM_FLOWER_RED, NEED_RED)
pc.remove_item(30170, 1) pc.remove_item(ITEM_FLOWER_ORANGE, NEED_ORANGE)
pc.remove_item(30171, 1) pc.remove_item(ITEM_FLOWER_YELLOW, NEED_YELLOW)
pc.give_item2(30172) -- flowers pc.give_item2(ITEM_BOUQUET) -- flowers
-- game.drop_item(30169, 1) -- game.drop_item(30169, 1)
say(gameforge.new_quest_lv7._115_say) say(gameforge.new_quest_lv7._115_say)
-- hier fehlt info wie man in das reich kommt -- hier fehlt info wie man in das reich kommt
@@ -405,10 +401,10 @@ quest new_quest_lv7 begin
end end
when 9006.chat.gameforge.new_quest_lv7._020_say_title with pc.get_map_index() == new_quest_lv7_DestMapIndex begin when 9006.chat.gameforge.new_quest_lv7._020_say_title with pc.get_map_index() == new_quest_lv7_DestMapIndex begin
if pc.count_item(30172) >= 1 then -- has flowers in inventory if pc.count_item(ITEM_BOUQUET) >= 1 then -- has flowers in inventory
target.delete("__TARGET3__") target.delete("__TARGET3__")
say_title(gameforge.new_quest_lv7._020_say_title) -- yellow say_title(gameforge.new_quest_lv7._020_say_title) -- yellow
pc.remove_item(30172, pc.count_item(30172)) pc.remove_item(ITEM_BOUQUET, pc.count_item(ITEM_BOUQUET))
say_title(pc.get_name()) say_title(pc.get_name())
say(gameforge.new_quest_lv7._140_say) say(gameforge.new_quest_lv7._140_say)
say_title(gameforge.new_quest_lv7._012_say_title) say_title(gameforge.new_quest_lv7._012_say_title)