Merhaba Arkadaşlar Sorunumu Özetleyeyim. Cantamda Hazine haritam var. Açtıktan sonra İptal Edemiyorum Bununla ilgili Yardımlarınızı Bekliyorum. Aslında İstedigim Dclick olarak iptali degğilde Scriptin İçinde Dialog var Dialog "Hazineyi bulamadım. Haritayı sil!" Şeklinde , Silinmese Sadece Aramaktan Vazgeçsem ?
2. Sıkıntı ise Hazineyi Buldugumda Sadece Shovel Kullanarak hazineyi açmak istiyorum. Haritaya 2 kez bastıgımda Shovel Kullanman Gerek tarzı bir yazı yazmasını istiyorum.. Script hem Shovel hemde Haritayı Dclick olarak algılıyor. Harita Dclicklendiginde Bir Sorun oluşuyor Bu sebepten Sadece Shovel Kullandırmak istiyorum.
Şimdiden Teşekkür ederim Yardımcı Olan Arkadaşlara..
[itemdef i_kara_hazine_harita]
DEFNAME=i_kara_hazine_harita
NAME=Hazine haritası (Kara)
ID=i_map_rolled
TYPE=T_SCRIPT
FLIP=1
VALUE=30
WEIGHT=0.0
ON=@Create
TAG0.DURUM=Çözülmemiş,0,0
COLOR=07A1
ON=@DESTROY
REF1 <F_ARRAY <TAG0.DURUM>,3>
REF2=<REF1.TAG0.KONTROL>
IF (<CONT>)
IF (<REF1>)
IF (<REF2>)
REF2.REMOVE
ENDIF
REF1.ARROWQUEST
REF1.TAG0.KONTROL=
REF1.TAG0.KARA_HAZINE=
ENDIF
ENDIF
on=@click
REF1 <F_ARRAY <TAG0.DURUM>,3>
REF2=<REF1.TAG0.KONTROL>
IF (<REF2>)
MSG_BEYAZ (<REF2.REGION.NAME> - <REF2.P>)
ENDIF
MSG_KIRMIZI [<F_ARRAY <TAG0.DURUM>,1>]
MSG_BEYAZ <name>
return 1
on=@dclick
REF1 <F_ARRAY <TAG0.DURUM>,3>
REF2=<REF1.TAG0.KONTROL>
IF !(<SRC.ISINPACK <UID>>)
SRC.SYS_KIRMIZI <DEF.UNPACKMSG>
return 1
elseif !(<src.cartography> >= 99.9)
src.sys_kirmizi Haritayı okumak için 99.9 Cartography becerisine sahip olmalısınız.
return 1
elseif !(<src.findid.i_shovel>)
src.sys_kirmizi Yanınızda kürek (shovel) bulunmuyor.
RETURN 1
elseif (<src.tag0.kara_hazine>)
if (<tag0.p>)
ref3=<uid>
foritems 10
if (<baseid> == i_kara_hazine_kontrol)
if !(<tag0.bulan> == <src.uid>)
src.sys_kirmizi Bu hazineyi siz bulmamışsınız.
return 1
endif
endif
if (<baseid> == i_kara_hazine_kontrol)
if (<tag0.bulan> == <src>)
REF1 <SRC.TARG.TAG0.HARITA_SAHIP>
SERV.NEWNPC C_KARA_HAZINE_SAHIBI
NEW.P <P>
NEW.HOME <P>
NEW.FIX
NEW.HOMEDIST {3 5}
NEW.EVENTS +E_KARA_HAZINE_SAHIBI
NEW.EVENTS -E_KARA_HAZINE_KORUMA
NEW.TAG0.HARITA_SAHIP <REF1>
LOCAL.SAHIP <NEW.UID>
LOCAL.LEVEL <R1,2>
LOCAL.COUNT <ARRAYCOUNT <DEF.LEVEL_<DLOCAL.LEVEL>>>
DORAND 3
NEW.EMOTE Kim benim hazineme göz dikti!
NEW.EMOTE Hazineme el sürmeye cesaret edende kim?
NEW.EMOTE Seni pişman edeceğim.
NEW.EMOTE <NEW.NAME> ile baş edemezsin.
NEW.EMOTE Demek hazinemi ele geçirmek istiyorsun <SRC.NAME>.
ENDDO
FOR 1 <R4,7>
//SERV.NEWNPC <f_Array <def.level_<R1,2>>,<R1,33>>
SERV.NEWNPC <F_ARRAY <DEF.LEVEL_<DLOCAL.LEVEL>>,<R1,<DLOCAL.COUNT>>>
NEW.P <P>
NEW.TAG0.SAHIBI <LOCAL.SAHIP>
NEW.HOME <P>
NEW.FIX
NEW.HOMEDIST {3 5}
NEW.EVENTS +E_KARA_HAZINE_KORUMA
SERV.NEWITEM i_npcfix,1,<new>
ENDFOR
REF3.TAG0.DURUM Çözülmüş-Bulunmuş,1,<src>
SRC.EMOTE Hazineyi bulur
SRC.ARROWQUEST
REMOVE
return 1
endif
endif
endfor
src.sys_kirmizi Şu an başka bir hazine haritası ile meşgulsün. Bu hazine <REF1.region.name> civarında biliniyor.
endif
src.f_dialog d_kara_harita
//SRC.ARROWQUEST <TAG0.P>
//SRC.SYS_BEYAZ Hazine <serv.map(<TAG0.P>).region.name> [<TAG0.P>] civarında biliniyor.
return 1
endif
if (<F_ARRAY <TAG0.DURUM>,2> == 1)
if !(<F_ARRAY <TAG0.DURUM>,3> == <src.uid>)
src.sys_kirmizi Bu harita <UID.<F_ARRAY <TAG0.DURUM>,3>.NAME> tarafından çözülmüş.
remove
return 1
ELSE
SRC.SYS_KIRMIZI Dikkat hazineyi bulmak için 2 saatiniz var.
SRC.ARROWQUEST <TAG0.P>
SRC.SYS_BEYAZ Hazine <serv.map(<TAG0.P>).region.name> [<TAG0.P>] civarında biliniyor.
return 1
endif
endif
SRC.TAG0.KARA_HAZINE <UID>
SRC.F_RANDOM_HAZINE_KARA
SRC.EMOTE Haritayı okur
DISPID=i_MAP
UPDATE
RETURN 1
[dialog d_kara_harita]
<DEF.DIALOGSTARTPOSITION>
MAIN 0,0,260,65
TBUTTON_K 20,20,1,Hazineyi bulamadım. Haritayı sil!
[dialog d_kara_harita button]
on=1
REF1=<SRC.TAG0.KARA_HAZINE>
REF2=<SRC.TAG0.KONTROL>
IF (<REF1>)
REF1.REMOVE
ENDIF
IF (<REF2>)
REF2.REMOVE
ENDIF
SRC.SYS_KIRMIZI Harita silindi!