diff --git a/rogueviz/ru/classes.cpp b/rogueviz/ru/classes.cpp index e7a04b4f..887ec61e 100644 --- a/rogueviz/ru/classes.cpp +++ b/rogueviz/ru/classes.cpp @@ -549,6 +549,11 @@ struct saw: public entity { void act() override; }; +struct tinysaw: public saw { + xy siz() override { return {8, 8}; } + string get_name() override { return "tiny " + mp().get_shape_name() + " circular saw"; } + }; + struct weaksaw : public saw { color_t color() override { return walls[wWeakWall].color; } string get_name() override { return mp().get_shape_name() + " weak saw"; } diff --git a/rogueviz/ru/load-world.cpp b/rogueviz/ru/load-world.cpp index c4565448..9b994e50 100644 --- a/rogueviz/ru/load-world.cpp +++ b/rogueviz/ru/load-world.cpp @@ -357,6 +357,11 @@ void load_room(fhstream& f, cell *c) { b->base = std::move(r.entities.back()); r.entities.back() = std::move(b); } + else if(cap == "TINYSAW") { + auto b = std::make_unique(); nam(*b); + b->base = std::move(r.entities.back()); + r.entities.back() = std::move(b); + } else if(cap == "WOODSAW") { auto b = std::make_unique(); nam(*b); b->base = std::move(r.entities.back());