Refactored directory structure, added game files from TMP
This commit is contained in:
112
gamefiles/locale/english/quest/ingame_message.quest
Normal file
112
gamefiles/locale/english/quest/ingame_message.quest
Normal file
@ -0,0 +1,112 @@
|
||||
--[[
|
||||
This quest send the player a letter with Information about new Stuff
|
||||
At the Moment we have 3 possible options:
|
||||
1. Happy Hour in the shop
|
||||
2. New stuff in the shop
|
||||
3. security announce
|
||||
|
||||
Concept side: https://wiki.gameforge.de/bin/view/MMO/Metin2/ConceptIngameAnnounce
|
||||
Workflow ticket: https://mantis-i.gameforge.de/view.php?id=76862
|
||||
]]
|
||||
|
||||
quest ingame_message begin
|
||||
state start begin
|
||||
|
||||
-- return the unique message id for campaign
|
||||
function get_message_id()
|
||||
return (game.get_event_flag("message_id"))
|
||||
end --end function get_message_id
|
||||
|
||||
-- return which kind of message appear
|
||||
function get_message_type()
|
||||
return (game.get_event_flag("message_type"))
|
||||
end --end function get_message_type
|
||||
|
||||
-- return the displayed item vnum
|
||||
function get_announce_vnum()
|
||||
return (game.get_event_flag("message_item_vnum"))
|
||||
end --end function get_announce_vnum
|
||||
|
||||
-- return the vnum that can is the gift
|
||||
function get_gift_vnum()
|
||||
return (game.get_event_flag("message_gift_vnum"))
|
||||
end --end function get_gift_vnum
|
||||
|
||||
--[[
|
||||
Provide a duration time to have a option to show options often
|
||||
Value should be hours ;)
|
||||
]]
|
||||
function get_message_duration()
|
||||
local duration = game.get_event_flag("message_duration")
|
||||
-- if not duration is set, we will implement the standard 24h duration
|
||||
if duration == 0 then
|
||||
duration = 24
|
||||
end
|
||||
|
||||
return duration
|
||||
end --end function get_message_id
|
||||
|
||||
when info or button begin
|
||||
local message_type = ingame_message.get_message_type()
|
||||
if message_type == 1 then
|
||||
--local happyhour_start = game.get_event_flag("message_happyhour_start")
|
||||
--local happyhour_end = game.get_event_flag("message_happyhour_end")
|
||||
--say_size(250, 250)
|
||||
-- say_show_item(70029)
|
||||
-- Eine günstige Gelegenheit
|
||||
say_important_title(gameforge.ingame_message._010_sayTitle)
|
||||
--say_important(string.format("Heute von %s bis %s Happy Hour!", happyhour_start, happyhour_end))
|
||||
say("")
|
||||
-- Eine neue Aktion ist im Item-Shop gestartet! Verpasse nicht diese günstige Gelegenheit und besuche direkt den Item-Shop.
|
||||
say_important(gameforge.ingame_message._020_say)
|
||||
local c = select(gameforge.locale.guild.yes, gameforge.locale.guild.no)
|
||||
if 2 == c then
|
||||
return
|
||||
else
|
||||
game.open_web_mall()
|
||||
end
|
||||
elseif message_type == 2 then
|
||||
local new_item_vnum = ingame_message.get_announce_vnum()
|
||||
say_important_title(gameforge.ingame_message._030_sayTitle)
|
||||
say_item_vnum(new_item_vnum) -- icon of item
|
||||
say_important(gameforge.ingame_message._040_say)
|
||||
-- We will provide the user the option to select the gift
|
||||
local gift_vnum = ingame_message.get_gift_vnum()
|
||||
local message_id = ingame_message.get_message_id()
|
||||
local gift_check = pc.getqf("gift_" .. message_id .. "_" ..gift_vnum)
|
||||
|
||||
if gift_check < 1 and gift_vnum != 0 then
|
||||
wait()
|
||||
-- Ein Geschenk der Götter
|
||||
say_title(gameforge.important_message._050_sayTitle)
|
||||
say(gameforge.ingame_message._060_say)
|
||||
local gift = select(gameforge.ingame_message._070_select, gameforge.ingame_message._080_select)
|
||||
if gift == 1 then
|
||||
pc.give_item2(gift_vnum, 1)
|
||||
pc.setqf("gift_"..message_id.."_"..gift_vnum, 1)
|
||||
end -- gift vergeben
|
||||
end -- gift check
|
||||
|
||||
else
|
||||
say_important_title("GM News")
|
||||
say_important("Du wirst nie nach Login gefragt")
|
||||
end
|
||||
end --endbegin letter
|
||||
|
||||
when login with ingame_message.get_message_type() > 0 begin
|
||||
local message_type = ingame_message.get_message_type()
|
||||
local duration_time = ingame_message.get_message_duration()
|
||||
|
||||
if get_time() > pc.getqf("duration") then
|
||||
pc.setqf("duration",get_time()+60*60*duration_time)--------------24 Stunden
|
||||
if message_type == 1 then
|
||||
send_letter(gameforge.ingame_message._010_sayTitle)
|
||||
elseif message_type == 2 then
|
||||
send_letter(gameforge.ingame_message._030_sayTitle)
|
||||
else
|
||||
send_letter("GM News")
|
||||
end -- endif
|
||||
end -- endif duration
|
||||
end -- endif
|
||||
end -- endbegin state start
|
||||
end -- endbegin quest
|
Reference in New Issue
Block a user