From 1a9c57d249c93663d3fc25490716de508d61cec3 Mon Sep 17 00:00:00 2001 From: NielsCoding <48092678+heavydemon21@users.noreply.github.com> Date: Mon, 3 Apr 2023 15:24:51 +0200 Subject: player controller update --- .vscode/settings.json | 4 +- src/GameLoop/shop.c | 78 ---------- src/GameLoop/shop.h | 32 ---- src/GameLoop/startingScreen.c | 32 ---- src/GameLoop/startingScreen.h | 14 -- src/demo.c | 1 + src/engine/entity.c | 50 +++++++ src/engine/entity.h | 4 + src/engine/player_controller.c | 143 +++--------------- src/engine/player_controller.h | 2 +- src/game_loop/gameplay.c | 49 +++++- src/game_loop/starting_screen.c | 4 +- src/static/title_screen_icon.hex | 119 +++++++++++++++ src/static/title_screen_letteres_large.hex | 230 +++++++++++++++++++++++++++++ 14 files changed, 473 insertions(+), 289 deletions(-) delete mode 100644 src/GameLoop/shop.c delete mode 100644 src/GameLoop/shop.h delete mode 100644 src/GameLoop/startingScreen.c delete mode 100644 src/GameLoop/startingScreen.h create mode 100644 src/static/title_screen_icon.hex create mode 100644 src/static/title_screen_letteres_large.hex diff --git a/.vscode/settings.json b/.vscode/settings.json index d027762..f4d72ed 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -8,5 +8,7 @@ } }, "cmake.configureOnOpen": false, - "files.eol": "\n" + "files.eol": "\n", + "nrf-connect.topdir": "${nrf-connect.sdk:2.1.2}", + "nrf-connect.toolchain.path": "${nrf-connect.toolchain:2.1.2}" } diff --git a/src/GameLoop/shop.c b/src/GameLoop/shop.c deleted file mode 100644 index fb7ef4c..0000000 --- a/src/GameLoop/shop.c +++ /dev/null @@ -1,78 +0,0 @@ -#include "shop.h" -#include "engine/maths.h" -#include "ppu/ppu.h" - -bool hh_show_Shop(){ - static hh_e_ShopStates hh_e_Shop = hh_e_shop_init; - static hh_e_upgrades upgrades[HH_SHOP_UPG_DISPLAY] = {0}; - static uint8_t selected = 0; - - switch (hh_e_Shop) - { - case hh_e_shop_init: - hh_clear_screen(); - hh_clear_sprite(); - - //TODO: render shop bg from level file here - //hh_setup_shop(); - hh_shop_init(&upgrades); - selected = HH_SHOP_UPG_DISPLAY/2; - hh_shop_display(selected, &upgrades); - hh_e_Shop = hh_e_shop_main; - return false; - break; - case hh_e_shop_main: - if(g_hh_controller_p1.dpad_left || g_hh_controller_p1.dpad_right){ - hh_shift_selected(&selected,(g_hh_controller_p1.dpad_right?1:0),0,HH_SHOP_UPG_DISPLAY); - hh_shop_display(selected, &upgrades); - } - if(g_hh_controller_p1.button_primary){ - //apply selected upgrade - hh_e_Shop = hh_e_shop_end; - } - if(g_hh_controller_p1.button_secondary){ - hh_e_Shop = hh_e_shop_end; - } - break; - case hh_e_shop_end: - hh_e_Shop = hh_e_shop_init; - return true; - break; - default: - hh_e_Shop = hh_e_shop_init; - break; - } - return false; -} - -void hh_shop_init(hh_e_upgrades* in) { - for (int i = 0; i < HH_SHOP_UPG_DISPLAY; i++) { - in[i] = i%HH_SHOP_UPG_COUNT; - } -} - -void hh_shop_display(uint8_t selected, hh_e_upgrades* upgrades) { - const vec_cor start = {48,16}; - const uint8_t up = 8, - space = 24+8; - - for (int i = 0; i < HH_SHOP_UPG_DISPLAY; i++) { - hh_ppu_update_foreground(i+16, - (hh_s_ppu_loc_fam_entry){ - .horizontal_flip = false, .vertical_flip = false, - .position_x = i*space+start.x, .position_y = start.y + (i==selected?up:0), - .palette_index = 7, - .tilemap_index = i - }); - } -} - -void hh_shift_selected(uint8_t* pos, bool dir, uint8_t min, uint8_t max) { - if (dir) { - pos = CLAMP(++pos,min,max); - } else { - if (pos > 0) { - pos--; - } - } -} diff --git a/src/GameLoop/shop.h b/src/GameLoop/shop.h deleted file mode 100644 index 5cd6b53..0000000 --- a/src/GameLoop/shop.h +++ /dev/null @@ -1,32 +0,0 @@ -#include "input.h" -#include "engine/draw_screen.h" - - - -#include -#include - -typedef enum { - hh_e_shop_init, - hh_e_shop_main, - hh_e_shop_end -} hh_e_ShopStates; - -/** @brief amount of upgrade types */ -#define HH_SHOP_UPG_COUNT 2 -/** @brief count of visible upgrades in shop */ -#define HH_SHOP_UPG_DISPLAY 4 -/** @brief all possible upgrades */ -typedef enum { - hh_e_UPG_JUMP, - hh_e_UPG_HEALTH -} hh_e_upgrades; - -/** @brief init */ -void hh_shop_init(hh_e_upgrades* in); -/** @brief deals with displayed entity rendering */ -void hh_shop_display(uint8_t selected, hh_e_upgrades* upgrades); -/** @brief moves 'cursor' through selection field */ -void hh_shift_selected(uint8_t* pos, bool dir, uint8_t min, uint8_t max); - -bool hh_show_Shop(); diff --git a/src/GameLoop/startingScreen.c b/src/GameLoop/startingScreen.c deleted file mode 100644 index 4fc5af9..0000000 --- a/src/GameLoop/startingScreen.c +++ /dev/null @@ -1,32 +0,0 @@ -#include "startingScreen.h" -#include "input.h" -#include "engine/title_screen.h" -#include "engine/draw_screen.h" -// #include "engine/player_controller.h" - -bool hh_show_startingScreen(){ - static hh_e_screenStates hh_e_startingScreen = hh_e_STATE_SHOW; - - switch (hh_e_startingScreen) - { - case hh_e_STATE_SHOW: - hh_clear_screen(); - hh_init_title_screen(); - hh_e_startingScreen = hh_e_STATE_Input; - return false; - break; - case hh_e_STATE_Input: - if(g_hh_controller_p1.button_primary){ - hh_e_startingScreen = hh_e_STATE_END; - } - break; - case hh_e_STATE_END: - hh_e_startingScreen = hh_e_STATE_SHOW; - return true; - break; - default: - hh_e_startingScreen = hh_e_STATE_SHOW; - break; - } - return false; -} diff --git a/src/GameLoop/startingScreen.h b/src/GameLoop/startingScreen.h deleted file mode 100644 index f51cc66..0000000 --- a/src/GameLoop/startingScreen.h +++ /dev/null @@ -1,14 +0,0 @@ -#pragma once - -#include -#include - -typedef enum { - hh_e_STATE_SHOW, - hh_e_STATE_Input, - hh_e_STATE_END -} hh_e_screenStates; - - -bool hh_show_startingScreen(); - diff --git a/src/demo.c b/src/demo.c index 4fa1be2..725e560 100644 --- a/src/demo.c +++ b/src/demo.c @@ -17,6 +17,7 @@ #include "game_loop/gameplay.h" #include "game_loop/shop.h" +#include hh_g_all_levels hh_game; diff --git a/src/engine/entity.c b/src/engine/entity.c index 58b62c9..7b780cf 100644 --- a/src/engine/entity.c +++ b/src/engine/entity.c @@ -127,3 +127,53 @@ bool hh_distance_circles (vec2 object_1, vec2 object_2, int radius_1, int radius return false; } } + +void hh_jump_entity(hh_entity* object_1){ + if (object_1->is_grounded == true) {//JUMP + object_1->vel.y = -10; + object_1->is_grounded = false; + } +} +void hh_gravity_entity(hh_entity* object_1){ + if (object_1->is_grounded == false && object_1->vel.y < 6) { + object_1->vel.y += 1; //gravity + } +} +void hh_hit_entity(hh_entity* object_1, int8_t* hit_timer, int8_t* direction){ + if(object_1->is_hit == true){ + hit_timer = 9; + object_1->is_hit = false; + } + if(hit_timer > -10){ + hit_timer--; + } + + if(hit_timer <= 0){ + if(direction != 0){ + if(object_1->vel.x > -1 * object_1->speed && object_1->vel.x < object_1->speed) { + object_1->vel.x = object_1->vel.x + direction; + } else { + if (object_1->vel.x > 0) { + object_1->vel.x--; + } else if(object_1->vel.x < 0) { + object_1->vel.x++; + } + } + } else { + if (object_1->vel.x > 0) { + object_1->vel.x--; + } else if(object_1->vel.x < 0) { + object_1->vel.x++; + } + } + + } else { + if (object_1->vel.x > 0) { + object_1->vel.x--; + } else if(object_1->vel.x < 0) { + object_1->vel.x++; + } + object_1->vel.y++; + } + +} diff --git a/src/engine/entity.h b/src/engine/entity.h index 68b450d..b681bd8 100644 --- a/src/engine/entity.h +++ b/src/engine/entity.h @@ -43,4 +43,8 @@ hh_entity hh_enemy_collision(hh_entity temp_player, hh_entity temp_enemy); /// @return true if objects collids bool hh_distance_circles(vec2 object_1, vec2 object_2, int radius_1, int radius_2); +// TODO: comments on functions below +void hh_jump_entity(hh_entity* ); +void hh_gravity_entity(hh_entity* ); +void hh_hit_entity(hh_entity* object_1, int8_t* hit_timer, int8_t* direction); diff --git a/src/engine/player_controller.c b/src/engine/player_controller.c index cec28df..096243b 100644 --- a/src/engine/player_controller.c +++ b/src/engine/player_controller.c @@ -7,30 +7,8 @@ #include "engine/animator.h" #include "engine/bullet.h" -void hh_player_actions() { - static hh_entity player={ - .hp = 4, - .speed = 6, - .is_grounded = false, - .is_hit = false, - .radius = 8, - .pos = (vec2){128+16,32}, - .vel = (vec2){0,0}, - .size = (vec2){32,32}, - .render = { - .frame0 = 80, - .palette = 3, - .ppu_foreground_index = 0, - .fam = (hh_s_ppu_loc_fam_entry){ - .horizontal_flip = false, - .vertical_flip = false, - .palette_index = 3, - .tilemap_index = 80, - } - } - }, player_new = {0}; - - static hh_entity bullet={ +void hh_player_actions(hh_entity* player, vec_cor cam_pos){ + static hh_entity bullet={ // .hp = 4, .speed = 6, .is_grounded = true, @@ -49,124 +27,37 @@ void hh_player_actions() { } } }; + static hh_entity player_new = {0}; + player_new = *player; - static hh_entity enemy={ - .hp = 4, - .speed = 6, - .is_grounded = false, - .is_hit = false, - .radius = 8, - .pos = (vec2){128,48}, - .vel = (vec2){0,0}, - .size = (vec2){16,16}, - .render = { - .frame0 = 20, - .palette = 7, - .ppu_foreground_index = 16, - .fam = (hh_s_ppu_loc_fam_entry){ - .horizontal_flip = false, - .vertical_flip = false, - .palette_index = 7, - .tilemap_index = 1, - } - } - }; - player_new = player; - // hh_input_read(); - static uint8_t hit = 0; int8_t hit_timer = 0; int8_t direction_x = (-1 * g_hh_controller_p1.dpad_left) + (1 * g_hh_controller_p1.dpad_right); int8_t direction_y = (-1 * g_hh_controller_p1.dpad_up) + (1 * g_hh_controller_p1.dpad_down); - if(player.is_hit == true){ - hit_timer = 9; - player.is_hit = false; - } - if(hit_timer > -10){ - hit_timer--; - } - - if(hit_timer <= 0){ - if(direction_x != 0){ - if(player.vel.x > -1 * player.speed && player.vel.x < player.speed) { - player.vel.x = player.vel.x + direction_x; - } else { - if (player.vel.x > 0) { - player.vel.x--; - } else if(player.vel.x < 0) { - player.vel.x++; - } - } - } else { - if (player.vel.x > 0) { - player.vel.x--; - } else if(player.vel.x < 0) { - player.vel.x++; - } - } - - /* // movement Y (w-s) disable gravity to use this - if(direction_y != 0){ - if(player.vel.y > -4 && player.vel.y < 4 ) { - player.vel.y = player.vel.y + direction_y; - } - } else { - if (player.vel.y > 0) { - player.vel.y--; - } else if(player.vel.y < 0) { - player.vel.y++; - } - } - - */ - } else { - if (player.vel.x > 0) { - player.vel.x--; - } else if(player.vel.x < 0) { - player.vel.x++; - } - player.vel.y++; - } - - - if (g_hh_controller_p1.button_primary && player.is_grounded == true) {//JUMP - player.vel.y = -10; - player.is_grounded = false; - } else if (player.vel.y < 6){ - player.vel.y += 1; //gravity + hh_hit_entity(player,hit_timer,direction_x); + hh_gravity_entity(player); + if(g_hh_controller_p1.button_primary){ + hh_jump_entity(player); } - -/* - player.vel = (vec2){.x = (-1 * g_hh_controller_p1.dpad_left) + (1 * g_hh_controller_p1.dpad_right), - .y = (-1 * g_hh_controller_p1.dpad_up) + (1 * g_hh_controller_p1.dpad_down) }; - player_new.vel = (vec2){ - .x = player.vel.x, - .y = player.vel.y, - }; -*/ player_new.vel = (vec2){ - .x = player.vel.x, - .y = player.vel.y, + .x = player->vel.x, + .y = player->vel.y, }; - - player_new = hh_enemy_collision(player, enemy); - + player_new.pos = (vec2){ - .x = player.pos.x + player_new.vel.x, - .y = player.pos.y + player_new.vel.y, + .x = player->pos.x + player_new.vel.x, + .y = player->pos.y + player_new.vel.y, }; - player = hh_background_collision( player, player_new); + *player = hh_background_collision ( *player, player_new); - vec_cor cam_pos;//value in tiles - cam_pos = hh_draw_screen(player.pos); - hh_shoot_bullet(player.pos, cam_pos ,&bullet); + hh_shoot_bullet(player->pos, cam_pos ,&bullet); uint16_t idx = 16; - idx = hh_update_sprite(idx, &player, cam_pos); - idx = hh_update_sprite(idx, &enemy, cam_pos); + idx = hh_update_sprite(idx, player, cam_pos); + // idx = hh_update_sprite(idx, &enemy, cam_pos); idx =16; diff --git a/src/engine/player_controller.h b/src/engine/player_controller.h index 400c18e..4a325e8 100644 --- a/src/engine/player_controller.h +++ b/src/engine/player_controller.h @@ -4,4 +4,4 @@ #include "engine/entity.h" // inputs -void hh_player_actions(); +void hh_player_actions(hh_entity* player, vec_cor cam_pos); diff --git a/src/game_loop/gameplay.c b/src/game_loop/gameplay.c index 295eb5d..bc6c98d 100644 --- a/src/game_loop/gameplay.c +++ b/src/game_loop/gameplay.c @@ -5,6 +5,47 @@ void hh_gameplay(hh_g_all_levels game, hh_e_game_state* hh_game_state){ static hh_e_gameplay gameplay = hh_e_setup_screen; + static hh_entity player1={ + .hp = 4, + .speed = 6, + .is_grounded = false, + .is_hit = false, + .radius = 8, + .pos = (vec2){32,32}, + .size = (vec2){32,32}, + .vel = (vec2){0,0}, + .render = { + .frame0 = 80, + .palette = 3, + .fam = (hh_s_ppu_loc_fam_entry){ + .horizontal_flip = false, + .vertical_flip = false, + .palette_index = 3, + .tilemap_index = 80, + } + } + }; + // enemy gets replaced here is just for reference + static hh_entity enemy={ + .hp = 4, + .speed = 6, + .is_grounded = false, + .is_hit = false, + .radius = 8, + .pos = (vec2){128,48}, + .vel = (vec2){0,0}, + // .vec = (vec2){0,0}, + .render = { + .frame0 = 20, + .palette = 7, + .fam = (hh_s_ppu_loc_fam_entry){ + .horizontal_flip = false, + .vertical_flip = false, + .palette_index = 7, + .tilemap_index = 1, + } + } + }; switch (gameplay) { @@ -13,10 +54,12 @@ void hh_gameplay(hh_g_all_levels game, hh_e_game_state* hh_game_state){ gameplay = hh_e_play_level; break; case hh_e_play_level: - // todo: here come all the different functions for the gameplay - hh_player_actions(); - + // TODO: here come all the different functions for the gameplay + vec_cor cam_pos;//value in tiles + cam_pos = hh_draw_screen(player1.pos); + hh_player_actions(&player1,cam_pos); + // enemy's diff --git a/src/game_loop/starting_screen.c b/src/game_loop/starting_screen.c index 6ab0278..c11e4fc 100644 --- a/src/game_loop/starting_screen.c +++ b/src/game_loop/starting_screen.c @@ -1,8 +1,8 @@ -#include "starting_screen.h"" +#include "starting_screen.h" #include "input.h" #include "engine/title_screen.h" #include "engine/draw_screen.h" -// #include "engine/player_controller.h" +#include "engine/player_controller.h" bool hh_show_starting_screen(){ static hh_e_screen_states hh_e_starting_screen = hh_e_state_show; diff --git a/src/static/title_screen_icon.hex b/src/static/title_screen_icon.hex new file mode 100644 index 0000000..a1e5f0b --- /dev/null +++ b/src/static/title_screen_icon.hex @@ -0,0 +1,119 @@ +;Main character icon for title screen +;indices: 4 +;23 32 56 +;16 20 31 +;64 39 81 +;122 54 123 + +0000: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +0010: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +0020: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +0030: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +0040: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +0050: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +0060: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +0070: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +0080: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +0090: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +00a0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +00b0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +00c0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +00d0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +00e0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +00f0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +0100: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0110: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0120: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0130: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0140: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0160: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +01a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 02 +01b0: 00 00 00 00 00 00 00 00 00 00 02 02 02 02 03 03 +01c0: 00 00 00 00 00 00 00 02 02 02 03 03 03 03 03 03 +01d0: 00 00 00 00 02 02 02 03 03 03 03 03 03 03 03 03 +01e0: 00 00 02 02 03 03 03 03 03 03 03 03 03 03 03 03 +01f0: 02 02 03 03 03 03 03 03 03 03 03 03 03 03 03 03 +0200: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 02 +0210: 00 00 00 00 00 00 00 00 00 00 00 00 00 02 03 03 +0220: 00 00 00 00 00 00 00 00 00 00 00 00 02 03 03 03 +0230: 00 00 00 00 00 00 00 00 00 00 00 02 03 03 03 03 +0240: 00 00 00 00 00 00 00 00 00 00 02 03 03 03 03 03 +0250: 00 00 00 00 00 00 00 00 00 00 02 03 03 03 03 03 +0260: 00 00 00 00 00 00 00 00 00 02 03 03 03 03 03 03 +0270: 00 00 00 00 00 00 00 00 02 03 03 03 03 03 03 03 +0280: 00 00 00 00 00 00 00 00 02 03 03 03 03 03 03 03 +0290: 00 00 00 00 00 00 00 02 03 03 03 03 03 03 03 03 +02a0: 00 00 00 00 00 00 00 02 03 03 03 03 03 03 03 03 +02b0: 00 00 00 00 00 00 00 02 03 03 03 03 03 03 03 03 +02c0: 00 00 00 00 00 00 02 03 03 03 03 03 03 03 03 01 +02d0: 00 00 00 00 00 00 02 03 03 03 03 03 03 03 01 01 +02e0: 00 00 00 00 00 00 02 03 03 03 03 03 03 03 01 01 +02f0: 00 00 00 00 00 02 03 03 03 03 03 03 03 01 01 01 +0300: 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 +0310: 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 +0320: 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 +0330: 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 +0340: 03 03 03 03 03 03 03 03 03 03 01 01 01 01 01 01 +0350: 03 03 03 03 03 03 03 01 01 01 01 01 01 01 01 01 +0360: 03 03 03 03 03 01 01 01 01 01 01 01 01 01 01 01 +0370: 03 03 03 01 01 01 01 01 01 01 01 01 01 01 01 01 +0380: 03 03 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +0390: 03 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +03a0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +03b0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +03c0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +03d0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +03e0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +03f0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +0400: 00 00 00 00 00 02 03 03 03 03 03 03 03 01 01 01 +0410: 00 00 00 00 00 02 03 03 03 03 03 03 03 01 01 01 +0420: 00 00 00 00 00 02 03 03 03 03 03 03 01 01 01 01 +0430: 00 00 00 00 00 02 03 03 03 03 03 03 01 01 01 01 +0440: 00 00 00 00 00 02 03 03 03 03 03 03 01 01 01 01 +0450: 00 00 00 00 00 02 03 03 03 03 03 03 01 01 01 01 +0460: 00 00 00 00 00 02 03 03 03 03 03 03 01 01 01 01 +0470: 00 00 00 00 00 02 03 03 03 03 03 03 01 01 01 01 +0480: 00 00 00 00 00 02 03 03 03 03 03 03 01 01 01 01 +0490: 00 00 00 00 00 00 02 03 03 03 03 03 01 01 01 01 +04a0: 00 00 00 00 00 00 02 03 03 03 03 03 01 01 01 01 +04b0: 00 00 00 00 00 00 02 03 03 03 03 03 01 01 01 01 +04c0: 00 00 00 00 00 00 00 02 03 03 03 03 01 01 01 01 +04d0: 00 00 00 00 00 00 00 02 03 03 03 03 01 01 01 01 +04e0: 00 00 00 00 00 00 00 02 03 03 03 03 01 01 01 01 +04f0: 00 00 00 00 00 00 00 00 02 03 03 03 01 01 01 01 +0500: 00 00 00 00 00 00 00 00 02 03 03 03 01 01 01 01 +0510: 00 00 00 00 00 00 00 00 00 02 03 03 01 01 01 01 +0520: 00 00 00 00 00 00 00 00 00 02 03 03 03 01 01 01 +0530: 00 00 00 00 00 00 00 00 00 00 02 03 03 01 01 01 +0540: 00 00 00 00 00 00 00 00 00 00 02 03 03 01 01 01 +0550: 00 00 00 00 00 00 00 00 00 00 00 02 03 03 01 01 +0560: 00 00 00 00 00 00 00 00 00 00 00 02 03 03 01 01 +0570: 00 00 00 00 00 00 00 00 00 00 00 00 02 03 03 01 +0580: 00 00 00 00 00 00 00 00 00 00 00 00 00 02 03 03 +0590: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 03 +05a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 +05b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +05c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +05d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +05e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +05f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0600: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +0610: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +0620: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +0630: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +0640: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +0650: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +0660: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +0670: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +0680: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +0690: 03 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 +06a0: 03 03 03 01 01 01 01 01 01 01 01 01 01 01 01 01 +06b0: 02 03 03 03 03 01 01 01 01 01 01 01 01 01 01 01 +06c0: 00 02 02 03 03 03 03 01 01 01 01 01 01 01 01 01 +06d0: 00 00 00 02 02 02 03 03 03 03 03 03 01 01 01 01 +06e0: 00 00 00 00 00 00 02 02 02 02 02 03 03 03 03 03 +06f0: 00 00 00 00 00 00 00 00 00 00 00 02 02 02 02 02 diff --git a/src/static/title_screen_letteres_large.hex b/src/static/title_screen_letteres_large.hex new file mode 100644 index 0000000..fea1c77 --- /dev/null +++ b/src/static/title_screen_letteres_large.hex @@ -0,0 +1,230 @@ +;title screen letters (Large) +;indices: 3 +;23 32 56 +;165 48 48 +;207 87 60 + +0000: 00 00 00 00 00 00 00 00 02 02 00 00 00 00 00 00 +0010: 00 00 00 00 00 00 00 00 02 02 02 00 00 00 00 00 +0020: 00 00 00 00 00 00 00 02 02 02 02 00 00 00 00 00 +0030: 00 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 +0040: 00 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 +0050: 00 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 +0060: 00 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 +0070: 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 00 +0080: 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 00 +0090: 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 00 +00a0: 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 00 +00b0: 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 00 +00c0: 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 00 +00d0: 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 00 +00e0: 00 00 00 00 00 00 02 02 01 00 00 00 00 00 00 00 +00f0: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 +0100: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 +0110: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 +0120: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 +0130: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 01 +0140: 00 00 00 00 00 00 01 01 01 01 01 01 01 01 01 01 +0150: 00 00 00 00 00 00 01 01 01 01 01 01 01 01 01 01 +0160: 00 00 00 00 01 01 01 01 01 01 01 01 01 01 00 00 +0170: 00 00 00 00 01 01 01 01 01 01 00 00 00 00 00 00 +0180: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 +0190: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 +01a0: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 +01b0: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 +01c0: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 +01d0: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 +01e0: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 +01f0: 00 00 00 00 00 00 00 01 01 00 00 00 00 00 00 00 +0200: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 +0210: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 +0220: 00 00 00 00 00 00 01 01 01 01 00 00 00 00 00 00 +0230: 01 01 01 01 01 01 01 01 01 01 01 00 00 00 00 00 +0240: 01 01 01 01 01 01 01 01 01 01 00 00 00 00 00 00 +0250: 01 01 01 00 00 00 01 01 01 00 00 00 00 00 00 00 +0260: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 +0270: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 +0280: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 +0290: 00 00 00 00 00 00 00 01 01 00 00 00 00 00 00 00 +02a0: 00 00 00 00 00 00 00 01 01 00 00 00 00 00 00 00 +02b0: 00 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 +02c0: 00 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 +02d0: 00 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 +02e0: 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 +02f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0300: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0310: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0320: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0330: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0340: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0350: 00 00 00 00 00 00 02 02 02 02 00 00 00 00 00 00 +0360: 00 00 00 00 00 02 02 02 02 02 02 00 00 00 00 00 +0370: 00 00 00 00 02 02 02 02 02 02 02 02 00 00 00 00 +0380: 00 00 00 02 02 02 02 02 02 02 02 02 02 00 00 00 +0390: 00 00 00 02 02 02 02 02 02 02 02 02 02 02 00 00 +03a0: 00 00 02 02 02 02 02 02 02 02 02 02 02 02 00 00 +03b0: 00 00 02 02 02 02 02 02 02 02 02 02 02 02 00 00 +03c0: 00 00 02 02 02 02 02 02 02 02 02 02 02 02 00 00 +03d0: 00 00 02 02 02 02 02 02 02 02 02 02 01 01 00 00 +03e0: 00 00 02 02 02 02 02 02 02 02 01 01 01 01 00 00 +03f0: 00 00 02 02 02 02 02 01 01 01 01 01 01 01 00 00 +0400: 00 00 02 02 01 01 01 01 01 01 01 01 01 01 00 00 +0410: 00 00 01 01 01 01 01 01 01 01 01 01 01 01 00 00 +0420: 00 00 01 01 01 01 01 01 01 01 01 01 01 01 00 00 +0430: 00 00 01 01 01 01 01 01 01 01 01 01 01 01 00 00 +0440: 00 00 01 01 01 01 01 01 01 01 01 01 01 01 00 00 +0450: 00 00 01 01 01 01 01 01 01 01 01 01 01 01 00 00 +0460: 00 00 01 01 01 01 01 01 01 01 01 01 01 00 00 00 +0470: 00 00 00 01 01 01 01 01 01 01 01 01 01 00 00 00 +0480: 00 00 00 00 01 01 01 01 01 01 01 01 00 00 00 00 +0490: 00 00 00 00 00 01 01 01 01 01 00 00 00 00 00 00 +04a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +04b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +04c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +04d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +04e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +04f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0500: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 00 00 +0510: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 02 00 +0520: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 02 00 +0530: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 02 00 +0540: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 02 00 +0550: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 02 00 +0560: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 02 00 +0570: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 02 00 +0580: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 00 00 +0590: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 00 00 +05a0: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 00 00 +05b0: 00 00 00 00 00 02 02 02 02 00 00 00 02 02 00 00 +05c0: 00 00 00 00 02 02 02 02 02 02 00 00 02 02 00 00 +05d0: 00 00 00 00 02 02 02 00 00 00 02 00 02 02 00 00 +05e0: 00 00 00 02 02 02 00 00 00 00 00 02 02 02 00 00 +05f0: 00 00 00 02 02 00 00 00 00 00 00 02 02 02 00 00 +0600: 00 00 02 02 02 00 00 00 00 00 00 00 02 02 00 00 +0610: 00 00 02 02 00 00 00 00 00 00 00 00 01 01 00 00 +0620: 00 00 02 01 00 00 00 00 00 00 00 00 01 01 00 00 +0630: 00 00 01 01 00 00 00 00 00 00 00 00 01 01 00 00 +0640: 00 01 01 00 00 00 00 00 00 00 00 00 01 01 00 00 +0650: 00 01 01 00 00 00 00 00 00 00 00 00 01 01 00 00 +0660: 00 01 01 00 00 00 00 00 00 00 00 00 01 01 00 00 +0670: 00 01 01 00 00 00 00 00 00 00 00 01 01 01 00 00 +0680: 00 01 01 00 00 00 00 00 00 00 00 01 01 01 00 00 +0690: 00 01 01 00 00 00 00 00 00 00 00 01 01 01 00 00 +06a0: 00 01 01 00 00 00 00 00 00 00 01 01 01 01 00 00 +06b0: 00 01 01 00 00 00 00 00 00 00 01 01 01 01 00 00 +06c0: 00 00 01 01 00 00 00 00 00 01 01 01 01 01 00 00 +06d0: 00 00 01 01 01 00 00 00 01 01 01 00 01 01 00 00 +06e0: 00 00 00 01 01 01 01 01 01 01 00 00 01 01 00 00 +06f0: 00 00 00 00 01 01 01 01 01 00 00 00 00 01 01 00 +0700: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0710: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0720: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0730: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0740: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0750: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0760: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0770: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0780: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0790: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +07a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +07b0: 00 02 02 00 00 00 00 00 00 00 00 00 00 02 02 00 +07c0: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 02 00 +07d0: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 02 00 +07e0: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 02 00 +07f0: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 02 00 +0800: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 02 00 +0810: 00 00 02 02 00 00 00 00 00 00 00 00 00 02 02 00 +0820: 00 00 02 02 00 00 00 00 00 00 00 00 02 02 02 00 +0830: 00 00 02 02 02 00 00 00 00 00 00 00 02 02 00 00 +0840: 00 00 02 02 02 00 00 00 00 00 00 00 02 02 00 00 +0850: 00 00 02 02 02 00 00 00 00 00 00 00 02 02 00 00 +0860: 00 00 00 02 02 00 00 00 00 00 00 00 02 01 00 00 +0870: 00 00 00 02 01 01 00 00 00 00 00 00 01 00 00 00 +0880: 00 00 00 01 01 01 00 00 00 00 00 01 01 00 00 00 +0890: 00 00 00 00 01 01 00 00 00 00 00 01 01 00 00 00 +08a0: 00 00 00 00 01 01 01 00 00 00 00 01 01 00 00 00 +08b0: 00 00 00 00 00 01 01 00 00 00 00 01 00 00 00 00 +08c0: 00 00 00 00 00 01 01 01 00 00 01 01 00 00 00 00 +08d0: 00 00 00 00 00 00 01 01 00 00 01 00 00 00 00 00 +08e0: 00 00 00 00 00 00 01 01 01 01 01 00 00 00 00 00 +08f0: 00 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 +0900: 00 00 00 02 02 00 00 00 00 00 00 00 02 02 02 00 +0910: 00 00 00 02 02 00 00 00 00 00 00 00 02 02 02 00 +0920: 00 00 00 02 02 00 00 00 00 00 00 00 02 02 02 00 +0930: 00 00 02 02 02 00 00 00 00 00 00 00 02 02 02 00 +0940: 00 00 02 02 02 00 00 00 00 00 00 02 02 02 00 00 +0950: 00 00 02 02 02 00 00 00 00 00 00 02 02 02 00 00 +0960: 00 00 02 02 02 02 00 00 00 00 02 02 02 00 00 00 +0970: 00 00 02 02 02 02 02 02 02 02 02 02 00 00 00 00 +0980: 00 00 02 02 00 00 02 02 02 02 00 00 00 00 00 00 +0990: 00 00 02 01 00 00 00 00 00 00 00 00 00 00 00 00 +09a0: 00 00 01 01 00 00 00 00 00 00 00 00 00 01 01 00 +09b0: 00 00 01 01 00 00 00 00 00 00 00 00 01 01 01 00 +09c0: 00 00 00 01 01 00 00 00 00 00 00 01 01 01 00 00 +09d0: 00 00 00 01 01 01 00 00 00 00 01 01 01 01 00 00 +09e0: 00 00 00 00 01 01 01 01 01 01 01 01 00 00 00 00 +09f0: 00 00 00 00 00 01 01 01 01 01 00 00 00 00 00 00 +0a00: 00 00 00 02 02 02 00 00 00 00 00 00 02 02 02 00 +0a10: 00 00 00 02 02 00 00 00 00 00 00 00 02 02 02 00 +0a20: 00 00 00 02 02 00 00 00 00 00 00 00 00 02 02 00 +0a30: 00 00 00 02 02 00 00 00 00 00 00 00 00 02 02 00 +0a40: 00 00 00 00 02 00 00 00 00 00 00 00 00 02 02 00 +0a50: 00 00 00 00 00 00 02 02 02 02 02 02 02 02 02 00 +0a60: 00 00 00 00 02 02 02 02 02 02 02 02 02 02 02 00 +0a70: 00 00 00 01 02 02 02 00 00 00 00 00 02 02 01 00 +0a80: 00 00 01 01 01 00 00 00 00 00 00 00 00 01 01 00 +0a90: 00 01 01 01 00 00 00 00 00 00 00 00 00 01 01 00 +0aa0: 00 01 01 01 00 00 00 00 00 00 00 00 01 01 01 00 +0ab0: 00 01 01 01 00 00 00 00 00 00 00 00 01 01 01 00 +0ac0: 00 01 01 01 01 00 00 00 00 00 00 01 01 01 01 00 +0ad0: 00 00 01 01 01 01 01 00 01 01 01 01 01 01 01 00 +0ae0: 00 00 00 01 01 01 01 01 01 01 01 01 00 01 01 00 +0af0: 00 00 00 00 00 01 01 01 01 01 00 00 00 01 01 00 +0b00: 00 00 02 02 02 00 00 00 00 00 00 00 02 02 00 00 +0b10: 00 00 02 02 02 00 00 00 00 00 00 00 00 02 00 00 +0b20: 00 00 02 02 00 00 00 00 00 00 00 00 00 02 02 00 +0b30: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 02 00 +0b40: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 02 00 +0b50: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 02 00 +0b60: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 01 00 +0b70: 00 02 01 01 00 00 00 00 00 00 00 00 00 01 01 00 +0b80: 00 01 01 01 00 00 00 00 00 00 00 00 00 01 01 00 +0b90: 00 01 01 01 00 00 00 00 00 00 00 00 01 01 01 00 +0ba0: 00 01 01 01 00 00 00 00 00 00 00 00 01 01 00 00 +0bb0: 00 00 01 01 01 00 00 00 00 00 00 00 01 01 00 00 +0bc0: 00 00 01 01 01 00 00 00 00 00 00 01 01 00 00 00 +0bd0: 00 00 00 01 01 01 01 01 00 00 01 01 01 00 00 00 +0be0: 00 00 00 00 01 01 01 01 01 01 01 01 00 00 00 00 +0bf0: 00 00 00 00 00 01 01 01 01 01 00 00 00 00 00 00 +0c00: 00 00 02 02 02 00 00 00 00 00 00 00 02 02 00 00 +0c10: 00 00 02 02 02 00 00 00 00 00 00 02 02 00 00 00 +0c20: 00 00 02 02 02 00 00 00 00 00 00 02 02 00 00 00 +0c30: 00 00 02 02 02 00 00 00 00 00 00 02 00 00 00 00 +0c40: 00 02 02 02 00 00 00 00 00 00 02 00 00 00 00 00 +0c50: 00 02 02 02 00 00 00 00 00 00 00 00 00 00 00 00 +0c60: 00 02 02 02 00 00 00 00 00 00 00 00 00 00 00 00 +0c70: 00 02 01 01 00 00 00 00 00 00 00 00 00 00 00 00 +0c80: 00 01 01 01 00 00 00 00 00 00 00 00 00 00 00 00 +0c90: 00 01 01 01 00 00 00 00 00 00 00 00 00 01 01 00 +0ca0: 00 01 01 01 00 00 00 00 00 00 00 00 00 01 01 00 +0cb0: 00 01 01 01 01 00 00 00 00 00 00 00 01 01 01 00 +0cc0: 00 00 01 01 01 00 00 00 00 00 00 01 01 01 00 00 +0cd0: 00 00 00 01 01 01 00 00 00 01 01 01 01 00 00 00 +0ce0: 00 00 00 01 01 01 01 01 01 01 01 01 00 00 00 00 +0cf0: 00 00 00 00 00 01 01 01 01 01 00 00 00 00 00 00 +0d00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0d10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0d20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0d30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0d40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0d50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0d60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0d70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0d80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0d90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0da0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0db0: 00 00 00 00 00 00 00 02 02 02 02 02 00 00 00 00 +0dc0: 00 00 00 00 00 00 02 02 02 02 02 02 02 00 00 00 +0dd0: 00 00 00 00 00 02 02 00 00 00 02 02 02 00 00 00 +0de0: 00 00 00 00 02 02 00 00 00 00 00 02 02 02 00 00 +0df0: 00 00 00 02 02 02 00 00 00 00 00 00 02 02 00 00 -- cgit v1.2.3 From 204051cbcd98a6b3e792c82c222c318da911035e Mon Sep 17 00:00:00 2001 From: UnavailableDev <69792062+UnavailableDev@users.noreply.github.com> Date: Mon, 3 Apr 2023 16:11:36 +0200 Subject: Delete title_screen_icon.hex --- src/static/title_screen_icon.hex | 119 --------------------------------------- 1 file changed, 119 deletions(-) delete mode 100644 src/static/title_screen_icon.hex diff --git a/src/static/title_screen_icon.hex b/src/static/title_screen_icon.hex deleted file mode 100644 index a1e5f0b..0000000 --- a/src/static/title_screen_icon.hex +++ /dev/null @@ -1,119 +0,0 @@ -;Main character icon for title screen -;indices: 4 -;23 32 56 -;16 20 31 -;64 39 81 -;122 54 123 - -0000: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0010: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0020: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0030: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0040: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0050: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0060: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0070: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0080: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0090: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -00a0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -00b0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -00c0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -00d0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -00e0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -00f0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0100: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0110: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0120: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0130: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0140: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0160: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -01a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 02 -01b0: 00 00 00 00 00 00 00 00 00 00 02 02 02 02 03 03 -01c0: 00 00 00 00 00 00 00 02 02 02 03 03 03 03 03 03 -01d0: 00 00 00 00 02 02 02 03 03 03 03 03 03 03 03 03 -01e0: 00 00 02 02 03 03 03 03 03 03 03 03 03 03 03 03 -01f0: 02 02 03 03 03 03 03 03 03 03 03 03 03 03 03 03 -0200: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 02 -0210: 00 00 00 00 00 00 00 00 00 00 00 00 00 02 03 03 -0220: 00 00 00 00 00 00 00 00 00 00 00 00 02 03 03 03 -0230: 00 00 00 00 00 00 00 00 00 00 00 02 03 03 03 03 -0240: 00 00 00 00 00 00 00 00 00 00 02 03 03 03 03 03 -0250: 00 00 00 00 00 00 00 00 00 00 02 03 03 03 03 03 -0260: 00 00 00 00 00 00 00 00 00 02 03 03 03 03 03 03 -0270: 00 00 00 00 00 00 00 00 02 03 03 03 03 03 03 03 -0280: 00 00 00 00 00 00 00 00 02 03 03 03 03 03 03 03 -0290: 00 00 00 00 00 00 00 02 03 03 03 03 03 03 03 03 -02a0: 00 00 00 00 00 00 00 02 03 03 03 03 03 03 03 03 -02b0: 00 00 00 00 00 00 00 02 03 03 03 03 03 03 03 03 -02c0: 00 00 00 00 00 00 02 03 03 03 03 03 03 03 03 01 -02d0: 00 00 00 00 00 00 02 03 03 03 03 03 03 03 01 01 -02e0: 00 00 00 00 00 00 02 03 03 03 03 03 03 03 01 01 -02f0: 00 00 00 00 00 02 03 03 03 03 03 03 03 01 01 01 -0300: 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 -0310: 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 -0320: 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 -0330: 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 -0340: 03 03 03 03 03 03 03 03 03 03 01 01 01 01 01 01 -0350: 03 03 03 03 03 03 03 01 01 01 01 01 01 01 01 01 -0360: 03 03 03 03 03 01 01 01 01 01 01 01 01 01 01 01 -0370: 03 03 03 01 01 01 01 01 01 01 01 01 01 01 01 01 -0380: 03 03 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0390: 03 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -03a0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -03b0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -03c0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -03d0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -03e0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -03f0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0400: 00 00 00 00 00 02 03 03 03 03 03 03 03 01 01 01 -0410: 00 00 00 00 00 02 03 03 03 03 03 03 03 01 01 01 -0420: 00 00 00 00 00 02 03 03 03 03 03 03 01 01 01 01 -0430: 00 00 00 00 00 02 03 03 03 03 03 03 01 01 01 01 -0440: 00 00 00 00 00 02 03 03 03 03 03 03 01 01 01 01 -0450: 00 00 00 00 00 02 03 03 03 03 03 03 01 01 01 01 -0460: 00 00 00 00 00 02 03 03 03 03 03 03 01 01 01 01 -0470: 00 00 00 00 00 02 03 03 03 03 03 03 01 01 01 01 -0480: 00 00 00 00 00 02 03 03 03 03 03 03 01 01 01 01 -0490: 00 00 00 00 00 00 02 03 03 03 03 03 01 01 01 01 -04a0: 00 00 00 00 00 00 02 03 03 03 03 03 01 01 01 01 -04b0: 00 00 00 00 00 00 02 03 03 03 03 03 01 01 01 01 -04c0: 00 00 00 00 00 00 00 02 03 03 03 03 01 01 01 01 -04d0: 00 00 00 00 00 00 00 02 03 03 03 03 01 01 01 01 -04e0: 00 00 00 00 00 00 00 02 03 03 03 03 01 01 01 01 -04f0: 00 00 00 00 00 00 00 00 02 03 03 03 01 01 01 01 -0500: 00 00 00 00 00 00 00 00 02 03 03 03 01 01 01 01 -0510: 00 00 00 00 00 00 00 00 00 02 03 03 01 01 01 01 -0520: 00 00 00 00 00 00 00 00 00 02 03 03 03 01 01 01 -0530: 00 00 00 00 00 00 00 00 00 00 02 03 03 01 01 01 -0540: 00 00 00 00 00 00 00 00 00 00 02 03 03 01 01 01 -0550: 00 00 00 00 00 00 00 00 00 00 00 02 03 03 01 01 -0560: 00 00 00 00 00 00 00 00 00 00 00 02 03 03 01 01 -0570: 00 00 00 00 00 00 00 00 00 00 00 00 02 03 03 01 -0580: 00 00 00 00 00 00 00 00 00 00 00 00 00 02 03 03 -0590: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 03 -05a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 -05b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -05c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -05d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -05e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -05f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0600: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0610: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0620: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0630: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0640: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0650: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0660: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0670: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0680: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0690: 03 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -06a0: 03 03 03 01 01 01 01 01 01 01 01 01 01 01 01 01 -06b0: 02 03 03 03 03 01 01 01 01 01 01 01 01 01 01 01 -06c0: 00 02 02 03 03 03 03 01 01 01 01 01 01 01 01 01 -06d0: 00 00 00 02 02 02 03 03 03 03 03 03 01 01 01 01 -06e0: 00 00 00 00 00 00 02 02 02 02 02 03 03 03 03 03 -06f0: 00 00 00 00 00 00 00 00 00 00 00 02 02 02 02 02 -- cgit v1.2.3 From aed990d5f5766c9c04e1846e216c25c1cbab09aa Mon Sep 17 00:00:00 2001 From: UnavailableDev <69792062+UnavailableDev@users.noreply.github.com> Date: Mon, 3 Apr 2023 16:11:55 +0200 Subject: Delete title_screen_letteres_large.hex --- src/static/title_screen_letteres_large.hex | 230 ----------------------------- 1 file changed, 230 deletions(-) delete mode 100644 src/static/title_screen_letteres_large.hex diff --git a/src/static/title_screen_letteres_large.hex b/src/static/title_screen_letteres_large.hex deleted file mode 100644 index fea1c77..0000000 --- a/src/static/title_screen_letteres_large.hex +++ /dev/null @@ -1,230 +0,0 @@ -;title screen letters (Large) -;indices: 3 -;23 32 56 -;165 48 48 -;207 87 60 - -0000: 00 00 00 00 00 00 00 00 02 02 00 00 00 00 00 00 -0010: 00 00 00 00 00 00 00 00 02 02 02 00 00 00 00 00 -0020: 00 00 00 00 00 00 00 02 02 02 02 00 00 00 00 00 -0030: 00 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 -0040: 00 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 -0050: 00 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 -0060: 00 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 -0070: 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 00 -0080: 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 00 -0090: 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 00 -00a0: 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 00 -00b0: 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 00 -00c0: 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 00 -00d0: 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 00 -00e0: 00 00 00 00 00 00 02 02 01 00 00 00 00 00 00 00 -00f0: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 -0100: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 -0110: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 -0120: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 -0130: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 01 -0140: 00 00 00 00 00 00 01 01 01 01 01 01 01 01 01 01 -0150: 00 00 00 00 00 00 01 01 01 01 01 01 01 01 01 01 -0160: 00 00 00 00 01 01 01 01 01 01 01 01 01 01 00 00 -0170: 00 00 00 00 01 01 01 01 01 01 00 00 00 00 00 00 -0180: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 -0190: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 -01a0: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 -01b0: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 -01c0: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 -01d0: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 -01e0: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 -01f0: 00 00 00 00 00 00 00 01 01 00 00 00 00 00 00 00 -0200: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 -0210: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 -0220: 00 00 00 00 00 00 01 01 01 01 00 00 00 00 00 00 -0230: 01 01 01 01 01 01 01 01 01 01 01 00 00 00 00 00 -0240: 01 01 01 01 01 01 01 01 01 01 00 00 00 00 00 00 -0250: 01 01 01 00 00 00 01 01 01 00 00 00 00 00 00 00 -0260: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 -0270: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 -0280: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00 -0290: 00 00 00 00 00 00 00 01 01 00 00 00 00 00 00 00 -02a0: 00 00 00 00 00 00 00 01 01 00 00 00 00 00 00 00 -02b0: 00 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 -02c0: 00 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 -02d0: 00 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 -02e0: 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 -02f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0300: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0310: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0320: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0330: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0340: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0350: 00 00 00 00 00 00 02 02 02 02 00 00 00 00 00 00 -0360: 00 00 00 00 00 02 02 02 02 02 02 00 00 00 00 00 -0370: 00 00 00 00 02 02 02 02 02 02 02 02 00 00 00 00 -0380: 00 00 00 02 02 02 02 02 02 02 02 02 02 00 00 00 -0390: 00 00 00 02 02 02 02 02 02 02 02 02 02 02 00 00 -03a0: 00 00 02 02 02 02 02 02 02 02 02 02 02 02 00 00 -03b0: 00 00 02 02 02 02 02 02 02 02 02 02 02 02 00 00 -03c0: 00 00 02 02 02 02 02 02 02 02 02 02 02 02 00 00 -03d0: 00 00 02 02 02 02 02 02 02 02 02 02 01 01 00 00 -03e0: 00 00 02 02 02 02 02 02 02 02 01 01 01 01 00 00 -03f0: 00 00 02 02 02 02 02 01 01 01 01 01 01 01 00 00 -0400: 00 00 02 02 01 01 01 01 01 01 01 01 01 01 00 00 -0410: 00 00 01 01 01 01 01 01 01 01 01 01 01 01 00 00 -0420: 00 00 01 01 01 01 01 01 01 01 01 01 01 01 00 00 -0430: 00 00 01 01 01 01 01 01 01 01 01 01 01 01 00 00 -0440: 00 00 01 01 01 01 01 01 01 01 01 01 01 01 00 00 -0450: 00 00 01 01 01 01 01 01 01 01 01 01 01 01 00 00 -0460: 00 00 01 01 01 01 01 01 01 01 01 01 01 00 00 00 -0470: 00 00 00 01 01 01 01 01 01 01 01 01 01 00 00 00 -0480: 00 00 00 00 01 01 01 01 01 01 01 01 00 00 00 00 -0490: 00 00 00 00 00 01 01 01 01 01 00 00 00 00 00 00 -04a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -04b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -04c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -04d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -04e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -04f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0500: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 00 00 -0510: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 02 00 -0520: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 02 00 -0530: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 02 00 -0540: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 02 00 -0550: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 02 00 -0560: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 02 00 -0570: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 02 00 -0580: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 00 00 -0590: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 00 00 -05a0: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 00 00 -05b0: 00 00 00 00 00 02 02 02 02 00 00 00 02 02 00 00 -05c0: 00 00 00 00 02 02 02 02 02 02 00 00 02 02 00 00 -05d0: 00 00 00 00 02 02 02 00 00 00 02 00 02 02 00 00 -05e0: 00 00 00 02 02 02 00 00 00 00 00 02 02 02 00 00 -05f0: 00 00 00 02 02 00 00 00 00 00 00 02 02 02 00 00 -0600: 00 00 02 02 02 00 00 00 00 00 00 00 02 02 00 00 -0610: 00 00 02 02 00 00 00 00 00 00 00 00 01 01 00 00 -0620: 00 00 02 01 00 00 00 00 00 00 00 00 01 01 00 00 -0630: 00 00 01 01 00 00 00 00 00 00 00 00 01 01 00 00 -0640: 00 01 01 00 00 00 00 00 00 00 00 00 01 01 00 00 -0650: 00 01 01 00 00 00 00 00 00 00 00 00 01 01 00 00 -0660: 00 01 01 00 00 00 00 00 00 00 00 00 01 01 00 00 -0670: 00 01 01 00 00 00 00 00 00 00 00 01 01 01 00 00 -0680: 00 01 01 00 00 00 00 00 00 00 00 01 01 01 00 00 -0690: 00 01 01 00 00 00 00 00 00 00 00 01 01 01 00 00 -06a0: 00 01 01 00 00 00 00 00 00 00 01 01 01 01 00 00 -06b0: 00 01 01 00 00 00 00 00 00 00 01 01 01 01 00 00 -06c0: 00 00 01 01 00 00 00 00 00 01 01 01 01 01 00 00 -06d0: 00 00 01 01 01 00 00 00 01 01 01 00 01 01 00 00 -06e0: 00 00 00 01 01 01 01 01 01 01 00 00 01 01 00 00 -06f0: 00 00 00 00 01 01 01 01 01 00 00 00 00 01 01 00 -0700: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0710: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0720: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0730: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0740: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0750: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0760: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0770: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0780: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0790: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -07a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -07b0: 00 02 02 00 00 00 00 00 00 00 00 00 00 02 02 00 -07c0: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 02 00 -07d0: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 02 00 -07e0: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 02 00 -07f0: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 02 00 -0800: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 02 00 -0810: 00 00 02 02 00 00 00 00 00 00 00 00 00 02 02 00 -0820: 00 00 02 02 00 00 00 00 00 00 00 00 02 02 02 00 -0830: 00 00 02 02 02 00 00 00 00 00 00 00 02 02 00 00 -0840: 00 00 02 02 02 00 00 00 00 00 00 00 02 02 00 00 -0850: 00 00 02 02 02 00 00 00 00 00 00 00 02 02 00 00 -0860: 00 00 00 02 02 00 00 00 00 00 00 00 02 01 00 00 -0870: 00 00 00 02 01 01 00 00 00 00 00 00 01 00 00 00 -0880: 00 00 00 01 01 01 00 00 00 00 00 01 01 00 00 00 -0890: 00 00 00 00 01 01 00 00 00 00 00 01 01 00 00 00 -08a0: 00 00 00 00 01 01 01 00 00 00 00 01 01 00 00 00 -08b0: 00 00 00 00 00 01 01 00 00 00 00 01 00 00 00 00 -08c0: 00 00 00 00 00 01 01 01 00 00 01 01 00 00 00 00 -08d0: 00 00 00 00 00 00 01 01 00 00 01 00 00 00 00 00 -08e0: 00 00 00 00 00 00 01 01 01 01 01 00 00 00 00 00 -08f0: 00 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 -0900: 00 00 00 02 02 00 00 00 00 00 00 00 02 02 02 00 -0910: 00 00 00 02 02 00 00 00 00 00 00 00 02 02 02 00 -0920: 00 00 00 02 02 00 00 00 00 00 00 00 02 02 02 00 -0930: 00 00 02 02 02 00 00 00 00 00 00 00 02 02 02 00 -0940: 00 00 02 02 02 00 00 00 00 00 00 02 02 02 00 00 -0950: 00 00 02 02 02 00 00 00 00 00 00 02 02 02 00 00 -0960: 00 00 02 02 02 02 00 00 00 00 02 02 02 00 00 00 -0970: 00 00 02 02 02 02 02 02 02 02 02 02 00 00 00 00 -0980: 00 00 02 02 00 00 02 02 02 02 00 00 00 00 00 00 -0990: 00 00 02 01 00 00 00 00 00 00 00 00 00 00 00 00 -09a0: 00 00 01 01 00 00 00 00 00 00 00 00 00 01 01 00 -09b0: 00 00 01 01 00 00 00 00 00 00 00 00 01 01 01 00 -09c0: 00 00 00 01 01 00 00 00 00 00 00 01 01 01 00 00 -09d0: 00 00 00 01 01 01 00 00 00 00 01 01 01 01 00 00 -09e0: 00 00 00 00 01 01 01 01 01 01 01 01 00 00 00 00 -09f0: 00 00 00 00 00 01 01 01 01 01 00 00 00 00 00 00 -0a00: 00 00 00 02 02 02 00 00 00 00 00 00 02 02 02 00 -0a10: 00 00 00 02 02 00 00 00 00 00 00 00 02 02 02 00 -0a20: 00 00 00 02 02 00 00 00 00 00 00 00 00 02 02 00 -0a30: 00 00 00 02 02 00 00 00 00 00 00 00 00 02 02 00 -0a40: 00 00 00 00 02 00 00 00 00 00 00 00 00 02 02 00 -0a50: 00 00 00 00 00 00 02 02 02 02 02 02 02 02 02 00 -0a60: 00 00 00 00 02 02 02 02 02 02 02 02 02 02 02 00 -0a70: 00 00 00 01 02 02 02 00 00 00 00 00 02 02 01 00 -0a80: 00 00 01 01 01 00 00 00 00 00 00 00 00 01 01 00 -0a90: 00 01 01 01 00 00 00 00 00 00 00 00 00 01 01 00 -0aa0: 00 01 01 01 00 00 00 00 00 00 00 00 01 01 01 00 -0ab0: 00 01 01 01 00 00 00 00 00 00 00 00 01 01 01 00 -0ac0: 00 01 01 01 01 00 00 00 00 00 00 01 01 01 01 00 -0ad0: 00 00 01 01 01 01 01 00 01 01 01 01 01 01 01 00 -0ae0: 00 00 00 01 01 01 01 01 01 01 01 01 00 01 01 00 -0af0: 00 00 00 00 00 01 01 01 01 01 00 00 00 01 01 00 -0b00: 00 00 02 02 02 00 00 00 00 00 00 00 02 02 00 00 -0b10: 00 00 02 02 02 00 00 00 00 00 00 00 00 02 00 00 -0b20: 00 00 02 02 00 00 00 00 00 00 00 00 00 02 02 00 -0b30: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 02 00 -0b40: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 02 00 -0b50: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 02 00 -0b60: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 01 00 -0b70: 00 02 01 01 00 00 00 00 00 00 00 00 00 01 01 00 -0b80: 00 01 01 01 00 00 00 00 00 00 00 00 00 01 01 00 -0b90: 00 01 01 01 00 00 00 00 00 00 00 00 01 01 01 00 -0ba0: 00 01 01 01 00 00 00 00 00 00 00 00 01 01 00 00 -0bb0: 00 00 01 01 01 00 00 00 00 00 00 00 01 01 00 00 -0bc0: 00 00 01 01 01 00 00 00 00 00 00 01 01 00 00 00 -0bd0: 00 00 00 01 01 01 01 01 00 00 01 01 01 00 00 00 -0be0: 00 00 00 00 01 01 01 01 01 01 01 01 00 00 00 00 -0bf0: 00 00 00 00 00 01 01 01 01 01 00 00 00 00 00 00 -0c00: 00 00 02 02 02 00 00 00 00 00 00 00 02 02 00 00 -0c10: 00 00 02 02 02 00 00 00 00 00 00 02 02 00 00 00 -0c20: 00 00 02 02 02 00 00 00 00 00 00 02 02 00 00 00 -0c30: 00 00 02 02 02 00 00 00 00 00 00 02 00 00 00 00 -0c40: 00 02 02 02 00 00 00 00 00 00 02 00 00 00 00 00 -0c50: 00 02 02 02 00 00 00 00 00 00 00 00 00 00 00 00 -0c60: 00 02 02 02 00 00 00 00 00 00 00 00 00 00 00 00 -0c70: 00 02 01 01 00 00 00 00 00 00 00 00 00 00 00 00 -0c80: 00 01 01 01 00 00 00 00 00 00 00 00 00 00 00 00 -0c90: 00 01 01 01 00 00 00 00 00 00 00 00 00 01 01 00 -0ca0: 00 01 01 01 00 00 00 00 00 00 00 00 00 01 01 00 -0cb0: 00 01 01 01 01 00 00 00 00 00 00 00 01 01 01 00 -0cc0: 00 00 01 01 01 00 00 00 00 00 00 01 01 01 00 00 -0cd0: 00 00 00 01 01 01 00 00 00 01 01 01 01 00 00 00 -0ce0: 00 00 00 01 01 01 01 01 01 01 01 01 00 00 00 00 -0cf0: 00 00 00 00 00 01 01 01 01 01 00 00 00 00 00 00 -0d00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0d10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0d20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0d30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0d40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0d50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0d60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0d70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0d80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0d90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0da0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0db0: 00 00 00 00 00 00 00 02 02 02 02 02 00 00 00 00 -0dc0: 00 00 00 00 00 00 02 02 02 02 02 02 02 00 00 00 -0dd0: 00 00 00 00 00 02 02 00 00 00 02 02 02 00 00 00 -0de0: 00 00 00 00 02 02 00 00 00 00 00 02 02 02 00 00 -0df0: 00 00 00 02 02 02 00 00 00 00 00 00 02 02 00 00 -- cgit v1.2.3 From 9166352dfabdb0732d222be5d4ed10953f12a872 Mon Sep 17 00:00:00 2001 From: UnavailableDev <69792062+UnavailableDev@users.noreply.github.com> Date: Mon, 3 Apr 2023 18:03:13 +0200 Subject: removed nrf from settings.json --- .vscode/settings.json | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index f4d72ed..d027762 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -8,7 +8,5 @@ } }, "cmake.configureOnOpen": false, - "files.eol": "\n", - "nrf-connect.topdir": "${nrf-connect.sdk:2.1.2}", - "nrf-connect.toolchain.path": "${nrf-connect.toolchain:2.1.2}" + "files.eol": "\n" } -- cgit v1.2.3 From f6c1eb582ac44b92c86816352bd56da5a6f4f1b5 Mon Sep 17 00:00:00 2001 From: NielsCoding <48092678+heavydemon21@users.noreply.github.com> Date: Mon, 3 Apr 2023 21:30:43 +0200 Subject: multiple bullets and bg collisions. --- src/engine/bullet.c | 85 +++++++++++++++++++++++++++++++++--------- src/engine/bullet.h | 11 ++++-- src/engine/entity.c | 35 +++++++++++++++++ src/engine/entity.h | 3 ++ src/engine/level_const.c | 2 + src/engine/player_controller.c | 21 +---------- src/game_loop/gameplay.c | 6 ++- src/game_loop/gameplay.h | 1 + 8 files changed, 121 insertions(+), 43 deletions(-) diff --git a/src/engine/bullet.c b/src/engine/bullet.c index e6ca6df..40f33d9 100644 --- a/src/engine/bullet.c +++ b/src/engine/bullet.c @@ -1,35 +1,84 @@ #include "bullet.h" +int bullets_size=0; +static int current_bullet=0; - -// TODO: use hh_entity as bullet struct +hh_entity* hh_init_bullets(int size) { + bullets_size = size; + hh_entity* all_bullets = malloc(size * sizeof(hh_entity)); + hh_entity bullet = { + .speed = 1, + .is_grounded = true, + .is_hit = false, + .radius = 4, + .pos = (vec2){-16,-16}, + .vel = (vec2){0,0}, + .size = (vec2) { 13,16}, + .render = { + .frame0 = 84, + .palette = 3, + .fam = (hh_s_ppu_loc_fam_entry){ + .horizontal_flip = false, + .vertical_flip = false, + .palette_index = 7, + .tilemap_index = 84, + } + } + }; + for (int i = 0; i < size; i++) { + all_bullets[i] = bullet; + } + return all_bullets; +} +bool rising_edge(bool signal, bool* prev) { + bool edge = false; + if (signal && !(*prev)) { + edge = true; + } + *prev = signal; + return edge; +} +bool prev_signal = false; void hh_shoot_bullet(vec2 player, vec_cor cam_pos, hh_entity* bullet){ vec2 temp; - if(g_hh_controller_p1.button_secondary){ - if(bullet->is_grounded){ + if(rising_edge(g_hh_controller_p1.button_secondary,&prev_signal) && bullet->is_grounded){ bullet->is_grounded=false; bullet->pos = player; - } + current_bullet = (current_bullet + 1) % bullets_size; } - else{ - if(!bullet->is_grounded){ - hh_update_bullet(bullet , cam_pos); - hh_draw_bullet(*bullet); - } - } - } void hh_update_bullet(hh_entity* bullet, vec_cor cam_pos){ - bullet->pos.x += 1; + if(hh_background_collision_bulllet(*bullet)){ + bullet->is_grounded=true; + bullet->pos.x=-16; + bullet->pos.y=-16; + // printf("x %d y %d\n",(bullet->pos.x-cam_pos.x),(bullet->pos.y-cam_pos.y)); + } + else{ + bullet->pos.x += bullet->speed; + } + // update bullet sprite on ppu - bullet->render.fam.position_x = (bullet->pos.x-cam_pos.x); - bullet->render.fam.position_y = (bullet->pos.y-cam_pos.y); + bullet->render.fam.position_x = (bullet->pos.x - cam_pos.x); + bullet->render.fam.position_y = (bullet->pos.y - cam_pos.y); } -void hh_draw_bullet(hh_entity bullet){ - hh_s_ppu_loc_fam_entry temp = bullet.render.fam; - hh_ppu_update_foreground(10,temp); +void hh_draw_bullet(hh_entity bullet,int number){ + // hh_s_ppu_loc_fam_entry temp = bullet.render.fam; + // hh_ppu_update_foreground(hh_ppu_bullet_fg_offset_idx + number,temp); + +} +void hh_multiple_bullets(vec2 player, vec_cor cam_pos, hh_entity* bullets){ + + hh_shoot_bullet(player,cam_pos, &bullets[current_bullet]); + for(int i=0; i < bullets_size;i++){ + if(!bullets[i].is_grounded){ + hh_update_bullet(&bullets[i] , cam_pos); + hh_update_sprite(hh_ppu_bullet_fg_offset_idx + i, bullets[i], cam_pos); + } + + } } diff --git a/src/engine/bullet.h b/src/engine/bullet.h index 5f07b2e..4084327 100644 --- a/src/engine/bullet.h +++ b/src/engine/bullet.h @@ -1,11 +1,16 @@ #pragma once #include "player_controller.h" #include "engine/sprite_controller.h" +#include "types.h" #include "input.h" +#define hh_ppu_bullet_fg_offset_idx 10 +hh_entity* hh_init_bullets(int size); -void hh_shoot_bullet(vec2 playerPos, vec_cor cam_pos, hh_entity*); +static void hh_shoot_bullet(vec2 playerPos, vec_cor cam_pos, hh_entity*); -void hh_update_bullet(hh_entity* , vec_cor ); +static void hh_update_bullet(hh_entity* , vec_cor ); -void hh_draw_bullet(hh_entity); +static void hh_draw_bullet(hh_entity, int); + +void hh_multiple_bullets(vec2 player, vec_cor cam_pos, hh_entity* bullets); diff --git a/src/engine/entity.c b/src/engine/entity.c index 7b780cf..43a1b73 100644 --- a/src/engine/entity.c +++ b/src/engine/entity.c @@ -84,6 +84,41 @@ hh_entity hh_background_collision (hh_entity temp_old_entity,hh_entity temp_new_ return temp_old_entity; } +bool hh_background_collision_bulllet (hh_entity temp_old_entity){ + + // temp_new_entity.is_grounded = false; + +// solves x collision + if (temp_old_entity.vel.x <= 0) { + if (hh_colidable(hh_world_to_tile((vec2){.x=temp_old_entity.pos.x + 0, .y=temp_old_entity.pos.y + 0})) || + hh_colidable(hh_world_to_tile((vec2){.x=temp_old_entity.pos.x + 0, .y=temp_old_entity.pos.y + (temp_old_entity.size.y-1)}))) { + return true; + } + } else { + if (hh_colidable(hh_world_to_tile((vec2){.x=temp_old_entity.pos.x + temp_old_entity.size.x, .y=temp_old_entity.pos.y + 0})) || + hh_colidable(hh_world_to_tile((vec2){.x=temp_old_entity.pos.x + temp_old_entity.size.x, .y=temp_old_entity.pos.y + (temp_old_entity.size.y-1)}))) { + return true; + } + } + + //solves y collision + if (temp_old_entity.vel.y <= 0) { + if (hh_colidable(hh_world_to_tile((vec2){.x=temp_old_entity.pos.x + 0, .y=temp_old_entity.pos.y + 0})) || + hh_colidable(hh_world_to_tile((vec2){.x=temp_old_entity.pos.x + (temp_old_entity.size.x-1), .y=temp_old_entity.pos.y + 0}))) { + return true; + } + } else { + if (hh_colidable(hh_world_to_tile((vec2){.x=temp_old_entity.pos.x + 0, .y=temp_old_entity.pos.y + (temp_old_entity.size.y-1)})) || + hh_colidable(hh_world_to_tile((vec2){.x=temp_old_entity.pos.x + (temp_old_entity.size.x-1), .y=temp_old_entity.pos.y + (temp_old_entity.size.y-1)}))) { + return true; + } + } + // temp_old_entity = temp_new_entity; + // temp_old_entity.is_grounded = temp_new_entity.is_grounded; + // temp_old_entity.pos = temp_new_entity.pos; + // temp_old_entity.vel = temp_new_entity.vel; + return false; +} hh_entity hh_enemy_collision(hh_entity temp_player, hh_entity temp_enemy){ bool collide = hh_distance_circles( temp_player.pos, temp_enemy.pos, temp_player.radius, temp_enemy.radius); diff --git a/src/engine/entity.h b/src/engine/entity.h index b681bd8..9a1d51e 100644 --- a/src/engine/entity.h +++ b/src/engine/entity.h @@ -46,5 +46,8 @@ bool hh_distance_circles(vec2 object_1, vec2 object_2, int radius_1, int radius_ // TODO: comments on functions below void hh_jump_entity(hh_entity* ); void hh_gravity_entity(hh_entity* ); + void hh_hit_entity(hh_entity* object_1, int8_t* hit_timer, int8_t* direction); + +bool hh_background_collision_bulllet (hh_entity temp_old_entity); diff --git a/src/engine/level_const.c b/src/engine/level_const.c index 3847ad8..896d0e0 100644 --- a/src/engine/level_const.c +++ b/src/engine/level_const.c @@ -41,6 +41,8 @@ hh_g_all_levels hh_init_game_levels(){ levels.level[0].place = hh_game_level1; levels.level[1].place = hh_game_level2; + // free(hh_game_level1); + // free(hh_game_level2); return levels; } diff --git a/src/engine/player_controller.c b/src/engine/player_controller.c index 096243b..ee0dfc5 100644 --- a/src/engine/player_controller.c +++ b/src/engine/player_controller.c @@ -8,25 +8,7 @@ #include "engine/animator.h" #include "engine/bullet.h" void hh_player_actions(hh_entity* player, vec_cor cam_pos){ - static hh_entity bullet={ -// .hp = 4, - .speed = 6, - .is_grounded = true, - .is_hit = false, - .radius = 8, - .pos = (vec2){-16,-16}, - .vel = (vec2){0,0}, - .render = { - .frame0 = 84, - .palette = 3, - .fam = (hh_s_ppu_loc_fam_entry){ - .horizontal_flip = false, - .vertical_flip = false, - .palette_index = 7, - .tilemap_index = 84, - } - } - }; + static hh_entity player_new = {0}; player_new = *player; @@ -54,7 +36,6 @@ void hh_player_actions(hh_entity* player, vec_cor cam_pos){ *player = hh_background_collision ( *player, player_new); - hh_shoot_bullet(player->pos, cam_pos ,&bullet); uint16_t idx = 16; idx = hh_update_sprite(idx, player, cam_pos); // idx = hh_update_sprite(idx, &enemy, cam_pos); diff --git a/src/game_loop/gameplay.c b/src/game_loop/gameplay.c index bc6c98d..521ab85 100644 --- a/src/game_loop/gameplay.c +++ b/src/game_loop/gameplay.c @@ -5,6 +5,7 @@ void hh_gameplay(hh_g_all_levels game, hh_e_game_state* hh_game_state){ static hh_e_gameplay gameplay = hh_e_setup_screen; + static hh_entity* bullets; static hh_entity player1={ .hp = 4, .speed = 6, @@ -50,6 +51,7 @@ void hh_gameplay(hh_g_all_levels game, hh_e_game_state* hh_game_state){ switch (gameplay) { case hh_e_setup_screen: + bullets = hh_init_bullets(10); hh_setup_screen(game.level[game.current_level]); gameplay = hh_e_play_level; break; @@ -57,8 +59,8 @@ void hh_gameplay(hh_g_all_levels game, hh_e_game_state* hh_game_state){ // TODO: here come all the different functions for the gameplay vec_cor cam_pos;//value in tiles cam_pos = hh_draw_screen(player1.pos); - hh_player_actions(&player1,cam_pos); - + hh_player_actions(&player1 ,cam_pos); + hh_multiple_bullets(player1.pos, cam_pos,bullets); // enemy's diff --git a/src/game_loop/gameplay.h b/src/game_loop/gameplay.h index d309e78..fb5637c 100644 --- a/src/game_loop/gameplay.h +++ b/src/game_loop/gameplay.h @@ -1,5 +1,6 @@ #pragma once #include "engine/draw_screen.h" +#include "engine/bullet.h" #include "engine/player_controller.h" #include "engine/sprite_controller.h" #include "game_loop/starting_screen.h" -- cgit v1.2.3 From 854a80001b9798d1454e4308e4efba96431e44d8 Mon Sep 17 00:00:00 2001 From: NielsCoding <48092678+heavydemon21@users.noreply.github.com> Date: Tue, 4 Apr 2023 15:25:34 +0200 Subject: bullet/player/enemy/gameplay bullet only needs different directions player is done enemy needs ai(Bjorn) gameplay may need some finetuning --- src/demo.c | 2 +- src/engine/bullet.c | 43 +++++++++++++++++------------------- src/engine/bullet.h | 12 +++++----- src/engine/draw_screen.c | 4 ++-- src/engine/draw_screen.h | 14 +++++------- src/engine/enemy.c | 31 ++++++++++++++++++++++++++ src/engine/enemy.h | 18 +++++++++++++++ src/engine/entity.c | 22 +++++++++++++++++++ src/engine/entity.h | 12 +++++++--- src/engine/level_const.h | 1 + src/engine/player_controller.c | 35 +---------------------------- src/engine/player_controller.h | 2 +- src/game_loop/game_over.h | 2 +- src/game_loop/gameplay.c | 50 +++++++++++++++++++++++++++++------------- src/game_loop/gameplay.h | 11 +++++++--- src/makefile | 1 + 16 files changed, 164 insertions(+), 96 deletions(-) create mode 100644 src/engine/enemy.c create mode 100644 src/engine/enemy.h diff --git a/src/demo.c b/src/demo.c index 725e560..aae1729 100644 --- a/src/demo.c +++ b/src/demo.c @@ -62,7 +62,7 @@ void hh_demo_loop(unsigned long frame) { hh_shop(&hh_game_states); break; case hh_e_state_gameplay: - hh_gameplay(hh_game, &hh_game_states); + hh_gameplay(&hh_game, &hh_game_states); break; case hh_e_state_game_over: // todo: diff --git a/src/engine/bullet.c b/src/engine/bullet.c index 40f33d9..55b20cc 100644 --- a/src/engine/bullet.c +++ b/src/engine/bullet.c @@ -2,10 +2,13 @@ int bullets_size=0; static int current_bullet=0; - +hh_entity* all_bullets=NULL; hh_entity* hh_init_bullets(int size) { + if (all_bullets != NULL) { + free(all_bullets); + } bullets_size = size; - hh_entity* all_bullets = malloc(size * sizeof(hh_entity)); + all_bullets = malloc(size * sizeof(hh_entity)); hh_entity bullet = { .speed = 1, .is_grounded = true, @@ -13,7 +16,7 @@ hh_entity* hh_init_bullets(int size) { .radius = 4, .pos = (vec2){-16,-16}, .vel = (vec2){0,0}, - .size = (vec2) { 13,16}, + .size = (vec2) { 13,16}, .render = { .frame0 = 84, .palette = 3, @@ -39,7 +42,7 @@ bool rising_edge(bool signal, bool* prev) { return edge; } bool prev_signal = false; -void hh_shoot_bullet(vec2 player, vec_cor cam_pos, hh_entity* bullet){ +void hh_shoot_bullet(vec2 player, hh_entity* bullet){ vec2 temp; if(rising_edge(g_hh_controller_p1.button_secondary,&prev_signal) && bullet->is_grounded){ bullet->is_grounded=false; @@ -49,36 +52,30 @@ void hh_shoot_bullet(vec2 player, vec_cor cam_pos, hh_entity* bullet){ } -void hh_update_bullet(hh_entity* bullet, vec_cor cam_pos){ +void hh_update_bullet(hh_entity* bullet){ if(hh_background_collision_bulllet(*bullet)){ - bullet->is_grounded=true; - bullet->pos.x=-16; - bullet->pos.y=-16; + hh_bullet_death(bullet); + // printf("x %d y %d\n",(bullet->pos.x-cam_pos.x),(bullet->pos.y-cam_pos.y)); } else{ bullet->pos.x += bullet->speed; } - - // update bullet sprite on ppu - bullet->render.fam.position_x = (bullet->pos.x - cam_pos.x); - bullet->render.fam.position_y = (bullet->pos.y - cam_pos.y); - -} -void hh_draw_bullet(hh_entity bullet,int number){ - // hh_s_ppu_loc_fam_entry temp = bullet.render.fam; - // hh_ppu_update_foreground(hh_ppu_bullet_fg_offset_idx + number,temp); - } -void hh_multiple_bullets(vec2 player, vec_cor cam_pos, hh_entity* bullets){ - hh_shoot_bullet(player,cam_pos, &bullets[current_bullet]); +void hh_multiple_bullets(vec2 player, hh_entity* bullets){ + + hh_shoot_bullet(player, &bullets[current_bullet]); for(int i=0; i < bullets_size;i++){ if(!bullets[i].is_grounded){ - hh_update_bullet(&bullets[i] , cam_pos); - hh_update_sprite(hh_ppu_bullet_fg_offset_idx + i, bullets[i], cam_pos); + hh_update_bullet(&bullets[i]); } - } } + +void hh_bullet_death(hh_entity* bullet){ + bullet->is_grounded=true; + bullet->pos.x= -16; + bullet->pos.y= -16; +} diff --git a/src/engine/bullet.h b/src/engine/bullet.h index 4084327..4133032 100644 --- a/src/engine/bullet.h +++ b/src/engine/bullet.h @@ -4,13 +4,15 @@ #include "types.h" #include "input.h" -#define hh_ppu_bullet_fg_offset_idx 10 hh_entity* hh_init_bullets(int size); -static void hh_shoot_bullet(vec2 playerPos, vec_cor cam_pos, hh_entity*); +/** @brief checks if player hit button and sets the activate bullet*/ +void hh_shoot_bullet(vec2 playerPos, hh_entity*); -static void hh_update_bullet(hh_entity* , vec_cor ); +/** @brief updates single bullet position*/ +void hh_update_bullet(hh_entity* ); -static void hh_draw_bullet(hh_entity, int); +/** @brief calculates all the bullets positions and which to shoot */ +void hh_multiple_bullets(vec2 player, hh_entity* bullets); -void hh_multiple_bullets(vec2 player, vec_cor cam_pos, hh_entity* bullets); +void hh_bullet_death(hh_entity* bullet); diff --git a/src/engine/draw_screen.c b/src/engine/draw_screen.c index 823c284..74b4ff2 100644 --- a/src/engine/draw_screen.c +++ b/src/engine/draw_screen.c @@ -10,7 +10,7 @@ uint8_t hh_world_to_tile(vec2 pos){ return tile; } -void hh_update_screen(vec2 view, vec2 player){ +void hh_update_screen(vec2 view){ int current_tile_y = view.y / HH_PPU_SPRITE_HEIGHT; int current_tile_x = view.x / HH_PPU_SPRITE_WIDTH; int offset_py = view.y - (offsetY / 40 * HH_PPU_SPRITE_HEIGHT); @@ -86,7 +86,7 @@ vec_cor hh_draw_screen(vec2 player) { viewport.x = CLAMP(viewport.x, 0, level.size.x * HH_PPU_SPRITE_WIDTH - HH_PPU_SCREEN_WIDTH); viewport.y = CLAMP(viewport.y, 0, level.size.y * HH_PPU_SPRITE_HEIGHT - HH_PPU_SCREEN_HEIGHT); - hh_update_screen((vec2){.y=viewport.y,.x=viewport.x},player); + hh_update_screen((vec2){.y=viewport.y,.x=viewport.x}); if (viewport.x == previousViewport.x && viewport.y == previousViewport.y){} else{ hh_ppu_update_aux((hh_s_ppu_loc_aux){ diff --git a/src/engine/draw_screen.h b/src/engine/draw_screen.h index 9130842..4829bc6 100644 --- a/src/engine/draw_screen.h +++ b/src/engine/draw_screen.h @@ -11,24 +11,22 @@ #include #include "engine/camera.h" -#define hh_max_x_size 40 -#define hh_max_y_size 30 - -/** @brief return a single tile from world binary */ +/** @brief return a single tile from world */ uint8_t hh_world_to_tile(vec2 pos); -/** @brief shift to level if viewport changed position */ +/** @brief main function for the screen. shift through the map and update the camera based on the player */ vec_cor hh_draw_screen(vec2 player); -/** @brief send data to BAM memory from binary level */ +/** @brief sets the start of a level */ void hh_setup_screen(hh_level_entity currentlevel); -/** @brief updates screen based on view and maybe player position if it needs to turn back*/ -void hh_update_screen(vec2 view, vec2 ); +/** @brief updates screen if view is at the beginning or end */ +void hh_update_screen(vec2 view); /** @brief send black screen to background memory */ void hh_clear_screen(); /** @brief clears all sprite data */ void hh_clear_sprite(); + /** @brief send data to BAM memory from binary from shop */ void hh_setup_Shop(); diff --git a/src/engine/enemy.c b/src/engine/enemy.c new file mode 100644 index 0000000..186cfa0 --- /dev/null +++ b/src/engine/enemy.c @@ -0,0 +1,31 @@ +#include "engine/enemy.h" + +void hh_update_enemy(hh_entity* enemy, vec_cor cam_pos){ + //Bjorn functions + + +} + +void hh_multiple_enemies( vec_cor cam_pos, hh_entity* enemies, int total_enemies){ + for(int i=0; i < total_enemies;i++){ + hh_update_enemy(&enemies[i] , cam_pos); + } + +} + +void hh_enemy_death_check(hh_entity* enemy){ + if(enemy->hp == 0){ + enemy->is_hit=false; + enemy->pos = (vec2){-16, -16}; + } + else{ + enemy->hp--; + } +} +void hh_solve_hitted_enemies(hh_entity* enemies, int total_enemies){ + for(int i = 0; i < total_enemies; i++){ + if(enemies[i].is_hit){ + hh_enemy_death_check(&enemies[i]); + } + } +} diff --git a/src/engine/enemy.h b/src/engine/enemy.h new file mode 100644 index 0000000..80498f5 --- /dev/null +++ b/src/engine/enemy.h @@ -0,0 +1,18 @@ +#pragma once +#include "player_controller.h" +#include "engine/sprite_controller.h" +#include "types.h" +#include "input.h" + +/** @brief updates a single enemy locations TODO: Bjorn sets functions in here*/ +void hh_update_enemy(hh_entity* , vec_cor ); + +/** @brief calculates all the given enemies positions*/ +void hh_multiple_enemies( vec_cor cam_pos, hh_entity* enemies, int total_enemies); + +/** @brief checks if the enemy has zero hp else it takes hp from the enemy */ +void hh_enemy_death_check(hh_entity* enemy); + +/** @brieg all the given enemies get controlled if there hit and than calculates the dmg */ +void hh_solve_hitted_enemies(hh_entity* enemies, int total_enemies); + diff --git a/src/engine/entity.c b/src/engine/entity.c index 43a1b73..1cb88be 100644 --- a/src/engine/entity.c +++ b/src/engine/entity.c @@ -212,3 +212,25 @@ void hh_hit_entity(hh_entity* object_1, int8_t* hit_timer, int8_t* direction){ } } + +void hh_check_all_collisions(hh_entity* player, hh_entity* enemies, int total_enemies, hh_entity* bullets, int total_bullets, vec_cor cam_pos){ + for(int enemy = 0; enemy < total_enemies; enemy++){ + *player = hh_enemy_collision(*player, enemies[enemy]); + enemies[enemy].is_hit=false; + } + + for(int i = 0; i < total_bullets; i++){ + if(!bullets[i].is_grounded){ + for (int enemy = 0; enemy < total_enemies; enemy++){ + + if(hh_distance_circles(bullets[i].pos,enemies[enemy].pos,bullets[i].radius,enemies[enemy].radius)){ + enemies[enemy].is_hit=true; + hh_bullet_death(&bullets[i]); + } + } + } + } + +} + + diff --git a/src/engine/entity.h b/src/engine/entity.h index 9a1d51e..fde9341 100644 --- a/src/engine/entity.h +++ b/src/engine/entity.h @@ -7,6 +7,9 @@ #include "ppu/types.h" #include "engine/maths.h" #include "engine/types.h" +#include "engine/animator.h" +#include "engine/sprite_controller.h" + // #include "engine/animator.h" // TODO: make a sprite update function (and required data structs?) @@ -43,11 +46,14 @@ hh_entity hh_enemy_collision(hh_entity temp_player, hh_entity temp_enemy); /// @return true if objects collids bool hh_distance_circles(vec2 object_1, vec2 object_2, int radius_1, int radius_2); -// TODO: comments on functions below +/** @brief jumps a entity. TODO: input jumping how high and no magic number*/ void hh_jump_entity(hh_entity* ); +/** @brief looks if the player is grounded and if not it sets the position down */ void hh_gravity_entity(hh_entity* ); - +/** @brief if object is hit bounches in specific direction and moves the object */ void hh_hit_entity(hh_entity* object_1, int8_t* hit_timer, int8_t* direction); - +/** @brief specific bullet background collisions detection */ bool hh_background_collision_bulllet (hh_entity temp_old_entity); +/** @brief checks any entity has a hit on each othe*/ +void hh_check_all_collisions(hh_entity* player, hh_entity* enemies, int total_enemies, hh_entity* bullets, int total_bullets, vec_cor cam_pos); diff --git a/src/engine/level_const.h b/src/engine/level_const.h index b86ae7b..6275b72 100644 --- a/src/engine/level_const.h +++ b/src/engine/level_const.h @@ -28,4 +28,5 @@ typedef struct { }hh_g_all_levels; +/** @brief init all the levels*/ hh_g_all_levels hh_init_game_levels(); diff --git a/src/engine/player_controller.c b/src/engine/player_controller.c index ee0dfc5..83c5966 100644 --- a/src/engine/player_controller.c +++ b/src/engine/player_controller.c @@ -7,7 +7,7 @@ #include "engine/animator.h" #include "engine/bullet.h" -void hh_player_actions(hh_entity* player, vec_cor cam_pos){ +void hh_player_actions(hh_entity* player){ static hh_entity player_new = {0}; player_new = *player; @@ -35,39 +35,6 @@ void hh_player_actions(hh_entity* player, vec_cor cam_pos){ *player = hh_background_collision ( *player, player_new); - - uint16_t idx = 16; - idx = hh_update_sprite(idx, player, cam_pos); - // idx = hh_update_sprite(idx, &enemy, cam_pos); - - idx =16; - - // TODO: make this a function call - // update player sprite on ppu - // player.render.fam.position_x = (player.pos.x-cam_pos.x); - // player.render.fam.position_y = (player.pos.y-cam_pos.y); - - // enemy.render.fam.position_x = (enemy.pos.x-cam_pos.x); - // enemy.render.fam.position_y = (enemy.pos.y-cam_pos.y); - - - // TODO: make this loop a function call - // for (int i = 0; i < 4; i++) - // { - // hh_s_ppu_loc_fam_entry temp = player.render.fam; - // temp.position_x = player.render.fam.position_x+(!(player.vel.x>0)?-1:1)*(i%2?8:-8); - // temp.position_y = player.render.fam.position_y+(i>1?0:-16); - // temp.tilemap_index = player.render.fam.tilemap_index + i; - // temp.horizontal_flip = !(player.vel.x>0); - // hh_ppu_update_foreground(i,temp); - - // // hh_s_ppu_loc_fam_entry temp = { - // // .position_x = player.render.fam.position_x+(!(player.vel.x>0)?-1:1)*(i%2?8:-8) - // // }; - - // } - - // hh_ppu_update_foreground(4, enemy.render.fam); } diff --git a/src/engine/player_controller.h b/src/engine/player_controller.h index 4a325e8..23749e5 100644 --- a/src/engine/player_controller.h +++ b/src/engine/player_controller.h @@ -4,4 +4,4 @@ #include "engine/entity.h" // inputs -void hh_player_actions(hh_entity* player, vec_cor cam_pos); +void hh_player_actions(hh_entity* player); diff --git a/src/game_loop/game_over.h b/src/game_loop/game_over.h index 80db667..47318df 100644 --- a/src/game_loop/game_over.h +++ b/src/game_loop/game_over.h @@ -14,5 +14,5 @@ typedef enum { hh_e_game_over_end, } hh_e_game_over; - +/** @brief game loop function game over*/ void hh_game_over(hh_e_game_state*); diff --git a/src/game_loop/gameplay.c b/src/game_loop/gameplay.c index 521ab85..da029f3 100644 --- a/src/game_loop/gameplay.c +++ b/src/game_loop/gameplay.c @@ -1,9 +1,9 @@ #include "gameplay.h" - +#include "engine/entity.h" // player struct -void hh_gameplay(hh_g_all_levels game, hh_e_game_state* hh_game_state){ +void hh_gameplay(hh_g_all_levels* game, hh_e_game_state* hh_game_state){ static hh_e_gameplay gameplay = hh_e_setup_screen; static hh_entity* bullets; static hh_entity player1={ @@ -16,7 +16,7 @@ void hh_gameplay(hh_g_all_levels game, hh_e_game_state* hh_game_state){ .size = (vec2){32,32}, .vel = (vec2){0,0}, .render = { - .frame0 = 80, + .frame0 = 3, .palette = 3, .fam = (hh_s_ppu_loc_fam_entry){ .horizontal_flip = false, @@ -33,11 +33,12 @@ void hh_gameplay(hh_g_all_levels game, hh_e_game_state* hh_game_state){ .is_grounded = false, .is_hit = false, .radius = 8, - .pos = (vec2){128,48}, + .pos = (vec2){128,24}, + .size = (vec2){16,16}, .vel = (vec2){0,0}, // .vec = (vec2){0,0}, .render = { - .frame0 = 20, + .frame0 = 1, .palette = 7, .fam = (hh_s_ppu_loc_fam_entry){ .horizontal_flip = false, @@ -47,31 +48,36 @@ void hh_gameplay(hh_g_all_levels game, hh_e_game_state* hh_game_state){ } } }; - + static int total_bullets = 5; switch (gameplay) { case hh_e_setup_screen: - bullets = hh_init_bullets(10); - hh_setup_screen(game.level[game.current_level]); + printf("%d\n",game->current_level); + bullets = hh_init_bullets(total_bullets); + hh_setup_screen(game->level[game->current_level]); gameplay = hh_e_play_level; + enemy.hp=4; break; case hh_e_play_level: // TODO: here come all the different functions for the gameplay vec_cor cam_pos;//value in tiles cam_pos = hh_draw_screen(player1.pos); - hh_player_actions(&player1 ,cam_pos); - hh_multiple_bullets(player1.pos, cam_pos,bullets); - // enemy's - + hh_player_actions(&player1); + hh_multiple_bullets(player1.pos,bullets); + hh_multiple_enemies(cam_pos, &enemy,1); + hh_check_all_collisions(&player1,&enemy,1,bullets,total_bullets,cam_pos); + hh_solve_hitted_enemies(&enemy,1); + hh_render_all_entities(&player1,bullets,&enemy,total_bullets,1, cam_pos); - if(game.level[game.current_level].hh_level_completed){ + + if(game->level[game->current_level].hh_level_completed){ gameplay = hh_e_level_complete; } break; case hh_e_level_complete: - if(game.current_level < 3){ - game.current_level++; + if(game->current_level < 3){ + game->current_level+=1; gameplay = hh_e_setup_screen; } else { @@ -90,3 +96,17 @@ void hh_gameplay(hh_g_all_levels game, hh_e_game_state* hh_game_state){ } void hh_reset_levels(){} + + +void hh_render_all_entities(hh_entity* player, hh_entity* bullets, hh_entity* enemies, int bullet_size, int enemy_size, vec_cor cam_pos){ + + int index = 0; + hh_update_sprite(0 , player, cam_pos); + + for (int i = 0; i < bullet_size; i++) { + hh_update_sprite(i+5,&bullets[i],cam_pos); + } + for (int i = 0; i < enemy_size; i++) { + hh_update_sprite(i+5+bullet_size,&enemies[i],cam_pos); + } +} diff --git a/src/game_loop/gameplay.h b/src/game_loop/gameplay.h index fb5637c..9d66c37 100644 --- a/src/game_loop/gameplay.h +++ b/src/game_loop/gameplay.h @@ -5,6 +5,9 @@ #include "engine/sprite_controller.h" #include "game_loop/starting_screen.h" #include "engine/level_const.h" +#include "engine/animator.h" +#include "engine/enemy.h" + typedef enum { hh_e_setup_screen, @@ -12,7 +15,9 @@ typedef enum { hh_e_level_complete, hh_e_game_over, }hh_e_gameplay; - +/** @brief resets all the levels the first condition */ void hh_reset_levels(); -void hh_gameplay(hh_g_all_levels, hh_e_game_state*); - +/** @brief game loop function to handle the gameplay*/ +void hh_gameplay(hh_g_all_levels* game, hh_e_game_state* hh_game_state); +/** @brief renders all the entities*/ +void hh_render_all_entities(hh_entity* player, hh_entity* bullets, hh_entity* enemies, int bullet_size, int enemy_size, vec_cor cam_pos); diff --git a/src/makefile b/src/makefile index c30840d..fdd8ab5 100644 --- a/src/makefile +++ b/src/makefile @@ -41,6 +41,7 @@ LOCAL_SRCS += main.c \ engine/bullet.c \ engine/title_screen.c \ engine/level_const.c \ + engine/enemy.c \ engine/animator.c \ game_loop/shop.c \ game_loop/gameplay.c \ -- cgit v1.2.3