Türkiye'nin ilk OldSchool MOBİL 1-99 Sunucusu Sezar2 9 Ekim'de Açılıyor! Rekor Açılışı Kaçırma! HEMEN TIKLA!
Merhaba Arkadaşlar,
Konu Başlığında Belirttiğim Gibi Official Rolling Dice Sistemini Paylaşıyorum.
Sistem Mantıgı Bir grup ile boss kestiğiniz zaman hangi eşyanın size kaç oranla cıktıgını gösteriyor zar atıyor kısacası.
Sistem Kodlarını Test Edebirsiniz
kodlar:
eksik kod eklendi @anagonda1 hatırlattıgın için teşekkürler
not: alıntıdır.
gorsel eklenecektir.
Konu Başlığında Belirttiğim Gibi Official Rolling Dice Sistemini Paylaşıyorum.
Sistem Mantıgı Bir grup ile boss kestiğiniz zaman hangi eşyanın size kaç oranla cıktıgını gösteriyor zar atıyor kısacası.
Sistem Kodlarını Test Edebirsiniz
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
kodlar:
C++:
service.h
//ekleyin
#define __ENABLE_DICE_SYSTEM__
char_battle.cpp
//ara
if (ch->GetParty())
ch = ch->GetParty()->GetNextOwnership(ch, GetX(), GetY());
//değiştir
if (ch->GetParty())
{
ch = ch->GetParty()->GetNextOwnership(ch, GetX(), GetY());
#ifdef __ENABLE_DICE_SYSTEM__
ch = ch->GetParty()->Dice(ch, GetX(), GetY(), item->GetName());
#endif
}
party.cpp
//dosyanın sonuna ekleyin
#ifdef __ENABLE_DICE_SYSTEM__
LPCHARACTER CParty::Dice(LPCHARACTER ch, long x, long y, const char * szName) //item name
{
for (TMemberMap::iterator it = m_memberMap.begin(); it != m_memberMap.end(); ++it)
{
if (it->second.pCharacter->GetDesc() && DISTANCE_APPROX(it->second.pCharacter->GetX() - x, it->second.pCharacter->GetY() - y) < PARTY_DEFAULT_RANGE)
{
ChatPacketToAllMember(CHAT_TYPE_DICE_INFO, "|cffffe6ba*** Zar büyük nesne için atılıyor: %s ***", szName);
while (1)
{
LPCHARACTER pkWinner;
int iDice = 0;
int iDraw = 0;
for (TMemberMap::iterator it = m_memberMap.begin(); it != m_memberMap.end(); ++it)
if (it->second.pCharacter->GetDesc() && DISTANCE_APPROX(it->second.pCharacter->GetX() - x, it->second.pCharacter->GetY() - y) < PARTY_DEFAULT_RANGE)
{
int iScore = number(1, 10000);
if (iScore == iDice)
iDraw == iScore;
else if (iDice == 0 || iScore > iDice)
{
pkWinner = it->second.pCharacter;
iDice = iScore;
}
ChatPacketToAllMember(CHAT_TYPE_DICE_INFO, "|cffffe6ba*** ->\t\t\t\t\t%s - Zar sonucu: %d ***", it->second.pCharacter->GetName(), iScore);
}
if (iDice != iDraw)
{
ChatPacketToAllMember(CHAT_TYPE_DICE_INFO, "|cffbb00ff*** Kazanan %s : %s ***", szName, pkWinner->GetName());
return pkWinner;
}
else
{
ChatPacketToAllMember(CHAT_TYPE_DICE_INFO, "");
ChatPacketToAllMember(CHAT_TYPE_DICE_INFO, "|cffffe6ba*** Zar büyük nesne için tekrar atılıyor: %s ***", szName);
}
}
}
}
return ch;
}
#endif
party.h
//ara
void P2PSetMemberLevel(DWORD pid, BYTE level);
//veya bunu ara
bool IsPartyInDungeon(int mapIndex);
//ekleyin
#ifdef __ENABLE_DICE_SYSTEM__
LPCHARACTER Dice(LPCHARACTER ch, long x, long y, const char * szName);
#endif
not: alıntıdır.
gorsel eklenecektir.
Son düzenleme:
En Çok Reaksiyon Alan Mesajlar
Eksik felan değil sadece service.h yeEksik Gibi Sanırım
#define __ENABLE_DICE_SYSTEM__
eklenecek o kadar
Bu arada grup oluşturduğun zaman çalışır bu sistem Sadece boss kesince değil metin kesincede işleve girmektedir..
Bu arada Official olan bu değil.. Official olanı yakın bir zamanda paylaşmayı planlıyorum..
Eksik felan değil sadece service.h yeEksik Gibi Sanırım
#define __ENABLE_DICE_SYSTEM__
eklenecek o kadar
Bu arada grup oluşturduğun zaman çalışır bu sistem Sadece boss kesince değil metin kesincede işleve girmektedir..
Bu arada Official olan bu değil.. Official olanı yakın bir zamanda paylaşmayı planlıyorum..
official olanı benım elimdede var. ama sistem aynı sonucta onda biraz daha ekleme yapıyorsun logale_string vb. buda calısmakta sorunsuz bi şekilde.Bu arada Official olan bu değil.. Official olanı yakın bir zamanda paylaşmayı planlıyorum..
Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)
Benzer konular
- Cevaplar
- 9
- Görüntüleme
- 504
- Cevaplar
- 20
- Görüntüleme
- 967
- Cevaplar
- 7
- Görüntüleme
- 580
- Cevaplar
- 15
- Görüntüleme
- 926