• Serverınızın epinlerini tamamen Turkmmo güvencesiyle satın. Kredi kartı, mobil ödeme, havale/eft ve uygun komisyon oranıyla. Hemen mağaza başvurunuzu yapın. Oyunalisveris.com





Sitemize reklam vermek için [email protected] adresine mail atabilirsiniz
For Advertising Contact [email protected]


Metin2 Müzik Etkinliği [C++,Python]

5.00 yıldız(lar) 1 Oy

tikky147

Level 11
Site Yetkilisi
Süper Moderatör
Dergi Editörü
Ticaret - 0%
0   0   0
Katılım
19 Eyl 2011
Mesajlar
7,379
Beğeniler
453
MmoLira
288
DevLira
-12
#1
Etkinliğin amacını kısaca anlatmak gerekirse oyundaki tüm oyuncuları verdiğiniz komut ile müzik etkinliğini başlatmaktır.

1
root/game.py açılır

Python:
self.enableXMasBoom = False
Aratılır

Python:
self.enableXMasMuzik = False
Altına Eklenir


---------------------------------------------------------------------------------------

Python:
self.startTimeXMasBoom = 0.0
Aratılır

Python:
self.startTimeXMasMuzik = 0.0
Altına Eklenir


---------------------------------------------------------------------------------------

Python:
self.indexXMasBoom = 0
Aratılır

Python:
self.indexXMasMuzik = 0
Altına Eklenir

---------------------------------------------------------------------------------------

Python:
"xmas_song"                : self.__XMasSong_Enable,
Aratılır

Python:
"xmas_muzik"            : self.__MuzikCal_Enable,
Altına Eklenir

---------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------

Aratılır

Python:
def __XMasBoom_Boom(self):
Altına Eklenir

Python:
    def __XMasMuzik_Update(self):

        self.BOOM_DATA_LIST = ( (2, 5), (5, 2), (7, 3), (10, 3), (20, 5) )
        if self.indexXMasMuzik >= len(self.BOOM_DATA_LIST):
            return

        boomTime = self.BOOM_DATA_LIST[self.indexXMasMuzik][0]
        boomCount = self.BOOM_DATA_LIST[self.indexXMasMuzik][1]

        if app.GetTime() - self.startTimeXMasMuzik > boomTime:

            self.indexXMasMuzik += 1

            for i in xrange(boomCount):
                self.__XMasMuzik_Boom()

    def __XMasMuzik_Boom(self):
        x, y, z = player.GetMainCharacterPosition()
        randX = app.GetRandom(-150, 150)
        randY = app.GetRandom(-150, 150)

        snd.PlaySound3D(x+randX, -y+randY, z, "sound/common/etc/salute.mp3")
---------------------------------------------------------------------------------------------------------------------------------


Aratılır
Python:
def __XMasSong_Enable(self, mode):
Altına Eklenir

def __MuzikCal_Enable(self, mode):

Şeklinde Değiştirilir:
    def __MuzikCal_Enable(self, mode):
  
        if constInfo.MuzikKontrol == False:
            self.__DayMode_Update("dark")
      
        if "1"==mode:
            print "Muzik Acildi"
          
            self.enableXMasMuzik = True
            constInfo.MuzikKontrol = True
            self.startTimeXMasMuzik = app.GetTime()
          
            XMAS_BGM = "bicak_sirti.mp3"

            if app.IsExistFile("BGM/" + XMAS_BGM)==1:
                if musicInfo.fieldMusic != "":
                    snd.FadeOutMusic("BGM/" + musicInfo.fieldMusic , 1)

                musicInfo.fieldMusic=XMAS_BGM
                musicInfo.SaveLastPlayFieldMusic()
              
                snd.FadeInMusic("BGM/" + musicInfo.fieldMusic,1)

        elif "2"==mode:
            print "Muzik Acildi"

            self.enableXMasMuzik = True
            constInfo.MuzikKontrol = True
            self.startTimeXMasMuzik = app.GetTime()
          
            XMAS_BGM = "karli-kayin-ormani.mp3"

            if app.IsExistFile("BGM/" + XMAS_BGM)==1:
                if musicInfo.fieldMusic != "":
                    snd.FadeOutMusic("BGM/" + musicInfo.fieldMusic , 1)

                musicInfo.fieldMusic=XMAS_BGM
                musicInfo.SaveLastPlayFieldMusic()
              
                snd.FadeInMusic("BGM/" + musicInfo.fieldMusic,1)

        elif "3"==mode:
            print "Muzik Acildi"

            self.enableXMasMuzik = True
            constInfo.MuzikKontrol = True
            self.startTimeXMasMuzik = app.GetTime()
          
            XMAS_BGM = "karli-kayin-ormani.mp3"

            if app.IsExistFile("BGM/" + XMAS_BGM)==1:
                if musicInfo.fieldMusic != "":
                    snd.FadeOutMusic("BGM/" + musicInfo.fieldMusic , 1)

                musicInfo.fieldMusic=XMAS_BGM
                musicInfo.SaveLastPlayFieldMusic()
              
                snd.FadeInMusic("BGM/" + musicInfo.fieldMusic,1)

        elif "4"==mode:
            print "Muzik Acildi"

            self.enableXMasMuzik = True
            constInfo.MuzikKontrol = True
            self.startTimeXMasMuzik = app.GetTime()
          
            XMAS_BGM = "karli-kayin-ormani.mp3"

            if app.IsExistFile("BGM/" + XMAS_BGM)==1:
                if musicInfo.fieldMusic != "":
                    snd.FadeOutMusic("BGM/" + musicInfo.fieldMusic , 1)

                musicInfo.fieldMusic=XMAS_BGM
                musicInfo.SaveLastPlayFieldMusic()
              
                snd.FadeInMusic("BGM/" + musicInfo.fieldMusic,1)

        elif "5"==mode:
            print "Muzik Acildi"

            self.enableXMasMuzik = True
            constInfo.MuzikKontrol = True
            self.startTimeXMasMuzik = app.GetTime()
          
            XMAS_BGM = "karli-kayin-ormani.mp3"

            if app.IsExistFile("BGM/" + XMAS_BGM)==1:
                if musicInfo.fieldMusic != "":
                    snd.FadeOutMusic("BGM/" + musicInfo.fieldMusic , 1)

                musicInfo.fieldMusic=XMAS_BGM
                musicInfo.SaveLastPlayFieldMusic()
              
                snd.FadeInMusic("BGM/" + musicInfo.fieldMusic,1)

        else:
      
            print "MuzikCal Kapatildi"
            self.__DayMode_Update("light")
            self.enableXMasMuzik = False
            constInfo.MuzikKontrol = False

            if musicInfo.fieldMusic != "":
                snd.FadeOutMusic("BGM/" + musicInfo.fieldMusic,1)

            musicInfo.fieldMusic=musicInfo.METIN2THEMA
            musicInfo.SaveLastPlayFieldMusic()
            musicInfo.loginMusic=""

            snd.FadeInMusic("BGM/" + musicInfo.fieldMusic)
------------------------------------------------------------------------------------

root/constInfo.py açılır

Arat
Arat:
FOG_LEVEL0 = 4800.0
Altına eklenir
Üstüne Ekle:
MuzikKontrol = False


---------------------------------------------------------------------

root/introloading.py açılır

Arat
Arat:
def __LoadSound(self):
İçerisine Ekle
İçine Ekle:
constInfo.MuzikKontrol = False
---------------------------------------------------------------------

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

root/servercommandparser.py açılır

Python:
"xmas_boom"                : self.__XMasBoom_Enable,
Aratılır

Python:
"xmas_muzik"            : self.__MuzikCal_Enable,
Altına eklenir

--------------------------------------------------------------------------------------------------------------

Python:
def __XMasSnow_Enable(self, mode):
Aratılır

Altına eklenir
Python:
    def __MuzikCal_Enable(self, mode):
        if "1"==mode:
            self.__PreserveCommand("xmas_muzik " + mode)
        elif "2"==mode:
            self.__PreserveCommand("xmas_muzik " + mode)
        elif "3"==mode:
            self.__PreserveCommand("xmas_muzik " + mode)
        elif "4"==mode:
            self.__PreserveCommand("xmas_muzik " + mode)
        elif "5"==mode:
            self.__PreserveCommand("xmas_muzik " + mode)
        else:
            self.__PreserveCommand("xmas_muzik " + mode)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

game/cmd.cpp açılır

C++:
{ "xmas_santa",    do_xmas,        SCMD_XMAS_SANTA,    POS_DEAD,    GM_HIGH_WIZARD    },
Arat

C++:
{ "xmas_muzik",    do_xmas,        SCMD_XMAS_MUZIK,    POS_DEAD,    GM_HIGH_WIZARD    },
Ekle

--------------------------------------

game/cmd.h açılır

C++:
SCMD_XMAS_SANTA,
Arat

C++:
SCMD_XMAS_MUZIK,
Ekle

-------------------------------------------------------------------------------------------

game\cmd_gm.cpp açılır

C++:
case SCMD_XMAS_SANTA:
Arat

C++:
        case SCMD_XMAS_MUZIK:
            ch->ChatPacket(CHAT_TYPE_INFO,"muzik secildi");
            quest::CQuestManager::instance().RequestSetEventFlag("xmas_muzik", flag); //muzik
            break;
Ekle

--------------------------------------------------------------------------------------------------

game/questmanager.cpp açılır

C++:
if ((iEventFlagValue = quest::CQuestManager::instance().GetEventFlag("xmas_boom")))
Arat

C++:
        //muzik
        if ((iEventFlagValue = quest::CQuestManager::instance().GetEventFlag("xmas_muzik")))
        {
            ch->ChatPacket(CHAT_TYPE_COMMAND, "xmas_muzik %d", iEventFlagValue);
        }
Ekle

game/xmas_event.cpp açılır

C++:
if (name == "xmas_snow" || name == "xmas_boom"  || name == "xmas_song" || name == "xmas_tree")
Aratılır

C++:
if (name == "xmas_snow" || name == "xmas_boom" || name == "xmas_muzik" || name == "xmas_song" || name == "xmas_tree")
Değiştirilir


/xmas_muzik deger

----------------------------------------------------------------------------------------

Konu uzun oldu kusura bakmayın . :)


--------------------------------------------------------------------------------------------------------


Güncelleme map giriş müziği ile çakışma olayı giderildi. 11.10.2018

Char.cpp açılır

Arat:
void CHARACTER::MainCharacterPacket()
Arat
Altına:
const BGMInfo& bgmInfo = CHARACTER_GetBGMInfo(mapIndex);
Bul
Altına Ekle:
int MuzikDeger = quest::CQuestManager::instance().GetEventFlag("xmas_muzik");
Altına Ekle


----------------------------------------------------------------------------------------------------

Arat:
strlcpy(mainChrPacket.szBGMName, bgmInfo.name.c_str(), sizeof(mainChrPacket.szBGMName));
Arat
Değiştir:
            if(MuzikDeger == 0){
                strlcpy(mainChrPacket.szBGMName, bgmInfo.name.c_str(), sizeof(mainChrPacket.szBGMName));
            }else if(MuzikDeger == 1){
                strlcpy(mainChrPacket.szBGMName, "bicak_sirti.mp3", sizeof(mainChrPacket.szBGMName));
            }else if(MuzikDeger == 2){
                strlcpy(mainChrPacket.szBGMName, "karli-kayin-ormani.mp3", sizeof(mainChrPacket.szBGMName));
            }else if(MuzikDeger == 3){
                strlcpy(mainChrPacket.szBGMName, "karli-kayin-ormani.mp3", sizeof(mainChrPacket.szBGMName));
            }else if(MuzikDeger == 4){
                strlcpy(mainChrPacket.szBGMName, "karli-kayin-ormani.mp3", sizeof(mainChrPacket.szBGMName));
            }else if(MuzikDeger == 4){
                strlcpy(mainChrPacket.szBGMName, "karli-kayin-ormani.mp3", sizeof(mainChrPacket.szBGMName));
            }
Değiştir


------------------------------------------------------------------------


Arat:
strlcpy(mainChrPacket.szBGMName, bgmInfo.name.c_str(), sizeof(mainChrPacket.szBGMName));
Arat
Değiştir:
            if(MuzikDeger == 0){
                strlcpy(mainChrPacket.szBGMName, bgmInfo.name.c_str(), sizeof(mainChrPacket.szBGMName));
            }else if(MuzikDeger == 1){
                strlcpy(mainChrPacket.szBGMName, "bicak_sirti.mp3", sizeof(mainChrPacket.szBGMName));
            }else if(MuzikDeger == 2){
                strlcpy(mainChrPacket.szBGMName, "karli-kayin-ormani.mp3", sizeof(mainChrPacket.szBGMName));
            }else if(MuzikDeger == 3){
                strlcpy(mainChrPacket.szBGMName, "karli-kayin-ormani.mp3", sizeof(mainChrPacket.szBGMName));
            }else if(MuzikDeger == 4){
                strlcpy(mainChrPacket.szBGMName, "karli-kayin-ormani.mp3", sizeof(mainChrPacket.szBGMName));
            }else if(MuzikDeger == 4){
                strlcpy(mainChrPacket.szBGMName, "karli-kayin-ormani.mp3", sizeof(mainChrPacket.szBGMName));
            }
Değiştir

proxy.php?image=https%3A%2F%2Fi.hizliresim.com%2FZ34P7Z.png&hash=b1213f9788fa921effbdfa0992e413f6

Bu şekilde olacaktır


Müziği

def __MuzikCal_Enable(self, mode):

içerisine eklediğiniz müzik isimleri aynı şekilde buraya eklemeniz gerekecektir.​


Müzikleri şu şekilde ayarlabilirsiniz.

root/game.py açılır def __MuzikCal_Enable(self, mode): ara

5 müzik ile sınırlıdır elif çoğaltırsanız müzik sınırı artar :)

Müzik yolları şu şekilde ayarlanır

örnek if "1"==mode:

XMAS_BGM = "bicak_sirti.mp3" göreceksiniz

bgm / klasörün içindeki müzik adını yazaksınız.​

Kanıt

Kanıt 2

 
Son düzenleme:

LaSTThanatos

Taladro & Canfeza
Telefon Numarası Onaylanmış Üye
Site Yetkilisi
Yönetici
Developer
Ticaret - 0%
0   0   0
Katılım
12 Tem 2017
Mesajlar
5,280
Beğeniler
1,508
MmoLira
346
DevLira
99
#4
Teşekkürler.

Beğendiğim bir özellikti bu TC oynarken de GM müzik veriyordu oyuna bazen güzel oluyordu gayet güzel yani iyi oldu.
 
Üst