├── src
├── react-app-env.d.ts
├── assets
│ ├── img
│ │ ├── items.png
│ │ ├── momup.png
│ │ ├── carolup.png
│ │ ├── henryup.png
│ │ ├── joshyup.png
│ │ ├── momdown.png
│ │ ├── momleft.png
│ │ ├── caroldown.png
│ │ ├── carolleft.png
│ │ ├── carolright.png
│ │ ├── embySprite.png
│ │ ├── henrydown.png
│ │ ├── henryleft.png
│ │ ├── henryright.png
│ │ ├── joshydown.png
│ │ ├── joshyleft.png
│ │ ├── joshyright.png
│ │ ├── momright.png
│ │ ├── playerdown.png
│ │ ├── playerleft.png
│ │ ├── playerup.png
│ │ ├── townMap400.png
│ │ ├── playerright.png
│ │ ├── draggleSprite.png
│ │ ├── townBackground
│ │ │ ├── image_part_001.png
│ │ │ ├── image_part_002.png
│ │ │ ├── image_part_003.png
│ │ │ ├── image_part_004.png
│ │ │ ├── image_part_005.png
│ │ │ ├── image_part_006.png
│ │ │ ├── image_part_007.png
│ │ │ ├── image_part_008.png
│ │ │ ├── image_part_009.png
│ │ │ ├── image_part_010.png
│ │ │ ├── image_part_011.png
│ │ │ ├── image_part_012.png
│ │ │ ├── image_part_013.png
│ │ │ ├── image_part_014.png
│ │ │ ├── image_part_015.png
│ │ │ └── image_part_016.png
│ │ └── townForeground
│ │ │ ├── image_part_001.png
│ │ │ ├── image_part_002.png
│ │ │ ├── image_part_003.png
│ │ │ ├── image_part_004.png
│ │ │ ├── image_part_005.png
│ │ │ ├── image_part_006.png
│ │ │ ├── image_part_007.png
│ │ │ ├── image_part_008.png
│ │ │ ├── image_part_009.png
│ │ │ ├── image_part_010.png
│ │ │ ├── image_part_011.png
│ │ │ ├── image_part_012.png
│ │ │ ├── image_part_013.png
│ │ │ ├── image_part_014.png
│ │ │ ├── image_part_015.png
│ │ │ └── image_part_016.png
│ └── collision
│ │ ├── townCollision.ts
│ │ └── townLocation.ts
├── frontend
│ ├── engine
│ │ ├── comps
│ │ │ ├── CClickable.ts
│ │ │ ├── CGridCollider.ts
│ │ │ ├── CTransform.ts
│ │ │ ├── CInteractive.ts
│ │ │ ├── CBackgroundTile.ts
│ │ │ ├── CForegroundTile.ts
│ │ │ ├── CAgent.ts
│ │ │ ├── CInventory.ts
│ │ │ └── CSprite.ts
│ │ ├── systems
│ │ │ ├── SpriteLocationSystem.ts
│ │ │ ├── rendering
│ │ │ │ ├── BackgroundRenderSystem.ts
│ │ │ │ ├── ForegroundRenderSystem.ts
│ │ │ │ └── SpriteRenderSystem.ts
│ │ │ ├── MousePickerSystem.ts
│ │ │ ├── PlayerInteractionSystem.ts
│ │ │ ├── GridMovementSystem.ts
│ │ │ └── AgentMovementSystem.ts
│ │ ├── GameContext.ts
│ │ └── TypedAsset.ts
│ ├── components
│ │ ├── LoadingIndicator.tsx
│ │ ├── GameCanvas.tsx
│ │ ├── Conversation.tsx
│ │ └── Game.tsx
│ ├── styles
│ │ └── components
│ │ │ ├── Game.css
│ │ │ ├── LoadingIndicator.css
│ │ │ └── Conversation.css
│ └── infra
│ │ ├── BoundedBox.ts
│ │ ├── KeyListener.ts
│ │ ├── Inputmapper.ts
│ │ ├── MouseListener.ts
│ │ ├── ShortestPath.ts
│ │ ├── LinAlg.ts
│ │ └── Ecs.ts
├── setupTests.ts
├── App.tsx
├── backend
│ ├── models
│ │ ├── ConversationModel.ts
│ │ └── MessageModel.ts
│ ├── repos
│ │ └── NpcRepo.ts
│ ├── services
│ │ ├── LocationService.ts
│ │ └── ConversationService.ts
│ ├── interfaces
│ │ ├── INpcRepo.ts
│ │ └── IConversationService.ts
│ └── data
│ │ ├── locationData.ts
│ │ └── npcs
│ │ └── NpcData.ts
├── App.test.tsx
├── index.css
├── reportWebVitals.ts
├── index.tsx
├── GptTest.tsx
├── App.css
├── Api.tsx
└── logo.svg
├── public
├── favicon.ico
├── logo192.png
├── logo512.png
├── robots.txt
├── manifest.json
└── index.html
├── .gitignore
├── tsconfig.json
├── LICENSE.md
├── package.json
└── README.md
/src/react-app-env.d.ts:
--------------------------------------------------------------------------------
1 | ///