#include "RNG.h" #include "TeleportConsumableObject.h" #include "Player.h" #include "Location.h" void TeleportConsumableObject::consume(Player & player) { unsigned hops = RNG::get().rand_int(this->get_potency()); Location * location = &player.get_location(); for (size_t i = 0; i < hops; i++) { location = location->get_exit(random_direction(*location)); } player.set_location(*location); }