|
Yazar
|
Mesaj #6396
06-11-2009 13:38 GMT
|
|
Yazar
|
Mesaj #6400
06-11-2009 16:13 GMT
Alıntı kolay kolay hiçbir işte denemeden/birileri denemeden neyin doğru neyin yanlış olduğunu görmek gerçekten zor,uo-dev ilkini denedi ve hatalarının farkına vardı ama bu tartışmaların uzaması beni çok üzdü. madem büyük bir aileyiz bazı şeylere gülümseyip tamam demeliyiz. geçen gün yolda gidiyodum |
|
Yazar
|
Mesaj #6406
06-11-2009 20:12 GMT
if endif, for endfor, dorand enddo... niye hep birşeyleri kısıtlıyoruz? Meinen Blog/My Blog/Benim Blogum |
|
Yazar
|
Mesaj #6427
07-11-2009 02:13 GMT
~ illede ' zeynep zeynep ' |
|
Yazar
|
Mesaj #6434
07-11-2009 11:30 GMT
Mortal: Alchemy Craft Dialog: 6 Rowall: Alchemy Craft Dialog: 7 Xantier: Alchemy Craft Dialog: 3 suicide: Alchemy Craft Dialog: 4 slothere: Alchemy Craft Dialog: 4 Alchemy Craşft Dialog Rowall: Makelast Sisteminide onun yazdığını kabul edersek kodlama açısından Harika diyebilirim. Teşekkür ederim ama kolay bir scpydi ben zaten iddialı diğildim ama oylamada bir ara 30 unda üstüne çıkan olmuştu onunda nasıl yaptığını rebel farketti isterse kendi açıklar ![]() Xantier: Kod kalabalığı. src.canmake kullanmak varken neredeyse satırlarca restest ile makelast yapılmış. Yine buton kısmında canmake yerine bir ton restest gelmiş. Makelast için tag vermeye gerek yoktu bu yüzden arkadaş ctag vererek save şişirmeme yöntemini kullanmış hoşuma gitti. Defname kullanılmış ama onlar sayesinde menüyü de 6 satırlık bir koda çevirebilirmiş. Aslında evet ama ben bilerek öyle yaptım çünkü sürekli değişiklikler olacak bu nedenle biraz karışık oluyordu bide pageyi tam olarak ayarlama yapamıyorum defname sayısına göre arsın işte onu bir bilsem ah ![]() suicide: Bu sistem de array kullanımına müsaitmiş aslında. Kullanılsa daha kısa ve daha okunabilir olabilirdi. Dialog yaratımı ve indexleme konusunda iyi. Keşke array kullanmayı bilsem :'( ![]() inş. bu defaki sefere ![]() slothere: Çok gereksiz yerlerde, stabil olmayan şekilde uzatılmış. Daha stabil kodlanabilirdi. Boş yere çok fazla return kullanımına gidilmiş. Bunlar pek sağlıklı değil. Array mantığı ile daha iyi olabilirdi. Return kullanımına gidilmiş derken anlamadım kardeşim bnm ??? :S Evet dediğin gibi array ile iyi olabilirdi ama üstte dediğim gibi ![]() Kod: // Yarışma :: UO-Dev 1. Scripting Yarışması // Adres :: http://www.uo-developer.com // Yazar :: xwerswoodx // Script Adı :: Alchemy Craft Dialog [Defname alchemy_hamit] hd_alc_1 i_potion_agility hd_alc_2 i_potion_agilitygreat hd_alc_3 i_potion_refresh hd_alc_4 i_potion_refreshtotal hd_alc_5 i_potion_explosionless hd_alc_6 i_potion_explosion hd_alc_7 i_potion_explosiongreat hd_alc_8 i_potion_explosionsuper hd_alc_9 i_potion_poisonless hd_alc_10 i_potion_poison hd_alc_11 i_potion_poisongreat hd_alc_12 i_potion_poisondeadly hd_alc_13 i_potion_healless hd_alc_14 i_potion_heal hd_alc_15 i_potion_healgreat hd_alc_16 i_potion_cureless hd_alc_17 i_potion_cure hd_alc_18 i_potion_curegreat hd_alc_19 i_potion_strenght hd_alc_20 i_potion_strenghtgreat hd_alc_21 i_potion_nightsight hd_alc_22 i_potion_bleedless hd_alc_23 i_potion_bleed hd_alc_24 i_potion_bleedgreat hd_alc_25 i_potion_invis hd_alc_menu_1 Agility hd_alc_menu_1a 0.0 hd_alc_menu_2 Refresh hd_alc_menu_2a 20.0 hd_alc_menu_3 Explosion hd_alc_menu_3a 40.0 hd_alc_menu_4 Poison hd_alc_menu_4a 60.0 hd_alc_menu_5 Heal hd_alc_menu_5a 80.0 hd_alc_menu_6 Cure hd_alc_menu_6a 100.0 hd_alc_menu_7 Strenght hd_alc_menu_7a 140.0 hd_alc_menu_8 Nightsight hd_alc_menu_8a 170.0 hd_alc_menu_9 Bleed hd_alc_menu_9a 190.0 hd_alc_menu_10 Invisibility hd_alc_menu_10a 200.0 [DIALOG d_menu_alchemy] 0,0 NOMOVE resizepic 0 0 5054 650 500 dtext 20 15 250 <serv.name> Alchemy Menu resizepic 10 40 3000 150 450 resizepic 165 40 3000 475 450 dtext 50 48 00 Potions local.t 72 local.b 70 for 1 10 if (<src.alchemy> >= <ddef.hd_alc_menu_<dlocal._for>a>) dtext 55 <dlocal.t> 00 <def.hd_alc_menu_<dlocal._for>> button 20 <dlocal.b> 4005 4006 0 <dlocal._for> local.t +=30 local.b +=30 endif endfor PAGE 1 // Agility tilepic 220 62 3848 dtext 200 82 00 Agility button 180 84 2511 2510 1 0 1 if (<src.alchemy> > 25.3) tilepic 360 62 3848 dtext 340 82 00 Greater Agility button 320 84 2511 2510 1 0 2 endif PAGE 2 // Refresh tilepic 205 62 3851 dtext 200 82 00 Refresh button 180 84 2511 2510 1 0 3 if (<src.alchemy> > 12.4) tilepic 345 62 3851 dtext 340 82 00 Greater Refresh button 320 84 2511 2510 1 0 4 endif PAGE 3 // Explosion tilepic 223 62 3853 dtext 200 82 00 Lesser Explosion button 180 84 2511 2510 1 0 5 if (<src.alchemy> > 45.0) tilepic 363 62 3853 dtext 340 82 00 Explosion button 320 84 2511 2510 1 0 6 endif if (<src.alchemy> > 55.0) tilepic 503 62 3853 dtext 480 82 00 Greater Explosion button 460 84 2511 2510 1 0 7 endif if (<src.alchemy> > 58.4) tilepic 223 162 3853 dtext 200 182 00 Süper Explosion button 180 184 2511 2510 1 0 8 endif PAGE 4 // Poison tilepic 215 62 3850 dtext 200 82 00 Lesser Poison button 180 84 2511 2510 1 0 9 if (<src.alchemy> > 67.0) tilepic 355 62 3850 dtext 340 82 00 Poison button 320 84 2511 2510 1 0 10 endif if (<src.alchemy> > 75.2) tilepic 495 62 3850 dtext 480 82 00 Greater Poison button 460 84 2511 2510 1 0 11 endif if (<src.alchemy> > 78.3) tilepic 215 162 3850 dtext 200 182 00 Deadly Poison button 180 184 2511 2510 1 0 12 endif PAGE 5 // Heal tilepic 208 62 3852 dtext 200 82 00 Lesser Heal button 180 84 2511 2510 1 0 13 if (<src.alchemy> > 87.2) tilepic 348 62 3852 dtext 340 82 00 Heal button 320 84 2511 2510 1 0 14 endif if (<src.alchemy> > 94.4) tilepic 488 62 3852 dtext 480 82 00 Greater Heal button 460 84 2511 2510 1 0 15 endif PAGE 6 // Cure tilepic 210 62 3847 dtext 200 82 00 Lesser Cure button 180 84 2511 2510 1 0 16 if (<src.alchemy> > 107.0) tilepic 350 62 3847 dtext 340 82 00 Cure button 320 84 2511 2510 1 0 17 endif if (<src.alchemy> > 112.0) tilepic 490 62 3847 dtext 480 82 00 Greater Cure button 460 84 2511 2510 1 0 18 endif PAGE 7 // Strenght tilepic 211 62 3849 dtext 200 82 00 Strenght button 180 84 2511 2510 1 0 19 if (<src.alchemy> > 155.2) tilepic 351 62 3849 dtext 340 82 00 Greater Strenght button 320 84 2511 2510 1 0 20 endif PAGE 8 // Nightsight tilepic 219 62 3846 dtext 200 82 00 Nightsight button 180 84 2511 2510 1 0 21 PAGE 9 // Bleed tilepic 220 62 3848 dtext 200 82 00 Lesser Bleed button 180 84 2511 2510 1 0 22 if (<src.alchemy> > 193.9) tilepic 360 62 3848 dtext 340 82 00 Bleed button 320 84 2511 2510 1 0 23 endif if (<src.alchemy> > 198.0) tilepic 500 62 3848 dtext 480 82 00 Greater Bleed button 460 84 2511 2510 1 0 24 endif PAGE 10 // Invisibility tilepic 211 62 3849 dtext 200 82 00 Invisibility button 180 84 2511 2510 1 0 25 [DIALOG d_menu_alchemy BUTTON] on=0 src.dikkat Sayfayı kapattınız. return 1 on=1 25 if (<src.restest <SERV.ITEMDEF.<def.hd_alc_<dargn>>.RESOURCES.1.val><SERV.ITEMDEF.<def.hd_alc_<dargn>>.RESOURCES.1.key>>) || (<src.restest <SERV.ITEMDEF.<def.hd_alc_<dargn>>.RESOURCES.2.val><SERV.ITEMDEF.<def.hd_alc_<dargn>>.RESOURCES.2.key>) src.makeitem <def.hd_alc_<dargn>> src.ctag.makelast <def.hd_alc_<dargn>> if (<var0.hamit_alchemy_<dargn>>==0) icat <serv.itemdef.<def.hd_alc_<dargn>>.name> <src.name> tarafından icat edildi. var.hamit_alchemy_<dargn>=1 var.hamit_alchemy_<dargn>_yapan=<src.name> endif else src.hata Bunu yapabilmek için <SERV.ITEMDEF.<def.hd_alc_<dargn>>.RESOURCES.1.val><SERV.ITEMDEF.<SERV.ITEMDEF.<def.hd_alc_<dargn>>.RESOURCES.1.key>.NAME> ve <SERV.ITEMDEF.<def.hd_alc_<dargn>>.RESOURCES.2.val><SERV.ITEMDEF.<SERV.ITEMDEF.<def.hd_alc_<dargn>>.RESOURCES.2.key>.NAME> gereklidir. endif return 1 [Function dikkat] sysmessage @095,,1 <args> [Function icat] serv.allclients sysmessage @0481,,1 <args> [Function makelast] src.f_makelast [Function tekraryap] src.f_makelast [Function f_makelast] if !(<src.ctag.makelast>==0) if <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.5> if (<src.restest <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.1.val><SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.1.key>>) || (<src.restest <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.2.val><SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.2.key>>) || (<src.restest <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.3.val><SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.3.key>>) || (<src.restest <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.4.val><SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.4.key>>) || (<src.restest <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.5.val><SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.5.key>>) src.makeitem <src.ctag0.makelast> else src.hata Bunu yapabilmek için <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.1.val><SERV.ITEMDEF.<SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.1.key>.name>, <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.2.val><SERV.ITEMDEF.<SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.2.key>.name>, <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.3.val><SERV.ITEMDEF.<SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.3.key>.name>, <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.4.val><SERV.ITEMDEF.<SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.4.key>.name> ve <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.5.val><SERV.ITEMDEF.<SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.5.key>.name> gereklidir. endif elseif <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.4> if (<src.restest <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.1.val><SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.1.key>>) || (<src.restest <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.2.val><SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.2.key>>) || (<src.restest <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.3.val><SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.3.key>>) || (<src.restest <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.4.val><SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.4.key>>) src.makeitem <src.ctag0.makelast> else src.hata Bunu yapabilmek için <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.1.val><SERV.ITEMDEF.<SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.1.key>.name>, <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.2.val><SERV.ITEMDEF.<SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.2.key>.name>, <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.3.val><SERV.ITEMDEF.<SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.3.key>.name> ve <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.4.val><SERV.ITEMDEF.<SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.4.key>.name> gereklidir. endif elseif <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.3> if (<src.restest <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.1.val><SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.1.key>>) || (<src.restest <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.2.val><SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.2.key>>) || (<src.restest <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.3.val><SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.3.key>>) src.makeitem <src.ctag0.makelast> else src.hata Bunu yapabilmek için <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.1.val><SERV.ITEMDEF.<SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.1.key>.name>, <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.2.val><SERV.ITEMDEF.<SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.2.key>.name> ve <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.3.val><SERV.ITEMDEF.<SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.3.key>.name> gereklidir. endif elseif <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.2> if (<src.restest <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.1.val><SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.1.key>>) || (<src.restest <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.2.val><SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.2.key>>) src.makeitem <src.ctag0.makelast> else src.hata Bunu yapabilmek için <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.1.val><SERV.ITEMDEF.<SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.1.key>.name> ve <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.2.val><SERV.ITEMDEF.<SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.2.key>.name> gereklidir. endif elseif <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.1> if (<src.restest <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.1.val><SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.1.key>>) src.makeitem <src.ctag0.makelast> else src.hata Bunu yapabilmek için <SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.1.val><SERV.ITEMDEF.<SERV.ITEMDEF.<src.ctag0.makelast>.RESOURCES.1.key>.name> gereklidir. endif endif else src.hata En son yaptığınız eşyayı hatırlamıyorsunuz. return 1 endif [EOF] 2. sine inş. daha iddalı olacaz
Biz en iyi diiliz belki ama en iyileri bile taşta bırakabiliriz. SPHERE 56B Fix Scripts Geliyor! Yapım Aşamasında! |
|
Yazar
|
Mesaj #6435
07-11-2009 11:33 GMT
|
|
Yazar
|
Mesaj #6448
08-11-2009 01:09 GMT
Selam, Array kullanımına biraz değineyim o zaman. bu konu en güzel bir örnekle anlatılabilir. ve bu örneği senin scriptinde array kullanabiliceğin yerden vericeğim Öncelikle array nedir ? Array , sıralamadır. Spherede biz arrayı sıralı argümanları ayırmak için kullanıyoruz. Mesela , elimizde bir fonksyon olsun Kod: [function soyle] sayu 1-<argv[0]> sayu 2-<argv[1]> sayu 3-<argv[2]> .soyle test,Uo-Developer,Alcholic bu fonksyonun yanıtı 1-test 2-Uo-Developer 3-Alcholic şeklinde olucaktır. Array dediğimiz olay aslında bu kadar ancak uzun kodlarda teker teker yazamanız mantıklı olmayacağı için for ile işlemimizi kısaltıyoruz. Burası biraz karışık gözüksede aslında çok kolay. ben davidin kodlarıyla öğrendim bu şekilde devam ediyorum. Kod: [FUNCTION f_array] return <dargv> Array fonksyonu bize toplam argüman sayısını veriyor. show f_array test,Uo-Developer,Alcholic yazdığımızı sphere bize 3 sonucunu vericektir. Kod: [FUNCTION f_array_item] local.temp = <argv[<eval <argv> - 1>]> -1 return <argv[<dlocal.temp>]> basit bir örnekle kullanalım Kod: [function soyle] for 0 <f_Array <args>> sayu <dlocal._for>-<f_Array_item <args>,<dlocal._for>> endfor soyle 1,2,3,4,5,6,7,8,9,a,b,c,d,e,f,g,h,j,k,l,ş,m,f,aw,eas,d,asd komutunu yazdığımızda teker şimdi bunu senin scriptine uygulamaya gelince. Kod: hd_alc_1 i_potion_agility hd_alc_2 i_potion_agilitygreat hd_alc_3 i_potion_refresh hd_alc_4 i_potion_refreshtotal hd_alc_5 i_potion_explosionless hd_alc_6 i_potion_explosion hd_alc_7 i_potion_explosiongreat hd_alc_8 i_potion_explosionsuper hd_alc_9 i_potion_poisonless hd_alc_10 i_potion_poison hd_alc_11 i_potion_poisongreat hd_alc_12 i_potion_poisondeadly hd_alc_13 i_potion_healless hd_alc_14 i_potion_heal hd_alc_15 i_potion_healgreat hd_alc_16 i_potion_cureless hd_alc_17 i_potion_cure hd_alc_18 i_potion_curegreat hd_alc_19 i_potion_strenght hd_alc_20 i_potion_strenghtgreat hd_alc_21 i_potion_nightsight hd_alc_22 i_potion_bleedless hd_alc_23 i_potion_bleed hd_alc_24 i_potion_bleedgreat hd_alc_25 i_potion_invis Kod: hd_Alc = i_potion_agilitygreat,i_potion_refresh,i_potion_refreshtotal,i_potion_Explosion,i_potion_Explosionless,i_potion_explosiongreat Kod: for 0 <f_array <def.hd_Alc>>
dtext +10 *20 1152 <f_array_item <def.hd_Alc>,<dlocal._for> endfor şeklinde yapman yeterli olucaktı. Uo-Revolt Hayat sana ekşi limonlar sunarsa, sen de tekila ve tuz iste ... "Partners help each other undress before sex. After sex, they always dress on their own. Moral of the story: In life, no one helps you once you get fucked." |








p
git öss'ne çalış sen ne uraşıon script'la filen 
:'(



