CBotVar* CBotStack::FindVar(long ident, bool bUpdate, bool bModif) { CBotStack* p = this; while (p != NULL) { CBotVar* pp = p->m_listVar; while ( pp != NULL) { if (pp->GetUniqNum() == ident) { if ( bUpdate ) pp->Maj(m_pUser, false); return pp; } pp = pp->m_next; } p = p->m_prev; } return NULL; }
CBotVar* CBotStack::FindVar(CBotToken* &pToken, bool bUpdate, bool bModif) { CBotStack* p = this; CBotString name = pToken->GetString(); while (p != NULL) { CBotVar* pp = p->m_listVar; while ( pp != NULL) { if (pp->GetName() == name) { if ( bUpdate ) pp->Maj(m_pUser, false); return pp; } pp = pp->m_next; } p = p->m_prev; } return NULL; }