arkadaşlar ben fix scp ye spellcast altına şunu ekliyorum..

on=@spellcast
if (<memoryfindtype.memory_guild.link.more1> == 2) && (<src.memoryfindtype.memory_guild.link.more1> == 2)
if (<argn> == 1)
sysmessage @54,,1 Yandaslariniza zarar veremezsiniz.
src.f_fizzle
return 1
endif
endif

ama burdaki argn 1 npc ler dahil kimseye atamıyorum.. guild sorgulamasınımı yanlış yazdım acaba?
if (<memoryfindtype.memory_guild.link.more1> == 2) && (<src.memoryfindtype.memory_guild.link.more1> == 2)
if (<argn> == 1)

kısmını ;

if (<guild.more1> == 2) && (<guild.more1> == 2) && (<argn> == 1)

denermisiniz?
yine aynı hiç büyü yapılmıyor
on=@spellcast
if (<guild.more1> == 1) && (<guild.more1> == 2) && (<argn> == 1)
sysmessage @54,,1 Yandaslariniza zarar veremezsiniz.
src.f_fizzle
return 1
endif

denermisin?
malesef yine aynı hiç büyü atılmıyor.

edit ;
sonunda oldu.
if (<memoryfindtype.memory_guild.link.more1> == 2)
if (<act.memoryfindtype.memory_guild.link.more1> == 2)
sysmessage @54,,1 Yandaslariniza zarar veremezsiniz.
src.f_fizzle
return 1
endif
endif
dostum yapmak istediğin şey
<argn> = 1
1'ci büyü'yü atmamak mı hiç'mi dalmamak mı ne yapmak istiyorsun anlayamadım ki hiç dalmasın istiyorsan şöyle olması gerek ;
if (<guild.more1> == 1) && (<act.guild.more1> == 1)
sysmessage @1153,,1 Yandaşlariniza dalamazsınız..
f_fizzle
return 1
endif

if (<guild.more1> == 2) && (<act.guild.more1> == 2)
sysmessage @1153,,1 Yandaşlariniza dalamazsınız..
f_fizzle
return 1
endif

yada herhangi büyüleri atmasın istiyorsan ;

if (<argn> == 1) // 1 olan yere büyü numarası yazman gerek.
Not : bir'daha konu açtıgında kod paylaşma ne yapmak istedigini anlatırsan sevinirim.
Arkadaşın asıl sorunu
if (<memoryfindtype.memory_guild.link.more1> == 2) && (<src.memoryfindtype.memory_guild.link.more1> == 2)

Burada sadece kendi tarafını belirlemiş yani kendisi chaos guildine ait ama ya saldırdığı kişiyi test ettirmemiş buraya koyduğu scpde.Zaten çözümüde bulmuş "act" ile yapacağını.

@Xearth
ayrıca guild.more1 olayı saçmalık.Adamın üzerinden guild.more1 diye bir şey çalışmaz :S
yanlız arkadaşlar şöyle bir sorunla karşılaştım.. bu yukarda yaptığım gibi oldu fakat kendime atılan skiller bless ws. de atılmıyorduonuda şu şekilde çözdüm..

son hali ;
on=@spellcast
if (<memoryfindtype.memory_guild.link.more1> == 2)
if (<act.memoryfindtype.memory_guild.link.more1> == 2)
if (<argn> == 1) || (<argn> == 2) || (<argn> == 3) || (<argn> == 5) || (<argn> == 8) || (<argn> == 9) || (<argn> == 10) || (<argn> == 12) || (<argn> == 13) || (<argn> == 14) || (<argn> == 18) || (<argn> == 19) || (<argn> == 20) || (<argn> == 21) || (<argn> == 22) || (<argn> == 23) || (<argn> == 24) || (<argn> == 25) || (<argn> == 26) || (<argn> == 27) || (<argn> == 28) || (<argn> == 30) || (<argn> == 31) || (<argn> == 32) || (<argn> == 33) || (<argn> == 34) || (<argn> == 35) || (<argn> == 37) || (<argn> == 38) || (<argn> == 39) || (<argn> == 40) || (<argn> == 41) || (<argn> == 42) || (<argn> == 43) || (<argn> == 44) || (<argn> == 45) || (<argn> == 46) || (<argn> == 47) || (<argn> == 48) || (<argn> == 49) || (<argn> == 50) || (<argn> == 51) || (<argn> == 52) || (<argn> == 53) || (<argn> == 54) || (<argn> == 55) || (<argn> == 56) || (<argn> == 57) || (<argn> == 58) || (<argn> == 60) || (<argn> == 61) || (<argn> == 62) || (<argn> == 63) || (<argn> == 64)
sysmessage @54,,1 Yandaslariniza zarar veremezsiniz.
src.f_fizzle
return 1
endif
endif
endif
if (<memoryfindtype.memory_guild.link.more1> == 1)
if (<act.memoryfindtype.memory_guild.link.more1> == 1)
if (<argn> == 1) || (<argn> == 2) || (<argn> == 3) || (<argn> == 5) || (<argn> == 8) || (<argn> == 9) || (<argn> == 10) || (<argn> == 12) || (<argn> == 13) || (<argn> == 14) || (<argn> == 18) || (<argn> == 19) || (<argn> == 20) || (<argn> == 21) || (<argn> == 22) || (<argn> == 23) || (<argn> == 24) || (<argn> == 25) || (<argn> == 26) || (<argn> == 27) || (<argn> == 28) || (<argn> == 30) || (<argn> == 31) || (<argn> == 32) || (<argn> == 33) || (<argn> == 34) || (<argn> == 35) || (<argn> == 37) || (<argn> == 38) || (<argn> == 39) || (<argn> == 40) || (<argn> == 41) || (<argn> == 42) || (<argn> == 43) || (<argn> == 44) || (<argn> == 45) || (<argn> == 46) || (<argn> == 47) || (<argn> == 48) || (<argn> == 49) || (<argn> == 50) || (<argn> == 51) || (<argn> == 52) || (<argn> == 53) || (<argn> == 54) || (<argn> == 55) || (<argn> == 56) || (<argn> == 57) || (<argn> == 58) || (<argn> == 60) || (<argn> == 61) || (<argn> == 62) || (<argn> == 63) || (<argn> == 64)
sysmessage @54,,1 Yandaslariniza zarar veremezsiniz.
src.f_fizzle
return 1
endif
endif
endif

burda kendimize atılan büyüler hariç hepsini yazdım.. burda yazanların hiç birisini hem guild üyelerine hemde kendime atamıyorum..

NOT : henüz acemi olduğum için bu çözümü bulabildim daha kısa bir çözümü varsa veya bu bana ilerde başka sorunlar getirirse lütfen bildirin.
edit : burda bir if sorgusu daha ekleyip eğer kendime atıyorsam bu işlem return 0 olsun gibi bir sorgulama yapamazmıyız?
on=@spellcast
if (<memoryfindtype.memory_guild.link.more1>) || (<act.memoryfindtype.memory_guild.link.more1>) ////// İki tarafında yönünü kontrol eder.
if (<memoryfindtype.memory_guild.link.more1> == <act.memoryfindtype.memory_guild.link.more1>) //// yöneleri aynı ise büyüyü tamamlatmaz
f_fizzle
return 1
sysmessage @33,,1 Yandaslarina buyu atamazsin.
endif
endif

arkadasim boyle denermisin bi ?
_Avatar_ : @Xearth
ayrıca guild.more1 olayı saçmalık.Adamın üzerinden guild.more1 diye bir şey çalışmaz :S

dostum sen ilk önce scripting derslerini çalış sonra gel burada bana cevap yaz tamam mı?

guild.more1 diye birşey nasıl yok arkadaşım önce bir dene sonra konuş atıp tutmayla bir yere gelemezsin.

https://wiki.sphere.torfo.org/index.php/Special_Items#Guild.2FTown_Stones // buraya bak.

Bu konu Xearth tarafından düzenlendi(2011-02-22 18:13, 13 yıl önce)
Legend ;

benimkisiyle aynı durumda oluyor buda.. düşmana ve yandaşlara göre herşey normal ama kendimede büyü atamıyorum. yani aradığım sonuç çıkmadı. ben kendime attıgımda bir if sorgusu istiyorum eğer kendime büyü atıyorsam hangi büyü olursa olsun kendime atsın sadece karşımdaki yandaşıma atmasın.
@xearth
https://wiki.sphere.torfo.org/index.php/Special_Items#Guild.2FTown_Stones // buraya bak.

vermiş olduğun linkte hiç bişi yok.
muratyavas : Legend ;

benimkisiyle aynı durumda oluyor buda.. düşmana ve yandaşlara göre herşey normal ama kendimede büyü atamıyorum. yani aradığım sonuç çıkmadı. ben kendime attıgımda bir if sorgusu istiyorum eğer kendime büyü atıyorsam hangi büyü olursa olsun kendime atsın sadece karşımdaki yandaşıma atmasın.


Legend :
on=@spellcast
if !(<act.uid> == <uid>)
if (<memoryfindtype.memory_guild.link.more1>) || (<act.memoryfindtype.memory_guild.link.more1>) ////// İki tarafında yönünü kontrol eder.
if (<memoryfindtype.memory_guild.link.more1> == <act.memoryfindtype.memory_guild.link.more1>) //// yöneleri aynı ise büyüyü tamamlatmaz
f_fizzle
return 1
sysmessage @33,,1 Yandaslarina buyu atamazsin.
endif
endif
endif

bu şekilde dene eğer invas anort anlor gibi büyüeri açmak istiyorsan da

f_fizzle den önce if (<argn> == büyünumarası) || (sıradaki) şeklinde devam et ve sysmessage den sonra endif koy bu sefer olur


arkadasim boyle denermisin bi ?
on=@spellcast
if !(<src.guild.more1> == 00) && (strmatch('<act.guild.more1>','<src.guild.more1>') && !(<act.uid> == <src.uid>) && !(<argn> == 4) && !(<argn> == 6) && !(<argn> == 7) && !(<argn> == 11) && !(<argn> == 15) && !(<argn> == 16) && !(<argn> == 17) && !(<argn> == 29) && !(<argn> == 36)
src.f_fizzle
return 1
endif


Bu konu HP-Nexiel tarafından düzenlendi(2011-02-22 23:56, 13 yıl önce)
nexiel argn dan sonraki && lerin || olması gerekmiyormu? ve olursa eğer aynı büyüleri görür veya olmalı her büyüyü check etsin ?



Üye Ol veya Giriş Yap

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