Silindi
Arkadaşlar aile belgesinde şöle bir sorun var örnek;Kadir adlı player ASDD Diye Aile kurdugu zaman Asdd diye oluyor fakat başka birini aileye aldıgnda onun adıda Ahmet olsun :) Ahmet ASDD diye oluyor ! işte scp

[defname aile_sistemi]
maxuye 50 // ailenin alabilecegi max. üye sayısı.

// * fonksiyonlar

[function f_isim_duzenle]
local.isim = <strarg <strtoupper(<strsub 0 1 <src.name>>)><strtolower(<strsub 1 15 <src.name>>)>>
src.name <local.isim>
src.sysmessage @03c1,6,1 Isminiz <local.isim> olarak tekrar duzenlendi.

[function f_isim_kontrolu]
local.num = 0
for 0 <eval (strlen(<args>)) -1>
  if !strmatch('[abcdefghijklmnoprstuvyz']','<strsub <dlocal._for> 1 <args>>')
     local.num ++
  endif
endfor
return <local.num>

[function f_soyadi_kontrolu]
for 0 <eval (<serv.accounts>) -1>
  if (<serv.account.<dlocal._for>>)
    for x 0 <eval (<serv.account.<dlocal._for>.chars>) -1>
      local.soyad = <streat <serv.account.<dlocal._for>.char.<dlocal.x>.name>>
      if !strcmpi('<local.soyad>','<args>')
        local.return ++
      endif
    endfor
  endif
endfor
return <dlocal.return>

[function f_yeniuye]
ref1 = <args>
if (<argo> == <src>)
  src.syshata Kendinizi seçemezsiniz.
elif !(<argo.isplayer>) || (<argo.isgm>) || (<argo.isitem>)
  src.syshata Sadece oyuncuları seçebilirsiniz.
elif strcmpi('<argo.tag.soyad>','')
  src.syshata <argo.name>, <argo.tag0.soyad> ailesine kayıtlı
elif (<argo.isdialogopen d_uye_kayidi>)
  src.syshata <argo.name> başka bir aile teklifi almış.
elif (<argo.gold> < 50000)
  src.syshata <argo.name>'in üzerinde yeterli silver bulunmuyor (50.000gp)
elif (<eval <ref1.f_uyesayisi_kontrolu>> < 1)
  src.syshata Ailenizde boş yer kalmamış.
else
  trysrc <argo> sdialog d_uye_kayidi,0,<args>,<src>
  src.sysmessage @03c1,6,1 Teklif yapıldı, cevap bekleniyor.
endif
return 1

[function f_uyesayisi_kontrolu]
for <eval <def.maxuye>> 0
  if !strcmpi('<tag.uye<dlocal._for>>','')
    local.bos = <dlocal._for>
  endif
endif
return <dlocal.bos>

// * //


// * eşyalar

[itemdef i_aile_belgesi]
id = i_deed
type = t_script
value = 52356
name = Aile Belgesi
weight = 2

on=@create
color = 080a
attr = attr_newbie

on=@dclick
if (<topobj> != <src>)
  src.syshata Bunu sadece üzerinizdeyken kullanabilirsiniz.
elif strcmpi('<src.tag.soyad>','')
  src.syshata <src.tag0.soyad> ailesine kayıtlısınız.
elif (<src.isdialogopen d_aile_kurulum>)
  src.syshata Aktif işlemi bitirmeden kullanamazsınız.
else
  sdialog d_aile_kurulum
endif
return 1

[dialog d_aile_kurulum]
0,0
nomove

resizepic 50 50 5054 300 150
dtext 100 75 1152 <serv.name> Aile Kurulum Menüsü
resizepic 100 110 3000 200 22
dtextentry 110 110 170 20 1152 0 <var.blank>
button 100 150 4005 4007 1 0 1
dtext 132 150 1152 Tamam

[dialog d_aile_kurulum button]
on = 1
if strlen(<argtxt[0]>) < 3 || strlen(<argtxt[0]>) > 15
  src.syshata Soy ismi en az 3, en fazla 15 karakterden oluşmalıdır.
elif (<f_isim_kontrolu <argtxt[0]>> > 0)
  src.syshata Soy isminizde geçersiz karakterler bulunuyor.
elif (<f_soyadi_kontrolu <argtxt[0]>> > 0)
  src.syshata <argtxt[0]> ailesi kayitli durumda.
else
  local.isim <strarg <src.name>>
  local.soyisim <strtoupper(<strsub 0 1 <argtxt[0]>>)><strtolower(<strsub 1 15 <argtxt[0]>>)>
  src.name <local.isim> <local.soyisim>
  src.tag.soyad <argtxt[0]>
  serv.newitem i_reis_kolyesi,1,<src>
  new.link <src>
  new.tag.uye0 <src>
  new.tag.uyeler 1
  src.equip <new>
  src.tag.kolye = <new>
  serv.b @03c1,6,1 <local.soyisim> ailesi, <local.isim> tarafından kuruldu.
  remove
endif
return 1
  
[itemdef i_reis_kolyesi]
id = i_necklace_gold
type = t_jewelry
value = 0
weight = 0
name = Aile Kolyesi

on=@create
color = 1965
attr = attr_newbie

on=@click
message @1153,,1 [<link.tag0.soyad>: Aile Reisi]
message @1153,,1 <link.name>
return 1

on=@dclick
if (<link> == <src>) && (<topobj> == <src>)
  sdialog d_aile_kontrolu,0,0
endif

[itemdef i_uye_kolyesi]
id = i_necklace_gold
type = t_jewelry
value = 0
weight = 0
name = aile kolyesi

on=@create
color = 1153
attr = attr_newbie

on=@click
message @1153,,1 [<link.tag0.soyad>: Aile Üyesi]
message @1153,,1 <link.name>
return 1

on=@dclick
if (<link> == <src>) && (<topobj> == <src>)
  ref1 = <more1>
  ref1.sdialog d_uye_menusu,0,0
endif

// * //

[dialog d_uye_menusu]
0,0

src.ctag.siralama = <argv[0]>
resizepic 20 50 5054 250 300
resizepic 30 60 3000 230 280
button 240 315 015e1 015e5 1 0 1
button 210 315 015e3 015e7 1 0 2
resizepic 20 350 5054 250 70
resizepic 30 360 3000 230 50
button 65 375 4005 4007 1 0 3
dtext 100 375 1000 Aileden ayril
dorigin 60 60
for <eval (<src.ctag0.siralama>)> <eval (<src.ctag0.siralama> + 10)>
  if strcmpi('<tag.uye<dlocal._for>>','')
    ref2 = <tag.uye<dlocal._for>>
    dtext +0 *20 <qval (<ref2.isonline>) ? 040 : 025> <ref2.name>
  endif
endfor

[dialog d_uye_menusu button]
on = 0
src.ctag0.siralama =

on = 1 2
ref1 = <uid>
if <dargn> == 1
  src.ctag.siralama +=10
else
  if (<src.dctag0.siralama> > 0)
    src.ctag.siralama -=10
  endif
endif
ref1.sdialog d_uye_menusu,0,<src.dctag0.siralama>,<src.ctag0.aile>
return 1

on = 3
ref1 = <uid>
ref1.sdialog d_cikart,3,0
return 1

[dialog d_aile_kontrolu]
0,0
nomove

src.ctag.siralama = <dargv[0]>
page 0
resizepic 20 50 5054 250 170
resizepic 30 60 3000 230 150
dhtmlgump 50 70 200 20 0 0 <link.tag0.soyad> Aile Menüsü (<dtag0.uyeler>/<eval <def.maxuye>> üye)
button 65 100 4005 4007 0 2 0
dtext 105 100 1000 Üyeleri yönet
button 65 120 4005 4006 1 0 902
dtext 105 120 1000 Yeni üye Al
button 65 140 4005 4006 1 0 904
dtext 105 140 1000 Aileyi dağıt

page 2
resizepic 20 220 5054 250 300
resizepic 30 230 3000 230 280
button 240 490 015e1 015e5 1 0 900
button 210 490 015e3 015e7 1 0 901
dorigin 100 220
for <eval (<src.ctag0.siralama>)> <eval (<src.ctag0.siralama> + 10)>
  if strcmpi('<tag.uye<dlocal._for>>','')
    ref1 = <tag.uye<dlocal._for>>
    dtext +0 *20 <qval (<ref1.isonline>) ? 040 : 025> <ref1.name>
button -35 *0 0FA2 0FA4 1 0 <eval <local._for> + 1>
  endif
endfor

[dialog d_aile_kontrolu button]
on = 0
src.ctag.siralama =

on = 1 899
ref1 = <uid>
if (<tag.uye<eval <argn> -1>> == <src>)
  src.syshata Kendi kendinizi aileden çıkartamazsınız.
else
  ref1.sdialog d_cikart,1,<eval <argn> -1>
endif
return 1

on = 900 901
ref1 = <uid>
if <dargn> == 900
  src.ctag.siralama +=10
else
  if (<src.dctag0.siralama> > 0)
    src.ctag.siralama -=10
  endif
endif
ref1.sdialog d_aile_kontrolu,2,<src.dctag0.siralama>
return 1

on = 902
if !((<src.flags> & statf_dead) || (<src.flags> & statf_freeze))
  src.targetf f_yeniuye <uid>
endif
return 1

on = 904
ref1 = <uid>
ref1.sdialog d_cikart,2,0
return 1


[dialog d_cikart]
0,0
nomove

resizepic 50 50 5054 300 150
resizepic 60 60 3000 280 130

page 1
src.ctag.uye = <tag.uye<dargv[0]>>
src.ctag.numara = <dargv[0]>
ref1 = <src.ctag0.uye>
dhtmlgump 95 70 230 50 0 0 <ref1.name> isimli aile üyesini aileden çıkartmak istediğinize emin misiniz ?
button 90 150 4005 4007 1 0 1
dtext 125 150 1000 Evet

page 2
dhtmlgump 95 70 230 50 0 0 <src.tag0.soyad> isimli ailenizi dağıtmak istediğinize emin misiniz ?
button 90 150 4005 4007 1 0 2
dtext 125 150 1000 Evet

page 3
dhtmlgump 95 70 230 50 0 0 <link.tag0.soyad> isimli ailenizden ayrılmak istediğinize emin misiniz ?
button 90 150 4005 4007 1 0 3
dtext 125 150 1000 Evet

[dialog d_cikart button]
on = 0
src.ctag.uye =

on = 1
ref1 = <src.ctag0.uye>
ref1.tag.soyad = 
ref1.name <strarg <ref1.name>>
try uid.<ref1.tag0.kolye>.remove
ref1.tag.kolye =
tag.uye<src.dctag0.numara> =
tag.uyeler --
src.sysmessage @03c1,6,1 <ref1.name> isimli kişiyi ailenizden çıkarttınız.
if (<ref1.isonline>)
  ref1.sysmessage @03c1,6,1 Ailenizden çıkartıldınız.
endif
src.ctag.uye =
src.ctag.numara =
return 1

on = 2
for <eval <def.maxuye>> 1
  if strcmpi('<tag.uye<dlocal._for>>','') && (<tag.uye<dlocal._for>> != <src>)
    ref6 = <tag.uye<dlocal._for>>
ref6.name <strarg <ref6.name>>
    ref6.tag.soyad =
try uid.<ref6.tag0.kolye>.remove
ref6.tag.kolye =
tag.uye<dlocal._for>> =
  endif
endfor
src.name <strarg <src.name>>
serv.b @1153,1,1 <src.tag0.soyad> ailesi, <src.name> tarafından dağıtıldı.
src.tag.soyad =
try uid.<src.tag0.kolye>.remove
src.tag.kolye =
return 1

on = 3
src.name <strarg <src.name>>
src.tag.soyad =
try uid.<tag0.kolye>.remove
src.tag.kolye =
for <eval <def.maxuye>> 1
  if strcmpi('<tag.uye<dlocal._for>>','') && (<tag0.uye<dlocal._for>> == <src>)
    tag0.uye<dlocal._for> =
tag0.uyeler --
  endif
endfor
ref1 = <link>
ref1.sysmessage @03c1,6,1 <src.name> isimli üye ailenizden ayrıldı.
src.sysmessage @03c1,6,1 Ailenizden ayrıldınız.
return 1


[dialog d_uye_kayidi]
0,0
nomove

src.ctag0.aile = <argv[0]>
src.ctag0.reis = <argv[1]>
resizepic 50 50 5054 320 150
resizepic 60 60 3000 300 130
dhtmlgump 100 75 250 60 0 0 <uid.<argv[1]>.name> sizi, <uid.<argv[1]>.tag0.soyad> ailesine davet ediyor. Kabul ediyor musunuz ? (Giris 50.000gp)
button 90 150 4005 4007 1 0 1
dtext 125 150 1000 Evet
button 250 150 4005 4007 1 0 2
dtext 285 150 1000 Hayir

[dialog d_uye_kayidi button]
on = 0
ref1 = <src.ctag0.reis>
ref1.sysmessage @03c1,6,1 <src.name> teklifinizi red etti.
src.ctag0.aile =
src.ctag0.reis =

on = 1
ref1 = <src.ctag0.aile>
ref2 = <src.ctag0.reis>
local.bos = <eval <ref1.f_uyesayisi_kontrolu>>
if !(<dlocal.bos>)
  src.syshata <ref2.tag0.soyad> ailesinde boş yer kalmamış.
  ref2.syshata Ailenizde boş yer kalmamış.
elif (<src.gold> < 50000)
  src.syshata Karakterinizde yeterli silver bulunmuyor (50.000 silver)
  ref2.syshata <src.name> üzerinde yeterli silver bulunmuyor (50.000 silver)
else
  local.isim <strarg <src.name>>
  src.name <local.isim> <ref2.tag0.soyad>
  src.tag.soyad <ref2.tag0.soyad>
  ref1.tag.uyeler ++
  ref1.tag.uye<dlocal.bos> = <src>
  serv.newitem i_uye_kolyesi,1,<src>
  new.link <src>
  new.more1 = <ref1>
  src.equip <new>
  src.tag.kolye = <new>
  src.gold -=50000
  src.sysmessage @03c1,6,1 <ref2.tag0.soyad> ailesine katildiniz.
  for <eval <def.maxuye>> 0
    if strcmpi('<ref1.tag.uye<dlocal._for>>','')
  ref3 = <ref1.tag.uye<dlocal._for>>
  if (<ref3> != <src>)
    ref3.sysmessage @03c1,6,1 <src.name> ailenize katildi.
  endif
endif
  endfor
  src.ctag0.aile =
  src.ctag0.reis =
endif
return 1

on = 2
ref1 = <src.ctag0.reis>
ref1.syshata <src.name> teklifinizi red etti.
src.ctag0.aile =
src.ctag0.reis =



[plevel 1]
ac

[function ac]
if !strcmpi('<src.tag.soyad>','')
  src.syshata Herhangi bir aileye üye değilsiniz.
else
  forclients 6144
    if (<isplayer>) && !(<isgm>) && !strcmpi('<src.tag.soyad>','<tag.soyad>')
      sysmessage @89,,1 [Aile Chat] <src.name>: <args>
    endif
  endfor
endif


[eof]
Novice
-14.8
  src.tag.soyad  <strtoupper(<strsub 0 1 <ref2.tag0.soyad>>)><strtolower(<strsub 1 15 <ref2.tag0.soyad>>)>
Bu satırı , " [dialog d_uye_kayidi button ] " bölümünün altındaki " on 1 " de bulunan

local.isim <strarg <src.name>>

altına ekleyeceksin.

Bu konu KadhraS tarafından düzenlendi(2009-08-13 21:04, 14 yıl önce)
Silindi
Novice
-14.8
Dedigini yaptım fakat olmadı onu eklerken bişey silicekmiyim
Novice
-14.8
  local.isim <strarg <src.name>>
  local.soyisim <strtoupper(<strsub 0 1 <argtxt[0]>>)><strtolower(<strsub 1 15 <argtxt[0]>>)>
  src.name <local.isim> <local.soyisim>
  src.tag.soyad <argtxt[0]>

Şu 4 satır arasında bulunan " src.tag.soyad <argtxt[0] " yerine ekleyeceksin.
Silindi
Novice
-14.8
Sorunu hallettim arkadaşlar tşkr ederim yardımlarınız için eger isteyen olursa veriyim sorunsuz bir şekilde çalışıyor eger sorun çıkarsada sölersiniz burdan :=)

Bu konu kadirs tarafından düzenlendi(2009-08-14 00:04, 14 yıl önce)

Üye Ol veya Giriş Yap

Bu forum başlığına mesaj atmak istiyorsanız hemen üye olun veya giriş yapın.