summaryrefslogtreecommitdiff
path: root/opendc-web/opendc-web-ui/src/components/app/map/elements/TileObject.js
blob: 9e87cc82c8726bb2cce18dd4325a67e569bc73ff (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import PropTypes from 'prop-types'
import React from 'react'
import { Rect } from 'react-konva'
import { OBJECT_BORDER_COLOR } from '../../../../util/colors'
import { OBJECT_BORDER_WIDTH_IN_PIXELS, OBJECT_MARGIN_IN_PIXELS, TILE_SIZE_IN_PIXELS } from '../MapConstants'

const TileObject = ({ positionX, positionY, color }) => (
    <Rect
        x={positionX * TILE_SIZE_IN_PIXELS + OBJECT_MARGIN_IN_PIXELS}
        y={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={color}
        stroke={OBJECT_BORDER_COLOR}
        strokeWidth={OBJECT_BORDER_WIDTH_IN_PIXELS}
    />
)

TileObject.propTypes = {
    positionX: PropTypes.number.isRequired,
    positionY: PropTypes.number.isRequired,
    color: PropTypes.string.isRequired,
}

export default TileObject