[C++]Fix bug biolog Vegas

Aici poți găsi sisteme complete, verificate și recomandate de echipa 4Metin.
Avatar utilizator
F. Gabriel
Administrator
Administrator
Mesaje: 506
Membru din: Lun Aug 01, 2022 10:23 am
Localitate: Tecuci
Status: Retras
Multumiri acordate: 18
Multumiri primite: 350
Contact:

[C++]Fix bug biolog Vegas

Mesaj de F. Gabriel »

Caută în biolog.cpp:

Cod: Selectaţi tot

ch->SetBiologState("biolog_lv92.used_window", 1);
Adaugă sub:

Cod: Selectaţi tot

ch->SetBiologState("biolog_lv92.reward", 1);
Sub întreaga structură a funcției if, adaugă:

Cod: Selectaţi tot

	if (pSelectReward[0] != 0 && ch->GetBiologState(pTableStringGlobal[3][8]) == 1)
	{
		if (!strcmp(iReward, "92_reward_1") && pSelectReward[0] != 0){
			return ch->ChatPacket(CHAT_TYPE_INFO, "<Biolog> Misiune indisponibilă.");
		}
		if (!strcmp(iReward, "92_reward_2") && pSelectReward[0] != 0){
			return ch->ChatPacket(CHAT_TYPE_INFO, "<Biolog> Misiune indisponibilă.");
		}
		if (!strcmp(iReward, "92_reward_3") && pSelectReward[0] != 0){
			return ch->ChatPacket(CHAT_TYPE_INFO, "<Biolog> Misiune indisponibilă.");
		}
	}
Imagine

Caută funcția:

Cod: Selectaţi tot

ch->SetBiologState("biolog_lv94.used_window", 1);
Adaugă sub:

Cod: Selectaţi tot

ch->SetBiologState("biolog_lv94.reward", 1);
Sub întreaga structură a funcției if, adaugă:

Cod: Selectaţi tot

	if (pSelectReward[1] != 0 && ch->GetBiologState(pTableStringGlobal[3][9]) == 1)
	{
		if (!strcmp(iReward, "94_reward_1") && pSelectReward[0] != 0){
			return ch->ChatPacket(CHAT_TYPE_INFO, "<Biolog> Teapa, dc incerci buguri?.");
		}
		if (!strcmp(iReward, "94_reward_2") && pSelectReward[0] != 0){
			return ch->ChatPacket(CHAT_TYPE_INFO, "<Biolog> Teapa, dc incerci buguri?.");
		}
		if (!strcmp(iReward, "94_reward_3") && pSelectReward[0] != 0){
			return ch->ChatPacket(CHAT_TYPE_INFO, "<Biolog> Teapa, dc incerci buguri?.");
		}
	}
Imagine
Imagine

Hosting Metin2 by OVINETWORK.RO
Avatar utilizator
aometaphor
4Metin
4Metin
Mesaje: 16
Membru din: Joi Sep 28, 2023 11:23 am
Status: Activ
Multumiri acordate: 4
Contact:

Re: [C++]Fix bug biolog Vegas

Mesaj de aometaphor »

Să corectezi asta, unii n-o să fie atenți:

Caută în biolog.cpp:

ch->SetBiologState("biolog_lv94.used_window", 1);

Adaugă sub:

ch->SetBiologState("biolog_lv92.reward", 1);

------ ÎN ------------------

Caută în biolog.cpp:

ch->SetBiologState("biolog_lv92.used_window", 1);

Adaugă sub:

ch->SetBiologState("biolog_lv92.reward", 1);
Ultima oară modificat Mie Dec 20, 2023 6:48 pm de către F. Gabriel, modificat 1 dată în total.
Motiv: Actualizat.
Avatar utilizator
aometaphor
4Metin
4Metin
Mesaje: 16
Membru din: Joi Sep 28, 2023 11:23 am
Status: Activ
Multumiri acordate: 4
Contact:

Re: [C++]Fix bug biolog Vegas

Mesaj de aometaphor »

Adaug inca ceva:

SCHIMBA

Cod: Selectaţi tot

	if (pSelectReward[1] != 0 && ch->GetBiologState(pTableStringGlobal[3][9]) == 1)
	{
		if (!strcmp(iReward, "94_reward_1") && pSelectReward[0] != 0){
			return ch->ChatPacket(CHAT_TYPE_INFO, "<Biolog> Teapa, dc incerci buguri?.");
		}
		if (!strcmp(iReward, "94_reward_2") && pSelectReward[0] != 0){
			return ch->ChatPacket(CHAT_TYPE_INFO, "<Biolog> Teapa, dc incerci buguri?.");
		}
		if (!strcmp(iReward, "94_reward_3") && pSelectReward[0] != 0){
			return ch->ChatPacket(CHAT_TYPE_INFO, "<Biolog> Teapa, dc incerci buguri?.");
		}
	}
CU

Cod: Selectaţi tot

	if (pSelectReward[1] != 0 && ch->GetBiologState(pTableStringGlobal[3][9]) == 1)
	{
		if (!strcmp(iReward, "94_reward_1") && pSelectReward[1] != 0){
			return ch->ChatPacket(CHAT_TYPE_INFO, "<Biolog> Teapa, dc incerci buguri?.");
		}
		if (!strcmp(iReward, "94_reward_2") && pSelectReward[1] != 0){
			return ch->ChatPacket(CHAT_TYPE_INFO, "<Biolog> Teapa, dc incerci buguri?.");
		}
		if (!strcmp(iReward, "94_reward_3") && pSelectReward[1] != 0){
			return ch->ChatPacket(CHAT_TYPE_INFO, "<Biolog> Teapa, dc incerci buguri?.");
		}
	}
SI

Cod: Selectaţi tot

void BiologManager::SelectBonusType(LPCHARACTER ch, const char* iReward)
{
	int pSelectReward[] =
	{
		(ch->GetQuestFlag("biolog_lv92.reward")), (ch->GetQuestFlag("biolog_lv92.reward"))
	};
CU

Cod: Selectaţi tot

void BiologManager::SelectBonusType(LPCHARACTER ch, const char* iReward)
{
	int pSelectReward[] =
	{
		(ch->GetQuestFlag("biolog_lv92.reward")), (ch->GetQuestFlag("biolog_lv94.reward"))
	};
Avatar utilizator
aometaphor
4Metin
4Metin
Mesaje: 16
Membru din: Joi Sep 28, 2023 11:23 am
Status: Activ
Multumiri acordate: 4
Contact:

Re: [C++]Fix bug biolog Vegas

Mesaj de aometaphor »

Also, imi cer scuze ca dau atata reply, adauga si fixul asta:

Cod: Selectaţi tot

void BiologManager::SendWindow_SelectType(LPCHARACTER ch, int iType)
{	
	int pGetCompleted[] = {(ch->GetQuestFlag("biolog_lv92.used_window")), (ch->GetQuestFlag("biolog_lv94.used_window"))};
	
	switch (iType)
	{
		case 1:
			if (pGetCompleted[0] != 1)	
			{	
				std::string arg1 = (const char*) pPopUp[8][0];		boost::algorithm::replace_all(arg1, " ", "$");
				std::string arg2 = (const char*) pPopUp[8][1];		boost::algorithm::replace_all(arg2, " ", "$");
				std::string arg3 = (const char*) pPopUp[8][2];		boost::algorithm::replace_all(arg3, " ", "$");	
				std::string arg4 = (const char*) pPopUp[8][3];		boost::algorithm::replace_all(arg4, " ", "$");		
				
				char buf[512+1];
				snprintf(buf, sizeof(buf), "BINARY_Biolog_SelectReward %d %s %s %d %s %d %s %d", (int)1, arg1.c_str(), arg2.c_str(), (int)tableBonus[8][1], arg3.c_str(), (int)tableBonus[8][3], arg4.c_str(), (int)tableBonus[8][5]);
				ch->ChatPacket(CHAT_TYPE_COMMAND, buf);	
			}
		break;
		case 2:	
			if (pGetCompleted[1] != 1)
			{	
				std::string arg1 = (const char*) pPopUp[9][0];		boost::algorithm::replace_all(arg1, " ", "$");
				std::string arg2 = (const char*) pPopUp[9][1];		boost::algorithm::replace_all(arg2, " ", "$");
				std::string arg3 = (const char*) pPopUp[9][2];		boost::algorithm::replace_all(arg3, " ", "$");	
				std::string arg4 = (const char*) pPopUp[9][3];		boost::algorithm::replace_all(arg4, " ", "$");		
				
				char buf[512+1];
				snprintf(buf, sizeof(buf), "BINARY_Biolog_SelectReward %d %s %s %d %s %d %s %d", (int)2, arg1.c_str(), arg2.c_str(), (int)tableBonus[9][1], arg3.c_str(), (int)tableBonus[9][3], arg4.c_str(), (int)tableBonus[9][5]);
				ch->ChatPacket(CHAT_TYPE_COMMAND, buf);		
			}
		break;
	}	
}
Se afisau bonusurile de la misiunea de 92 si in misiunea de 94.
Avatar utilizator
zxcmetin3
4Metin
4Metin
Mesaje: 15
Membru din: Dum Ian 21, 2024 1:11 am
Status: Activ
Multumiri acordate: 1

Re: [C++]Fix bug biolog Vegas

Mesaj de zxcmetin3 »

haideeee bine rauu
Avatar utilizator
zxcmetin3
4Metin
4Metin
Mesaje: 15
Membru din: Dum Ian 21, 2024 1:11 am
Status: Activ
Multumiri acordate: 1

Re: [C++]Fix bug biolog Vegas

Mesaj de zxcmetin3 »

o errorii si la compilare in sursa am facut tot, in client cand dau login imi ramane blocat in loading si nu am erorri in syserr aveti vreo idee?
Avatar utilizator
RazVan
Administrator
Administrator
Mesaje: 967
Membru din: Mie Oct 19, 2022 5:25 pm
Localitate: München
Status: Activ
Multumiri acordate: 12
Multumiri primite: 63
Contact:

Re: [C++]Fix bug biolog Vegas

Mesaj de RazVan »

zxcmetin3 scrie: Vin Ian 10, 2025 9:08 pm o errorii si la compilare in sursa am facut tot, in client cand dau login imi ramane blocat in loading si nu am erorri in syserr aveti vreo idee?
fa un topic la probleme cu erorile ce le primesti
Imagine
Scrie răspuns