// Destructor clase CSprite CSprite::~CSprite(void) { if(_idScreen >= 0) removeFromScreen(); if(_idVRam >= 0) removeFromVRam(false); if(_idRam >= 0) removeFromRam(); //NF_DeleteSprite(getScreen(), getIdScreen()); // delete from screen //NF_FreeSpriteGfx(getScreen(), getIdVRam()); // delete from vRam //NF_UnloadSpriteGfx(getIdRam()); // delete from ram delete _palette; delete _size; delete _position; }
sr_Error addToScreen(sr_Screen * screen, sr_Element * element) { sr_Element * elem = screen->elements; if(element->class >= maxSrElement) return ERR_INVALID_SR_ELEMENT; if(isInScreen(screen,element)) { removeFromScreen(screen,element); } if(screen->elements == NULL) { screen->elements = element; } else { while(elem->next != NULL) { elem = elem->next; } elem->next = element; } return ERR_NO_ERR; }