Reklam vermek için [email protected]
Kaynak ikonu

Onaylı HP-SP Sistemi #ZacqooLeaven 1

indirmek için izniniz yok
Bu sistemin amacı birisine düello isteği gönderdiğinizde ws yaparken hp - sp gösterme seçeneğini belirler , iki kişi kabul ederse ikiside hp sp görebilir veya bir kişi kabul eder diğeri red ederse kabul eden taraf görüntüler her neyse eklediğinizde görürsünüz zaten
NOT: .py sorunu yoktur konudan alın
Forumlarda daha önce paylaşılmadı, okadar kişi istedi bilen ve ekleyebilen arkadaşlar parayla sattılar, konuyu paylaşmalarını bekledimde biraz daha beklesem 2 yıl geçerdi heralde her neyse bundan sonra bütün sistemleri çıkarıp size paylaşacağım faydalanın el alemden isteyip durmayın şahsen problem yaşadım @Evlayon; efendide istekde bulundum kendisi cevap vermedi teşekkür ediyorum gelişmeme vesile oldu.

Çalıştığına dair (çalışmıyor diyenler tekrar tekrar tekrar tekrar eklesinler hepsine tek tek ekleyemem) ;

Sorunsuz Calışmakta Sağol canısı


Sistem sorunsuz çalışmaktadır. Teşekkürler

Warezde olan sistemlerle hava atanlara inat özel sistemleri paylaşacağım, iyi günlerde kullanın :m26:
Not: Eğer daha önce normal hp - sp sistemini eklediyseniz aşşağıdaki konudan bütün kodlarını tek tek kaldırın ve bu sistemi öyle ekleyin.
http://www.turkmmo.com/metin2-pvp-c...duello-atarken-rakibin-canini-gorme-yeni.html


Resimler
http://i.hizliresim.com/poRQ5z.png

http://i.hizliresim.com/XoBz86.png

http://i.hizliresim.com/GkvrW7.png

constinfo.py acilir musait alana yerlestirilir

Kod:
INPUT_IGNORE = 0
DUELLODAIZINVARMI = ""
BenimDuelloIznim = ""
PLAYER_HP = 0
PLAYER_MAX_HP = 0
PLAYER_SP = 0
PLAYER_MAX_SP = 0
PLAYER_NAME = ""

INPUT = 0
PYTHONISLEM = ""
PYTHONTOLUA = 0

game.py acilir aratilir
Kod:
            "CloseSafebox"            : self.CommandCloseSafebox,

altina yapistirilir
Kod:
            "PythonToLua"            : self.__PythonToLua, #    ZacqooLeaven Share
            "PythonIslem"            : self.__PythonIslem, #     ZacqooLeaven Share
            "LuaToPython"            : self.__LuaToPython, #         ZacqooLeaven Share


game.py icinde ,aratılır
Kod:
defOpenQuestWindow(self, skin, idx):

altındakiler değiştirilir
Kod:
        if constInfo.INPUT == 1:
            return
        self.interface.OpenQuestWindow(skin, idx)
aratılır
Kod:
    def OnRecvWhisper(self, mode, name, line):
        if mode == chat.WHISPER_TYPE_GM:
            self.interface.RegisterGameMasterName(name)
ve bloğun altına aşşağıdaki eklenir
Kod:
        if line.find("zacqooleavenhpspq") != -1:
            chat.AppendChat(chat.CHAT_TYPE_INFO, locale.RAKIPKABULETMEDILANXD)
            return
        if line.find("zacqooleavenhpsp") != -1:
            chat.AppendChat(chat.CHAT_TYPE_INFO, locale.RAKIPKABULETMEDILANXD2)
            return

        if line.find('HP kabul etmedi') != -1:
            chat.AppendChat(chat.CHAT_TYPE_INFO, name + ' adli oyuncu HP ve SP gostermesini redetti. ')
            constInfo.DUELLODAIZINVARMI = "Kabul etmedi."
            return
        elif line.find('HP kabul ettimaq') != -1:
            chat.AppendChat(chat.CHAT_TYPE_INFO, name + " adli oyuncu duello'da HP ve SP gosterme'yi kabul etti. ")
            constInfo.DUELLODAIZINVARMI = "Kabul etti."
            return
        elif line.find('C kabul etmedi') != -1:
            chat.AppendChat(chat.CHAT_TYPE_INFO, name + ' adli oyuncu HP ve SP gotermesini redetti. ')
            constInfo.DUELLODAIZINVARMI = "Kabul etmedi."
            return
        elif line.find('C kabul ettimaq') != -1:
            chat.AppendChat(chat.CHAT_TYPE_INFO, name + " adli oyuncu duello'da HP ve SP gosterme'yi kabul etti. ")
            constInfo.DUELLODAIZINVARMI = "Kabul etti."
            return
        else:
            pass

game.py açılır ve en aşşağıya eklenir
Kod:
    ##zacqooleaven hp sp onay baslat      
    def __PythonToLua(self, id):
        constInfo.PYTHONTOLUA = int(id)

    def __PythonIslem(self, PythonIslem):
        if PythonIslem == "PYTHONISLEM":
            net.SendQuestInputStringPacket(constInfo.PYTHONISLEM)
        elif PythonIslem == "PLAYER_VID":
            net.SendQuestInputStringPacket(str(constInfo.PLAYER_VID))
  
    def __LuaToPython(self, LuaToPython):
        if LuaToPython.find("#quest_input#") != -1:
            constInfo.INPUT = 1
        elif LuaToPython.find("#quest_inputbitir#") != -1:
            constInfo.INPUT = 0
        elif LuaToPython.find("#rakip_hp_sp#") != -1:
            constInfo.PLAYER_HP = LuaToPython.split("|")[1]
            constInfo.PLAYER_MAX_HP = LuaToPython.split("|")[2]
            constInfo.PLAYER_SP = LuaToPython.split("|")[3]
            constInfo.PLAYER_MAX_SP = LuaToPython.split("|")[4]
    ##zacqooleaven hp sp onay bitir
uitarget.py acilir ustteki importlarin altina sunlar eklenir ;
Kod:
import os
import uiCommon
import chat
import uiHealth
import event

uitarget.py icerisinde aratilir
Kod:
    def OnUpdate(self):
altına eklenir
Kod:
        if self.vid != 0 and player.IsPVPInstance(self.vid) and constInfo.DUELLODAIZINVARMI == "Kabul etti.":
            constInfo.PLAYER_VID = self.vid
            constInfo.PYTHONISLEM = "#hp_sp#"
            event.QuestButtonClick(constInfo.PYTHONTOLUA)
            if not self.healthBoard.IsShow():
                self.healthBoard.Show()
uitarget.py icerisinde aratilir
Kod:
    def __init__(self):
altina eklenir
Kod:
        self.healthBoard = uiHealth.HealthBoard()

uitarget.py icerisinde aratilir
Kod:
    def Close(self):
altina eklenir
Kod:
        self.__Initialize()
        self.healthBoard.Hide()
        self.Hide()

uitarget.py icerisinde aratilir
Kod:
    def OnPVP(self):
        net.SendChatPacket("/pvp %d" % (self.vid))
assagidakiyle komple degistirilir
Kod:
    def OnPVP(self):
        """ Paylasimci ZacqooLeaven  """
        if player.IsChallengeInstance(self.vid):
            questionDialog = uiCommon.QuestionDialog()
            if constInfo.DUELLODAIZINVARMI == "":
                questionDialog.SetText("Rakibin HP ve SP gorebilsin mi ? " + " " + chr.GetNameByVID(self.vid)+": Rakip kabul etmedi.")
            else:
                questionDialog.SetText("Rakibin HP ve SP gorebilsin mi ? " + " " + chr.GetNameByVID(self.vid)+":" + constInfo.DUELLODAIZINVARMI)
            questionDialog.SetAcceptEvent(ui.__mem_func__(self.Yes2))
            questionDialog.SetCancelEvent(ui.__mem_func__(self.No2))
            questionDialog.Open()
            self.questionDialog = questionDialog
        elif not player.IsCantFightInstance(self.vid) or player.IsRevengeInstance(self.vid) or player.IsChallengeInstance(self.vid):
            questionDialog = uiCommon.QuestionDialog()
            questionDialog.SetText("Rakibinin HP ve SP gormesine izin veriyor musun? ")
            questionDialog.SetAcceptEvent(ui.__mem_func__(self.Yes))
            questionDialog.SetCancelEvent(ui.__mem_func__(self.No))
            questionDialog.Open()
            self.questionDialog = questionDialog
      
    def Yes(self):
        self.questionDialog.Close()
        net.SendWhisperPacket(chr.GetNameByVID(self.vid), "||"+"HP kabul ettimaq.")
        net.SendChatPacket("/pvp %d" % (self.vid))
      
    def No(self):
        self.questionDialog.Close()
        net.SendWhisperPacket(chr.GetNameByVID(self.vid), "||"+"HP kabul etmedi.Hpstanceingilizcebitti")
        net.SendChatPacket("/pvp %d" % (self.vid))
      
    def Yes2(self):
        if constInfo.DUELLODAIZINVARMI == "Kabul etmedi." or constInfo.DUELLODAIZINVARMI == "":
            constInfo.DUELLODAIZINVARMI = ""
            chat.AppendChat(chat.CHAT_TYPE_INFO, locale.RAKIPKABULETMEDISENDEETMEDIN)
            net.SendChatPacket("/pvp %d" % (self.vid))
            net.SendWhisperPacket(chr.GetNameByVID(self.vid), '||zacqooleavenhpsp||')
        else:
            net.SendWhisperPacket(chr.GetNameByVID(self.vid), "||"+"C kabul ettimaq.")
            net.SendChatPacket("/pvp %d" % (self.vid))
        self.questionDialog.Close()
      
    def No2(self):
        self.questionDialog.Close()
        if constInfo.DUELLODAIZINVARMI == "Kabul etti.":
            constInfo.DUELLODAIZINVARMI = ""
            chat.AppendChat(chat.CHAT_TYPE_INFO, locale.RAKIPKABULETMEDISENDEETMEDIN2)
            net.SendWhisperPacket(chr.GetNameByVID(self.vid), '||zacqooleavenhpspq||')
            net.SendChatPacket("/pvp %d" % (self.vid))
        else:
            net.SendWhisperPacket(chr.GetNameByVID(self.vid), "||"+"C kabul etmedi.Hpstanceingilizcebitti")
            net.SendChatPacket("/pvp %d" % (self.vid))

locale_tr > locale > tr > locale_game.txt açılır ve en alta eklenir
Kod:
RAKIPKABULETMEDILANXD2    <Sistem> HP ve SP görüntülemesi için rakibin ve sizin onayınız gerekir.
RAKIPKABULETMEDILANXD    <Sistem> Rakibiniz HP ve SP görüntülemesini redetti. Rakibiniz HP ve SP'nizi görüntülemeyecek.
RAKIPKABULETMEDISENDEETMEDIN    <Sistem> Rakibiniz HP ve SP görüntülemesini redetti. Rakibiniz HP ve SP'nizi görüntülemeyecek.
RAKIPKABULETMEDISENDEETMEDIN2    <Sistem> HP ve SP görüntülemesini redettiniz. Taraflar HP ve SP görüntülemeyecek.

İndirilmesi gereken şu dosyaları indirin root içerisinde uihealth.py'yi root'un içerisine atıyoruz, quest klasörünün içindeki zcwsonay.lua 'yı questten okutuyoruz ve işlem tamamdır :m26:

İndirmek için tıklayın
Virüstotal

Ufak bir güncelleme (düello başlangıc efekt)
Eğer düello başladığında geri sayma efektini kullanıyorsanız problem oluşturabilir ikisini bir arada çalıştırmayı başaran @frenzyboy; 'a katkılarından dolayı teşekkürler.
uitarget.py açılır ve aratılır
Kod:
self.buttonDict[localeInfo.TARGET_BUTTON_FIGHT].SetEvent(ui.__mem_func__(self.demirwsgame))
Altındaki 2 satır değiştirilir
Kod:
self.buttonDict[localeInfo.TARGET_BUTTON_ACCEPT_FIGHT].SetEvent(ui.__mem_func__(self.demirwsgame))
self.buttonDict[localeInfo.TARGET_BUTTON_AVENGE].SetEvent(ui.__mem_func__(self.demirwsgame))
Tekrar aratılır :
Kod:
 def demirwsgame(self):
kod bloğu tamamen değiştirilir
Kod:
def demirwsgame(self):        
        if player.IsChallengeInstance(self.vid):
        questionDialog = uiCommon.QuestionDialog()
        if constInfo.DUELLODAIZINVARMI == "":
            questionDialog.SetText("Rakibin HP ve SP gorebilsin mi ? " + " " + chr.GetNameByVID(self.vid)+": Rakip kabul etmedi.")
        else:
            questionDialog.SetText("Rakibin HP ve SP gorebilsin mi ? " + " " + chr.GetNameByVID(self.vid)+":" + constInfo.DUELLODAIZINVARMI)
        questionDialog.SetAcceptEvent(ui.__mem_func__(self.Yes2))
        questionDialog.SetCancelEvent(ui.__mem_func__(self.No2))
        questionDialog.Open()
        self.questionDialog = questionDialog
    elif not player.IsCantFightInstance(self.vid) or player.IsRevengeInstance(self.vid) or player.IsChallengeInstance(self.vid):
        questionDialog = uiCommon.QuestionDialog()
        questionDialog.SetText("Rakibinin HP ve SP gormesine izin veriyor musun? ")
        questionDialog.SetAcceptEvent(ui.__mem_func__(self.Yes))
        questionDialog.SetCancelEvent(ui.__mem_func__(self.No))
        questionDialog.Open()
        self.questionDialog = questionDialog
             
def Yes(self):
    self.questionDialog.Close()
    net.SendWhisperPacket(chr.GetNameByVID(self.vid), "||"+"HP kabul ettimaq.")
    net.SendChatPacket("/pvp %d" % (self.vid))
    constInfo.demirstartgame = self.vid
    event.QuestButtonClick(constInfo.demirvidgame)
     
def No(self):
    self.questionDialog.Close()
    net.SendWhisperPacket(chr.GetNameByVID(self.vid), "||"+"HP kabul etmedi.Hpstanceingilizcebitti")
    net.SendChatPacket("/pvp %d" % (self.vid))
    constInfo.demirstartgame = self.vid
    event.QuestButtonClick(constInfo.demirvidgame)
     
def Yes2(self):
    if constInfo.DUELLODAIZINVARMI == "Kabul etmedi.":
        if constInfo.DUELLODAIZINVARMI == "":
            constInfo.DUELLODAIZINVARMI = ""
            chat.AppendChat(chat.CHAT_TYPE_INFO, localeInfo.RAKIPKABULETMEDISENDEETMEDIN)
            constInfo.demirstartgame = self.vid
            event.QuestButtonClick(constInfo.demirvid)  
            net.SendWhisperPacket(chr.GetNameByVID(self.vid), '||zacqooleavenhpsp||')
    else:
        net.SendWhisperPacket(chr.GetNameByVID(self.vid), "||"+"C kabul ettimaq.")
        constInfo.demirstartgame = self.vid
        event.QuestButtonClick(constInfo.demirvid)
    self.questionDialog.Close()
     
def No2(self):
    self.questionDialog.Close()
    if constInfo.DUELLODAIZINVARMI == "Kabul etti.":
        constInfo.DUELLODAIZINVARMI = ""
        chat.AppendChat(chat.CHAT_TYPE_INFO, localeInfo.RAKIPKABULETMEDISENDEETMEDIN2)
        net.SendWhisperPacket(chr.GetNameByVID(self.vid), '||zacqooleavenhpspq||')
        constInfo.demirstartgame = self.vid
        event.QuestButtonClick(constInfo.demirvid)
    else:
        net.SendWhisperPacket(chr.GetNameByVID(self.vid), "||"+"C kabul etmedi.Hpstanceingilizcebitti")
        constInfo.demirstartgame = self.vid
        event.QuestButtonClick(constInfo.demirvid)
Eğer yukarıdaki kodlar çalışmazsa bunu deneyebilirsiniz @xawi25; teşekkürler)

Yazar
ZacqooLeaven
Kaynak İndirilme
23
Görüntüleme
182
İlk yayınlama
Son Güncelleme
Değerlendirme
0.00 yıldız(lar) 0 rating
Üst