ok, thats what i do to fix this problem, (using hbx source 2.24, from Hypno & co, sry i dont remember all names)...
firs in the function CheckForceRecallTime, at the end of the function, look for this lines
case 0: iTL_ = 20*m_sRaidTimeSunday; break; //ÀÏ¿äÀÏ 60º
}
}
if (m_pClientList[iClientH]->m_iTimeLeft_ForceRecall > iTL_)
//this line u have to change the "1" for "iTL_"
m_pClientList[iClientH]->m_iTimeLeft_ForceRecall = iTL_;
}
//le dice que esta en un mapa enemigo 31/01/2005
//u have to add this line too ******************
//this is cuz u are entering to an enemy town*******
m_pClientList[iClientH]->m_bIsWarLocation = TRUE;
//print valores en la pantalla del client
//wsprintf(cRepMessage, " (Check) - Tienes %d minutos para estar en este mapa.", m_pClientList[iClientH]->m_iTimeLeft_ForceRecall);
//ShowClientMsg(iClientH, cRepMessage);
//Add this return too, original function doesnt have
return ;
}
After that look for the void CGame::CheckClientResponseTime()
go down until u get somethin like : (llok for the code, comments are mine)
//remember the line adden in CheckForceRecallTime function??
//adding this line u make the next condition true, so the program will check the rest.
if ( (m_pClientList->m_bIsWarLocation == TRUE) ) {
// Crusade
if (m_bIsCrusadeMode == FALSE)
//here is the other problem, originally the next line was
// if (m_pClientList->m_bIsInsideOwnTown == TRUE)
// u are in enemy town, but not in your town, so the forcerecalltime will never decrease
// the line have to be like the next. FALSE
if (m_pClientList->m_bIsInsideOwnTown == FALSE)
m_pClientList->m_iTimeLeft_ForceRecall--;
if (m_pClientList->m_iTimeLeft_ForceRecall <= 0) {
m_pClientList->m_iTimeLeft_ForceRecall = 0;
m_pClientList->m_dwWarBeginTime = dwTime;
m_pClientList->m_bIsWarLocation = FALSE;
SendNotifyMsg(NULL, i, DEF_NOTIFY_TOBERECALLED, NULL, NULL, NULL, NULL);
RequestTeleportHandler(i, "1 ");
}
}
i hope u understand what i mean and i hope this work for u
This post has been edited by orange on Feb 1 2005, 01:42 AM
Can anyone explain that a bit better? Or just give me the direct code instead?