예제 #1
0
void EERIE_ANIMMANAGER_Clear(long i) {
	
	for(long k = 0; k < animations[i].alt_nb; k++) {
		ReleaseAnim(animations[i].anims[k]), animations[i].anims[k] = NULL;
	}
	
	free(animations[i].anims), animations[i].anims = NULL;
	
	animations[i].path.clear();
}
예제 #2
0
static void EERIE_ANIMMANAGER_Clear(ANIM_HANDLE & slot) {
	
	for(long k = 0; k < slot.alt_nb; k++) {
		ReleaseAnim(slot.anims[k]);
		slot.anims[k] = NULL;
	}
	
	free(slot.anims);
	slot.anims = NULL;
	
	slot.path.clear();
}
예제 #3
0
void EERIE_ANIMMANAGER_PurgeUnused() {
	
	for(size_t i = 0; i < MAX_ANIMATIONS; i++) {
		if(!animations[i].path.empty() && animations[i].locks == 0) {
			for(long k = 0; k < animations[i].alt_nb; k++) {
				ReleaseAnim(animations[i].anims[k]);
				animations[i].anims[k] = NULL;
			}
			free(animations[i].anims), animations[i].anims = NULL;
			animations[i].path.clear();
		}
	}
}