romegames 1
romegames
Bvural41 1
Bvural41
Best Studio 1
Best Studio
BlackFullMoon 1
BlackFullMoon
NovaLst 1
NovaLst
SLyFeLLowTR 1
SLyFeLLowTR
xranzei 1
xranzei
InfernoShade 1
InfernoShade
shrpnl 1
shrpnl
D 1
delimuratt
Hikaye Ekle
Reklam vermek için turkmmo@gmail.com

Efsun Aktarma Sistemi

  • Konuyu başlatan Konuyu başlatan Vulpe
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 12
  • Görüntüleme Görüntüleme 4K

Vulpe

Level 2
Üye
Katılım
18 Eki 2016
Konular
9
Mesajlar
77
Reaksiyon Skoru
21
Altın Konu
0
TM Yaşı
9 Yıl 7 Ay 26 Gün
Başarım Puanı
23
MmoLira
4
DevLira
0
Ticaret - 0%
0   0   0

ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!

MkQ83N.jpg


Merhabalar,
Bir KADIR arkadaşımız bu sistemi 2016'da satışa sunduğu fileste ben yaptım gibi birşeyler söylüyormuş böyle bilgili gözükmek için atan tutan arkadaşlara gelmeyiniz bu sistemler 2014 sonunda İbrahim tarafından yapılmıştır.


Kod:
CHAR_İTEM.CPP


//ARAT
case USE_CHANGE_ATTRIBUTE :


//EKLE MUNASİP BİR YERE


                                if (item->GetVnum() == 78023)
                                {
                                    if (!item2)
                                    return false;
                                   
                                        if (item->GetAttributeType(0) == 0)
                                        {
                                            if (item2->GetAttributeCount() == 0)
                                            {
                                                ChatPacket(CHAT_TYPE_INFO, "Bonusu olmayan eşyalara bu işlem yapılamaz!");
                                                return false;
                                            }
                                       
                                            if (item2->GetAttributeType(0) == 71 || item->GetAttributeType(0) == 72)
                                            {
                                                ChatPacket(CHAT_TYPE_INFO, "Ortalama zarar veya Beceri Hasarı bonusu bulunan eşyalara bu yapılamaz!");
                                                return false;
                                            }
                                            if (item2->GetAttributeType(1) == 71 || item->GetAttributeType(1) == 72)
                                            {
                                                ChatPacket(CHAT_TYPE_INFO, "Ortalama zarar veya Beceri Hasarı bonusu bulunan eşyalara bu yapılamaz!");
                                                return false;
                                            }


                                                ChatPacket(CHAT_TYPE_INFO, "Eşyanın bonusları başarıyla efsun aktarma kağıdına aktarıldı.");
                                                int efsuntype1 = item2->GetAttributeType(0);
                                                int efsuntype2 = item2->GetAttributeType(1);
                                                int efsuntype3 = item2->GetAttributeType(2);
                                                int efsuntype4 = item2->GetAttributeType(3);
                                                int efsuntype5 = item2->GetAttributeType(4);
                                       
                                                int efsunvalue1 = item2->GetAttributeValue(0);
                                                int efsunvalue2 = item2->GetAttributeValue(1);
                                                int efsunvalue3 = item2->GetAttributeValue(2);
                                                int efsunvalue4 = item2->GetAttributeValue(3);
                                                int efsunvalue5 = item2->GetAttributeValue(4);
                                       
                                                int itemtype = item2->GetWearFlag();
                                       
                                                item->SetForceAttribute(0,efsuntype1,efsunvalue1);
                                                item->SetForceAttribute(1,efsuntype2,efsunvalue2);
                                                item->SetForceAttribute(2,efsuntype3,efsunvalue3);
                                                item->SetForceAttribute(3,efsuntype4,efsunvalue4);
                                                item->SetForceAttribute(4,efsuntype5,efsunvalue5);
                                                item->SetForceAttribute(5,1,itemtype);
                                       
                                       
                                       
                                                item2->SetForceAttribute(0,0,0);
                                                item2->SetForceAttribute(1,0,0);
                                                item2->SetForceAttribute(2,0,0);
                                                item2->SetForceAttribute(3,0,0);
                                                item2->SetForceAttribute(4,0,0);
                                                item2->Save();
                                                item2->UpdatePacket();
                                       
                                        }
                                        else
                                        {
                                       
                                                if (!item2)
                                                return false;
                                               
                                       
                                                if (item2->GetAttributeCount() == 0)
                                                {
                                                    ChatPacket(CHAT_TYPE_INFO, "Bonusu olmayan eşyalara bu işlem yapılamaz!");
                                                    return false;
                                                }
                                       
                                                if (item2->GetAttributeType(0) == 71 || item->GetAttributeType(0) == 72)
                                                {
                                                    ChatPacket(CHAT_TYPE_INFO, "Ortalama zarar veya Beceri Hasarı bonusu bulunan eşyalara bu yapılamaz!");
                                                    return false;
                                                }
                                       
                                                if (item2->GetAttributeType(1) == 71 || item->GetAttributeType(1) == 72)
                                                {
                                                    ChatPacket(CHAT_TYPE_INFO, "Ortalama zarar veya Beceri Hasarı bonusu bulunan eşyalara bu yapılamaz!");
                                                    return false;
                                                }
                                       
                                       
                                                int efsuntype1 = item->GetAttributeType(0);
                                                int efsuntype2 = item->GetAttributeType(1);
                                                int efsuntype3 = item->GetAttributeType(2);
                                                int efsuntype4 = item->GetAttributeType(3);
                                                int efsuntype5 = item->GetAttributeType(4);
                                       
                                                int efsunvalue1 = item->GetAttributeValue(0);
                                                int efsunvalue2 = item->GetAttributeValue(1);
                                                int efsunvalue3 = item->GetAttributeValue(2);
                                                int efsunvalue4 = item->GetAttributeValue(3);
                                                int efsunvalue5 = item->GetAttributeValue(4);
                                       
                                                int itemtype = item->GetAttributeValue(5);
                                       
                                                if (itemtype != item2->GetWearFlag())
                                                {
                                                    ChatPacket(CHAT_TYPE_INFO, "Bonuslar aktarmak istediğin eşya ile uyumlu değil!");
                                                    return false;
                                                }
                                       
                                                item2->SetForceAttribute(0,efsuntype1,efsunvalue1);
                                                item2->SetForceAttribute(1,efsuntype2,efsunvalue2);
                                                item2->SetForceAttribute(2,efsuntype3,efsunvalue3);
                                                item2->SetForceAttribute(3,efsuntype4,efsunvalue4);
                                                item2->SetForceAttribute(4,efsuntype5,efsunvalue5);
                                       
                                                ChatPacket(CHAT_TYPE_INFO, "Bonuslar başarıyla %s isimli eşyana aktarıldı.",item2->GetName());
                                       
                                       
                                            item->SetCount(item->GetCount()-1);
                                        }
                                       
                                    break;
                                }




UITOOLTİP.PY
//ARAT
def AddItemData
//SU KOD BLOGUNUN ALTINA BIR YERE EKLE


    def AppendAktarmaInformation(self, attrSlot):
        if 0 != attrSlot:
            efsun =  {  
                0 : constInfo.kirmizirenk+"Efsun Yok ", 
                1 : constInfo.yesilrenk+"Max HP +", 
                2 : constInfo.yesilrenk+"Max SP +", 
                3 : constInfo.yesilrenk+"Yaşam Enerjisi +", 
                4 : constInfo.yesilrenk+"Zeka +", 
                5 : constInfo.yesilrenk+"Güç +", 
                6 : constInfo.yesilrenk+"Çeviklik +", 
                7 : constInfo.yesilrenk+"Saldırı Hızı +", 
                8 : constInfo.yesilrenk+"Hareket Hızı +", 
                9 : constInfo.yesilrenk+"Büyü Hızı +", 
                10 : constInfo.yesilrenk+"HP Üretimi %", 
                11 : constInfo.yesilrenk+"SP Üretimi %", 
                12 : constInfo.yesilrenk+"Zehirleme Değişimi %", 
                13 : constInfo.yesilrenk+"Bayılma şansı %", 
                14 : constInfo.yesilrenk+"Yavaşlık Değişimi %", 
                15 : constInfo.yesilrenk+"Kritik Vuruş Şansı %", 
                16 : constInfo.yesilrenk+"Delici Vuruş Şansı %", 
                17 : constInfo.yesilrenk+"Yarı İnsanlara Karşı Güçlü %", 
                18 : constInfo.yesilrenk+"Hayvanlara Karşı Güçlü %", 
                19 : constInfo.yesilrenk+"Orklara Karşı Güçlü %", 
                20 : constInfo.yesilrenk+"Mistiklere Karşı Güçlü %", 
                21 : constInfo.yesilrenk+"Ölümsüzlere Karşı Güçlü %", 
                22 : constInfo.yesilrenk+"Şeytanlara Karşı Güçlü %", 
                23 : constInfo.yesilrenk+"Hasar HP Tarafından Emilicek %", 
                24 : constInfo.yesilrenk+"Hasar SP Tarafından Emilicek %", 
                25 : constInfo.yesilrenk+"Düşmanın Spsini Çalma Sansi %", 
                26 : constInfo.yesilrenk+"Vuruş Yapıldığında Spyi geri Çalma %", 
                27 : constInfo.yesilrenk+"Beden Karşısındaki Atakların Bloklanması %", 
                28 : constInfo.yesilrenk+"Oklardan Korunma Şansı %", 
                29 : constInfo.yesilrenk+"Kılıç Savunması %", 
                30 : constInfo.yesilrenk+"Çift-El Savunması %", 
                31 : constInfo.yesilrenk+"Bıçak Savunması %", 
                32 : constInfo.yesilrenk+"Çan Savunması %", 
                33 : constInfo.yesilrenk+"Yelpaze Savunması %", 
                34 : constInfo.yesilrenk+"Oka Karşı Dayanıklılık %", 
                35 : constInfo.yesilrenk+"Ateşe Karşı Dayanıklılık %", 
                36 : constInfo.yesilrenk+"Simgeye Karşı Dayanıklılık %", 
                37 : constInfo.yesilrenk+"Büyüye Karşı Dayanıklılık %", 
                38 : constInfo.yesilrenk+"Rüzgar Dayanıklılığı %", 
                39 : constInfo.yesilrenk+"Vücut Darbesini Yansıtma Şansı %", 
                40 : constInfo.yesilrenk+"Lanet Yansıtılması %", 
                41 : constInfo.yesilrenk+"Zehre Karşı Koyma %", 
                42 : constInfo.yesilrenk+"Sp Yüklenmesi Değişti", 
                43 : constInfo.yesilrenk+ "Yang Düşme Şansı %", 
                44 : constInfo.yesilrenk+"Yang Düşme Şansı %", 
                45 : constInfo.yesilrenk+"Eşya Düşme Şansı %", 
                46 : constInfo.yesilrenk+"Trank effekt zuwachs %", 
                47 : constInfo.yesilrenk+"HP Yüklenmesi Değişti %", 
                48 : constInfo.yesilrenk+"Sersemletme Karşısında Bağışıklık %", 
                49 : constInfo.yesilrenk+"Yavaşlatma Karşısında Bağışıklık %", 
                50 : constInfo.yesilrenk+"Imun gegen Stürzen ", 
                51 : constInfo.yesilrenk+" ", 
                52 : constInfo.yesilrenk+"Bogenreichweite +", 
                53 : constInfo.yesilrenk+"Saldırı Değeri +", 
                54 : constInfo.yesilrenk+"Savunma +", 
                55 : constInfo.yesilrenk+"Büyülü Saldırı Değeri +", 
                56 : constInfo.yesilrenk+"Büyülü Savunma +", 
                57 : constInfo.yesilrenk+" ", 
                58 : constInfo.yesilrenk+"Max Dayanıklılık +", 
                59 : constInfo.yesilrenk+"Savaşçılara Karşı Güçlü %", 
                60 : constInfo.yesilrenk+"Ninjalara Karşı Güçlü %", 
                61 : constInfo.yesilrenk+"Suralara Karşı Güçlü %", 
                62 : constInfo.yesilrenk+"Şamanlara Karşı Güçlü %", 
                63 : constInfo.yesilrenk+"Yaratıklara Karşı Güçlü %", 
                64 : constInfo.yesilrenk+"Saldırı Değeri +", 
                65 : constInfo.yesilrenk+"Savunma +", 
                66 : constInfo.yesilrenk+"EXP +?%", 
                67 : constInfo.yesilrenk+"Dropchance Gegenstände ", 
                68 : constInfo.yesilrenk+"Dropchance Gold ", 
                69 : constInfo.yesilrenk+" ", 
                70 : constInfo.yesilrenk+" ", 
                71 : constInfo.yesilrenk+"Beceri Hasarı %", 
                72 : constInfo.yesilrenk+"Ortalama Zarar %", 
                73 : constInfo.yesilrenk+"Widerstand gegen Fertigkeitsschaden ", 
                74 : constInfo.yesilrenk+"durchschn. Schadenswiderstand ", 
                75 : constInfo.yesilrenk+" ", 
                76 : constInfo.yesilrenk+"iCafe exp-bonus ", 
                77 : constInfo.yesilrenk+"iCafe Chance auf erbeuten von gegenständen ", 
                78 : constInfo.yesilrenk+"Savaşçı Saldırılarına Karşı Savunma %", 
                79 : constInfo.yesilrenk+"Ninja Saldırılarına Karşı Savunma %", 
                80 : constInfo.yesilrenk+"Sura Saldırılarına Karşı Savunma %", 
                81 : constInfo.yesilrenk+"Şaman Saldırılarına Karşı Savunma %",
            }
            type1 = attrSlot[0][0]
            value1 = attrSlot[0][1]
           
            itemtype = attrSlot[5][1]
                   
            if type1 == 0:
                self.AppendTextLine(constInfo.kirmizirenk+"Efsun Yok")
                return
               
            self.AppendTextLine("%s %s" % (efsun[attrSlot[0][0]], attrSlot[0][1]))
            self.AppendTextLine("%s %s" % (efsun[attrSlot[1][0]], attrSlot[1][1]))
            self.AppendTextLine("%s %s" % (efsun[attrSlot[2][0]], attrSlot[2][1]))
            self.AppendTextLine("%s %s" % (efsun[attrSlot[3][0]], attrSlot[3][1]))
            self.AppendTextLine("%s %s" % (efsun[attrSlot[4][0]], attrSlot[4][1]))
            self.AppendSpace(5)
            if itemtype == 1:
                self.AppendTextLine("Zırh")
            if itemtype == 16:
                self.AppendTextLine("Silah")
            if itemtype == 256:
                self.AppendTextLine("Kalkan")
            if itemtype == 2:
                self.AppendTextLine("Kask")
            if itemtype == 4:
                self.AppendTextLine("Ayakkabı")
            if itemtype == 8:
                self.AppendTextLine("Bilezik")
            if itemtype == 64:
                self.AppendTextLine("Küpe")
            if itemtype == 32:
                self.AppendTextLine("Kolye")
               
           
//ARAT


        ### Hair Preview Image ###
        if self.__IsHair(itemVnum):   
            self.__AppendHairIcon(itemVnum)


//A.EKLE


        if itemVnum == 78023:
            self.AppendAktarmaInformation(attrSlot)
           


CONSTINFO.PY


//EKLE


yesilrenk="|cff00ff00|H|h"




MySQL


Player > item_proto


INSERT INTO `item_proto` VALUES ('78023', 0xBFACC0E7B0E6BAF1BCAD28BCB1B9B0BFEB29, 0x456673756E20416B7461726D61204B61F0FD64FD, '3', '18', '0', '1', '237696', '8196', '0', '', '360000', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '-1', '-1', '-1', '-1', '-1', '-1', '0', '0', '0');




//////////////////////////////////////////////////////////////////////////////////////////////////// EFSUN AKTARMA END ////////////////////////////////////////////////////////////////////////////////////////////////////


Eksik Birşey Durmuyor Ama Deneyin Eksiklik Var İse Gideririm.

Not : İtemin flagını ayarlayın ust uste konmasın bug olusuyordu öyle hatırlıyorum.
 
Moderatör tarafında düzenlendi:
metin2 servicedeki aktarmamıydı bu
 
Merhabalar,
Bir KADIR arkadaşımız bu sistemi 2016'da satışa sunduğu fileste ben yaptım gibi birşeyler söylüyormuş böyle bilgili gözükmek için atan tutan arkadaşlara gelmeyiniz bu sistemler 2014 sonunda İbrahim tarafından yapılmıştır.


Kod:
CHAR_İTEM.CPP


//ARAT 
case USE_CHANGE_ATTRIBUTE :


//EKLE MUNASİP BİR YERE


								if (item->GetVnum() == 78023)
								{
									if (!item2)
									return false;
									
										if (item->GetAttributeType(0) == 0)
										{
											if (item2->GetAttributeCount() == 0)
											{
												ChatPacket(CHAT_TYPE_INFO, "Bonusu olmayan eşyalara bu işlem yapılamaz!");
												return false;
											}
										
											if (item2->GetAttributeType(0) == 71 || item->GetAttributeType(0) == 72)
											{
												ChatPacket(CHAT_TYPE_INFO, "Ortalama zarar veya Beceri Hasarı bonusu bulunan eşyalara bu yapılamaz!");
												return false;
											}
											if (item2->GetAttributeType(1) == 71 || item->GetAttributeType(1) == 72)
											{
												ChatPacket(CHAT_TYPE_INFO, "Ortalama zarar veya Beceri Hasarı bonusu bulunan eşyalara bu yapılamaz!");
												return false;
											}


												ChatPacket(CHAT_TYPE_INFO, "Eşyanın bonusları başarıyla efsun aktarma kağıdına aktarıldı.");
												int efsuntype1 = item2->GetAttributeType(0);
												int efsuntype2 = item2->GetAttributeType(1);
												int efsuntype3 = item2->GetAttributeType(2);
												int efsuntype4 = item2->GetAttributeType(3);
												int efsuntype5 = item2->GetAttributeType(4);
										
												int efsunvalue1 = item2->GetAttributeValue(0);
												int efsunvalue2 = item2->GetAttributeValue(1);
												int efsunvalue3 = item2->GetAttributeValue(2);
												int efsunvalue4 = item2->GetAttributeValue(3);
												int efsunvalue5 = item2->GetAttributeValue(4);
										
												int itemtype = item2->GetWearFlag();
										
												item->SetForceAttribute(0,efsuntype1,efsunvalue1);
												item->SetForceAttribute(1,efsuntype2,efsunvalue2);
												item->SetForceAttribute(2,efsuntype3,efsunvalue3);
												item->SetForceAttribute(3,efsuntype4,efsunvalue4);
												item->SetForceAttribute(4,efsuntype5,efsunvalue5);
												item->SetForceAttribute(5,1,itemtype);
										
										
										
												item2->SetForceAttribute(0,0,0);
												item2->SetForceAttribute(1,0,0);
												item2->SetForceAttribute(2,0,0);
												item2->SetForceAttribute(3,0,0);
												item2->SetForceAttribute(4,0,0);
												item2->Save();
												item2->UpdatePacket();
										
										}
										else
										{
										
												if (!item2)
												return false;
												
										
												if (item2->GetAttributeCount() == 0)
												{
													ChatPacket(CHAT_TYPE_INFO, "Bonusu olmayan eşyalara bu işlem yapılamaz!");
													return false;
												}
										
												if (item2->GetAttributeType(0) == 71 || item->GetAttributeType(0) == 72)
												{
													ChatPacket(CHAT_TYPE_INFO, "Ortalama zarar veya Beceri Hasarı bonusu bulunan eşyalara bu yapılamaz!");
													return false;
												}
										
												if (item2->GetAttributeType(1) == 71 || item->GetAttributeType(1) == 72)
												{
													ChatPacket(CHAT_TYPE_INFO, "Ortalama zarar veya Beceri Hasarı bonusu bulunan eşyalara bu yapılamaz!");
													return false;
												}
										
										
												int efsuntype1 = item->GetAttributeType(0);
												int efsuntype2 = item->GetAttributeType(1);
												int efsuntype3 = item->GetAttributeType(2);
												int efsuntype4 = item->GetAttributeType(3);
												int efsuntype5 = item->GetAttributeType(4);
										
												int efsunvalue1 = item->GetAttributeValue(0);
												int efsunvalue2 = item->GetAttributeValue(1);
												int efsunvalue3 = item->GetAttributeValue(2);
												int efsunvalue4 = item->GetAttributeValue(3);
												int efsunvalue5 = item->GetAttributeValue(4);
										
												int itemtype = item->GetAttributeValue(5);
										
												if (itemtype != item2->GetWearFlag())
												{
													ChatPacket(CHAT_TYPE_INFO, "Bonuslar aktarmak istediğin eşya ile uyumlu değil!");
													return false;
												}
										
												item2->SetForceAttribute(0,efsuntype1,efsunvalue1);
												item2->SetForceAttribute(1,efsuntype2,efsunvalue2);
												item2->SetForceAttribute(2,efsuntype3,efsunvalue3);
												item2->SetForceAttribute(3,efsuntype4,efsunvalue4);
												item2->SetForceAttribute(4,efsuntype5,efsunvalue5);
										
												ChatPacket(CHAT_TYPE_INFO, "Bonuslar başarıyla %s isimli eşyana aktarıldı.",item2->GetName());
										
										
											item->SetCount(item->GetCount()-1);
										}
										
									break;
								}




UITOOLTİP.PY
//ARAT
def AddItemData
//SU KOD BLOGUNUN ALTINA BIR YERE EKLE


	def AppendAktarmaInformation(self, attrSlot):
		if 0 != attrSlot:
			efsun =  {   
				0 : constInfo.kirmizirenk+"Efsun Yok ",  
				1 : constInfo.yesilrenk+"Max HP +",  
				2 : constInfo.yesilrenk+"Max SP +",  
				3 : constInfo.yesilrenk+"Yaşam Enerjisi +",  
				4 : constInfo.yesilrenk+"Zeka +",  
				5 : constInfo.yesilrenk+"Güç +",  
				6 : constInfo.yesilrenk+"Çeviklik +",  
				7 : constInfo.yesilrenk+"Saldırı Hızı +",  
				8 : constInfo.yesilrenk+"Hareket Hızı +",  
				9 : constInfo.yesilrenk+"Büyü Hızı +",  
				10 : constInfo.yesilrenk+"HP Üretimi %",  
				11 : constInfo.yesilrenk+"SP Üretimi %",  
				12 : constInfo.yesilrenk+"Zehirleme Değişimi %",  
				13 : constInfo.yesilrenk+"Bayılma şansı %",  
				14 : constInfo.yesilrenk+"Yavaşlık Değişimi %",  
				15 : constInfo.yesilrenk+"Kritik Vuruş Şansı %",  
				16 : constInfo.yesilrenk+"Delici Vuruş Şansı %",  
				17 : constInfo.yesilrenk+"Yarı İnsanlara Karşı Güçlü %",  
				18 : constInfo.yesilrenk+"Hayvanlara Karşı Güçlü %",  
				19 : constInfo.yesilrenk+"Orklara Karşı Güçlü %",  
				20 : constInfo.yesilrenk+"Mistiklere Karşı Güçlü %",  
				21 : constInfo.yesilrenk+"Ölümsüzlere Karşı Güçlü %",  
				22 : constInfo.yesilrenk+"Şeytanlara Karşı Güçlü %",  
				23 : constInfo.yesilrenk+"Hasar HP Tarafından Emilicek %",  
				24 : constInfo.yesilrenk+"Hasar SP Tarafından Emilicek %",  
				25 : constInfo.yesilrenk+"Düşmanın Spsini Çalma Sansi %",  
				26 : constInfo.yesilrenk+"Vuruş Yapıldığında Spyi geri Çalma %",  
				27 : constInfo.yesilrenk+"Beden Karşısındaki Atakların Bloklanması %",  
				28 : constInfo.yesilrenk+"Oklardan Korunma Şansı %",  
				29 : constInfo.yesilrenk+"Kılıç Savunması %",  
				30 : constInfo.yesilrenk+"Çift-El Savunması %",  
				31 : constInfo.yesilrenk+"Bıçak Savunması %",  
				32 : constInfo.yesilrenk+"Çan Savunması %",  
				33 : constInfo.yesilrenk+"Yelpaze Savunması %",  
				34 : constInfo.yesilrenk+"Oka Karşı Dayanıklılık %",  
				35 : constInfo.yesilrenk+"Ateşe Karşı Dayanıklılık %",  
				36 : constInfo.yesilrenk+"Simgeye Karşı Dayanıklılık %",  
				37 : constInfo.yesilrenk+"Büyüye Karşı Dayanıklılık %",  
				38 : constInfo.yesilrenk+"Rüzgar Dayanıklılığı %",  
				39 : constInfo.yesilrenk+"Vücut Darbesini Yansıtma Şansı %",  
				40 : constInfo.yesilrenk+"Lanet Yansıtılması %",  
				41 : constInfo.yesilrenk+"Zehre Karşı Koyma %",  
				42 : constInfo.yesilrenk+"Sp Yüklenmesi Değişti",  
				43 : constInfo.yesilrenk+ "Yang Düşme Şansı %",  
				44 : constInfo.yesilrenk+"Yang Düşme Şansı %",  
				45 : constInfo.yesilrenk+"Eşya Düşme Şansı %",  
				46 : constInfo.yesilrenk+"Trank effekt zuwachs %",  
				47 : constInfo.yesilrenk+"HP Yüklenmesi Değişti %",  
				48 : constInfo.yesilrenk+"Sersemletme Karşısında Bağışıklık %",  
				49 : constInfo.yesilrenk+"Yavaşlatma Karşısında Bağışıklık %",  
				50 : constInfo.yesilrenk+"Imun gegen Stürzen ",  
				51 : constInfo.yesilrenk+" ",  
				52 : constInfo.yesilrenk+"Bogenreichweite +",  
				53 : constInfo.yesilrenk+"Saldırı Değeri +",  
				54 : constInfo.yesilrenk+"Savunma +",  
				55 : constInfo.yesilrenk+"Büyülü Saldırı Değeri +",  
				56 : constInfo.yesilrenk+"Büyülü Savunma +",  
				57 : constInfo.yesilrenk+" ",  
				58 : constInfo.yesilrenk+"Max Dayanıklılık +",  
				59 : constInfo.yesilrenk+"Savaşçılara Karşı Güçlü %",  
				60 : constInfo.yesilrenk+"Ninjalara Karşı Güçlü %",  
				61 : constInfo.yesilrenk+"Suralara Karşı Güçlü %",  
				62 : constInfo.yesilrenk+"Şamanlara Karşı Güçlü %",  
				63 : constInfo.yesilrenk+"Yaratıklara Karşı Güçlü %",  
				64 : constInfo.yesilrenk+"Saldırı Değeri +",  
				65 : constInfo.yesilrenk+"Savunma +",  
				66 : constInfo.yesilrenk+"EXP +?%",  
				67 : constInfo.yesilrenk+"Dropchance Gegenstände ",  
				68 : constInfo.yesilrenk+"Dropchance Gold ",  
				69 : constInfo.yesilrenk+" ",  
				70 : constInfo.yesilrenk+" ",  
				71 : constInfo.yesilrenk+"Beceri Hasarı %",  
				72 : constInfo.yesilrenk+"Ortalama Zarar %",  
				73 : constInfo.yesilrenk+"Widerstand gegen Fertigkeitsschaden ",  
				74 : constInfo.yesilrenk+"durchschn. Schadenswiderstand ",  
				75 : constInfo.yesilrenk+" ",  
				76 : constInfo.yesilrenk+"iCafe exp-bonus ",  
				77 : constInfo.yesilrenk+"iCafe Chance auf erbeuten von gegenständen ",  
				78 : constInfo.yesilrenk+"Savaşçı Saldırılarına Karşı Savunma %",  
				79 : constInfo.yesilrenk+"Ninja Saldırılarına Karşı Savunma %",  
				80 : constInfo.yesilrenk+"Sura Saldırılarına Karşı Savunma %",  
				81 : constInfo.yesilrenk+"Şaman Saldırılarına Karşı Savunma %",
			} 
			type1 = attrSlot[0][0]
			value1 = attrSlot[0][1]
			
			itemtype = attrSlot[5][1]
					
			if type1 == 0:
				self.AppendTextLine(constInfo.kirmizirenk+"Efsun Yok")
				return
				
			self.AppendTextLine("%s %s" % (efsun[attrSlot[0][0]], attrSlot[0][1]))
			self.AppendTextLine("%s %s" % (efsun[attrSlot[1][0]], attrSlot[1][1]))
			self.AppendTextLine("%s %s" % (efsun[attrSlot[2][0]], attrSlot[2][1]))
			self.AppendTextLine("%s %s" % (efsun[attrSlot[3][0]], attrSlot[3][1]))
			self.AppendTextLine("%s %s" % (efsun[attrSlot[4][0]], attrSlot[4][1]))
			self.AppendSpace(5)
			if itemtype == 1:
				self.AppendTextLine("Zırh")
			if itemtype == 16:
				self.AppendTextLine("Silah")
			if itemtype == 256:
				self.AppendTextLine("Kalkan")
			if itemtype == 2:
				self.AppendTextLine("Kask")
			if itemtype == 4:
				self.AppendTextLine("Ayakkabı")
			if itemtype == 8:
				self.AppendTextLine("Bilezik")
			if itemtype == 64:
				self.AppendTextLine("Küpe")
			if itemtype == 32:
				self.AppendTextLine("Kolye")
				
			
//ARAT


		### Hair Preview Image ###
		if self.__IsHair(itemVnum):	
			self.__AppendHairIcon(itemVnum)


//A.EKLE


		if itemVnum == 78023:
			self.AppendAktarmaInformation(attrSlot)
			


CONSTINFO.PY


//EKLE


yesilrenk="|cff00ff00|H|h"




MySQL 


Player > item_proto


INSERT INTO `item_proto` VALUES ('78023', 0xBFACC0E7B0E6BAF1BCAD28BCB1B9B0BFEB29, 0x456673756E20416B7461726D61204B61F0FD64FD, '3', '18', '0', '1', '237696', '8196', '0', '', '360000', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '-1', '-1', '-1', '-1', '-1', '-1', '0', '0', '0');




//////////////////////////////////////////////////////////////////////////////////////////////////// EFSUN AKTARMA END ////////////////////////////////////////////////////////////////////////////////////////////////////


Eksik Birşey Durmuyor Ama Deneyin Eksiklik Var İse Gideririm.

Not : İtemin flagını ayarlayın ust uste konmasın bug olusuyordu öyle hatırlıyorum.

Pc acilirsa test ederim bugun :))
 
Merhabalar,
Bir KADIR arkadaşımız bu sistemi 2016'da satışa sunduğu fileste ben yaptım gibi birşeyler söylüyormuş böyle bilgili gözükmek için atan tutan arkadaşlara gelmeyiniz bu sistemler 2014 sonunda İbrahim tarafından yapılmıştır.


Kod:
CHAR_İTEM.CPP


//ARAT 
case USE_CHANGE_ATTRIBUTE :


//EKLE MUNASİP BİR YERE


                                if (item->GetVnum() == 78023)
                                {
                                    if (!item2)
                                    return false;
                                    
                                        if (item->GetAttributeType(0) == 0)
                                        {
                                            if (item2->GetAttributeCount() == 0)
                                            {
                                                ChatPacket(CHAT_TYPE_INFO, "Bonusu olmayan eşyalara bu işlem yapılamaz!");
                                                return false;
                                            }
                                        
                                            if (item2->GetAttributeType(0) == 71 || item->GetAttributeType(0) == 72)
                                            {
                                                ChatPacket(CHAT_TYPE_INFO, "Ortalama zarar veya Beceri Hasarı bonusu bulunan eşyalara bu yapılamaz!");
                                                return false;
                                            }
                                            if (item2->GetAttributeType(1) == 71 || item->GetAttributeType(1) == 72)
                                            {
                                                ChatPacket(CHAT_TYPE_INFO, "Ortalama zarar veya Beceri Hasarı bonusu bulunan eşyalara bu yapılamaz!");
                                                return false;
                                            }


                                                ChatPacket(CHAT_TYPE_INFO, "Eşyanın bonusları başarıyla efsun aktarma kağıdına aktarıldı.");
                                                int efsuntype1 = item2->GetAttributeType(0);
                                                int efsuntype2 = item2->GetAttributeType(1);
                                                int efsuntype3 = item2->GetAttributeType(2);
                                                int efsuntype4 = item2->GetAttributeType(3);
                                                int efsuntype5 = item2->GetAttributeType(4);
                                        
                                                int efsunvalue1 = item2->GetAttributeValue(0);
                                                int efsunvalue2 = item2->GetAttributeValue(1);
                                                int efsunvalue3 = item2->GetAttributeValue(2);
                                                int efsunvalue4 = item2->GetAttributeValue(3);
                                                int efsunvalue5 = item2->GetAttributeValue(4);
                                        
                                                int itemtype = item2->GetWearFlag();
                                        
                                                item->SetForceAttribute(0,efsuntype1,efsunvalue1);
                                                item->SetForceAttribute(1,efsuntype2,efsunvalue2);
                                                item->SetForceAttribute(2,efsuntype3,efsunvalue3);
                                                item->SetForceAttribute(3,efsuntype4,efsunvalue4);
                                                item->SetForceAttribute(4,efsuntype5,efsunvalue5);
                                                item->SetForceAttribute(5,1,itemtype);
                                        
                                        
                                        
                                                item2->SetForceAttribute(0,0,0);
                                                item2->SetForceAttribute(1,0,0);
                                                item2->SetForceAttribute(2,0,0);
                                                item2->SetForceAttribute(3,0,0);
                                                item2->SetForceAttribute(4,0,0);
                                                item2->Save();
                                                item2->UpdatePacket();
                                        
                                        }
                                        else
                                        {
                                        
                                                if (!item2)
                                                return false;
                                                
                                        
                                                if (item2->GetAttributeCount() == 0)
                                                {
                                                    ChatPacket(CHAT_TYPE_INFO, "Bonusu olmayan eşyalara bu işlem yapılamaz!");
                                                    return false;
                                                }
                                        
                                                if (item2->GetAttributeType(0) == 71 || item->GetAttributeType(0) == 72)
                                                {
                                                    ChatPacket(CHAT_TYPE_INFO, "Ortalama zarar veya Beceri Hasarı bonusu bulunan eşyalara bu yapılamaz!");
                                                    return false;
                                                }
                                        
                                                if (item2->GetAttributeType(1) == 71 || item->GetAttributeType(1) == 72)
                                                {
                                                    ChatPacket(CHAT_TYPE_INFO, "Ortalama zarar veya Beceri Hasarı bonusu bulunan eşyalara bu yapılamaz!");
                                                    return false;
                                                }
                                        
                                        
                                                int efsuntype1 = item->GetAttributeType(0);
                                                int efsuntype2 = item->GetAttributeType(1);
                                                int efsuntype3 = item->GetAttributeType(2);
                                                int efsuntype4 = item->GetAttributeType(3);
                                                int efsuntype5 = item->GetAttributeType(4);
                                        
                                                int efsunvalue1 = item->GetAttributeValue(0);
                                                int efsunvalue2 = item->GetAttributeValue(1);
                                                int efsunvalue3 = item->GetAttributeValue(2);
                                                int efsunvalue4 = item->GetAttributeValue(3);
                                                int efsunvalue5 = item->GetAttributeValue(4);
                                        
                                                int itemtype = item->GetAttributeValue(5);
                                        
                                                if (itemtype != item2->GetWearFlag())
                                                {
                                                    ChatPacket(CHAT_TYPE_INFO, "Bonuslar aktarmak istediğin eşya ile uyumlu değil!");
                                                    return false;
                                                }
                                        
                                                item2->SetForceAttribute(0,efsuntype1,efsunvalue1);
                                                item2->SetForceAttribute(1,efsuntype2,efsunvalue2);
                                                item2->SetForceAttribute(2,efsuntype3,efsunvalue3);
                                                item2->SetForceAttribute(3,efsuntype4,efsunvalue4);
                                                item2->SetForceAttribute(4,efsuntype5,efsunvalue5);
                                        
                                                ChatPacket(CHAT_TYPE_INFO, "Bonuslar başarıyla %s isimli eşyana aktarıldı.",item2->GetName());
                                        
                                        
                                            item->SetCount(item->GetCount()-1);
                                        }
                                        
                                    break;
                                }




UITOOLTİP.PY
//ARAT
def AddItemData
//SU KOD BLOGUNUN ALTINA BIR YERE EKLE


    def AppendAktarmaInformation(self, attrSlot):
        if 0 != attrSlot:
            efsun =  {   
                0 : constInfo.kirmizirenk+"Efsun Yok ",  
                1 : constInfo.yesilrenk+"Max HP +",  
                2 : constInfo.yesilrenk+"Max SP +",  
                3 : constInfo.yesilrenk+"Yaşam Enerjisi +",  
                4 : constInfo.yesilrenk+"Zeka +",  
                5 : constInfo.yesilrenk+"Güç +",  
                6 : constInfo.yesilrenk+"Çeviklik +",  
                7 : constInfo.yesilrenk+"Saldırı Hızı +",  
                8 : constInfo.yesilrenk+"Hareket Hızı +",  
                9 : constInfo.yesilrenk+"Büyü Hızı +",  
                10 : constInfo.yesilrenk+"HP Üretimi %",  
                11 : constInfo.yesilrenk+"SP Üretimi %",  
                12 : constInfo.yesilrenk+"Zehirleme Değişimi %",  
                13 : constInfo.yesilrenk+"Bayılma şansı %",  
                14 : constInfo.yesilrenk+"Yavaşlık Değişimi %",  
                15 : constInfo.yesilrenk+"Kritik Vuruş Şansı %",  
                16 : constInfo.yesilrenk+"Delici Vuruş Şansı %",  
                17 : constInfo.yesilrenk+"Yarı İnsanlara Karşı Güçlü %",  
                18 : constInfo.yesilrenk+"Hayvanlara Karşı Güçlü %",  
                19 : constInfo.yesilrenk+"Orklara Karşı Güçlü %",  
                20 : constInfo.yesilrenk+"Mistiklere Karşı Güçlü %",  
                21 : constInfo.yesilrenk+"Ölümsüzlere Karşı Güçlü %",  
                22 : constInfo.yesilrenk+"Şeytanlara Karşı Güçlü %",  
                23 : constInfo.yesilrenk+"Hasar HP Tarafından Emilicek %",  
                24 : constInfo.yesilrenk+"Hasar SP Tarafından Emilicek %",  
                25 : constInfo.yesilrenk+"Düşmanın Spsini Çalma Sansi %",  
                26 : constInfo.yesilrenk+"Vuruş Yapıldığında Spyi geri Çalma %",  
                27 : constInfo.yesilrenk+"Beden Karşısındaki Atakların Bloklanması %",  
                28 : constInfo.yesilrenk+"Oklardan Korunma Şansı %",  
                29 : constInfo.yesilrenk+"Kılıç Savunması %",  
                30 : constInfo.yesilrenk+"Çift-El Savunması %",  
                31 : constInfo.yesilrenk+"Bıçak Savunması %",  
                32 : constInfo.yesilrenk+"Çan Savunması %",  
                33 : constInfo.yesilrenk+"Yelpaze Savunması %",  
                34 : constInfo.yesilrenk+"Oka Karşı Dayanıklılık %",  
                35 : constInfo.yesilrenk+"Ateşe Karşı Dayanıklılık %",  
                36 : constInfo.yesilrenk+"Simgeye Karşı Dayanıklılık %",  
                37 : constInfo.yesilrenk+"Büyüye Karşı Dayanıklılık %",  
                38 : constInfo.yesilrenk+"Rüzgar Dayanıklılığı %",  
                39 : constInfo.yesilrenk+"Vücut Darbesini Yansıtma Şansı %",  
                40 : constInfo.yesilrenk+"Lanet Yansıtılması %",  
                41 : constInfo.yesilrenk+"Zehre Karşı Koyma %",  
                42 : constInfo.yesilrenk+"Sp Yüklenmesi Değişti",  
                43 : constInfo.yesilrenk+ "Yang Düşme Şansı %",  
                44 : constInfo.yesilrenk+"Yang Düşme Şansı %",  
                45 : constInfo.yesilrenk+"Eşya Düşme Şansı %",  
                46 : constInfo.yesilrenk+"Trank effekt zuwachs %",  
                47 : constInfo.yesilrenk+"HP Yüklenmesi Değişti %",  
                48 : constInfo.yesilrenk+"Sersemletme Karşısında Bağışıklık %",  
                49 : constInfo.yesilrenk+"Yavaşlatma Karşısında Bağışıklık %",  
                50 : constInfo.yesilrenk+"Imun gegen Stürzen ",  
                51 : constInfo.yesilrenk+" ",  
                52 : constInfo.yesilrenk+"Bogenreichweite +",  
                53 : constInfo.yesilrenk+"Saldırı Değeri +",  
                54 : constInfo.yesilrenk+"Savunma +",  
                55 : constInfo.yesilrenk+"Büyülü Saldırı Değeri +",  
                56 : constInfo.yesilrenk+"Büyülü Savunma +",  
                57 : constInfo.yesilrenk+" ",  
                58 : constInfo.yesilrenk+"Max Dayanıklılık +",  
                59 : constInfo.yesilrenk+"Savaşçılara Karşı Güçlü %",  
                60 : constInfo.yesilrenk+"Ninjalara Karşı Güçlü %",  
                61 : constInfo.yesilrenk+"Suralara Karşı Güçlü %",  
                62 : constInfo.yesilrenk+"Şamanlara Karşı Güçlü %",  
                63 : constInfo.yesilrenk+"Yaratıklara Karşı Güçlü %",  
                64 : constInfo.yesilrenk+"Saldırı Değeri +",  
                65 : constInfo.yesilrenk+"Savunma +",  
                66 : constInfo.yesilrenk+"EXP +?%",  
                67 : constInfo.yesilrenk+"Dropchance Gegenstände ",  
                68 : constInfo.yesilrenk+"Dropchance Gold ",  
                69 : constInfo.yesilrenk+" ",  
                70 : constInfo.yesilrenk+" ",  
                71 : constInfo.yesilrenk+"Beceri Hasarı %",  
                72 : constInfo.yesilrenk+"Ortalama Zarar %",  
                73 : constInfo.yesilrenk+"Widerstand gegen Fertigkeitsschaden ",  
                74 : constInfo.yesilrenk+"durchschn. Schadenswiderstand ",  
                75 : constInfo.yesilrenk+" ",  
                76 : constInfo.yesilrenk+"iCafe exp-bonus ",  
                77 : constInfo.yesilrenk+"iCafe Chance auf erbeuten von gegenständen ",  
                78 : constInfo.yesilrenk+"Savaşçı Saldırılarına Karşı Savunma %",  
                79 : constInfo.yesilrenk+"Ninja Saldırılarına Karşı Savunma %",  
                80 : constInfo.yesilrenk+"Sura Saldırılarına Karşı Savunma %",  
                81 : constInfo.yesilrenk+"Şaman Saldırılarına Karşı Savunma %",
            } 
            type1 = attrSlot[0][0]
            value1 = attrSlot[0][1]
            
            itemtype = attrSlot[5][1]
                    
            if type1 == 0:
                self.AppendTextLine(constInfo.kirmizirenk+"Efsun Yok")
                return
                
            self.AppendTextLine("%s %s" % (efsun[attrSlot[0][0]], attrSlot[0][1]))
            self.AppendTextLine("%s %s" % (efsun[attrSlot[1][0]], attrSlot[1][1]))
            self.AppendTextLine("%s %s" % (efsun[attrSlot[2][0]], attrSlot[2][1]))
            self.AppendTextLine("%s %s" % (efsun[attrSlot[3][0]], attrSlot[3][1]))
            self.AppendTextLine("%s %s" % (efsun[attrSlot[4][0]], attrSlot[4][1]))
            self.AppendSpace(5)
            if itemtype == 1:
                self.AppendTextLine("Zırh")
            if itemtype == 16:
                self.AppendTextLine("Silah")
            if itemtype == 256:
                self.AppendTextLine("Kalkan")
            if itemtype == 2:
                self.AppendTextLine("Kask")
            if itemtype == 4:
                self.AppendTextLine("Ayakkabı")
            if itemtype == 8:
                self.AppendTextLine("Bilezik")
            if itemtype == 64:
                self.AppendTextLine("Küpe")
            if itemtype == 32:
                self.AppendTextLine("Kolye")
                
            
//ARAT


        ### Hair Preview Image ###
        if self.__IsHair(itemVnum):    
            self.__AppendHairIcon(itemVnum)


//A.EKLE


        if itemVnum == 78023:
            self.AppendAktarmaInformation(attrSlot)
            


CONSTINFO.PY


//EKLE


yesilrenk="|cff00ff00|H|h"




MySQL 


Player > item_proto


INSERT INTO `item_proto` VALUES ('78023', 0xBFACC0E7B0E6BAF1BCAD28BCB1B9B0BFEB29, 0x456673756E20416B7461726D61204B61F0FD64FD, '3', '18', '0', '1', '237696', '8196', '0', '', '360000', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '-1', '-1', '-1', '-1', '-1', '-1', '0', '0', '0');




//////////////////////////////////////////////////////////////////////////////////////////////////// EFSUN AKTARMA END ////////////////////////////////////////////////////////////////////////////////////////////////////


Eksik Birşey Durmuyor Ama Deneyin Eksiklik Var İse Gideririm.

Not : İtemin flagını ayarlayın ust uste konmasın bug olusuyordu öyle hatırlıyorum.

Sistem sahibinden izin alınarak paylaşılmadıysa kapatırmısın konuyu.
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst