- Mesaj
- 105
- Çözümler
- 4
- Beğeni
- 30
- Puan
- 699
- Ticaret Puanı
- 0
daha once calısıyordu sımdı calısmıyor cozemedım zamanını falan ayarlamak ıstıyorum.
@Whistle
Lua (Quest):
quest dragon_soul begin
state start begin
function fark_al(numb_1, numb_2)
if numb_1>=numb_2 then
return numb_1-numb_2
else numb_2>numb_1 then
return numb_2-numb_1
end
end
when levelup or letter with pc.level >= 30 begin
send_letter(gameforge.dragon_soul._1010_sendLetter)
local v = find_npc_by_vnum(20001)
if 0 != v then
target.vid("__TARGET__", v, mob_name(20001))
end
end
when info or button begin
say(gameforge.dragon_soul._1020_say)
end
when 20001.chat.gameforge.dragon_soul._1030_npcChat with pc.level >= 30 begin
target.delete("__TARGET__")
say_title(mob_name(20001))
say(gameforge.dragon_soul._1040_say)
set_state(state_learning)
end
end
state state_learning begin
when letter begin
send_letter(gameforge.dragon_soul._1050_sendLetter)
end
when info or button begin
say(gameforge.dragon_soul._1060_say)
end
when kill begin
if npc.is_pc() then
return
end
------------
if pc.get_map_index() >= 2400000 and pc.get_map_index() <= 2405000 or pc.get_map_index() >= 2350000 and pc.get_map_index() <= 2355000 then
return
else
-----------------------
if pc.getf("dragon_soul","drop_on") == 1 then
if pc.count_item(30270) < 15 then
if drop_gamble_with_flag("ds_drop") then
local level_ayari=15 -- Mob ile karakter arasında level farkı 10 dan fazla olursa item düşmez. Değiştirebilirsiniz.
if dragon_soul.fark_al(pc.get_level(), get_mob_level(npc.get_race())) <= level_ayari then
local oran_ver=50 -- İstediğiniz oranı verebilirsiniz. 1 ile 100 arasında, arttırdıkça düşme oranı da artar.
if number(1,100)<=oran_ver then
game.drop_item_with_ownership(30270)
end
end
end
end
end
-------------------------
end
------------
end
when 20001.chat.gameforge.dragon_soul._1050_sendLetter begin
say_title(mob_name(20001))
if pc.count_item(30270) >= 10 then
say(gameforge.dragon_soul._1070_say)
pc.remove_item(30270, 10)
ds.give_qualification()
char_log(pc.get_player_id(), 'DS_QUALIFICATION', 'SUCCESS')
pc.give_item2(50255)
local today = math.floor(get_global_time() / 7200)
pc.setf("dragon_soul", "eye_timestamp", today)
pc.setf("dragon_soul", "eye_left", 3)
set_state(state_farming)
else
say(gameforge.dragon_soul._1080_say)
end
end
end
state state_farming begin
when letter begin
send_letter(gameforge.dragon_soul._1090_sendLetter)
end
when info or button begin
say(string.format(gameforge.dragon_soul._1100_say, pc.getf("dragon_soul", "eye_left")))
end
when kill begin
if npc.is_pc() then
return
end
---------
if pc.get_map_index() >= 2400000 and pc.get_map_index() <= 2405000 or pc.get_map_index() >= 2350000 and pc.get_map_index() <= 2355000 then
return
else
------------------------------------
if pc.getf("dragon_soul","drop_on") == 1 then
if drop_gamble_with_flag("ds_drop") then
local eye_left = pc.getf("dragon_soul", "eye_left")
local haved_gemstone_number = pc.count_item(30270)
if eye_left > haved_gemstone_number / 10 then
local level_ayari=10 -- Mob ile karakter arasında level farkı 10 dan fazla olursa item düşmez. Değiştirebilirsiniz.
if dragon_soul.fark_al(pc.get_level(), get_mob_level(npc.get_race())) <= level_ayari then
local oran_ver=50 -- İstediğiniz oranı verebilirsiniz. 1 ile 100 arasında, arttırdıkça düşme oranı da artar.
if number(1,100)<=oran_ver then
game.drop_item_with_ownership(30270)
end
end
end
end
end
----------------------------
end
-----------
end
when 30270.pick begin
local eye_left = pc.getf("dragon_soul", "eye_left")
if eye_left <= 0 then
return
end
if pc.count_item(30270) >= 10 then
pc.setf("dragon_soul", "eye_left", eye_left - 1)
pc.remove_item(30270, 10)
pc.give_item2(50255)
if 1 == eye_left then
notice_multiline(gameforge.dragon_soul._1110_notice, notice)
set_state(state_closed_season)
end
end
end
when 20001.chat.gameforge.dragon_soul._1120_npcChat begin
say_title(mob_name(20001))
local today = math.floor(get_global_time() / 7200)
if today == pc.getf("dragon_soul", "eye_timestamp") then
say(gameforge.dragon_soul._1130_say)
else
say(gameforge.dragon_soul._1140_say)
pc.setf("dragon_soul", "eye_timestamp", today)
pc.setf("dragon_soul", "eye_left", 3)
pc.setf("dragon_soul","drop_on",1)
end
end
end
state state_closed_season begin
when letter begin
send_letter(gameforge.dragon_soul._1150_sendLetter)
end
when info or button begin
say(gameforge.dragon_soul._1160_say)
local today = math.floor(get_global_time() / 7200)
if today == pc.getf("dragon_soul", "eye_timestamp") then
say(gameforge.dragon_soul._1170_say)
else
say(gameforge.dragon_soul._1180_say)
end
end
when 20001.chat.gameforge.dragon_soul._1090_sendLetter begin
say_title(mob_name(20001))
local today = math.floor(get_global_time() / 7200)
if today == pc.getf("dragon_soul", "eye_timestamp") then
say(gameforge.dragon_soul._1130_say)
else
say(gameforge.dragon_soul._1140_say)
pc.setf("dragon_soul", "eye_timestamp", today)
pc.setf("dragon_soul", "eye_left", 3)
set_state(state_farming)
end
end
end
-- deprecated states. so, jump to new state.
state state_1 begin
when login begin
set_state(state_learning)
end
end
state state_2 begin
when login begin
set_state(state_learning)
end
end
state state_3 begin
when login begin
set_state(state_closed_season)
end
end
end
@Whistle
En son bir moderatör tarafından düzenlenmiş: