Giter Site home page Giter Site logo

aeldardin-rooms's People

Contributors

isikyus avatar

Stargazers

 avatar

Watchers

 avatar

aeldardin-rooms's Issues

Improve handling of canvas edge

Currently, dragging the of the edge of the map when creating a room aborts the process -- i.e. the room doesn't get created.

There's nothing warning you that that will happen, or even where the edge is.

In the short term, this can be fixed by drawing a background texture (e.g. a grid) so the edges are obvious, by drawing an actual border, or by making the canvas extend to the edges of the window (at least horizontally).

In the long term, I need to support creating maps bigger than the screen -- which means zooming and scrolling functionality.

Allow clicking and dragging to add rooms

Proposed behaviour:

  • Click on an (empty?) part of the map
  • As you drag, the proposed room appears -- snapping to grid lines
  • Release the mouse, and the room is added to the map.

Support adding doors

To have a minimally useful map editor, I need to support adding doors between rooms (via both the HTML and canvas UIs, as per usual).

New rooms sometimes end up selected

This seems to depend on which direction you moved the mouse to create the room, but not reliably so.

They should either be consistently selected, or consistently not -- currently I'd prefer not selected, but that may change if I change how selection works.

Implement partial updates for HTML view

Currently, the HTML view gets completely rebuild every time anything changes.
This probably slows things down, and I suspect it would cause bogus notifications from screen readers.

More importantly, it resets the value and focus state of form fields. Since this happens after every change to the add-room fields, it makes the text-based add-room form almost unusable.

Changes like this should just update the specific field affected.

  • Implement partial updates for the add-room form field.
  • Implement partial updates for the whole HTML UI (requires adding new events to the model).

Support saving maps you create

At the moment, the map you edit exists only in the editor itself, and is gone completely as soon as you close the tab.
We should have some kind of save/load feature, either to local storage, or the filesystem (or a server, but that's a whole other kettle of fish).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.