/* Kitsune's Curse Copyright (C) 2020-2023 Juan J. Martinez This program 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 3 of the License, or (at your option) any later version. This program 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 this program. If not, see . */ #include "splib.h" #include "plw.h" #include "sound.h" #include "main.h" #include "maps.h" // generated #include "doors.h" #include "entities.h" #include "et_player.h" #include "et_door.h" void draw_door() { if (is_invalid_tile2(get_tile_xy(*it_x >> 3, *it_y >> 3))) for (it_k = 0; it_k < 16; it_k += 8) put_sprite4(doors[*it_frame], *it_x, it_k + *it_y, 1, 0); if (is_invalid_tile2(get_tile_xy(*it_x >> 3, 2 + (*it_y >> 3)))) for (it_k = 16; it_k < 32; it_k += 8) put_sprite4(doors[*it_frame], *it_x, it_k + *it_y, 1, 0); } void update_door() { // is_map_blocked prevents this if no keys if (!check_for_player(32)) return; erase_sprite(*it_x, *it_y, 4); destroy_entity(); update_persistence(sp_it->id); --keys; draw_hud(); PLW_PlaySoundEffectP(EFX_DOOR); }