int CCrywolfAltar::GetPriestMaxHPSum() { int iPriestHPSum = 0; for ( int i=0; i<MAX_CRYWOLF_ALTAR; i++) { CCrywolfAltarInfo * AltarInfo = &this->m_AltarInfo[i]; if ( AltarInfo->GetAltarState() != 1 ) { continue; } if ( !gObjIsConnected(AltarInfo->m_iUserIndex)) { continue; } LPOBJ lpUserObj = &gObj[AltarInfo->m_iUserIndex]; int AddLife = 0; gObjCheckUsedBuffEffect(lpUserObj, AT_SWELL_LIFE, &AddLife, 0); //season 3.0 add-on iPriestHPSum += lpUserObj->AddLife + lpUserObj->MaxLife + AddLife; } return iPriestHPSum; }
int CCrywolfAltar::GetPriestHPSum() { int iPriestHPSum = 0; for ( int i=0; i<MAX_CRYWOLF_ALTAR; i++) { CCrywolfAltarInfo * AltarInfo = &this->m_AltarInfo[i]; if ( AltarInfo->GetAltarState() != 1 ) { continue; } if ( !gObjIsConnected(AltarInfo->m_iUserIndex)) { continue; } LPOBJ lpUserObj = &gObj[AltarInfo->m_iUserIndex]; iPriestHPSum += lpUserObj->Life; } return iPriestHPSum; }
BOOL CCrywolfAltar::CheckAltarValidContract(int iClass) { int iAltarNumber = this->GetAlatarNumber(iClass); CCrywolfAltarInfo * AltarInfo = &this->m_AltarInfo[iAltarNumber]; if ( AltarInfo->GetAltarState() == 1 ) return TRUE; return FALSE; }
int CCrywolfAltar::GetContractedAltarCount() { int iContractedAltarCount = 0; for ( int i=0;i<MAX_CRYWOLF_ALTAR;i++) { CCrywolfAltarInfo * AltarInfo = &this->m_AltarInfo[i]; if ( AltarInfo->GetAltarState() != 1 ) continue; iContractedAltarCount++; } return iContractedAltarCount; }
int CCrywolfAltar::GetPriestMaxHPSum() { int iPriestHPSum = 0; for ( int i=0;i<MAX_CRYWOLF_ALTAR;i++) { CCrywolfAltarInfo * AltarInfo = &this->m_AltarInfo[i]; if ( AltarInfo->GetAltarState() != 1 ) continue; if ( !gObjIsConnected(AltarInfo->m_iUserIndex)) continue; LPOBJ lpUserObj = &gObj[AltarInfo->m_iUserIndex]; iPriestHPSum += (int)(lpUserObj->AddLife + lpUserObj->MaxLife + lpUserObj->m_SkillAddLife); } return iPriestHPSum; }
void CCrywolfAltar::SetAltarValidContract(int iAltarObjIndex, int iClass) { int iAltarNumber = this->GetAlatarNumber(iClass); CCrywolfAltarInfo * AltarInfo = &this->m_AltarInfo[iAltarNumber]; if ( AltarInfo->GetAltarState() != 2 ) return; if ( AltarInfo->m_dwValidContractTime < (int)GetTickCount() ) { MsgOutput(AltarInfo->m_iUserIndex, lMsg.Get(MSGGET(12, 251)), iAltarNumber); UTIL.SendCrywolfUserAnyMsg(2, lMsg.Get(MSGGET(12, 252)), gObj[AltarInfo->m_iUserIndex].Name, iAltarNumber); CLog.LogAdd("[ Crywolf ][Altar Op.] [%s][%s] Set Valid Contract Altar[%d]", gObj[AltarInfo->m_iUserIndex].AccountID, gObj[AltarInfo->m_iUserIndex].Name, iAltarNumber); AltarInfo->SetAltarState(1); memset(gObj[iAltarObjIndex].m_ViewSkillState,0, sizeof(gObj[iAltarObjIndex].m_ViewSkillState)); gObj[iAltarObjIndex].m_ViewSkillState[eVS_ALTAR_VALID_CONTRACT] = 1; GCStateInfoSend(&gObj[iAltarObjIndex], 1, eVS_ALTAR_VALID_CONTRACT); } }
void CCrywolfAltar::SetAltarValidContract(int iAltarObjIndex, int iClass) { int iAltarNumber = this->GetAlatarNumber(iClass); CCrywolfAltarInfo * AltarInfo = &this->m_AltarInfo[iAltarNumber]; if ( AltarInfo->GetAltarState() != 2 ) { return; } if ( AltarInfo->m_dwValidContractTime < GetTickCount() ) { MsgOutput(AltarInfo->m_iUserIndex, lMsg.Get(MSGGET(12, 251)), iAltarNumber); UTIL.SendCrywolfUserAnyMsg(2, lMsg.Get(MSGGET(12, 252)), gObj[AltarInfo->m_iUserIndex].Name, iAltarNumber); LogAddTD("[ Crywolf ][Altar Op.] [%s][%s] Set Valid Contract Altar[%d]", gObj[AltarInfo->m_iUserIndex].AccountID, gObj[AltarInfo->m_iUserIndex].Name, iAltarNumber); AltarInfo->SetAltarState(1); gObjAddBuffEffect(&gObj[iAltarObjIndex], AT_CW_ALTAR_STATUS, 0, 0, 0, 0, -10); } }