1f9dace4ce
feat: Interaction highlighting
...
- Added Collision{Started,Stopped}Event
- Added player headlight just for showcasing
2026-04-01 15:29:47 +03:00
926c4e6644
feat: Hidden collider bounds behind colliders feat
...
- Bump version to 0.4.0
- Fix lamp SpotLight position
2026-04-01 12:36:03 +03:00
c1f9c29fe7
feat: Implemented layout assets resource
...
- Layout sprites are now looking as before
2026-04-01 11:50:56 +03:00
b2efc73602
feat!: Half-implemented sprite container
...
- Updated all assets
- Refactored door again
- Half of the sprites are visually broken for now
2026-04-01 09:40:00 +03:00
929ad45571
test: Removed equality check for levels
2026-03-31 13:40:38 +03:00
08751ff12f
feat: lighting system
...
- Added lamp bundle
- Moved door collider to its children
- Updated level structure
2026-03-31 13:37:54 +03:00
3cddecf592
feat: added clap for level parsing
...
- Camera sets up as a child of player entity
2026-03-30 20:43:46 +03:00
79fe190b6b
feat: Level loading from TOML asset
...
- Fixed detect_interactions system
- Added test for deserializing asset with plugin
2026-03-28 01:46:27 +03:00
0ab2620724
feat: Unfinished level loading
...
- Added level struct
- Added loading tests
- Partially implemented level setting up system
2026-03-27 18:31:46 +03:00
24153e476f
feat: Updated tilemap bundle
...
- Layout is now defined from bottom left corner
- Added rotation to lockpick bundle
- Added level TOML structures that match current level
2026-03-27 13:04:47 +03:00
0e18bb6df5
feat: Inventory mouse scroll & visible item data
2026-03-26 15:12:13 +03:00
c5c6378303
assets: Using new lockpick and stairs sprites
...
- Fixed stairs transparency
2026-03-26 12:01:58 +03:00
6319b8c7ca
assets: Proper stairs and lockpick
2026-03-26 09:50:17 +03:00
528c511445
refactor!: Item changes
...
- Bump version to 0.3.0
- Moved crate::inventory::item to crate::item
- Made Item.position non-option
- Renamed Item::new_positioned -> Item::new
- Removed old Item::new method
- Changed Inventory.can_fit signature to use item borrow
2026-03-25 14:16:33 +03:00
42cfd14214
feat: Layout changes
...
- Added padlock layout object
- Added lockpick item
- Added ItemImage component
- Tilemap colliders are now creating from the tiles themselves
- Removed items from container bundle
- Removed colliders from tilemap bundle
- Removed setup_player system
2026-03-25 13:32:12 +03:00
5157450ced
feat: Functionally working stairs without sprite
...
- Made all observers public
- Observe all InteractionEvents in the app, not in the entity
- Added names to layout bundles
- Raised player speed to 4 m/s for quicker debugging
- Added second container on 2nd floor
2026-03-24 16:10:43 +03:00
764e196d39
chore: Removed warnings about non-item children
2026-03-24 13:04:32 +03:00
0c0dcec4b8
feat!: "Syntax sugar" for pixels per meter measure
...
- Added meters function for better readability
- Adjusted tilemap_bundle transform
- Added 2nd floor in setup_world system
BREAKING CHANGE: Removed HALVED_PIXELS_PER_METER const
2026-03-24 12:13:08 +03:00
b59cec172d
feat: Barely working tilemap system
...
- Added tilemap bundle
- Added HALVED_METERS_PER_PIXEL constant
2026-03-23 14:06:36 +03:00
ffdb5d94a8
feat: Derive traits
2026-03-19 15:57:29 +03:00
0a0eb14a6b
feat: input plugin reflects, derives
2026-03-19 15:01:04 +03:00
7c386d4128
refactor!: Split everything into submodules
...
- Bump version to 0.2.0
- Split every module to systems, observers, plugins, etc
- Renamed Crate to Container
- Removed Wall component
- Removed try_insert_item system
- Removed inventory::ui module
2026-03-19 14:23:26 +03:00
3094a8af13
refactor: Non-breaking refactor
...
- Everything should work as before
- Added blank submodules in layout
- Added blank submodules in player
- Moved inventory::ui submodule to ui::inventory
- Added blank submodules in ui::inventory
- Re-exported ui::inventory as inventory::ui for temporary compatibility
- Split tests submodules into different files
2026-03-19 12:36:51 +03:00
d65ca6fe97
feat: Implemented crates functionality
2026-03-19 11:24:10 +03:00
3dde5a729e
fix: Door sprite is facing right direction
...
- Moved doors closer to center
2026-03-18 13:38:56 +03:00
bb357d8062
feat: Finished door mechanics
...
- Door now has i8 direction (-1 or 1)
- Door may be locked with Locked component
- Player entity RigidBody now cannot sleep to keep MayInteract when idle
2026-03-18 13:29:05 +03:00
4c23a38b92
feat: Collision beginning
...
- Added system for detecting collisions with interactive objects
- Added interactive doors
2026-03-16 17:21:10 +03:00
3fdfa4a4ad
ui: Buggy 'natural' item dragging
...
- Items are now placed relative to cursor instead of upper left corner
- Bug: after item drop all hovered slots are cleared and you cannot drag
and drop item right away
2026-03-16 09:44:58 +03:00
337986d2b9
ui: Multiple inventories support
...
- Added scrollable container for inventories
- Fixed slots being visibly hovered when dragging items
2026-03-13 16:17:44 +03:00
0c8259583a
feat: Updated dragged item behavior
...
- Added Inventory.can_replace
- Added tests for Inventory.can_replace
- Dragged item is now a copy of original item
- Dragged item can be rotated while dragged
2026-03-13 13:42:53 +03:00
beacc28ace
ui: Inventory item rotation
...
- Fixed rotated item position
2026-03-12 13:08:08 +03:00
9a09b4da96
feat: Implemented Inventory.can_rotate
...
- Added tests for rotating items in place
2026-03-12 11:45:01 +03:00
55c4e3a1d1
ui: Unfinished item rotating
2026-03-12 10:32:55 +03:00
55cbd39172
ui: Visible item dragging
...
- Also tinting inventory slot on hover
2026-03-12 10:04:35 +03:00
a462c64786
feat: Implemented basic item drag-and-drop
...
- Added bundle names
- Added system to update bundle names with entity name
2026-03-11 22:40:17 +03:00
0add3e4c20
feat: unfinished item drag and drop
2026-03-11 17:29:27 +03:00
c46fa75e54
feat!: Item processing
...
- Added try_insert_item system
- Added rotated field on Item
- Implemented UI item drawing with scale and rotation
BREAKING CHANGE: Item.swap_size renamed to Item.rotate
Item.clone_swapped renamed to Item.clone_rotated
2026-03-11 14:55:27 +03:00
ab993be476
ui: Beginning of UI-related stuff
...
- UiRoot component
- WindowSize resource and update_window_size system
- UiInventory and UiInventorySlot components
- UiInventory now shows player inventory slots
2026-03-09 13:59:51 +03:00
5f59e02788
feat: Implemented Inventory.find_free_space
...
- Added tests for find_free_space
2026-03-07 22:00:00 +03:00
13dd936044
tests: Added more tests
...
- Added 2 more tests related to item moving
- Refactored inventory tests internals
2026-03-07 19:47:21 +03:00
fee774dddd
feat: Implemented Inventory::can_move
...
- Changed Inventory::can_fit signature
- Added can_move_item test
2026-03-06 17:38:57 +03:00
dab3134f15
feat: Added Inventory and Item components
...
- Moved input tests into nested module
- Added inventory tests
2026-03-06 16:41:17 +03:00
957717671a
feat: Player is now using leafwing-input-manager
2026-03-03 16:49:28 +03:00
44c2c9f58a
assets: Added inventory slot sprite
2026-03-03 09:37:45 +03:00
ae7bfd7c27
feat: Added input system
...
- Added input plugin to manage controls config
- Added tests for casting InputMap to InputAsset and backwards
2026-03-03 09:26:52 +03:00
10afe6fd08
feat: Player, assets and basic movement
2026-02-12 17:09:57 +03:00
975e065fde
Initial commit
2026-02-12 10:18:42 +00:00