Files
novafarma/docs/ACCESSIBILITY_QUICK_REFERENCE.md
2025-12-12 22:46:38 +01:00

4.3 KiB

🎮 NovaFarma - Accessibility Features Quick Reference

🎬 Visual Sound Cues

Quick Commands:

const visualCues = game.scene.scenes[1].visualSoundCues;

// Subtitle size
visualCues.setSubtitleSize('small');      // 16px
visualCues.setSubtitleSize('medium');     // 20px (default)
visualCues.setSubtitleSize('large');      // 28px
visualCues.setSubtitleSize('very-large'); // 36px

// Opacity
visualCues.setSubtitleOpacity(0.8); // 0.0 - 1.0

// Show subtitle
visualCues.showSubtitle('Text', 3000, 'Speaker', 'direction');

// Toggles
visualCues.toggleSubtitles(true/false);
visualCues.toggleSpeakerNames(true/false);
visualCues.toggleDirectionalArrows(true/false);
visualCues.toggleFishingBobber(true/false);

// Custom speaker color
visualCues.addSpeakerColor('Merchant', '#ffa500');

🎮 Input Remapping

Quick Commands:

const inputSystem = game.scene.scenes[1].inputRemapping;

// Switch profile
inputSystem.switchProfile('default');
inputSystem.switchProfile('left-handed');
inputSystem.switchProfile('arrows');

// Rebind action
inputSystem.startRebinding('interact', (action, key) => {
    console.log(`Rebound ${action} to ${key}`);
});

// Check binding
inputSystem.getBindingDisplay('move_up');

// Check if pressed
inputSystem.isActionPressed('sprint');
inputSystem.isActionJustPressed('attack');

// Reset
inputSystem.resetAction('interact');
inputSystem.resetAllBindings();

// Save/Load
inputSystem.saveToProfile('custom-1');
const json = inputSystem.exportBindings();
inputSystem.importBindings(json);

// Controller
inputSystem.isControllerConnected();
inputSystem.getControllerInfo();

🔊 Screen Reader System

Quick Commands:

const sr = game.scene.scenes[1].screenReader;

// Speech
sr.speak('Text to speak');
sr.speak('Alert!', 'alert', true); // Interrupt

// Settings
sr.setRate(1.5);      // Speed (0.1 - 10)
sr.setPitch(1.2);     // Pitch (0 - 2)
sr.setVolume(0.8);    // Volume (0 - 1)

// Announcements
sr.announceStats();
sr.announceInventory();
sr.announcePosition();
sr.announceNearby();
sr.announceAction('pickup', 'carrot');

// Toggles
sr.toggleVerboseMode();
sr.toggleSoundCues();
sr.toggleAutoNarrate();

// Audio cues
sr.playAudioCue('success');
sr.playAudioCue('error');

// Voices
sr.getAvailableVoices();
sr.setVoice('Microsoft David Desktop');

Keyboard Shortcuts:

  • Ctrl+H: Help
  • Ctrl+R: Repeat last
  • Ctrl+S: Settings
  • Ctrl+P: Position
  • Ctrl+I: Inventory
  • Ctrl+N: Nearby
  • Ctrl+T: Stats
  • Ctrl+V: Verbose mode

📋 Available Profiles

  1. default - WASD + mouse
  2. wasd - WASD movement
  3. arrows - Arrow keys
  4. left-handed - Numpad + left side
  5. right-handed - Standard WASD
  6. custom-1 - User-defined
  7. custom-2 - User-defined
  8. custom-3 - User-defined

🎨 Speaker Colors

  • 🟢 Player: Green
  • 🟡 NPC: Yellow
  • 🔴 Enemy: Red
  • 🔵 System: Cyan
  • Narrator: White

📏 Subtitle Sizes

Size Main Speaker Arrows
Small 16px 12px 24px
Medium 20px 16px 32px
Large 28px 20px 40px
Very Large 36px 24px 48px

🔊 Sound Effects

  1. [DAMAGE TAKEN]
  2. [PICKED UP: Item]
  3. [CROP HARVESTED]
  4. [BUILDING PLACED]
  5. [DIGGING SOUND]
  6. [PLANTING SOUND]
  7. [FOOTSTEPS]
  8. [DOOR OPENS]
  9. [CHEST OPENS]
  10. [WATER SPLASH]
  11. [FIRE CRACKLING]
  12. [EXPLOSION!]
  13. [NPC TALKING]
  14. [ENEMY GROWL]
  15. [FISH BITING!]
  16. [DANGER NEARBY]
  17. [NIGHT IS FALLING]
  18. [ACHIEVEMENT UNLOCKED]
  19. [CLICK]
  20. [HOVER]

🧪 Quick Test

// Copy-paste this to test everything:

const visualCues = game.scene.scenes[1].visualSoundCues;
const inputSystem = game.scene.scenes[1].inputRemapping;

// Test subtitles
visualCues.setSubtitleSize('large');
visualCues.showSubtitle('Testing!', 3000, 'NPC', 'left');

// Test input
console.log('Move Up:', inputSystem.getBindingDisplay('move_up'));
inputSystem.switchProfile('left-handed');
console.log('Move Up (left-handed):', inputSystem.getBindingDisplay('move_up'));
inputSystem.switchProfile('default');

📖 Full Documentation

  • docs/guides/CLOSED_CAPTIONS_TESTING.md
  • docs/guides/INPUT_REMAPPING_TESTING.md
  • docs/sessions/ACCESSIBILITY_IMPLEMENTATION_12_12_2025.md

Version: 2.5.0
Last Updated: 12.12.2025