Yardım Lonca Ajan Sisteminde Sorun !!

  • Konuyu açan Konuyu açan alemji21
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 12
  • Gösterim Gösterim 1K
Konu sahibi bu konuda soru soruyor. Sorusu ile ilgili bilgisi olanların yanıtlamasını bekliyor.
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.

alemji21

Üye
Üye
Mesaj
97
Çözümler
9
Beğeni
36
Puan
469
Ticaret Puanı
0
Merhaba arkadaşlar filesimde lonca ajan sistemi ekli fakat ajanı secerken düzenleme mevcut değil hatası alıyorum
nasıl çözebilirim Cmd Yetkileri Verildi
herhangi bir syser vermiyor
game.py bu şekilde editlendi

Kod:
Genişlet Daralt Kopyala
    # PRIVATE_SHOP_PRICE_LIST
    def __PrivateShop_PriceList(self, itemVNum, itemPrice):
        uiPrivateShopBuilder.SetPrivateShopItemPrice(itemVNum, itemPrice)   
    # END_OF_PRIVATE_SHOP_PRICE_LIST

    def __Do_Check_War_Player(self, targetName, killCount, deadCount):
        warPlayerCheckQuestionDialog = uiCommon.QuestionDialog3()
        warPlayerCheckQuestionDialog.SetText1("%s isimli oyuncu ajan olabilir." % (targetName))
        warPlayerCheckQuestionDialog.SetText2("Olme: %s Oldurme: %s" % (str(deadCount), str(killCount)))
        warPlayerCheckQuestionDialog.SetText3("Savastan atilsin mi?")
        warPlayerCheckQuestionDialog.SetAcceptText(localeInfo.UI_ACCEPT)
        warPlayerCheckQuestionDialog.SetCancelText(localeInfo.UI_DENY)
        warPlayerCheckQuestionDialog.SetAcceptEvent(lambda arg=True: self.__AnswerWarCheckRequest(arg))
        warPlayerCheckQuestionDialog.SetCancelEvent(lambda arg=False: self.__AnswerWarCheckRequest(arg))
        warPlayerCheckQuestionDialog.Open()
        warPlayerCheckQuestionDialog.name = targetName
        self.warPlayerCheckQuestionDialog = warPlayerCheckQuestionDialog

    def __AnswerWarCheckRequest(self, answer):
        if not self.warPlayerCheckQuestionDialog:
            return

        targetName = self.warPlayerCheckQuestionDialog.name

        if answer:
            net.SendChatPacket("/ajanikov %s" % (str(targetName)))

        self.warPlayerCheckQuestionDialog.Close()
        self.warPlayerCheckQuestionDialog = None

    def __Horse_HideState(self):
        self.affectShower.SetHorseState(0, 0, 0)

    def __Horse_UpdateState(self, level, health, battery):
        self.affectShower.SetHorseState(int(level), int(health), int(battery)
 
ajanikov komutunu source dosyalarınıza eklediniz mi?

Eklededim fakat Oyunda Düzenleme mevcut değil hatası veriyor anlamadım hocam nerde yanlışlık yaptım

Düzenlediğim Cppler Aşağıda kodla Koydum eksik bir şey varmı hocam bu kodlarda yani ekstra ekelemem gereken bir cpp dosyası varmıdır ..

cmd general dosyama eklediğim
C++:
Genişlet Daralt Kopyala
ACMD(do_ajanikov)
{
    char arg1[256];
    one_argument(argument, arg1, sizeof(arg1));

    if (!*arg1)
    {
        ch->ChatPacket(CHAT_TYPE_INFO, "Hata: Gereksiz islem yapmayin.");
        return;
    }
    if (!ch->GetWarMap())
        return;

    LPCHARACTER tch = CHARACTER_MANAGER::instance().FindPC(arg1);
    if (!tch)
        return;
    if (!tch->IsPC())
        return;
    if (ch == tch)
        return;
    if (!tch->GetGuild())
        return;
    if (!ch->GetGuild())
        return;
    if (tch->GetGuild()->GetID() != ch->GetGuild()->GetID())
        return;
    CGuild* loncam = CGuildManager::instance().FindGuild(ch->GetGuild()->GetID());
    CGuild* loncan = CGuildManager::instance().FindGuild(tch->GetGuild()->GetID());
    if ((loncam == NULL) || (loncan == NULL))
    {
        ch->ChatPacket(CHAT_TYPE_INFO, "Loncan yok");
    }
    else
    {
        if (loncan->GetMasterPID() == ch->GetPlayerID())
        {
            if (loncam->RequestRemoveMember(tch->GetPlayerID()))
            {
                ch->ChatPacket(CHAT_TYPE_GUILD, "%s ajan olarak secilip kovuldu.", tch->GetName());
                tch->GoHome();
                return;
            }
            else
            {
                ch->ChatPacket(CHAT_TYPE_INFO, "Hata.");
                return;
            }
        }
        else
        {
            ch->ChatPacket(CHAT_TYPE_INFO, "Lonca Lideri Olman Gerekiyor");
            return;
        }
    }
    return;
}

Cmd Eklediklerim
C++:
Genişlet Daralt Kopyala
ACMD(do_ajanikov);


    { "ajanikov",    do_ajanikov,        0,            POS_DEAD,    GM_PLAYER    },


char.cpp eklediğim

C++:
Genişlet Daralt Kopyala
    m_iWarKillCount    = 0;
    m_iWarDeadCount    = 0;

char.h eklediklerim
C++:
Genişlet Daralt Kopyala
        int                m_iWarKillCount;
        int                m_iWarDeadCount;



        int                GetWarKillCount() { return m_iWarKillCount; }
        void            IncWarKillCount() { ++m_iWarKillCount; }
        void            ResetWarKillCount() { m_iWarKillCount = 0; }

        int                GetWarDeadCount() { return m_iWarDeadCount; }
        void            IncWarDeadCount() { ++m_iWarDeadCount; }
        void            ResetWarDeadCount() { m_iWarDeadCount = 0; }

ve war_map.cpp eklediklerim
C++:
Genişlet Daralt Kopyala
    if (ch->GetGuild() && killer->GetGuild())
    {
        int iRatio = ch->GetWarDeadCount() - ch->GetWarKillCount();
        if (iRatio && iRatio % 10 == 0)
        {
            LPCHARACTER chGuildLeader = ch->GetGuild()->GetMasterCharacter();
            if (chGuildLeader)
            {
                chGuildLeader->ChatPacket(CHAT_TYPE_COMMAND, "WarPlayerCheckReq %s %d %d", ch->GetName(), ch->GetWarKillCount(), ch->GetWarDeadCount());
                //ch->ResetWarDeadCount();
            }
        }
        killer->IncWarKillCount();
        ch->IncWarDeadCount();
    }
 
En son bir moderatör tarafından düzenlenmiş:
Kodlara baktığım kadarıyla doğru gibi gözüküyor. Güncel dosyaları derlediğinize emin misiniz?
 
Oyun karakteriniz ile chat penceresine /ajanikov <player name> şeklinde yazdınız mı?
 
Oyuna girip chat penceresine gm kodu yazar gibi /ajanikov <player name> şu kodu yazmayı dener misiniz? Kodlara göre çalışması gerekiyor.
Yine "düzenleme mevcut değil" diyorsa sourceyi derlerken gmake clean yazıp tekrardan deneyiniz.
 
Oyuna girip chat penceresine gm kodu yazar gibi /ajanikov <player name> şu kodu yazmayı dener misiniz? Kodlara göre çalışması gerekiyor.
Yine "düzenleme mevcut değil" diyorsa sourceyi derlerken gmake clean yazıp tekrardan deneyiniz.
Düzenleme Mevcut değil Diyor hocam oylede

gmake çekerekte denedim aynı sorunu dedi python kodları definesiz eklenmiş ondan olabilirmi hocam
 
Sorun pythondan kaynaklı değil. Bu hata cmd.cpp dosyasında böyle bir kodun tanımlanamadığı anlamına geliyor ama konuda verdiğiniz kodlar doğru gözüküyor.
 
Sorun pythondan kaynaklı değil. Bu hata cmd.cpp dosyasında böyle bir kodun tanımlanamadığı anlamına geliyor ama konuda verdiğiniz kodlar doğru gözüküyor.
Sorunum Çözülmüştür Hocam konu kapatıla bilir
sorunu cmd.cpp deki yetkiyi farklı sistemin altına eklenmiş yani cmd_genaralldeki ajan kodları bir birini tutmuyor aynı sistemin altına ekleyince oldu
 
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.
Geri
Üst