From d04e1b48bd934f8d9d91aab13e9e51393fd7b6ba Mon Sep 17 00:00:00 2001 From: Paweł Redman Date: Wed, 25 Apr 2018 18:51:04 +0200 Subject: Rename repl/replicator to teleporter. --- src/game/unit_repl.cpp | 118 ------------------------------------------------- 1 file changed, 118 deletions(-) delete mode 100644 src/game/unit_repl.cpp (limited to 'src/game/unit_repl.cpp') diff --git a/src/game/unit_repl.cpp b/src/game/unit_repl.cpp deleted file mode 100644 index 2e0c3fd..0000000 --- a/src/game/unit_repl.cpp +++ /dev/null @@ -1,118 +0,0 @@ -/* -This file is part of Minitrem. - -Minitrem is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -Minitrem is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with Minitrem. If not, see . -*/ - -#include "game.hpp" - -namespace game { - -unit_repl_t::unit_repl_t(game::state_t *game_) : unit_t(game_, UNIT_REPL) -{ - size[0] = {-0.4f, -0.2f}; - size[1] = {+0.4f, +0.4f}; - render_size = size; - render_layer = render::LAYER_FLAT; - cmodel.cflags = CF_SURFACE2; - - name = "Replicator"; - ignore_waking = false; - max_health = 35; - health = 5; - - friendly = true; - controllable = true; - constructed = false; -} - -void unit_repl_t::on_damage(unit_t *attacker) -{ - assets::repl.damage.play_3d(x); -} - -void unit_repl_t::on_death(void) -{ - game->explosion(x); - game->deletion_list.insert(this); -} - -void unit_repl_t::render_to(render::state_t *render) -{ - if (constructed) - render->render(game->now, &assets::repl.idle, render_bounds); - else - render->render(game->now, &assets::repl.unfinished, render_bounds); - - unit_t::render_to(render); -} - -void unit_repl_t::activate(unit_t::type_t type) -{ - size_t price; - world::cmodel_t cmodel; - unit_t *unit; - - switch (type) { - case UNIT_SOLDIER: price = 40; break; - case UNIT_SCIENTIST: price = 95; break; - case UNIT_BUILDER: price = 70; break; - default: - abort(); - } - - if (game->crystals < price) { - game->interface.print("Insufficient crystals; " + std::to_string(price - game->crystals) + " more needed."); - return; - } - - game->crystals -= price; - - switch (type) { - case UNIT_SOLDIER: - unit = new unit_soldier_t(game); - break; - - case UNIT_SCIENTIST: - unit = new unit_scientist_t(game); - break; - - case UNIT_BUILDER: - unit = new unit_builder_t(game); - break; - - default: - abort(); - } - - unit->place(world, x); - - for (world::entity_t *ent : game->world.get_entities(unit->cmodel.bounds, CF_BODY|CF_BODY_SMALL)) - { - unit_t *other; - - if (ent == unit) - continue; - - if (ent->type != ET_UNIT) - continue; - - other = dynamic_cast(ent); - other->damage(200, NULL); - } - - assets::repl.sound.play_3d(x); -} - -} -- cgit