mesela obj kullanmadan bir script yazalım, bir itemdan target açıp targon_char'da işlem yaptığımızı varsayalım;
src.targ.sysmessage deneme
src.targ.tag0.deneme 1
...
şimdi bu işlemi obj kullanarak yapalım;
obj <src.targ.uid>
obj.sysmessage deneme
obj.tag0.deneme 1
obj'un işlevi bu basit örnekte işlevsiz gibi gözüksede aşağıdaki örnekte işlevi daha açıkça görülmektedir.bir aile sisteminde, üyelerin uidlerini reis kolyesine tag0.uye<değer> (tag0.uye1 2 3....) şeklinde kaydettiğimiz varsayalım ve kolyenin dclick triggerında aşağıdaki işlemi uyguladığımızı varsayalım;
for 1 10
try uid.<tag0.uye<dlocal._for>>.sysmessage reis kolyeye cift tikladi.
endfor
bu işlem 1den 10a kadar kayıtlı olan üyelere "reis kolyeye cift tıkladı" şeklinde mesaj geçicektir.bu işlemi obj kullanarak yapalım;
for 1 10
obj <tag0.uye<dlocal._for>>
obj.sysmessage reis kolyeye cift tıkladı.
endfor
böylece daha çok işlem yaptığımız scriptleri hızlandırabilir ve daha yalın hale getirebiliriz.Ref kullanımı obj ile aynıdır ancak ref yanına değer gelerek kullanılır. (ref1, ref2 ,ref3 gibi)
Dikkat edilmesi gereken önemli bir husus obj'un var gibi server üzerinde kayıtlı olmasıdır. local gibi sadece işlemin içinde kalan bir kalıp değildir. o yüzden, eğer bir çok scriptinizde obj kullanırsanız bunlar az bir ihtimalde olsa çakışmalara sebep olabilir. Bu açıdan işlemden önce o anki obj'u alıp işlem bittiğinde obj tekrar eski haline çevirmek gerekir.
örnek:
obj <src.targ.uid>
obj.sysmessage deneme
obj.tag0.deneme 1
bu işlemin sonunda obj tıkladığınız kişinin uidi olarak kayıtlı kalır. ve başka bir scriptinizde kullanılan obj ile çakışabilir. bunu önlemek için;local.oldobj <obj> //işlemin başına ekliyoruz
obj <src.targ.uid>
obj.sysmessage deneme
obj.tag0.deneme 1
obj <local.oldobj> //işlemin sonuna ekliyoruz
bu şekilde bir şey yapabiliriz. 


[b]Saolasun[/b]
eLLerine sağlık.