Exemplo n.º 1
0
void _resetActorForNewLevel(character *actor) {
	if (actor->fov) {
		TCOD_map_delete(actor->fov);
	}
	
	actor->fov = copyLevelMap();
	
	if (actor->path) {
		TCOD_path_delete(actor->path);
	}
	
	actor->path = TCOD_path_new_using_function(WINDOW_WIDTH, WINDOW_HEIGHT, _actorPathCallback, actor, 1.41f);

	if (actor->itemLight) {
		resetLight(actor->itemLight);
	}

	TCOD_map_compute_fov(actor->fov, actor->x, actor->y, actor->sightRange, 1, FOV_SHADOW);
}
Exemplo n.º 2
0
TCODPath::~TCODPath() {
	TCOD_path_delete(data);
}