/*
 * Reginald and the She Vampires for the Amstrad CPC
 * Copyright (C) 2025 Dave Moore
 *
 * 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 2
 * 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 <http://www.gnu.org/licenses/>.
 */

#pragma once

#include "main.h"

/* Masked 16x16 Sprites */
extern const u8 tile_m_16x16_00[4 * 16]; /* Projectile */
extern const u8 tile_m_16x16_01[4 * 16];
extern const u8 tile_m_16x16_02[4 * 16];
extern const u8 tile_m_16x16_03[4 * 16];
extern const u8 tile_m_16x16_04[4 * 16];
extern const u8 tile_m_16x16_05[4 * 16];
extern const u8 tile_m_16x16_06[4 * 16];
extern const u8 tile_m_16x16_07[4 * 16];
extern const u8 tile_m_16x16_08[4 * 16];
extern const u8 tile_m_16x16_09[4 * 16];
extern const u8 tile_m_16x16_10[4 * 16];
extern const u8 tile_m_16x16_11[4 * 16];
extern const u8 tile_m_16x16_12[4 * 16];
extern const u8 tile_m_16x16_13[4 * 16];
extern const u8 tile_m_16x16_14[4 * 16];
extern const u8 tile_m_16x16_15[4 * 16];
extern const u8 tile_m_16x16_16[4 * 16];
extern const u8 tile_m_16x16_17[4 * 16];
extern const u8 tile_m_16x16_18[4 * 16];
extern const u8 tile_m_16x16_19[4 * 16];
extern const u8 tile_m_16x16_20[4 * 16];
extern const u8 tile_m_16x16_21[4 * 16];
extern const u8 tile_m_16x16_22[4 * 16];
extern const u8 tile_m_16x16_23[4 * 16];
extern const u8 tile_m_16x16_24[4 * 16];
extern const u8 tile_m_16x16_25[4 * 16];
extern const u8 tile_m_16x16_26[4 * 16];

/* Non-Masked 16x16 Sprites */
extern const u8 tile_nm_16x16_00[4 * 16];
extern const u8 tile_nm_16x16_01[4 * 16];
extern const u8 tile_nm_16x16_02[4 * 16];
extern const u8 tile_nm_16x16_03[4 * 16];
extern const u8 tile_nm_16x16_04[4 * 16];
extern const u8 tile_nm_16x16_05[4 * 16];
extern const u8 tile_nm_16x16_06[4 * 16];
extern const u8 tile_nm_16x16_07[4 * 16];
extern const u8 tile_nm_16x16_08[4 * 16];
extern const u8 tile_nm_16x16_09[4 * 16];
extern const u8 tile_nm_16x16_10[4 * 16];
extern const u8 tile_nm_16x16_11[4 * 16];
extern const u8 tile_nm_16x16_12[4 * 16];
extern const u8 tile_nm_16x16_13[4 * 16];
extern const u8 tile_nm_16x16_14[4 * 16];
extern const u8 tile_nm_16x16_15[4 * 16];
extern const u8 tile_nm_16x16_16[4 * 16];
extern const u8 tile_nm_16x16_17[4 * 16];
extern const u8 tile_nm_16x16_18[4 * 16];
extern const u8 tile_nm_16x16_19[4 * 16];
extern const u8 tile_nm_16x16_20[4 * 16];
extern const u8 tile_nm_16x16_21[4 * 16];
extern const u8 tile_nm_16x16_22[4 * 16];
extern const u8 tile_nm_16x16_23[4 * 16];
extern const u8 tile_nm_16x16_24[4 * 16];
extern const u8 tile_nm_16x16_25[4 * 16];
extern const u8 tile_nm_16x16_26[4 * 16];
extern const u8 tile_nm_16x16_27[4 * 16];
extern const u8 tile_nm_16x16_28[4 * 16];
extern const u8 tile_nm_16x16_29[4 * 16];
extern const u8 tile_nm_16x16_30[4 * 16];
extern const u8 tile_nm_16x16_31[4 * 16];
extern const u8 tile_nm_16x16_32[4 * 16];
extern const u8 tile_nm_16x16_33[4 * 16];
extern const u8 tile_nm_16x16_34[4 * 16];
extern const u8 tile_nm_16x16_35[4 * 16];
extern const u8 tile_nm_16x16_36[4 * 16];
extern const u8 tile_nm_16x16_37[4 * 16];
extern const u8 tile_nm_16x16_38[4 * 16];
extern const u8 tile_nm_16x16_39[4 * 16];
extern const u8 tile_nm_16x16_40[4 * 16];
extern const u8 tile_nm_16x16_41[4 * 16];
extern const u8 tile_nm_16x16_42[4 * 16];
extern const u8 tile_nm_16x16_43[4 * 16];
extern const u8 tile_nm_16x16_44[4 * 16];
extern const u8 tile_nm_16x16_45[4 * 16];
extern const u8 tile_nm_16x16_46[4 * 16];
extern const u8 tile_nm_16x16_47[4 * 16];
extern const u8 tile_nm_16x16_48[4 * 16];
extern const u8 tile_nm_16x16_49[4 * 16];
extern const u8 tile_nm_16x16_50[4 * 16];
extern const u8 tile_nm_16x16_51[4 * 16];
extern const u8 tile_nm_16x16_52[4 * 16];
extern const u8 tile_nm_16x16_53[4 * 16];
extern const u8 tile_nm_16x16_54[4 * 16];
extern const u8 tile_nm_16x16_55[4 * 16];
extern const u8 tile_nm_16x16_56[4 * 16];
extern const u8 tile_nm_16x16_57[4 * 16];
extern const u8 tile_nm_16x16_58[4 * 16];
extern const u8 tile_nm_16x16_59[4 * 16];
extern const u8 tile_nm_16x16_60[4 * 16];
extern const u8 tile_nm_16x16_61[4 * 16];

/* GUI tiles */
extern const u8 gui_nm_16x16_00[4 * 16];
extern const u8 gui_nm_16x16_01[4 * 16];
extern const u8 gui_nm_16x16_02[4 * 16];
extern const u8 gui_nm_16x16_03[4 * 16];
extern const u8 gui_nm_16x16_04[4 * 16];
extern const u8 gui_nm_16x16_05[4 * 16];
extern const u8 gui_nm_16x16_06[4 * 16];
extern const u8 gui_nm_16x16_07[4 * 16];

/* Masked 16x16 player sprites  */
extern const u8 reginald_m_16x16_00[4 * 16];
extern const u8 reginald_m_16x16_01[4 * 16];
extern const u8 reginald_m_16x16_02[4 * 16];
extern const u8 reginald_m_16x16_03[4 * 16];
extern const u8 reginald_m_16x16_04[4 * 16];
extern const u8 reginald_m_16x16_05[4 * 16];
extern const u8 reginald_m_16x16_06[4 * 16];
extern const u8 reginald_m_16x16_07[4 * 16];
extern const u8 reginald_m_16x16_08[4 * 16];

extern const u8 regina_m_16x16_00[4 * 16];
extern const u8 regina_m_16x16_01[4 * 16];
extern const u8 regina_m_16x16_02[4 * 16];
extern const u8 regina_m_16x16_03[4 * 16];
extern const u8 regina_m_16x16_04[4 * 16];
extern const u8 regina_m_16x16_05[4 * 16];
extern const u8 regina_m_16x16_06[4 * 16];
extern const u8 regina_m_16x16_07[4 * 16];
extern const u8 regina_m_16x16_08[4 * 16];

extern const u8 weems_m_24x24_03[6 * 24];
extern const u8 weems_m_24x24_04[6 * 24];
extern const u8 weems_m_24x24_05[6 * 24];

// extern const u8 map_m_8x8_00[2 * 8];
// extern const u8 map_m_8x8_01[2 * 8];
// extern const u8 map_m_8x8_02[2 * 8];
// extern const u8 map_m_8x8_03[2 * 8];
// extern const u8 map_m_8x8_04[2 * 8];
// extern const u8 map_m_8x8_05[2 * 8];
// extern const u8 map_m_8x8_06[2 * 8];
