summaryrefslogtreecommitdiff
path: root/src/components/map/elements
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/map/elements')
-rw-r--r--src/components/map/elements/MapTile.js24
-rw-r--r--src/components/map/elements/RoomTile.js20
-rw-r--r--src/components/map/elements/TileObject.js25
3 files changed, 45 insertions, 24 deletions
diff --git a/src/components/map/elements/MapTile.js b/src/components/map/elements/MapTile.js
deleted file mode 100644
index b0f4959d..00000000
--- a/src/components/map/elements/MapTile.js
+++ /dev/null
@@ -1,24 +0,0 @@
-import PropTypes from "prop-types";
-import React from "react";
-import {Group, Rect} from "react-konva";
-import {TILE_SIZE_IN_PIXELS} from "../MapConstants";
-
-const MapTile = () => (
- <Group>
- <Rect
- x={this.props.tileX * TILE_SIZE_IN_PIXELS}
- y={this.props.tileY * TILE_SIZE_IN_PIXELS}
- width={TILE_SIZE_IN_PIXELS}
- height={TILE_SIZE_IN_PIXELS}
- fill={this.props.fillColor}
- />
- </Group>
-);
-
-MapTile.propTypes = {
- tileX: PropTypes.number.isRequired,
- tileY: PropTypes.number.isRequired,
- fillColor: PropTypes.string.isRequired,
-};
-
-export default MapTile;
diff --git a/src/components/map/elements/RoomTile.js b/src/components/map/elements/RoomTile.js
new file mode 100644
index 00000000..aa837def
--- /dev/null
+++ b/src/components/map/elements/RoomTile.js
@@ -0,0 +1,20 @@
+import React from "react";
+import {Rect} from "react-konva";
+import {ROOM_DEFAULT_COLOR} from "../../../colors/index";
+import Shapes from "../../../shapes/index";
+
+const RoomTile = ({tile}) => (
+ <Rect
+ x={tile.positionX * TILE_SIZE_IN_PIXELS}
+ y={tile.positionY * TILE_SIZE_IN_PIXELS}
+ width={TILE_SIZE_IN_PIXELS}
+ height={TILE_SIZE_IN_PIXELS}
+ fill={ROOM_DEFAULT_COLOR}
+ />
+);
+
+RoomTile.propTypes = {
+ tile: Shapes.Tile,
+};
+
+export default RoomTile;
diff --git a/src/components/map/elements/TileObject.js b/src/components/map/elements/TileObject.js
new file mode 100644
index 00000000..8703011c
--- /dev/null
+++ b/src/components/map/elements/TileObject.js
@@ -0,0 +1,25 @@
+import PropTypes from "prop-types";
+import React from "react";
+import {Rect} from "react-konva";
+import {OBJECT_BORDER_COLOR, ROOM_DEFAULT_COLOR} from "../../../colors/index";
+import Shapes from "../../../shapes/index";
+import {OBJECT_BORDER_WIDTH_IN_PIXELS, OBJECT_MARGIN_IN_PIXELS} from "../MapConstants";
+
+const TileObject = ({tile, color}) => (
+ <Rect
+ x={tile.positionX * TILE_SIZE_IN_PIXELS + OBJECT_MARGIN_IN_PIXELS}
+ y={tile.positionY * TILE_SIZE_IN_PIXELS + OBJECT_MARGIN_IN_PIXELS}
+ width={TILE_SIZE_IN_PIXELS - OBJECT_MARGIN_IN_PIXELS * 2}
+ height={TILE_SIZE_IN_PIXELS - OBJECT_MARGIN_IN_PIXELS * 2}
+ fill={ROOM_DEFAULT_COLOR}
+ stroke={OBJECT_BORDER_COLOR}
+ strokeWidth={OBJECT_BORDER_WIDTH_IN_PIXELS}
+ />
+);
+
+TileObject.propTypes = {
+ tile: Shapes.Tile,
+ color: PropTypes.string.isRequired,
+};
+
+export default TileObject;