Skocz do zawartości
Opublikowano

Cześć, potrafi ktoś zmienić poniższą funkcję tak by zamiast informacji o bossach podanych w tabeli podawała informację o zbiciu grupy z pliku group.txt

 

#ifdef ENABLE_KILL_NOTICE
	const int bossVnumMAP[27] = {
		2492, 2495, 2307, 2306,
		2597, 2598, 1093, 691,
		1304, 1192, 1901, 2091,
		2206, 2191, 2291, 2092,
		792, 4091, 4092, 4095,
		3690, 3691, 3590, 3591,
		3490, 3491, 193
	};

	for (int i = 0; i < _countof(bossVnumMAP); i++)
	{
		if (GetRaceNum() == bossVnumMAP[i])
		{
			const CMob * pkMob = CMobManager::instance().Get(bossVnumMAP[i]);

			if (pkMob)
			{
				char szNotice[512+1];
				if (SEX_MALE == GET_SEX(pkAttacker))
					snprintf(szNotice, sizeof(szNotice), "[iNFO] Lv. %d %s pokonał: %s!", pkAttacker->GetLevel(), pkAttacker->GetName(), pkMob->m_table.szLocaleName);
				else
					snprintf(szNotice, sizeof(szNotice), "[iNFO] Lv. %d %s pokonała: %s!", pkAttacker->GetLevel(), pkAttacker->GetName(), pkMob->m_table.szLocaleName);
				BroadcastNotice(szNotice);
			}
		}
	}
#endif

 

Rozwiązane przez Sevence

Przejdź do rozwiązania

Featured Replies

Opublikowano
  • Rozwiązanie

Cześć, sprawdź nie testowałem. Musisz podać tam vnum grup oraz określić wielkość tablicy w zależności od ilości elementów. 

#ifdef ENABLE_KILL_NOTICE
	const int bossGroupVnumMap[27] = {
		// Tu ID grup
	};

	for (int i = 0; i < _countof(bossGroupVnumMap); i++)
	{
		const CMobGroup* pkMobGroup = CMobManager::instance().GetGroup(bossGroupVnumMap[i]);

		if (pkMobGroup)
		{
			DWORD raceNum = pkMobGroup->m_dwVnum;
			if (GetRaceNum() == raceNum)
			{
				char szNotice[512+1];
				if (SEX_MALE == GET_SEX(pkAttacker))
					snprintf(szNotice, sizeof(szNotice), "[iNFO] Lv. %d %s pokonał grupę o VNUM: %d!", pkAttacker->GetLevel(), pkAttacker->GetName(), raceNum);
				else
					snprintf(szNotice, sizeof(szNotice), "[iNFO] Lv. %d %s pokonała grupę o VNUM: %d!", pkAttacker->GetLevel(), pkAttacker->GetName(), raceNum);
				
				BroadcastNotice(szNotice);
			}
		}
	}
#endif
  • Sevence zablokował(a) ten temat
Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.