HERAKLES Otomatik Avlı kalıcı sunucu. 19 Haziran'da açılıyor. Atius & Wizard güvencesiyle hemen kayıt ol, ön kayıt ödülleri aktif. HEMEN TIKLA!
Boss isimlerini slotların arasından seçmek zor olduğu için böyle bir sistem yapma gereği duydum.
Daha önce yapıldı mı bilmiyorum ama böyle bir sistem bulamadım.
Bosslar normal canavarlardan farklı olarak beyaz-turkuaz arası bir renkte gözüküyor.
Colorinfo.py deki değerlerden istediğiniz rengi verebilirsiniz.
/////////////////////////////////////////////////
Client
/////////////////////////////////////////////////
userinterface/InstanceBase.cpp
Ara:
BOOL CInstanceBase::IsFlag()
{
if (GetRace() == 20035)
return TRUE;
if (GetRace() == 20036)
return TRUE;
if (GetRace() == 20037)
return TRUE;
return FALSE;
}
Bu kod blogunun altina bunu ekleyin:
BOOL CInstanceBase::IsBoss()
{
if (GetRace() == 691)
return TRUE;
if (GetRace() == 692)
return TRUE;
if (GetRace() == 693)
return TRUE;
if (GetRace() == 791)
return TRUE;
if (GetRace() == 991)
return TRUE;
if (GetRace() == 992)
return TRUE;
if (GetRace() == 993)
return TRUE;
if (GetRace() == 1091)
return TRUE;
if (GetRace() == 1092)
return TRUE;
if (GetRace() == 1093)
return TRUE;
if (GetRace() == 1094)
return TRUE;
if (GetRace() == 1095)
return TRUE;
if (GetRace() == 2191)
return TRUE;
if (GetRace() == 1191)
return TRUE;
if (GetRace() == 1192)
return TRUE;
if (GetRace() == 1304)
return TRUE;
if (GetRace() == 1306)
return TRUE;
if (GetRace() == 1307)
return TRUE;
if (GetRace() == 1901)
return TRUE;
if (GetRace() == 1902)
return TRUE;
if (GetRace() == 1903)
return TRUE;
if (GetRace() == 2206)
return TRUE;
if (GetRace() == 2207)
return TRUE;
if (GetRace() == 2291)
return TRUE;
if (GetRace() == 2306)
return TRUE;
if (GetRace() == 2307)
return TRUE;
if (GetRace() == 2492)
return TRUE;
if (GetRace() == 2493)
return TRUE;
if (GetRace() == 2494)
return TRUE;
if (GetRace() == 2598)
return TRUE;
if (GetRace() == 3090)
return TRUE;
if (GetRace() == 3091)
return TRUE;
if (GetRace() == 3190)
return TRUE;
if (GetRace() == 3191)
return TRUE;
if (GetRace() == 3290)
return TRUE;
if (GetRace() == 3291)
return TRUE;
if (GetRace() == 3390)
return TRUE;
if (GetRace() == 3391)
return TRUE;
if (GetRace() == 3490)
return TRUE;
if (GetRace() == 3491)
return TRUE;
if (GetRace() == 3590)
return TRUE;
if (GetRace() == 3591)
return TRUE;
if (GetRace() == 3690)
return TRUE;
if (GetRace() == 3691)
return TRUE;
if (GetRace() == 3790)
return TRUE;
if (GetRace() == 3791)
return TRUE;
if (GetRace() == 3890)
return TRUE;
if (GetRace() == 3891)
return TRUE;
if (GetRace() == 5001)
return TRUE;
if (GetRace() == 5004)
return TRUE;
if (GetRace() == 5002)
return TRUE;
if (GetRace() == 5161)
return TRUE;
if (GetRace() == 5162)
return TRUE;
if (GetRace() == 5163)
return TRUE;
if (GetRace() == 6091)
return TRUE;
if (GetRace() == 6191)
return TRUE;
return FALSE;
}
/////////////////////////////////////////////////
userinterface/InstanceBase.h
Ara:
NAMECOLOR_MOB,
Altina ekle:
NAMECOLOR_BOSS,
Ara:
BOOLIsEnemy();
Altina Ekle:
BOOLIsBoss();
/////////////////////////////////////////////////
userinterface/InstanceBaseEffect.cpp
Ara:
else if (IsEnemy())
{
return NAMECOLOR_MOB;
}
Bu sekilde degistirin:
else if (IsEnemy())
{
if (IsBoss())
return NAMECOLOR_BOSS;
else
return NAMECOLOR_MOB;
}
/////////////////////////////////////////////////
userinterface/PythonCharacterManagerModule.cpp
Ara:
PyModule_AddIntConstant(poModule, "NAMECOLOR_MOB", CInstanceBase::NAMECOLOR_NORMAL_MOB);
PyModule_AddIntConstant(poModule, "NAMECOLOR_NPC", CInstanceBase::NAMECOLOR_NORMAL_NPC);
/////////////////////////////////////////////////
userinterface/PythonMinimap.cpp
Ara:
m_NPCPositionVector.clear();
Altina ekleyin:
m_BossPositionVector.clear();
Bu kod blogunu bulun:
else if (pkInstEach->IsEnemy())
{
aMarkPosition.m_fX = ( m_fWidth - (float)m_WhiteMark.GetWidth() ) / 2.0f + fDistanceFromCenterX + m_fScreenX;
aMarkPosition.m_fY = ( m_fHeight - (float)m_WhiteMark.GetHeight() ) / 2.0f + fDistanceFromCenterY + m_fScreenY;
m_MonsterPositionVector.push_back(aMarkPosition);
}
Altina ekleyin:
else if (pkInstEach->IsBoss())
{
aMarkPosition.m_fX = ( m_fWidth - (float)m_WhiteMark.GetWidth() ) / 2.0f + fDistanceFromCenterX + m_fScreenX;
aMarkPosition.m_fY = ( m_fHeight - (float)m_WhiteMark.GetHeight() ) / 2.0f + fDistanceFromCenterY + m_fScreenY;
m_BossPositionVector.push_back(aMarkPosition);
}
Bu kod blogunu bulun:
// NPC
STATEMANAGER.SetRenderState(D3DRS_TEXTUREFACTOR, CInstanceBase::GetIndexedNameColor(CInstanceBase::NAMECOLOR_NPC));
aIterator = m_NPCPositionVector.begin();
while (aIterator != m_NPCPositionVector.end())
{
TMarkPosition & rPosition = *aIterator;
m_WhiteMark.SetPosition(rPosition.m_fX, rPosition.m_fY);
m_WhiteMark.Render();
++aIterator;
}
Altina ekleyin:
// BOSS
STATEMANAGER.SetRenderState(D3DRS_TEXTUREFACTOR, CInstanceBase::GetIndexedNameColor(CInstanceBase::NAMECOLOR_BOSS));
aIterator = m_BossPositionVector.begin();
while (aIterator != m_BossPositionVector.end())
{
TMarkPosition & rPosition = *aIterator;
m_WhiteMark.SetPosition(rPosition.m_fX, rPosition.m_fY);
m_WhiteMark.Render();
++aIterator;
}
/////////////////////////////////////////////////
PythonMiniMap.h
Arat:
TInstanceMarkPositionVectorm_MonsterPositionVector;
Altina ekleyin:
TInstanceMarkPositionVectorm_BossPositionVector;
/////////////////////////////////////////////////
PACK
/////////////////////////////////////////////////
root/colorinfo.py
Arat:
CHR_NAME_RGB_MOB = (235, 22, 9)
Altina ekleyin:
CHR_NAME_RGB_BOSS = (204, 255, 255)
/////////////////////////////////////////////////
root/introloading.py
Arat:
chrmgr.NAMECOLOR_MOB : colorInfo.CHR_NAME_RGB_MOB,
Altina ekleyin:
chrmgr.NAMECOLOR_BOSS : colorInfo.CHR_NAME_RGB_BOSS,
Ben bu rengi beğenmedim. Renk nasıl değiştiririm?
Vereceğim sitedeki uygulamadan istediğiniz renge ait RGB kodunu alıp, colorinfo.py deki parantez içine yazarsanız renk değişir.
Daha önce yapıldı mı bilmiyorum ama böyle bir sistem bulamadım.
Bosslar normal canavarlardan farklı olarak beyaz-turkuaz arası bir renkte gözüküyor.
Colorinfo.py deki değerlerden istediğiniz rengi verebilirsiniz.
/////////////////////////////////////////////////
Client
/////////////////////////////////////////////////
userinterface/InstanceBase.cpp
Ara:
BOOL CInstanceBase::IsFlag()
{
if (GetRace() == 20035)
return TRUE;
if (GetRace() == 20036)
return TRUE;
if (GetRace() == 20037)
return TRUE;
return FALSE;
}
Bu kod blogunun altina bunu ekleyin:
BOOL CInstanceBase::IsBoss()
{
if (GetRace() == 691)
return TRUE;
if (GetRace() == 692)
return TRUE;
if (GetRace() == 693)
return TRUE;
if (GetRace() == 791)
return TRUE;
if (GetRace() == 991)
return TRUE;
if (GetRace() == 992)
return TRUE;
if (GetRace() == 993)
return TRUE;
if (GetRace() == 1091)
return TRUE;
if (GetRace() == 1092)
return TRUE;
if (GetRace() == 1093)
return TRUE;
if (GetRace() == 1094)
return TRUE;
if (GetRace() == 1095)
return TRUE;
if (GetRace() == 2191)
return TRUE;
if (GetRace() == 1191)
return TRUE;
if (GetRace() == 1192)
return TRUE;
if (GetRace() == 1304)
return TRUE;
if (GetRace() == 1306)
return TRUE;
if (GetRace() == 1307)
return TRUE;
if (GetRace() == 1901)
return TRUE;
if (GetRace() == 1902)
return TRUE;
if (GetRace() == 1903)
return TRUE;
if (GetRace() == 2206)
return TRUE;
if (GetRace() == 2207)
return TRUE;
if (GetRace() == 2291)
return TRUE;
if (GetRace() == 2306)
return TRUE;
if (GetRace() == 2307)
return TRUE;
if (GetRace() == 2492)
return TRUE;
if (GetRace() == 2493)
return TRUE;
if (GetRace() == 2494)
return TRUE;
if (GetRace() == 2598)
return TRUE;
if (GetRace() == 3090)
return TRUE;
if (GetRace() == 3091)
return TRUE;
if (GetRace() == 3190)
return TRUE;
if (GetRace() == 3191)
return TRUE;
if (GetRace() == 3290)
return TRUE;
if (GetRace() == 3291)
return TRUE;
if (GetRace() == 3390)
return TRUE;
if (GetRace() == 3391)
return TRUE;
if (GetRace() == 3490)
return TRUE;
if (GetRace() == 3491)
return TRUE;
if (GetRace() == 3590)
return TRUE;
if (GetRace() == 3591)
return TRUE;
if (GetRace() == 3690)
return TRUE;
if (GetRace() == 3691)
return TRUE;
if (GetRace() == 3790)
return TRUE;
if (GetRace() == 3791)
return TRUE;
if (GetRace() == 3890)
return TRUE;
if (GetRace() == 3891)
return TRUE;
if (GetRace() == 5001)
return TRUE;
if (GetRace() == 5004)
return TRUE;
if (GetRace() == 5002)
return TRUE;
if (GetRace() == 5161)
return TRUE;
if (GetRace() == 5162)
return TRUE;
if (GetRace() == 5163)
return TRUE;
if (GetRace() == 6091)
return TRUE;
if (GetRace() == 6191)
return TRUE;
return FALSE;
}
/////////////////////////////////////////////////
userinterface/InstanceBase.h
Ara:
NAMECOLOR_MOB,
Altina ekle:
NAMECOLOR_BOSS,
Ara:
BOOLIsEnemy();
Altina Ekle:
BOOLIsBoss();
/////////////////////////////////////////////////
userinterface/InstanceBaseEffect.cpp
Ara:
else if (IsEnemy())
{
return NAMECOLOR_MOB;
}
Bu sekilde degistirin:
else if (IsEnemy())
{
if (IsBoss())
return NAMECOLOR_BOSS;
else
return NAMECOLOR_MOB;
}
/////////////////////////////////////////////////
userinterface/PythonCharacterManagerModule.cpp
Ara:
PyModule_AddIntConstant(poModule, "NAMECOLOR_MOB", CInstanceBase::NAMECOLOR_NORMAL_MOB);
PyModule_AddIntConstant(poModule, "NAMECOLOR_NPC", CInstanceBase::NAMECOLOR_NORMAL_NPC);
/////////////////////////////////////////////////
userinterface/PythonMinimap.cpp
Ara:
m_NPCPositionVector.clear();
Altina ekleyin:
m_BossPositionVector.clear();
Bu kod blogunu bulun:
else if (pkInstEach->IsEnemy())
{
aMarkPosition.m_fX = ( m_fWidth - (float)m_WhiteMark.GetWidth() ) / 2.0f + fDistanceFromCenterX + m_fScreenX;
aMarkPosition.m_fY = ( m_fHeight - (float)m_WhiteMark.GetHeight() ) / 2.0f + fDistanceFromCenterY + m_fScreenY;
m_MonsterPositionVector.push_back(aMarkPosition);
}
Altina ekleyin:
else if (pkInstEach->IsBoss())
{
aMarkPosition.m_fX = ( m_fWidth - (float)m_WhiteMark.GetWidth() ) / 2.0f + fDistanceFromCenterX + m_fScreenX;
aMarkPosition.m_fY = ( m_fHeight - (float)m_WhiteMark.GetHeight() ) / 2.0f + fDistanceFromCenterY + m_fScreenY;
m_BossPositionVector.push_back(aMarkPosition);
}
Bu kod blogunu bulun:
// NPC
STATEMANAGER.SetRenderState(D3DRS_TEXTUREFACTOR, CInstanceBase::GetIndexedNameColor(CInstanceBase::NAMECOLOR_NPC));
aIterator = m_NPCPositionVector.begin();
while (aIterator != m_NPCPositionVector.end())
{
TMarkPosition & rPosition = *aIterator;
m_WhiteMark.SetPosition(rPosition.m_fX, rPosition.m_fY);
m_WhiteMark.Render();
++aIterator;
}
Altina ekleyin:
// BOSS
STATEMANAGER.SetRenderState(D3DRS_TEXTUREFACTOR, CInstanceBase::GetIndexedNameColor(CInstanceBase::NAMECOLOR_BOSS));
aIterator = m_BossPositionVector.begin();
while (aIterator != m_BossPositionVector.end())
{
TMarkPosition & rPosition = *aIterator;
m_WhiteMark.SetPosition(rPosition.m_fX, rPosition.m_fY);
m_WhiteMark.Render();
++aIterator;
}
/////////////////////////////////////////////////
PythonMiniMap.h
Arat:
TInstanceMarkPositionVectorm_MonsterPositionVector;
Altina ekleyin:
TInstanceMarkPositionVectorm_BossPositionVector;
/////////////////////////////////////////////////
PACK
/////////////////////////////////////////////////
root/colorinfo.py
Arat:
CHR_NAME_RGB_MOB = (235, 22, 9)
Altina ekleyin:
CHR_NAME_RGB_BOSS = (204, 255, 255)
/////////////////////////////////////////////////
root/introloading.py
Arat:
chrmgr.NAMECOLOR_MOB : colorInfo.CHR_NAME_RGB_MOB,
Altina ekleyin:
chrmgr.NAMECOLOR_BOSS : colorInfo.CHR_NAME_RGB_BOSS,
Ben bu rengi beğenmedim. Renk nasıl değiştiririm?
Vereceğim sitedeki uygulamadan istediğiniz renge ait RGB kodunu alıp, colorinfo.py deki parantez içine yazarsanız renk değişir.
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
Son düzenleme:
En Çok Reaksiyon Alan Mesajlar
Yanıtınız için teşekkür ederim. Benim files'de çalışmadı, ben o kodların altına bunu ekledim ve sorunsuz çalıştıeksik değil de. burası aslında python dosyalarının moduler olarak yönetildiği yer. kimi fileste var kimi fileste yok.
PyModule_AddIntConstant olarak arat, buna benzer şeyler varsa ekle. yoksa eklemesen de çalışır. eğer eklemediğin halde çalışmıyorsa bu dosyayı upload edersen inceleyip yapabilirim.
Kod:PyModule_AddIntConstant(poModule, "NAMECOLOR_BOSS", CInstanceBase::NAMECOLOR_BOSS);
Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)
Benzer konular
- Cevaplar
- 14
- Görüntüleme
- 714
- Cevaplar
- 9
- Görüntüleme
- 471
- Cevaplar
- 2
- Görüntüleme
- 334
- Kilitli
- Cevaplar
- 7
- Görüntüleme
- 2K

