|
|
- ## ~~Boilerplate ~~
- * ~~Project setup ~~
- * ~~Input engine ~~
-
- ## Maps
- * ~~Player-background collision ~~
- * ~~32x32 maps ~~
- * ~~Map scrolling through SCX/SCY ~~
- * 127x127 maps
- * Update background collision to be aware of map changes
- * Portals between maps
- * Write editor for collision maps
- * Update map generation script to use new collision map format
- * New collision map flag
- * Load new map on collision
- * Ladders/ropes
- * New collision map flag
- * Play climbing animation when player collides
- * Allow movement up/down without gravity
-
- ## Items
- * Item entity type
- * Render item on map
- * Create data structure for storing items on the map
- * Copy item OAM data to shadow OAM on each frame
- * Make items float up and down a little bit
-
- ## Player
- * ~~Movement ~~
- * ~~Jump physics ~~
- * Velocity should not exceed 7px per frame
- * Animations
- * Keep track of animation state
- * Update metasprite tile indexes on new frame
- * Add jumping animation
- * Add walking animation
- * Create inventory data structure
- * Add inventory item
- * Remove inventory item
- * Check for having at least N of an item
- * Player item pickup to inventory
- * Remove item from map
- * When pickup button pressed and player colliding with item, pick up item
- * Combat statistics type
- * Basic attack by pressing A
- * Display attack animation
- * Implement battle formula
- * Connect to button press
-
- ## Menu
- * Menu UI
- * Render start menu
- * Select menu item
- * Switch between menu and game states
- * Render statistics screen
- * Render equipment screen
- * Player inventory
- * Render inventory screen
- * Allow selecting an inventory item
- * Equip/use/drop item
-
- ## Monsters
- * Monster entity type
- * Render monster
- * Create data structure for storing monsters on the map
- * Generalize player metasprite code
- * Update player attack routine to check for monster collision
- * Death
- * Play death animation
- * Drop items from drop table
- * Remove monster from map
- * Player experience / level up routines
- * Allow point distribution in stats menu
- * Attacks
- * Play attack animation
- * Check for player collision and damage player
- * Translate monster position along a closed curve
- * Randomly pace to the left/right
-
- ## NPC
- * NPC entity type
- * Render NPC
- * Create data structure for NPCs on map
- * Use metasprite code for NPCs
- * Scrolling text display engine
- * Render NPC dialogue
- * Dialogue prompt
- * Render modal with yes/no answer buttons
- * Cursor to select button
- * Run NPC dialogue handler when answer given
-
- ## Quests
- * Extend dialogue to display item requests
- * Keep track of completed quests
- * Display icon above NPC when a quest is available
-
- ## Nice to have
- * Metasprites of different sizes? (Could enable boss monsters)
- * Animated damage number for attacks
- * Player name select
|