Commit Graph

84 Commits

Author SHA1 Message Date
61c8200443 Fix ORA editor mask preview: server-side compositing with simple toggle
- Add /api/image/masked endpoint that applies mask as alpha channel
- Simplify mask preview modal: just toggle between 'With Background' and 'Masked Only'
- Remove complex CSS mask/blend mode approach
- Server returns pre-composited masked image (transparent where mask is black)
2026-03-27 17:17:19 -07:00
087ac4ca0e Fix layer visibility toggle reactivity
- Use $set() for array property updates in Alpine.js
- Change tintRed to use x-model for proper reactivity
2026-03-27 15:55:12 -07:00
efe72ff065 Fix ORA editor layer visibility and mask preview
- Layer visibility toggles now show/hide individual layer images on canvas
- Added tint red checkbox per layer for manual mask verification
- Mask preview modal uses CSS mask-image to show red overlay only on selected areas (white pixels become semi-transparent red, black pixels remain transparent)
- Added spinner icons to Open and Extract Mask buttons during long operations
2026-03-27 15:26:25 -07:00
0c1fb8ccca Add client logging and improve mask extraction
- Added console.log statements for debugging frontend interactions
- Fixed canvas setup with proper logging
- Added logging to polygon drawing and mask extraction
- Mask extraction now properly loads and passes base image to ComfyUI
- Polygon overlay support when using polygon hint
- Added ora_editor __init__.py for proper package imports
- Updated README with debugging instructions and improved documentation
2026-03-27 09:39:47 -07:00
039a7586d1 Add extensive client-side logging and improve polygon drawing
- Added console.log statements for debugging throughout the app
- Fixed canvas setup with proper logging
- Added logging to startDrawing and addPolygonPoint
- Polygon canvas click handler improved
- Backend logging added to mask extraction, polygon storage
- Mask extraction now properly loads and passes image to ComfyUI
- Polygon overlay support for ComfyUI workflow
2026-03-27 09:37:20 -07:00
be042c81ce Add logging and improve mask extraction
- Added logging throughout the application
- Updated mask extraction to load and pass base image to ComfyUI
- Added polygon overlay support for mask extraction
- Added urllib.parse import for URL encoding
- Better error handling and status reporting
2026-03-27 09:36:31 -07:00
e66fa4d715 Fix Alpine.js initialization by moving oraEditor function to <head>
- oraEditor function now defined in <head> before x-data directive
- Added <body> tag with x-data attribute
- Added canvas click handler using () to access Alpine instance
- Added id to imageContainer for canvas interaction
- All tests passing (16/16)
2026-03-27 09:21:56 -07:00
1a0b231a7b Fix editor.html to properly use Alpine.js with x-data
- Restored x-data, x-model, x-show, x-for, x-if directives
- All methods defined in Alpine data component
- Canvas click handler properly uses () to access Alpine store
- Open button now works with @click handler
2026-03-27 09:17:41 -07:00
59277692ef Rewrite editor.html with vanilla JS ORAEditor class
- Removed Alpine.js dependency (wasn't loading properly)
- Clean vanilla JavaScript class-based implementation
- All core functionality preserved
- Simpler, more maintainable code
2026-03-27 09:10:52 -07:00
e40f95b8d7 Add README with usage instructions
- Quick start guide
- Feature list
- Usage workflow
- API reference
- Testing commands
2026-03-27 08:59:18 -07:00
fb0b50fcd3 Fix test counters in test_app.py 2026-03-27 08:58:40 -07:00
4c050c5a0b Add frontend editor.html with Alpine.js + Tailwind UI
- File open/save functionality
- Layer list with visibility, rename, delete, reorder
- Polygon drawing tool with canvas overlay
- Mask extraction with ComfyUI integration
- Krita integration button
- Settings modal for ComfyUI URL config
2026-03-27 08:57:59 -07:00
c79b0b4add Add Flask application with API endpoints
- Routes for file operations, layer management, polygon drawing
- Mask extraction endpoint with ComfyUI integration
- Krita integration endpoints
- Basic API tests
2026-03-27 08:49:27 -07:00
319c2565c6 Add ora_ops module for ORA file operations
- Implements core ORA reading/writing functions
- Layer add, rename, delete, reorder, visibility operations
- Full test suite with 8 passing tests
2026-03-27 08:46:49 -07:00
6487b00655 new images 2026-03-27 08:14:33 -07:00
86a031e3f5 connections 2026-03-17 07:54:35 -07:00
3601fe46aa Fix signal callback - use lambda to ignore index parameter 2026-03-17 07:53:28 -07:00
ac12fd0873 Add debug output and disabled item check for validation 2026-03-17 07:52:07 -07:00
4e993f8e05 Fix validation bug and improve color contrast
- Fixed validation error by checking TYPE_DICTIONARY instead of is_empty()
- Removed hardcoded colors, using Godot's built-in theme colors instead
2026-03-17 07:48:24 -07:00
4954732552 Add Transition Configurator plugin for easy exit configuration
Features:
- Fuzzy search for finding destination rooms
- Lists all TransitionPieces in selected room as arrival points
- Bidirectional wiring - updates return transition automatically
- Auto-reloads destination scene in editor
- UndoRedo support for source scene changes

Files added:
- addons/transition_configurator/plugin.cfg
- addons/transition_configurator/transition_configurator.gd
- addons/transition_configurator/transition_inspector_plugin.gd
- addons/transition_configurator/config_dialog.gd
- addons/transition_configurator/fuzzy_search.gd
- addons/transition_configurator/README.md
2026-03-16 09:26:03 -07:00
31aa91fc3b removed unnecessary 2026-03-11 11:30:02 -07:00
57a1dfed5b hopefully faster load. 2026-03-11 11:05:06 -07:00
Bryce
1b8d1fb915 progress 2026-03-11 10:43:21 -07:00
30915514a8 Create rooms 053-099 with transitions
- Created 45 new room scenes from specs
- Added proper .tscn and .gd files for each room
- Wired up transitions based on spec exit information
- Connected to existing rooms (017, 022, 028, 030, 031) where applicable
- Rooms include: dwarfs areas, caves, swamp, castle, and more
2026-03-10 14:01:24 -07:00
f7e1e19403 Create room 051 (Ogres Closet) and wire to room 049
- Added kq4_051_ogres_closet scene
- East exit to room 049 (Ogre's Cottage) - bidirectional connection
- Updated room 049 to fix transition to room 051
2026-03-10 13:46:08 -07:00
527b1eba8a Create room 050 (Ogress Kitchen) and wire to room 049
- Added kq4_050_ogress_kitchen scene
- West exit to room 049 (Ogre's Cottage) - bidirectional connection
- Updated room 049 to fix transition to room 050
2026-03-10 13:44:56 -07:00
6d94d8c388 Create room 049 (Ogre's Cottage) and wire transitions
- Added kq4_049_ogres_cottage scene
- North exit to room 004 (Ogre's Cottage Exterior) - bidirectional connection
- East exit to room 048 (Ogres' Bedroom) - bidirectional connection
- South exit to room 050 (Kitchen) - room 050 doesn't exist yet, transition pending
- West exit to room 051 (Closet) - room 051 doesn't exist yet, transition pending
- Updated room 048 to fix transition to room 049
2026-03-10 13:43:33 -07:00
f4313d17ea Create room 048 (Ogres' Bedroom)
- Added kq4_048_ogres_bedroom scene
- East exit to room 049 (Upstairs Hallway) - room 049 doesn't exist yet, transition pending
- Added warning handler for unimplemented transition
2026-03-10 13:41:58 -07:00
fea208d7bf Create room 047 (Genesta's Palace Entry Hall) and wire transitions
- Added kq4_047_genestas_palace_entry_hall scene
- South exit to room 037 (Fairy Island) - bidirectional connection
- East exit to room 046 (Tower Stairway) - bidirectional connection
- Updated room 037 to add return transition to room 047
- Updated room 046 to fix transition to room 047
2026-03-10 13:40:44 -07:00
e5d3d24051 Create room 046 (Tower Stairway) and wire to room 045
- Added kq4_046_tower_stairway scene
- South exit to room 045 (Genesta's Bed Chamber) - bidirectional connection
- North exit to room 047 (Tower Chamber) - room 047 doesn't exist yet, transition pending
- Updated room 045 to add return transition to room 046
2026-03-10 13:38:38 -07:00
7fafb34f28 Create room 045 (Genesta's Bed Chamber)
- Added kq4_045_genestas_bed_chamber scene
- Exit to room 046 (Genesta's Tower) - room 046 doesn't exist yet, transition pending
- Added warning handler for unimplemented transition
2026-03-10 13:37:20 -07:00
5db5b5a5e2 Create room 044 (Inside Whale) and wire to room 031
- Added kq4_044_inside_whale scene with exit to room 031
- Updated room 031 to add transition to room 044 (bidirectional connection)
- Both transitions validated with exit checker
2026-03-10 13:31:30 -07:00
6e981e7877 Create room 043 (Desert Island) and wire to room 031
- Added kq4_043_desert_island scene with 4 exits (north, east, south, west) to room 031
- Updated room 031 to add transition to room 043 (bidirectional connection)
- All 4 exits from room 043 validated with exit checker
2026-03-10 13:29:16 -07:00
df6f752e9f Create room 042 (Fisherman's Shack Inside) and wire to room 007
- Added kq4_042_fishermans_shack_inside scene with south exit to room 007
- Updated room 007 to add transition to room 042 (bidirectional connection)
- Fixed corrupted room 007 script file
- Both transitions validated with exit checker
2026-03-10 13:26:57 -07:00
ce6a6e3d16 Create room 032 (Ocean Near Island) and wire to room 031
- Added kq4_032_ocean_near_island scene with west, east, and south exits to room 031
- Updated room 031 to add north exit to room 032 (bidirectional connection)
- Room 032 north exit to room 040 omitted (room 040 doesn't exist yet)
- Note: Room 032 has 3 exits to room 031 (west, east, south) with unique node names
  since Godot doesn't allow duplicate node names. All three call the same handler.
2026-03-10 13:24:37 -07:00
9e75a226ea Create room 012 (Haunted Forest) and wire to rooms 006 and 011
- Added kq4_012_haunted_forest scene with north exit to room 006 and west exit to room 011
- Updated room 006 to add south exit to room 012 (bidirectional connection)
- Updated room 011 to add target UID for room 012 transition
- Room 012 south exit to room 018 omitted (room 018 doesn't exist yet)
- All 4 transitions validated with exit checker
2026-03-10 13:21:09 -07:00
b2ee6adda6 Create room 006 (Cave Entrance) and wire to room 005
- Added kq4_006_cave_entrance scene with west exit to room 005
- Updated room 005 to include target UID for room 006 transition
- Room 006 south exit to room 012 omitted (room 012 doesn't exist yet)
- Both transitions validated with exit checker
2026-03-10 13:18:53 -07:00
86603f015e Test vram 2026-03-10 13:08:26 -07:00
1679b717db Add golden ball interactable set piece to bridge room
- Add golden_ball_walk_target Node2D at position (1400, 550) on the grassy area above the bridge
- Add golden_ball SetPiece with polygon resource for interactable area
- Connect touched signal to _on_golden_ball_touched handler
- When player uses hand cursor, they walk to the target and narration reveals the golden ball
- Use ScriptBuilder.and_then() to chain walk_to_deferred and narrate actions
2026-03-10 10:09:38 -07:00
b0eb6caf14 Replace say->narrate in remaining look script handlers (batch 2)
Complete the refactoring of look script handlers to use ScriptBuilder.narrate()
instead of ScriptBuilder.say() for better semantic clarity.

Files changed:
- kq4_013_beach.gd (3 instances)
- kq4_016_graveyard.gd (3 instances)
- kq4_017_spooky_house_exterior.gd (2 instances)
- kq4_022_gnomes_cottage.gd (2 instances)
- kq4_027_forest_path.gd (2 instances)
- kq4_029_dense_forest.gd (2 instances)
- kq4_030_mountain_pass.gd (2 instances)
- kq4_031_open_ocean.gd (2 instances)
- kq4_033_enchanted_island_beach.gd (2 instances)
- kq4_034_island_beach.gd (2 instances)
- kq4_035_island_beach.gd (2 instances)
- kq4_036_island_garden_pond.gd (2 instances)
- kq4_038_island_garden.gd (2 instances)

Total: 28 instances across 13 files

Archive scenes (healer_pasture, healer_interior, entrance) closed as
not in active project.
2026-03-10 09:44:21 -07:00
7ed20048b9 Replace say->narrate in remaining look script handlers
Continue refactoring look script handlers to use ScriptBuilder.narrate()
instead of ScriptBuilder.say() for better semantic clarity.

Files changed:
- kq4_036_island_garden_pond.gd (2 instances)
- kq4_013_beach.gd (3 instances)
- kq4_038_island_garden.gd (2 instances)
- kq4_033_enchanted_island_beach.gd (2 instances)

Total: 9 instances across 4 files
2026-03-10 09:41:55 -07:00
822be21c38 Replace say->narrate in look script handlers
Refactor all look script handlers to use ScriptBuilder.narrate() instead
of ScriptBuilder.say() for better semantic clarity. Look commands
describe what the player sees, so narrate is more appropriate than say.

Files changed:
- kq4_009_shady_wooded_area.gd (1 instance)
- kq4_010_forest_path.gd (3 instances)
- kq4_011_enchanted_grove.gd (2 instances)
- kq4_015_frog_pond.gd (4 instances)
- kq4_018_cemetery.gd (2 instances)
- kq4_023_forest_path_with_cottage.gd (2 instances)
- kq4_026_river_meadow.gd (1 instance)
- kq4_039_island_beach.gd (2 instances)
- kq4_040_island_beach_east.gd (2 instances)

Total: 19 instances across 9 files
2026-03-10 09:40:23 -07:00
5233e2c9e0 bd init: initialize beads issue tracking 2026-03-10 09:18:58 -07:00
e243083a5f narration 2026-03-09 21:40:57 -07:00
1b13072412 progress 2026-03-09 20:43:30 -07:00
44926b751d skill 2026-03-09 15:55:31 -07:00
629bdb3d78 agent update 2026-03-09 15:48:37 -07:00
fd9a667498 progress 2026-03-09 14:21:08 -07:00
7203c843ec progresS 2026-03-09 11:57:48 -07:00
041c0ebbdb progress 2026-03-09 10:54:10 -07:00