Çözüldü RenderTarget sistemi

  • Konuyu açan Konuyu açan tc1322
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 13
  • Gösterim Gösterim 1K
Bu konu çözüme ulaştırılmıştır. Çözüm için konuya yazılan tüm yorumları okumayı unutmayın. Eğer konudaki yorumlar sorununuzu çözmediyse yeni bir konu açabilirsiniz.
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.

tc1322

MT Üye
MT Üye
Mesaj
369
Çözümler
19
Beğeni
564
Puan
799
Ticaret Puanı
0
Sparky filesindeki render targeti sökerken şöyle bir şeyle karşılaştım

8e6d2fbbd3289c9cf3e7eff7d48895c3.png


c++:
Genişlet Daralt Kopyala
void CRenderTarget::SetArmor(DWORD vnum)
{
    if (!m_visible || !m_pModel)
        return;
    m_pModel->ChangeArmor(vnum);
}

void CRenderTarget::SetShape(DWORD vnum)
{
    if (!m_visible || !m_pModel)
        return;
    m_pModel->SetShape(vnum);
}

void CRenderTarget::SetWeapon(DWORD vnum)
{
    if (!m_visible || !m_pModel)
        return;
    m_pModel->ChangeWeapon(vnum);
}

Altını çizdiği yerleri sildiğim zaman buildde sıkıntı olmuyor hiçbir şekilde. Karşılaştırdığım bir fileste de silinmişti ve oyun içinde sıkıntı yoktu.

Asıl problemim ise oyun içi

Linkleri görebilmek için giriş yap veya kayıt ol.


Binekte sorunsuz çalışıyor fakat kostümlerde itemlerde ve petde etkisi yok. Sparkyden daha önce sökmüş aktif olarak kullanan birisi yardımcı olursa sevinirim çözüm önerilerine açığım.
 
ChangeWeapon ve ChangeArmor fonksiyonlarını incelediniz mi? Visual studio 2. parametrede hata veriyor
ChangeWeapon fonksiyonunda 2. argüman olarak boolean bir değer var o filese ait sanırsam.
Karşılaştırdım da tam olarak anlamadım müsaitseniz bakma şansınız varmı?


Sparky InstanceBase.cpp
Linkleri görebilmek için giriş yap veya kayıt ol.

Sparky CRenderTarget.cpp
Linkleri görebilmek için giriş yap veya kayıt ol.




InstanceBase
Linkleri görebilmek için giriş yap veya kayıt ol.

CRenderTarget
Linkleri görebilmek için giriş yap veya kayıt ol.
 
2.değerin silinmesinden kaynaklı olacağını sanmıyorum. Volvox un paylaştığında da tek değer alıyor.
Bkz:
C++:
Genişlet Daralt Kopyala
void CRenderTarget::SetWeapon(DWORD vnum)
{
    if (!m_visible || !m_pModel)
        return;
    m_pModel->ChangeWeapon(vnum);
}

Sorun python taraflı bir eksiklikten de olabilir.
 
2.değerin silinmesinden kaynaklı olacağını sanmıyorum. Volvox un paylaştığında da tek değer alıyor.
Bkz:
C++:
Genişlet Daralt Kopyala
void CRenderTarget::SetWeapon(DWORD vnum)
{
    if (!m_visible || !m_pModel)
        return;
    m_pModel->ChangeWeapon(vnum);
}

Sorun python taraflı bir eksiklikten de olabilir.
öyle duruyor fakat bir hatada vermiyor, birazdan daha detaylı bakacağım pythona. Volvox'ta py tarafında itemlerle ilgili bölümler vardı yanlış hatırlamıyorsam sparkyde bulamadım o tarz, nasıl işlediğini çözemedim.
 
Karşılaştırdım da tam olarak anlamadım müsaitseniz bakma şansınız varmı?
Winmerge tarzı program ile karşılaştırma yaparsanız daha rahat görürsünüz.
Bakın bahsettiğiniz dosyada şu şekilde değişiklik yapılmış.
C++:
Genişlet Daralt Kopyala
#ifdef ENABLE_WEAPON_RARITY_SYSTEM
#ifdef ENABLE_WEAPON_EVOLUTION_SYSTEM
void CInstanceBase::ChangeWeapon(DWORD eWeapon, DWORD dwWeaponRareLv, DWORD dwEvolution)
#else
void CInstanceBase::ChangeWeapon(DWORD eWeapon, DWORD dwWeaponRareLv)
#endif
#else
void CInstanceBase::ChangeWeapon(DWORD eWeapon)
#endif
{
    if (eWeapon == m_GraphicThingInstance.GetPartItemID(CRaceData::PART_WEAPON))
        return;

#ifdef ENABLE_WEAPON_RARITY_SYSTEM
#ifdef ENABLE_WEAPON_EVOLUTION_SYSTEM
    if (SetWeapon(eWeapon, dwWeaponRareLv, dwEvolution))
#else
    if (SetWeapon(eWeapon, dwWeaponRareLv))
#endif
#else
    if (SetWeapon(eWeapon))
#endif
        RefreshState(CRaceMotionData::NAME_WAIT, true);
}
 
Sadece armordan örnek vereceğim :
Q4V7M.jpg

İnstancbase böyle olsaydı sende o 0ı kullanabilirdin. Yani changearmor fonksiyonunda 1 adet eklenti var büyük ihtimal sende yani şöyle :

bool CInstanceBase::ChangeArmor(DWORD dwArmor)

Bunun için kullanamıyorsun. İstersen o sondaki 0 ı sil hiç bir problem olacağını sanmıyorum.
 
Sadece armordan örnek vereceğim :
Q4V7M.jpg

İnstancbase böyle olsaydı sende o 0ı kullanabilirdin. Yani changearmor fonksiyonunda 1 adet eklenti var büyük ihtimal sende yani şöyle :

bool CInstanceBase::ChangeArmor(DWORD dwArmor)

Bunun için kullanamıyorsun. İstersen o sondaki 0 ı sil hiç bir problem olacağını sanmıyorum.
Problem kaynağı python tarafıymış şuanda tüm fonksiyonları çalışıyor. Verdiğin bilgi içinde sağol uzun zamandır sistemlere bakmıyordum.
 
Problem kaynağı python tarafıymış şuanda tüm fonksiyonları çalışıyor. Verdiğin bilgi içinde sağol uzun zamandır sistemlere bakmıyordum.
Evet pet py taraflı olabilir uitooltip. Çözülmesine sevindim. UserInterface'deki cppyi sanırım buydu: CPythonRenderTargetModule.cpp düzenleyerek elinizdeki silaha bakarken üstünüzdeki diğer eşyalarıda aynı anda göstermesini sağlayabilirsiniz. İyi forumlar.
 
Evet pet py taraflı olabilir uitooltip. Çözülmesine sevindim. UserInterface'deki cppyi sanırım buydu: CPythonRenderTargetModule.cpp düzenleyerek elinizdeki silaha bakarken üstünüzdeki diğer eşyalarıda aynı anda göstermesini sağlayabilirsiniz. İyi forumlar.
Aynanda gösterme olayı :) teşekkürler not edeceğim ilerde düşünürsem kenarda bulunsun.
 
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.
Üst