UO-Dev Arama

 



İçerde : 1 misafir, 0 üye : --- Sayfalar: 1
Yazar

Epihaltes


UO-Dev Üyesi
Skill Title: Journeyman
Online durumu
Toplam Mesaj: 156
Oyun Tarzı: Rp
Emulatör: 0.57
Tecrübe: Scripter
Yaş: 27
Mesaj #86611   06-09-2015 14:39 GMT    
        
Daha önce başka platformda paylaştığım burda paylaşmadığımı fark ettim.


Kod:
[defname questlog]
// turu 1 getirme
// turu 2 kesme
quest_gorev 14 // burada kaç tane görev olduğunu yazıyoruz.

quest_1_name Dark skeleton // Görevin adı
quest_1_aciklama Harm görevlerine hazırmısın, 20 tane dark skeleton kes ödülleri al // Görev açıklama
quest_1_turu 2 // En üstteki turu olarak belirttim
quest_1_level 1 // Burası level sunucusu için hazırlanmıştır.
quest_1_npc c_gold // Burada hangi npcyi keseceğini yada hangi itemi isteyeceğini _npc yazdığına aldanmayın
quest_1_sayi 20 // Burada kaçtane gerektiğini
quest_1_verilis 2 // Bu kısım ise seçmeli olarak ayarlanmıştır 2 ise hepsini alır 1 ise seçer yada tam terside olabilir hatırlamıyorum :)
quest_1_odulsayi 25000,1,1,1 // alttaki oduliteme göre sıralayın kaçtane eşya varsa ona göre virgülleri koyun
quest_1_odulitem i_gold,i_bag_power,i_kryss_power,i_bow_poison // yukarıdaki açıklamaya göre ayarlayın.

quest_2_name Moloch
quest_2_aciklama Benim için 10 tane Moloch kes sana süpriz öldüllerim var.
quest_2_turu 2 //
quest_2_level 1
quest_2_npc c_moloch
quest_2_sayi 10
quest_2_odulsayi 35000,1
quest_2_verilis 2
quest_2_odulitem i_gold,i_deed_hediye

quest_3_name Daemon bone
quest_3_aciklama Benim için 50 tane Daemon bone getir. Unutma cesedi parçalamalısın.
quest_3_turu 1 //
quest_3_npc i_reag_daemon_bone
quest_3_level 1
quest_3_sayi 50
quest_3_odulsayi 45000,1
quest_3_odulitem i_gold,i_deed_hediye

quest_4_name Hydra
quest_4_aciklama Benim için 30 tane Hydra kes aşağıdaki ödülleri kap!
quest_4_turu 2 //
quest_4_npc c_hydra
quest_4_level 1
quest_4_sayi 30
quest_4_odulsayi 55000,1,1
quest_4_odulitem i_gold,i_bag_vanq,i_deed_hediye

quest_5_name Kraken
quest_5_aciklama Shame de krakenler doluşmuş. Bu görevi bitirirsen shame birazda olsa rahatlayabilir.?
quest_5_turu 2 //
quest_5_npc c_m_kraken
quest_5_level 1
quest_5_sayi 50
quest_5_verilis 1
quest_5_odulsayi 65000,1,1,1
quest_5_odulitem i_gold,i_deed_hediye,i_deed_hediye,i_deed_hediye


quest_6_name Minotaur Scout
quest_6_aciklama Raid dungeon Minotaur Scout kes yada kesen bi party de ol.
quest_6_turu 2 //
quest_6_npc c_minotaur_Scout
quest_6_level 1
quest_6_sayi 1
quest_6_verilis 1
quest_6_odulsayi 125000,1,1,1
quest_6_odulitem i_gold,i_deed_hediye,i_deed_hediye,i_deed_hediye

quest_7_name Reaper Redux
quest_7_aciklama Raid dungeon Reaper Redux  kes yada kesen bi party de ol.
quest_7_turu 2 //
quest_7_npc c_reaper_redux
quest_7_level 1
quest_7_sayi 1
quest_7_verilis 1
quest_7_odulsayi 125000,1,1,1
quest_7_odulitem i_gold,i_deed_hediye,i_deed_hediye,i_deed_hediye

quest_8_name Chief Paroxysmus
quest_8_aciklama Raid dungeon Chief Paroxysmus kes yada kesen bi party de ol.
quest_8_turu 2 //
quest_8_npc c_chief_Paroxysmus
quest_8_level 1
quest_8_sayi 1
quest_8_verilis 1
quest_8_odulsayi 125000,1,1,1
quest_8_odulitem i_gold,i_deed_hediye,i_deed_hediye,i_deed_hediye

quest_9_name the Daemon Knight
quest_9_aciklama Ortalıkta iblisler kol geziyor. Buna "bi dur" demenin vakti geldi.
quest_9_turu 2 //
quest_9_npc c_daemon_w_sword
quest_9_level 1
quest_9_sayi 75
quest_9_verilis 1
quest_9_odulsayi 125000,1,1,1
quest_9_odulitem i_gold,i_deed_hediye,i_deed_hediye,i_deed_hediye

quest_10_name Warrior Charge
quest_10_aciklama Eğer bir warrior isen vereceğim parşomene ihtiyacın olabilir! Roa Dungeon ziyaret et
quest_10_turu 2 //
quest_10_npc c_treefellow
quest_10_level 1
quest_10_sayi 10
quest_10_verilis 1
quest_10_odulsayi 20000,2
quest_10_odulitem i_gold,i_warrior_sarj

quest_11_name Reptalon
quest_11_aciklama Reptalonu özgür bırakmak istiyorsan bu görevi tamamla! Roa Dungeon ziyaret et
quest_11_turu 2 //
quest_11_npc c_Tormented_Minotaur
quest_11_level 1
quest_11_sayi 200
quest_11_verilis 1
quest_11_odulsayi 10000,1
quest_11_odulitem i_gold,i_pet_reptalon

quest_12_name Magery Power
quest_12_aciklama Solen Queen baskını! Yaratığı, Destard Dungeon kapısının güneyinde (haritanın "S" yönü) bulabilirsin.
quest_12_turu 2 //
quest_12_npc c_fire_ant_queen
quest_12_level 1
quest_12_sayi 200
quest_12_verilis 2
quest_12_odulsayi 10000,1,1
quest_12_odulitem i_gold,i_p_harm,i_p_fireball

quest_13_name Repeating Crossbow
quest_13_aciklama En iyi yay ustası Eril tarafından yapılan Repeating Crossbow seni bekliyor. Bölge Fire Dungeon
quest_13_turu 2 //
quest_13_npc c_exodus,c_titan
quest_13_level 1
quest_13_sayi 20,30
quest_13_verilis 1
quest_13_odulsayi 10000,1
quest_13_odulitem i_gold,i_crossbow_repeating

quest_14_name Green Armour
quest_14_aciklama Yew Passage bölgesinde Arcane Daemon istilası kol geziyor. Benim için onları yok etmelisin. Yaratığın içinden çıkan Green isimli logları getirirsen, sana özel bir hediyem de olacaktır.
quest_14_turu 1 //
quest_14_npc i_green_log
quest_14_level 1
quest_14_sayi 120
quest_14_verilis 1
quest_14_odulsayi 10000,1
quest_14_odulitem i_gold,i_set_dragon


Menüler

Kod:
[dialog d_quest]
0,20
nomove
local.uzat 80
for 1 <f_array_lenght <def.quest_<dtag.quests>_npc>>
local.uzat +=20
endfor

for 1 <f_array_lenght <def.quest_<dtag.quests>_odulitem>>
local.uzat +=20
endfor

bozobag 10,10,300,300
dorigin 0 30

if (<def.quest_<dtag.quests>_turu> == 1)
for 1 <f_array_lenght <def.quest_<dtag.quests>_npc>>
dtext 30 *20 0481 Eşya: <f_moonsep <dlocal._for>,<ddef.quest_<dtag.quests>_sayi>> adet <serv.itemdef.<f_moonsep <dlocal._for>,<def.quest_<dtag.quests>_npc>>.name> getir
endfor
endif


if (<def.quest_<dtag.quests>_turu> == 2)
for 1 <f_array_lenght <def.quest_<dtag.quests>_npc>>
if <tag0.questsa<dlocal._for>> > 0
dtext 30 *20 0481 Yrtk: <serv.chardef.<f_moonsep <dlocal._for>,<def.quest_<dtag.quests>_npc>>.name> <eval <f_moonsep <dlocal._for>,<def.quest_<dtag.quests>_sayi>>-<dtag0.questsa<dlocal._for>>> / <eval <f_moonsep <dlocal._for>,<def.quest_<dtag.quests>_sayi>>>
else
dtext 30 *20 0850 Yrtk: <serv.chardef.<f_moonsep <dlocal._for>,<def.quest_<dtag.quests>_npc>>.name> tamamlandı
endif
endfor
endif

if !(<ddef.quest_<dtag.quests>_taraf> == 1)
for 1 <f_array_lenght <def.quest_<dtag.quests>_odulitem>>
dtext 30 *20 0481 Ödül: <eval <f_moonsep <dlocal._for>,<def.quest_<dtag.quests>_odulsayi>>> <serv.itemdef.<f_moonsep <dlocal._for>,<def.quest_<dtag.quests>_odulitem>>.name> kazan!
endif
endfor



[dialog d_quest_sec]
305,20
nomove

local.boy 40
local.boys <eval <def.quest_gorev>*20>
local.boy +=<dlocal.boys>
bozobag 10,10,250,270
dtext 95 13 042 Görev seçim

local.loop=0
local.page=1
page 1
for 1 <def.quest_Gorev>
if (<local.loop> > 9)
local.loop=0
button 220 245 015e1 015e5 0 <eval <local.page>+1> 1
local.page += 1
page <dlocal.page>
button 35 245 015e3 015e7 0 <eval <local.page>-1> 1
endif

local.loop +=1

dtext 60 <eval 20+<hval <local.loop>*20>> 0481 <def.quest_<dlocal._for>_name>
dtext 175 <eval 20+<hval <local.loop>*20>> 0850 <quest_turu <def.quest_<dlocal._for>_turu>>
button 30 <eval 20+<hval <local.loop>*20>> 021 022 1 0 <dlocal._for>
endfor

[dialog d_quest_sec button]
on 0
src.dialogclose d_quest_log
on 1 100
if <src.tag0.questsi>
src.sysmessage @,,1 Tamamlanmayı bekleyen görev var
src.dialogclose d_quest_log
return 1
else
src.tag0.quests <dargn>
src.tag0.questsi
src.sysmessage @,,1 Yeni göreviniz: <def.quest_<dargn>_name>
src.dialogclose d_quest_log
src.dialog d_quest_sec
src.sdialog d_quest_log
endif

[dialog d_quest_log]
0,20
nomove
local.uzat 160
for 1 <f_array_lenght <def.quest_<dtag.quests>_npc>>
local.uzat +=20
endfor

for 1 <f_array_lenght <def.quest_<dtag.quests>_odulitem>>
local.uzat +=20
endfor

bozobag 10,10,300,<eval <dlocal.uzat>>
// alphablack 20 20 280 <eval <dlocal.uzat>-20>
dtext 145 13 042 Görev
if (<ddef.quest_<dtag.quests>_level> >= 1)
if (<level> >= <ddef.quest_<dtag.quests>_level>)
dtext 30 35 0455 <def.quest_<dtag.quests>_name>
dhtmlgump 30 55 260 75 1 1 <def.quest_<dtag.quests>_aciklama>

dorigin 0 110
if (<def.quest_<dtag.quests>_turu> == 1)
for 1 <f_array_lenght <def.quest_<dtag.quests>_npc>>
dtext 30 *20 0481 Eşya: <f_moonsep <dlocal._for>,<ddef.quest_<dtag.quests>_sayi>> adet <serv.itemdef.<f_moonsep <dlocal._for>,<def.quest_<dtag.quests>_npc>>.name> getir
endif
endfor

if (<def.quest_<dtag.quests>_turu> == 2)
for 1 <f_array_lenght <def.quest_<dtag.quests>_npc>>
dtext 30 *20 0481 Yrtk: <eval <f_moonsep <dlocal._for>,<def.quest_<dtag.quests>_sayi>>> adet <serv.chardef.<f_moonsep <dlocal._for>,<def.quest_<dtag.quests>_npc>>.name> kes
endif
endfor
if !(<ddef.quest_<dtag.quests>_taraf> == 1)
for 1 <f_array_lenght <def.quest_<dtag.quests>_odulitem>>
dtext 30 *20 0481 Ödül: <eval <f_moonsep <dlocal._for>,<def.quest_<dtag.quests>_odulsayi>>> <serv.itemdef.<f_moonsep <dlocal._for>,<def.quest_<dtag.quests>_odulitem>>.name> kazan!
endif
endfor
if (<ddef.quest_<dtag.quests>_taraf> == 1)
dtext 30 160 0481 Ödül: Taraf seçimi
endif

if !(<tag0.questsi>)
dtext 50 <eval <dlocal.uzat>-20> 0481 Kabul ediyorum
button 30 <eval <dlocal.uzat>-17> 2117 2118 1 0 1
dtext 180 <eval <dlocal.uzat>-20> 0845 Reddediyorum
button 160 <eval <dlocal.uzat>-17> 2117 2118 1 0 0
else
dtext 50 <eval <dlocal.uzat>-20> 0481 Görevi tamamla
button 30 <eval <dlocal.uzat>-17> 2117 2118 1 0 2
dtext 180 <eval <dlocal.uzat>-20> 0845 İptal et
button 160 <eval <dlocal.uzat>-20> 2117 2118 1 0 3
endif

else
dtext 30 120 0845 Şuan sizin için hazırlanmış başka görev yok.
endif
else
dtext 80 120 0845 Başka görev bulunmuyor.
endif


[dialog d_quest_log button]
on 0
src.dialogclose d_quest_Sec

on 1
if (<def.quest_<dtag.quests>_turu> == 2)
src.events e_quest_log
endif
for 1 <f_array_lenght <def.quest_<dtag.quests>_npc>>
src.tag0.quest<dlocal._for> <f_moonsep <dlocal._for>,<def.quest_<dtag.quests>_npc>>
src.tag0.questsa<dlocal._for> <f_moonsep <dlocal._for>,<def0.quest_<dtag.quests>_sayi>>
endfor
src.tag0.questsi 1
src.sysmessage @,,1 <def.quest_<src.dtag0.quests>_name> görevini kabul ettiniz.
src.dialogclose d_quest_Sec

on 2
local.sayi <f_array_lenght <def.quest_<dtag.quests>_npc>>
if (<def.quest_<dtag.quests>_turu> == 1)
for a 1 <f_array_lenght <def.quest_<dtag.quests>_npc>>
for <eval <SRC.findlayer.21.rescount>-1> 0
ref1=<uid.<SRC.findlayer.21>.findcont.<dlocal._for>>
if (<ref1.baseid> == <f_moonsep <dlocal.a>,<def.QUEST_<dtag.quests>_npc>>)
if (<ref1.amount> < <f_moonsep <dlocal.a>,<def.QUEST_<dtag.quests>_sayi>>)
SRC.SYSMESSAGE @,,1 Tamamlanmamış. Gerekli malzeme <eval <f_moonsep <dlocal.a>,<def.QUEST_<dtag.quests>_sayi>>> <basharfbuyuk <ref1.name>>.
SRC.SYSMESSAGE @,,1 Sendeki miktar: <ref1.amount>
else
local.p ++
if (<dlocal.p> == <f_array_lenght <def.quest_<dtag.quests>_npc>>)
src.odulver
src.quest_effect
//else
//src.sysmessage @,,1 Tamamlanmamış.
endif
endif
// else
// src.sysmessage @,,1 Gerekli malzemeler yok
// return 1
endif
endfor
endfor
endif



if (<def.quest_<dtag.quests>_turu> == 2)
for 1 <f_array_lenght <def.quest_<dtag.quests>_npc>>
if (<tag0.questsa<dlocal._for>> > 0)
src.sysmessage @,,1 <serv.chardef.<tag0.quest<dlocal._for>>.name> tamamlanmamış
else
local.p ++
if (<dlocal.p> == <f_array_lenght <def.quest_<dtag.quests>_npc>>)
src.odulver
src.quest_Effect
endif
endif
endfor
endif
src.dialogclose d_quest_Sec

on 3
src.tag0.questsi
src.sysmessage @,,1 <def.quest_<src.dtag0.quests>_name> görevi iptal edildi.
src.dialogclose d_quest_Sec

[dialog d_quest_log_3]
10,10
local.uzat 30
for 1 <eval <f_array_lenght <def.quest_<dtag.quests>_odulitem>>-1>
local.uzat +=25
endfor

bozobag 10,10,200,<dlocal.uzat>
// alphablack 20 20 180 <eval <dlocal.uzat>-20>
dorigin 0 15
for 1 <eval <f_array_lenght <def.quest_<dtag.quests>_odulitem>>-1>
dtext 50 *25 0481 <serv.itemdef.<f_moonsep <eval <dlocal._for>+1>,<def.quest_<dtag.quests>_odulitem>>.name>
button 30 *0 2117 2118 1 0 <dlocal._for>
endfor

[dialog d_quest_log_3 button ]
on 1 10
local.button <eval <dargn>+1>
newgold <f_moonsep 1,<def.quest_<dtag.quests>_odulsayi>>

serv.newitem <f_moonsep <dlocal.button>,<def.quest_<dtag.quests>_odulitem>>
new.amount <f_moonsep <dlocal.button>,<def.quest_<dtag.quests>_odulsayi>>
src.bounce <new>
src.tag0.questsi
src.events -e_quest_log
src.dialogclose d_quest_log_2

[dialog d_quest_log_2]
10,10

alphablack2 10 10 210 55
if (<def.quest_<dtag.quests>_turu> == 2)
for 1 <f_array_lenght <def.quest_<dtag.quests>_npc>>
if <dtag.questsa<dlocal._for>> > 0
dtext 20 *25 0481 Yrtk: <serv.chardef.<tag0.quest<dlocal._for>>.name> <dtag.questsa<dlocal._for>>
else
dtext 30 *25 0481 Yrtk: <serv.chardef.<tag0.quest<dlocal._for>>.name> Tamam!
endif
endif
endfor




Fonksiyonlar
Kod:
[FUNCTION f_array_lenght]
return <dargv>

[function f_moonsep]
if <argv[0]> == 0
return <eval <argv> - 1>
else
return <argv[<argv[0]>]>
endif

[function quest_Effect]
forchars 5
if <id> == c_quester_humanm
anim 2
sayua 07a1,6,6,3 Quest başarıyla tamamlanmıştır.
endif
endfor

[function quest_turu]
if <argv0> == 1
return Eşya getir
elif <argv0> == 2
return Kes gel
else
return Tanımsız
endif

[function odulver]
if (<ddef.quest_<dtag.quests>_taraf> == 1)
sdialog d_quest_taraf
return 1
endif
if !(<ddef.quest_<dtag.quests>_verilis> == 2)
for 1 <f_array_lenght <def.quest_<dtag.quests>_odulitem>>
if <f_strm <f_moonsep <dlocal._for>,<def.quest_<dtag.quests>_odulitem>>,i_gold>
newgold <f_moonsep <dlocal._for>,<def.quest_<dtag.quests>_odulsayi>>
else
serv.newitem <f_moonsep <dlocal._for>,<def.quest_<dtag.quests>_odulitem>>
new.amount <f_moonsep <dlocal._for>,<def.quest_<dtag.quests>_odulsayi>>
src.bounce <new>
new.resendtooltip 1
src.update
endif
if (<def.quest_<dtag.quests>_turu> == 1)
// for a 1 <f_array_lenght <def.quest_<dtag.quests>_sayi>>
src.consume <eval <f_moonsep <dlocal._for>,<def.quest_<dtag.quests>_sayi>>> <f_moonsep <dlocal._For>,<def.quest_<dtag.quests>_npc>>
// endfor
// src.say @,,1 <eval <f_moonsep <eval <dlocal._for>-1>,<def.quest_<dtag.quests>_sayi>>> <f_moonsep <dlocal._for>,<def.quest_<dtag.quests>_npc>>
endif
endfor
else
src.dialogclose d_quest_log_3
src.dialog d_quest_log_3
return 1
endif
//src.tag0.quests +=1
src.tag0.questsi
src.events -e_quest_log
src.dialogclose d_quest_log_2

[events e_quest_log]
on=@Kill


Ve npc

Kod:
[CHARDEF c_quester_humanm]
ID=c_satyr
NAME=Chander
CAN=MT_USEHANDS|MT_EQUIP
CATEGORY=Civilized
SUBSECTION=Questers
DESCRIPTION=Human Male

ON=@Create
FLAGS=statf_invul
NPC=BRAIN_HUMAN
DEX=10
INT=10
STR=10

on=@Click
message @07a1,3 [ the Quester]
message @44,,1 <name>
return 1

on=@Dclick
src.level 1
if !<src.tag0.quests>
src.tag0.quests 1
endif
if (<distance <src>> > 3)
src.sysmessage @,,1 Uzaksınız!
return 1
else
src.dialog d_quest_log
src.dialog d_quest_Sec
return 1
endif



Event bu kısım önemli!

Vereceğim eventi oyundaki bütün npclere vermelisiniz. Sphere.ini de ayarlanmış olan npclerin eventine ekleyin!

Kod:
on=@Death
ref2=<act>
if <ref2.isplayer>
if !(<isevent.e_boss>)
if <findid.i_gold>
ref2.tag0.param +=<findid.i_gold.amount>
ref2.say @07a1,3 +<findid.i_gold.amount> ,
ref2.sysmessage @,,1 Yeni bakiyeniz <f_bolukayir <ref2.dtag.param>> kadar oldu.
findid.i_gold.remove
endif
endif
if (<ref2.isinparty>)
for 0 <eval <ref2.party.members>-1>
ref1=<ref2.party.member.<dlocal._for>>
//if !(<ref1> == <src.uid>)
if (<ref1.distance <ref2>> < 19)
if (<ref1.hits> > 0)
if (<ref1.tag0.questsi>)
if (<ddef.quest_<ref1.dtag.quests>_turu> == 2)
for a 1 <f_array_lenght <def.quest_<ref1.dtag.quests>_npc>>
if <f_strm <ref1.tag0.quest<dlocal.a>>,<id>>
if (<ref1.tag0.questsa<dlocal.a>> >= 1)
ref1.tag0.questsa<dlocal.a> -=1
trysrc <ref1> uid.<ref1>.dialogclose d_quest_log_2
trysrc <ref1> uid.<ref1>.dialog d_quest_log_2
endif
endif
endfor
endif
endif
endif
endif
//endif
endfor
else
if <ref2.tag0.questsi>
for 1 <f_array_lenght <def.quest_<ref2.dtag.quests>_npc>>
if (<id> == <f_moonsep 1,<ref2.tag0.quest<dlocal._for>>>)
ref2.tag0.questsa<dlocal._for> -=1
if (<ref2.tag0.questsa<dlocal._for>> > 0)
trysrc <ref2> uid.<ref2>.dialogclose d_quest_log_2
trysrc <ref2> uid.<ref2>.dialog d_quest_log_2
else
ref2.sysmessage @,,1 <serv.chardef.<ref2.tag0.quest<dlocal._for>>.name> Görevi tamamlandı.
trysrc <ref2> uid.<ref2>.dialogclose d_quest_log_2
trysrc <ref2> uid.<ref2>.dialog d_quest_log_2
endif
endif
endif
endfor
endif
endif


 TheRaskol
Düzeltti umarım.

Sayfalar: 1



Benzer Konular

KonularMesajlarSon gönderenTarih
Evil GM (NPC/BOSS) sistemi6Wasabi-san15-12-2018
Donate Sistemi İçin Özgün Eşyalar?41Alp15-10-2018
Farklı bir healing sistemi [script istiyorum]3Wasabi-san20-09-2018
Stable sistemi yardım9MirroR27-04-2018
Küfür Sistemi Undefined keyword13paris1618-04-2018


Keywords:

ultima online, RunUO, ultima online download, sphere scripting, role play, uo grafik, second age ultima, uo loop, macroman, pvp server, server kurulumu, sphere, multool, ml mulls, 56b 55r 55i, htmlgumps, client 4x, client edit, sphere release, osi, rp server, sunucular, ghost mouse, inside uo, kingdom reborn, stygian abyss, uo nasıl oynanır, mondain's legacy, age of shadows, world build, grandmaster, ultima online pvp, player dosyaları, ultima online indir, frp game, RunUO 1.0.0, razor, uo rice, hue editör, skill tools, ultima online patch, axis, world build, verdata, verdata patcher, map editör, gump editör, mul patcher, aos mulls, scriptler, anim edit, anim publish, hues mul, hosting vps, event dialog, account sistemi, skill gain, static yapımı,