* ds1 refactor: removed npcIndexes field
it was unnecessary, because described a number of objects with paths to use in encoder, but we can calculate manually
* ds1 refactor: fixed set number of (layers) bug
* ds1 refactor: SetNumberOf...Layers now returns error if incorrect number given
* ds1 refactor: lintfix
* ds1 refactor: rename: setupStreamLayerTypes -> GetStreamLayerTypes
Co-authored-by: M. Sz <mszeptuch@protonmail.com>
* ds1 refactor:
- removed DS1.layerStreamTypes field
- written unit test for setupStreamLayerTypes method
- added more descriptive error messages for LoadDS1 (and submethods)
* ds1 refactor: added some missing error messages
* ds1 refactor: fixed test bugs
* ds1 refactor: removed unnecessary c1. and c2. comments in ds1_test errors
* ds1 refactor: removed fmt from ds1_test
* ds1 refactor: fixed bug with SetTiles test + lintfix
* ds1 refactor: SetNumberOfWalls
* ds1 refactor: SetTile(s) now changes walls/floors length if neccesary
* ds1 refactor: removed unnecessary debugging fmt
* ds1 refactor: added substitution layer and object with paths to example data
Co-authored-by: M. Sz <mszeptuch@protonmail.com>
* ds1 refactor: floor_shadow.go: methods Encode, Decode an Hidden are methods of floorShadow
* ds1 refactor: test checks, if our methods sets all fields correctly
* ds1 refactor: minor bugfixes
* i don't remember what's this, but i commit it ;-)
* ds1 refactor: reverted some pushed by mistake things
Co-authored-by: M. Sz <mszeptuch@protonmail.com>
* ds1 refactor: added test fore some methods; put tests in right order
* ds1 refactor: unit tests for all methods
* ds1 refactor: fixed build errors
* ds1 refactor: lintfix
* ds1 refactor: fixed bug with SetWidth, SetHeight methods
* ds1 refactor: rename tile_record.go -> tile.go
* ds1 refactor: unit test for SetTiles
Co-authored-by: M. Sz <mszeptuch@protonmail.com>
Revert "hotfix: ds1: method setupLayerTypes is now exported + circleci build job bugfix"
These are two separate PR's. You can make a PR for the circl-ci bugfix, but exporting this ds1 method is a bad idea. This is a state manegement method that should only be called internally. By exporting this, we would be placing the responsibility of calling this method on users of `d2ds1`, which may not always be just od2 developers.