├── src
├── index.css
├── styles
│ ├── components
│ │ ├── _play.scss
│ │ ├── _abilityScores.scss
│ │ ├── _npc.scss
│ │ ├── _navs.scss
│ │ ├── _monsterTracker.scss
│ │ ├── _createRaces.scss
│ │ └── _diceRoller.scss
│ └── base
│ │ ├── _settings.scss
│ │ └── _base.scss
├── actions
│ ├── play.js
│ ├── reference.js
│ ├── monster.js
│ └── combat.js
├── media-store
│ ├── electric.svg
│ ├── stairs.svg
│ ├── hamburger-menu.svg
│ ├── table.svg
│ ├── big-egg.svg
│ ├── shield.svg
│ ├── open-folder.svg
│ ├── soda-can.svg
│ ├── paper-plane.svg
│ ├── join.svg
│ ├── up-card.svg
│ ├── water-drop.svg
│ ├── quick-slash.svg
│ ├── triforce.svg
│ ├── rank-1.svg
│ ├── trample.svg
│ ├── cube.svg
│ ├── obelisk.svg
│ ├── virtual-marker.svg
│ ├── spawn-node.svg
│ ├── chess-rook.svg
│ ├── claw.svg
│ ├── pounce.svg
│ ├── south-africa-flag.svg
│ ├── diamonds.svg
│ ├── power-lightning.svg
│ ├── crush.svg
│ ├── medical-pack.svg
│ ├── tablet.svg
│ ├── sailboat.svg
│ ├── flamer.svg
│ ├── piano-keys.svg
│ ├── trigger-hurt.svg
│ ├── egg-pod.svg
│ ├── seven-pointed-star.svg
│ ├── barracks-tent.svg
│ ├── fall-down.svg
│ ├── greek-temple.svg
│ ├── paper-tray.svg
│ ├── porcelain-vase.svg
│ ├── rank-2.svg
│ ├── health-normal.svg
│ ├── medical-pack-alt.svg
│ ├── play-button.svg
│ ├── upgrade.svg
│ ├── fallout-shelter.svg
│ ├── hearts.svg
│ ├── smartphone.svg
│ ├── antarctica.svg
│ ├── clubs.svg
│ ├── egypt.svg
│ ├── house.svg
│ ├── uruguay.svg
│ ├── telescopic-baton.svg
│ ├── chess-pawn.svg
│ ├── striking-diamonds.svg
│ ├── brick-wall.svg
│ ├── bottom-right-3d-arrow.svg
│ ├── lucifer-cannon.svg
│ ├── private.svg
│ ├── smash-arrows.svg
│ ├── arena.svg
│ ├── level-two.svg
│ ├── nodular.svg
│ ├── factory.svg
│ ├── barefoot.svg
│ ├── battery-pack-alt.svg
│ ├── doubled.svg
│ ├── electric-whip.svg
│ ├── hospital-cross.svg
│ ├── stack.svg
│ ├── usb-key.svg
│ ├── circular-saw.svg
│ ├── direction-signs.svg
│ ├── focused-lightning.svg
│ ├── unplugged.svg
│ ├── valley.svg
│ ├── coffin.svg
│ ├── helmet.svg
│ ├── latvia.svg
│ ├── pc.svg
│ ├── ladder.svg
│ ├── lightning-trio.svg
│ ├── hasty-grave.svg
│ ├── railway.svg
│ ├── shield-disabled.svg
│ ├── tesla.svg
│ ├── chess-queen.svg
│ ├── cooking-pot.svg
│ ├── ermine.svg
│ ├── fire.svg
│ ├── health-decrease.svg
│ ├── health-increase.svg
│ ├── spades.svg
│ ├── whiplash.svg
│ ├── pie-chart.svg
│ ├── rank-3.svg
│ ├── rough-wound.svg
│ ├── broken-heart.svg
│ ├── kevlar.svg
│ ├── poison.svg
│ ├── resize.svg
│ ├── rifle.svg
│ ├── balkenkreuz.svg
│ ├── cigarette.svg
│ ├── bolivia.svg
│ ├── submarine.svg
│ ├── bridge.svg
│ ├── iron-cross.svg
│ ├── level-two-advanced.svg
│ ├── pause-button.svg
│ ├── shotgun.svg
│ ├── thrown-spear.svg
│ ├── trash-can.svg
│ ├── australia.svg
│ ├── cambodia.svg
│ ├── heat-haze.svg
│ ├── white-tower.svg
│ ├── drop.svg
│ ├── weight-crush.svg
│ ├── metal-plate.svg
│ ├── dungeon-light.svg
│ ├── egyptian-pyramids.svg
│ ├── hot-surface.svg
│ ├── ice-pop.svg
│ ├── road.svg
│ ├── solid-leaf.svg
│ ├── checkbox-tree.svg
│ ├── clover-spiked.svg
│ ├── suicide.svg
│ ├── acoustic-megaphone.svg
│ ├── colombia.svg
│ ├── bed-lamp.svg
│ ├── brazil-flag.svg
│ ├── broken-wall.svg
│ ├── chess-knight.svg
│ ├── triple-scratches.svg
│ ├── anvil.svg
│ ├── battery-pack.svg
│ ├── entry-door.svg
│ ├── exit-door.svg
│ ├── power-button.svg
│ ├── wrench.svg
│ ├── laser-burst.svg
│ ├── pin.svg
│ ├── thrust-bend.svg
│ ├── spine-arrow.svg
│ ├── whirlpool-shuriken.svg
│ ├── divided-square.svg
│ ├── eternal-love.svg
│ ├── h2o.svg
│ ├── inverted-dice-1.svg
│ ├── tower-flag.svg
│ ├── turret.svg
│ ├── dress.svg
│ ├── life-buoy.svg
│ ├── moebius-triangle.svg
│ ├── private-first-class.svg
│ ├── black-sea.svg
│ ├── film-strip.svg
│ ├── i-beam.svg
│ ├── overkill.svg
│ ├── spikes-init.svg
│ ├── sri-lanka.svg
│ ├── acid.svg
│ ├── gavel.svg
│ ├── africa.svg
│ ├── damaged-house.svg
│ ├── heavy-lightning.svg
│ ├── sickle.svg
│ ├── star-shuriken.svg
│ ├── crenulated-shield.svg
│ ├── cut-diamond.svg
│ ├── edge-crack.svg
│ ├── fast-arrow.svg
│ ├── pulse.svg
│ ├── trident.svg
│ ├── charm.svg
│ ├── locked-fortress.svg
│ ├── round-star.svg
│ ├── scalpel.svg
│ ├── paper-arrow.svg
│ ├── papers.svg
│ ├── sword-altar.svg
│ ├── zeppelin.svg
│ ├── inverted-dice-2.svg
│ ├── led.svg
│ ├── omega.svg
│ ├── concentration-orb.svg
│ ├── panzerfaust.svg
│ ├── pistol-gun.svg
│ ├── siren.svg
│ ├── sprint.svg
│ ├── tron-arrow.svg
│ ├── wooden-fence.svg
│ ├── bolter-gun.svg
│ ├── chained-arrow-heads.svg
│ ├── chess-bishop.svg
│ ├── double-face-mask.svg
│ ├── guillotine.svg
│ ├── jet-pack.svg
│ ├── crossed-slashes.svg
│ ├── podium-winner.svg
│ ├── shiny-entrance.svg
│ ├── south-africa.svg
│ ├── corporal.svg
│ ├── energy-sword.svg
│ ├── hedjet-white-crown.svg
│ ├── podium-second.svg
│ ├── sharp-shuriken.svg
│ ├── stars-stack.svg
│ ├── yin-yang.svg
│ ├── backward-time.svg
│ ├── spanner.svg
│ ├── striking-splinter.svg
│ ├── belgium.svg
│ ├── box-trap.svg
│ ├── imbricated-arrows.svg
│ ├── planet-core.svg
│ ├── static-guard.svg
│ ├── striking-arrows.svg
│ ├── union-jack.svg
│ ├── alligator-clip.svg
│ ├── bookshelf.svg
│ ├── ent-mouth.svg
│ ├── poison-cloud.svg
│ ├── slicing-arrow.svg
│ ├── thermometer-scale.svg
│ ├── crosshair.svg
│ ├── folded-paper.svg
│ ├── laser-gun.svg
│ ├── podium-third.svg
│ ├── cardboard-box.svg
│ ├── cracked-shield.svg
│ ├── f1-car.svg
│ ├── stahlhelm.svg
│ ├── airtight-hatch.svg
│ ├── amethyst.svg
│ ├── divert.svg
│ ├── joystick.svg
│ ├── rock.svg
│ ├── sly.svg
│ ├── south-america.svg
│ ├── stone-bridge.svg
│ ├── talk.svg
│ ├── flake.svg
│ ├── lips.svg
│ ├── mirror-mirror.svg
│ ├── pillow.svg
│ ├── scythe.svg
│ ├── shard-sword.svg
│ ├── lob-arrow.svg
│ ├── tap.svg
│ ├── cracked-disc.svg
│ ├── crucifix.svg
│ ├── falling-rocks.svg
│ ├── level-four.svg
│ ├── defensive-wall.svg
│ ├── film-projector.svg
│ ├── moon.svg
│ ├── select.svg
│ ├── hill-conquest.svg
│ ├── return-arrow.svg
│ ├── spiked-tail.svg
│ ├── black-flag.svg
│ ├── closed-doors.svg
│ ├── level-three.svg
│ ├── metal-bar.svg
│ ├── sand-snake.svg
│ ├── allied-star.svg
│ ├── lift.svg
│ ├── demolish.svg
│ ├── swirled-shell.svg
│ ├── banging-gavel.svg
│ ├── hourglass.svg
│ ├── scalpel-strike.svg
│ ├── shoulder-armor.svg
│ ├── smoking-pipe.svg
│ ├── boot-prints.svg
│ ├── caltrops.svg
│ ├── candlebright.svg
│ ├── croc-sword.svg
│ ├── help.svg
│ ├── inverted-dice-3.svg
│ ├── switzerland.svg
│ ├── broken-pottery.svg
│ ├── cancel.svg
│ ├── hemp.svg
│ ├── kimono.svg
│ ├── snorkel.svg
│ ├── back-forth.svg
│ ├── checked-shield.svg
│ ├── feathered-wing.svg
│ ├── fuji.svg
│ ├── halt.svg
│ ├── lightning-helix.svg
│ ├── thorny-tentacle.svg
│ ├── walkie-talkie.svg
│ ├── wavy-itinerary.svg
│ ├── wooden-sign.svg
│ ├── flat-hammer.svg
│ ├── id-card.svg
│ ├── joint.svg
│ ├── stone-block.svg
│ ├── fire-axe.svg
│ ├── painted-pottery.svg
│ ├── sea-creature.svg
│ ├── spinning-ribbons.svg
│ ├── stiletto.svg
│ ├── wide-arrow-dunk.svg
│ ├── capitol.svg
│ ├── detour.svg
│ ├── evil-hand.svg
│ ├── peaks.svg
│ ├── target-laser.svg
│ ├── clout.svg
│ ├── info.svg
│ ├── padlock.svg
│ ├── wind-slap.svg
│ ├── arc-triomphe.svg
│ ├── grim-reaper.svg
│ ├── italia.svg
│ ├── stone-throne.svg
│ ├── stone-tower.svg
│ ├── air-zigzag.svg
│ ├── bus.svg
│ ├── high-shot.svg
│ ├── hills.svg
│ ├── mexico.svg
│ ├── orb-direction.svg
│ ├── trousers.svg
│ ├── warlock-eye.svg
│ ├── floating-crystal.svg
│ ├── screen-impact.svg
│ ├── solar-power.svg
│ ├── blast.svg
│ ├── drill.svg
│ ├── evil-eyes.svg
│ ├── sound-waves.svg
│ ├── thunder-struck.svg
│ ├── anvil-impact.svg
│ ├── click.svg
│ └── hell-crosses.svg
├── selectors
│ └── monsters.js
├── components
│ ├── utils.js
│ ├── create
│ │ └── createItem.js
│ ├── play
│ │ └── generators.js
│ └── header.js
├── reducers
│ ├── rolls.js
│ ├── combatEntities.js
│ ├── customMonsters.js
│ └── players.js
├── App.test.js
├── index.js
├── data
│ └── parser.js
└── App.js
├── public
├── favicon.ico
├── media
│ ├── Temple.svg
│ └── Human.svg
└── manifest.json
└── .gitignore
/src/index.css:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jerazost/DM_Tools/HEAD/public/favicon.ico
--------------------------------------------------------------------------------
/src/styles/components/_play.scss:
--------------------------------------------------------------------------------
1 | @import 'diceRoller';
2 | @import 'monsterTracker';
3 | @import 'npc';
--------------------------------------------------------------------------------
/src/styles/components/_abilityScores.scss:
--------------------------------------------------------------------------------
1 | .abilityScores{
2 | margin: $m-size 0;
3 | display:flex;
4 | flex-direction: row;
5 | }
--------------------------------------------------------------------------------
/src/styles/components/_npc.scss:
--------------------------------------------------------------------------------
1 | .NPCGenerator {
2 | padding: $l-size;
3 | }
4 | .NPCGenerator__Card {
5 | padding: $m-size;
6 | }
7 |
--------------------------------------------------------------------------------
/src/actions/play.js:
--------------------------------------------------------------------------------
1 | export const updateDiceRolls = rolls => {
2 | return ({
3 | type: 'UPDATE_DICE_ROLL_LIST',
4 | rolls
5 | });
6 | }
--------------------------------------------------------------------------------
/src/actions/reference.js:
--------------------------------------------------------------------------------
1 | export const updateReference = reference => {
2 | return ({
3 | type: 'UPDATE_REFERENCE',
4 | reference
5 | });
6 | }
--------------------------------------------------------------------------------
/src/media-store/electric.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/stairs.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/hamburger-menu.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/table.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/big-egg.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/selectors/monsters.js:
--------------------------------------------------------------------------------
1 | export default (monsters, {text}) => {
2 | return monsters.filter(monster => {
3 | const textMatch = monster.name.toLowerCase().includes(text);
4 | return textMatch;
5 | });
6 | }
--------------------------------------------------------------------------------
/src/media-store/shield.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/open-folder.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/soda-can.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/paper-plane.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/join.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/up-card.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/water-drop.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/components/utils.js:
--------------------------------------------------------------------------------
1 | export const capFirst = (string) => {
2 | return string.charAt(0).toUpperCase() + string.slice(1);
3 | }
4 | export const lowFirst = (string) => {
5 | return string.charAt(0).toLowerCase() + string.slice(1);
6 | }
--------------------------------------------------------------------------------
/src/media-store/quick-slash.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/triforce.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/reducers/rolls.js:
--------------------------------------------------------------------------------
1 | const rolls= [];
2 |
3 | export default (state = rolls, action) => {
4 | switch (action.type) {
5 | case 'UPDATE_DICE_ROLL_LIST':
6 | return [...action.rolls];
7 | default:
8 | return state;
9 | }
10 | }
--------------------------------------------------------------------------------
/src/media-store/rank-1.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/trample.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/App.test.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import ReactDOM from 'react-dom';
3 | import App from './App';
4 |
5 | it('renders without crashing', () => {
6 | const div = document.createElement('div');
7 | ReactDOM.render(, div);
8 | });
9 |
--------------------------------------------------------------------------------
/src/media-store/cube.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/obelisk.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/virtual-marker.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/spawn-node.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/chess-rook.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/claw.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/pounce.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/south-africa-flag.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/diamonds.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/power-lightning.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/crush.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/medical-pack.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/tablet.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/index.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import ReactDOM from 'react-dom';
3 | import './index.css';
4 | import App from './App';
5 | import registerServiceWorker from './registerServiceWorker';
6 |
7 | ReactDOM.render(, document.getElementById('root'));
8 | registerServiceWorker();
9 |
--------------------------------------------------------------------------------
/src/media-store/sailboat.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/flamer.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/media/Temple.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/piano-keys.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/trigger-hurt.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/egg-pod.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/seven-pointed-star.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/barracks-tent.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/fall-down.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/greek-temple.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/paper-tray.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/porcelain-vase.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/rank-2.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/health-normal.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/medical-pack-alt.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/play-button.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/upgrade.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/components/create/createItem.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 |
3 | class CreateItemForm extends React.Component {
4 | constructor (props) {
5 | super(props);
6 | this.state = {}
7 | }
8 | render() {
9 | return (
10 |
Create Item!
11 | )
12 | }
13 | }
14 |
15 | export default CreateItemForm;
--------------------------------------------------------------------------------
/src/media-store/fallout-shelter.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/hearts.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/smartphone.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/antarctica.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/clubs.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/egypt.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/house.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/uruguay.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/telescopic-baton.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/chess-pawn.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/striking-diamonds.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/brick-wall.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/bottom-right-3d-arrow.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/lucifer-cannon.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/private.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/smash-arrows.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/arena.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/level-two.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/nodular.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/data/parser.js:
--------------------------------------------------------------------------------
1 | const fs = require('fs');
2 | const names = fs.readFileSync('./names', 'utf-8');
3 | const list = names.split('\n').join(' ').split('\t');
4 |
5 | fs.writeFile("names.json", JSON.stringify(list), 'utf8', function (err) {
6 | if (err) {
7 | return console.log(err);
8 | }
9 |
10 | console.log("The file was saved!");
11 | });
--------------------------------------------------------------------------------
/src/media-store/factory.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/barefoot.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/battery-pack-alt.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/doubled.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/electric-whip.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/hospital-cross.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/stack.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/usb-key.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/circular-saw.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/direction-signs.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/focused-lightning.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/unplugged.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/valley.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/styles/components/_navs.scss:
--------------------------------------------------------------------------------
1 | .navs {
2 | display: flex;
3 | justify-content: center;
4 | }
5 |
6 | .nav {
7 | padding: $s-size $l-size;
8 | text-align: center;
9 | font-size: $m-size;
10 | text-decoration: none;
11 | color: white;
12 | }
13 |
14 | .nav:hover {
15 | background: lighten($background, 10%);
16 | color: $light-text;
17 | cursor: pointer;
18 | }
--------------------------------------------------------------------------------
/src/media-store/coffin.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/helmet.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/latvia.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/pc.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/ignore-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 |
6 | # testing
7 | /coverage
8 |
9 | # production
10 | /build
11 |
12 | # misc
13 | .DS_Store
14 | .env.local
15 | .env.development.local
16 | .env.test.local
17 | .env.production.local
18 |
19 | npm-debug.log*
20 | yarn-debug.log*
21 | yarn-error.log*
22 |
--------------------------------------------------------------------------------
/src/media-store/ladder.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/lightning-trio.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/styles/base/_settings.scss:
--------------------------------------------------------------------------------
1 | //Colors
2 | $background: #454545;
3 | $light-background: #ececeb;
4 | $paper: #FDF1DC;
5 | $dark-accent: #8A716A;
6 | $light-accent: #C03221;
7 |
8 | $green: #273C2C;
9 |
10 | $light-text: #ecf0f1;
11 | $dark-text: #2c3e50;
12 |
13 | //Sizes
14 | $s-size: 1.2rem;
15 | $m-size: 1.6rem;
16 | $l-size: 3.2rem;
17 | $xl-size: 4.8rem;
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/src/reducers/combatEntities.js:
--------------------------------------------------------------------------------
1 | export default (state = [], action) => {
2 | switch (action.type) {
3 | case "ADD_COMBAT_ENTITY":
4 | return [...state, action.entity];
5 | case "REMOVE_COMBAT_ENTITY":
6 | return state.filter(entity => entity.uid !== action.uid);
7 | case "UPDATE_ALL_ENTITIES":
8 | return [...action.entityList];
9 | default:
10 | return state;
11 | }
12 | }
--------------------------------------------------------------------------------
/public/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "short_name": "React App",
3 | "name": "Create React App Sample",
4 | "icons": [
5 | {
6 | "src": "favicon.ico",
7 | "sizes": "64x64 32x32 24x24 16x16",
8 | "type": "image/x-icon"
9 | }
10 | ],
11 | "start_url": "./index.html",
12 | "display": "standalone",
13 | "theme_color": "#000000",
14 | "background_color": "#ffffff"
15 | }
16 |
--------------------------------------------------------------------------------
/src/media-store/hasty-grave.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/railway.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/shield-disabled.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/tesla.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/chess-queen.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/cooking-pot.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/ermine.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/fire.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/health-decrease.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/health-increase.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/spades.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/whiplash.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/pie-chart.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/rank-3.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/rough-wound.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/broken-heart.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/kevlar.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/poison.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/resize.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/rifle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/styles/base/_base.scss:
--------------------------------------------------------------------------------
1 | @import 'settings';
2 | @import 'styles/normalize.css';
3 |
4 | html {
5 | font-size: 62.5%;
6 | }
7 | body {
8 | padding: 0;
9 | margin: 0;
10 | font-family: Helvetica, Arial, sans-serif;
11 | background: $light-background;
12 | }
13 | button {
14 | cursor: pointer;
15 | }
16 | input:focus,
17 | select:focus,
18 | textarea:focus,
19 | button:focus {
20 | outline: none;
21 | }
--------------------------------------------------------------------------------
/src/media-store/balkenkreuz.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/cigarette.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/bolivia.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/submarine.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/bridge.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/iron-cross.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/level-two-advanced.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/pause-button.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/shotgun.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/thrown-spear.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/trash-can.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/australia.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/cambodia.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/heat-haze.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/white-tower.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/drop.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/weight-crush.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/metal-plate.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/reducers/customMonsters.js:
--------------------------------------------------------------------------------
1 | const customMonstersFromStorage = JSON.parse(window.localStorage.getItem('monsters')) || [];
2 |
3 | export default (state = customMonstersFromStorage, action) => {
4 | switch(action.type){
5 | case 'ADD_CUSTOM_MONSTER':
6 | return [...state, ...action.monster];
7 | case 'REMOVE_CUSTOM_MONSTER':
8 | return state.filter(m => m.uuid !== action.uuid);
9 | default:
10 | return state;
11 | }
12 | };
--------------------------------------------------------------------------------
/src/media-store/dungeon-light.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/egyptian-pyramids.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/hot-surface.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/ice-pop.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/road.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/solid-leaf.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/reducers/players.js:
--------------------------------------------------------------------------------
1 | const savedPlayersFromStorage = window.localStorage.getItem('players') || [];
2 |
3 | export default (state = savedPlayersFromStorage, action) => {
4 | switch(action.type){
5 | case 'ADD_PLAYER':
6 | return [...state, ...action.player];
7 | case 'REMOVE_PLAYER':
8 | return state.filter(p => p.uuid !== action.uuid);
9 | default:
10 | return new Error('Wrong action type in customMonsters reducer');
11 | }
12 | };
--------------------------------------------------------------------------------
/src/media-store/checkbox-tree.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/clover-spiked.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/suicide.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/acoustic-megaphone.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/colombia.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/bed-lamp.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/brazil-flag.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/broken-wall.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/chess-knight.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/triple-scratches.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/App.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import './App.css';
3 | import AppRouter from './AppRouter';
4 | import configureStore from './store/configureStore';
5 | import {Provider} from 'react-redux';
6 |
7 | const store = configureStore();
8 |
9 | store.subscribe(() => {
10 | console.log(store.getState().reference)
11 | });
12 |
13 | const App = () => (
14 |
15 |
16 |
17 | )
18 |
19 | export default App;
--------------------------------------------------------------------------------
/src/media-store/anvil.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/battery-pack.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/entry-door.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/exit-door.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/power-button.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/wrench.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/laser-burst.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/pin.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/thrust-bend.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/spine-arrow.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/whirlpool-shuriken.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/divided-square.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/eternal-love.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/h2o.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/inverted-dice-1.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/tower-flag.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/turret.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/dress.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/life-buoy.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/moebius-triangle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/private-first-class.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/actions/monster.js:
--------------------------------------------------------------------------------
1 | export const editMonster = (monster) => {
2 | return ({
3 | type: 'EDIT_MONSTER',
4 | monster
5 |
6 | });
7 | }
8 |
9 | export const addCustomMonster = (monster) => {
10 | let monsters = JSON.parse(window.localStorage.getItem('monsters') || "[]");
11 | monsters = [...monsters, monster];
12 | console.log(monsters);
13 | window.localStorage.setItem('monsters', JSON.stringify(monsters));
14 | return ({
15 | type: 'ADD_CUSTOM_MONSTER',
16 | monster
17 | });
18 | }
--------------------------------------------------------------------------------
/src/media-store/black-sea.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/film-strip.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/i-beam.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/overkill.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/spikes-init.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/sri-lanka.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/components/play/generators.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import NPCGenerator from './npcGenerator';
3 | import BuildingGenerator from './buildingGenerator';
4 |
5 | class Generators extends React.Component {
6 | render() {
7 | return (
8 |
14 | )
15 | }
16 | }
17 |
18 | export default Generators;
--------------------------------------------------------------------------------
/src/media-store/acid.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/gavel.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/africa.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/damaged-house.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/heavy-lightning.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/sickle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/star-shuriken.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/crenulated-shield.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/cut-diamond.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/edge-crack.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/fast-arrow.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/pulse.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/trident.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/charm.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/locked-fortress.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/round-star.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/scalpel.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/paper-arrow.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/papers.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/sword-altar.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/zeppelin.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/components/header.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import {NavLink} from 'react-router-dom';
3 |
4 | const Header = () => (
5 |
6 |
Dungeon Tools
7 |
8 | Reference
9 | Play
10 | Create
11 |
12 |
13 | );
14 |
15 | export default Header;
--------------------------------------------------------------------------------
/src/media-store/inverted-dice-2.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/led.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/omega.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/concentration-orb.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/panzerfaust.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/pistol-gun.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/siren.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/sprint.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/tron-arrow.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/wooden-fence.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/bolter-gun.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/chained-arrow-heads.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/chess-bishop.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/double-face-mask.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/guillotine.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/jet-pack.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/crossed-slashes.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/podium-winner.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/shiny-entrance.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/south-africa.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/corporal.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/energy-sword.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/hedjet-white-crown.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/podium-second.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/sharp-shuriken.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/stars-stack.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/yin-yang.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/backward-time.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/spanner.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/striking-splinter.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/belgium.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/box-trap.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/imbricated-arrows.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/planet-core.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/static-guard.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/striking-arrows.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/union-jack.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/alligator-clip.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/bookshelf.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/ent-mouth.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/poison-cloud.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/slicing-arrow.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/thermometer-scale.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/crosshair.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/folded-paper.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/laser-gun.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/podium-third.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/cardboard-box.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/cracked-shield.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/f1-car.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/stahlhelm.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/airtight-hatch.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/amethyst.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/divert.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/joystick.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/rock.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/sly.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/south-america.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/stone-bridge.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/talk.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/flake.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/lips.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/mirror-mirror.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/pillow.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/scythe.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/shard-sword.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/lob-arrow.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/tap.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/cracked-disc.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/crucifix.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/falling-rocks.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/level-four.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/defensive-wall.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/film-projector.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/moon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/select.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/hill-conquest.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/return-arrow.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/spiked-tail.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/black-flag.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/closed-doors.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/level-three.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/metal-bar.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/sand-snake.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/allied-star.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/lift.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/actions/combat.js:
--------------------------------------------------------------------------------
1 |
2 |
3 | export const addCombatEntity = (entity) => {
4 | entity.hp = entity.hit_points;
5 | return ({
6 | type: 'ADD_COMBAT_ENTITY',
7 | entity
8 | });
9 | }
10 |
11 | export const removeCombatEntity = (uid) => {
12 | return ({
13 | type: 'REMOVE_COMBAT_ENTITY',
14 | uid
15 | });
16 | }
17 |
18 | export const updateCombatEntity = (uid, entity) => {
19 | return ({
20 | type: 'UPDATE_COMBAT_ENTITY',
21 | uid, entity
22 | })
23 | }
24 | export const updateAllEntities = (entityList) => {
25 | return ({
26 | type: "UPDATE_ALL_ENTITIES",
27 | entityList
28 | })
29 |
30 | }
--------------------------------------------------------------------------------
/src/media-store/demolish.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/swirled-shell.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/banging-gavel.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/hourglass.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/scalpel-strike.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/shoulder-armor.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/smoking-pipe.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/boot-prints.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/caltrops.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/candlebright.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/croc-sword.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/help.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/inverted-dice-3.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/switzerland.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/media/Human.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/broken-pottery.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/cancel.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/hemp.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/kimono.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/snorkel.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/back-forth.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/checked-shield.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/feathered-wing.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/fuji.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/styles/components/_monsterTracker.scss:
--------------------------------------------------------------------------------
1 | .tracker {
2 | padding: $s-size;
3 | padding-right: $l-size;
4 | }
5 | .monsterTracker {
6 | padding: $s-size;
7 | display: flex;
8 | flex-wrap: wrap;
9 | }
10 | .monsterTracker__Card {
11 | button {
12 | float: right;
13 | }
14 | }
15 | .monsterTracker__Card__ToggleView {
16 | display: none;
17 | }
18 | .monsterTracker__Card:hover {
19 | .monsterTracker__Card__ToggleView {
20 | display:block;
21 | }
22 | }
23 |
24 | .monsterTracker__Card__HP {
25 | display: flex;
26 | padding: $m-size;
27 | justify-content: space-around;
28 | h1 {
29 | text-align: center;
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/src/media-store/halt.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/lightning-helix.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/thorny-tentacle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/walkie-talkie.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/wavy-itinerary.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/wooden-sign.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/flat-hammer.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/id-card.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/joint.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/stone-block.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/styles/components/_createRaces.scss:
--------------------------------------------------------------------------------
1 | .races{
2 | display: flex;
3 | flex-wrap: wrap;
4 | width: 55%;
5 | height: 45%;
6 | }
7 | .races__raceCard {
8 | h2 {
9 | display: inline;
10 | }
11 | flex-grow: 1;
12 | }
13 | .races__raceCard--preview {
14 | width: 20rem;
15 | height: 8rem;
16 | }
17 | .races__raceCard--full {
18 | padding-top: $l-size;
19 | h1 {
20 | font-size: 5rem;
21 | display: inline;
22 | }
23 | }
24 | .races__raceCard--preview:hover {
25 | box-shadow: 0 0 2.5em darken($paper, 30%);
26 | cursor: pointer;
27 | }
28 | .races__raceCard__icon {
29 | width: 6rem;
30 | margin-right: 2rem;
31 | filter: invert(80%);
32 | }
--------------------------------------------------------------------------------
/src/media-store/fire-axe.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/painted-pottery.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/sea-creature.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/spinning-ribbons.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/stiletto.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/wide-arrow-dunk.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/capitol.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/detour.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/evil-hand.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/peaks.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/target-laser.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/clout.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/info.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/padlock.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/wind-slap.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/arc-triomphe.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/grim-reaper.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/italia.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/stone-throne.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/stone-tower.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/air-zigzag.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/src/media-store/bus.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/high-shot.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/hills.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/mexico.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/orb-direction.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/trousers.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/warlock-eye.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/floating-crystal.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/screen-impact.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/solar-power.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/styles/components/_diceRoller.scss:
--------------------------------------------------------------------------------
1 | .dice {
2 | padding: $s-size;
3 | position: fixed;
4 | right: 0px;
5 | bottom: 0px;
6 | z-index: 1;
7 | }
8 | .diceRoller {
9 | display: flex;
10 | justify-content: flex-start;
11 | }
12 |
13 | .diceRoller__buttons {
14 | display: flex;
15 | flex-direction: column;
16 | button {
17 | padding: $m-size;
18 | width: 6rem;
19 | }
20 | }
21 |
22 | .diceRoller__history {
23 | background: $background;
24 | width: 15rem;
25 | p {
26 | color: white;
27 | font-size: $m-size;
28 | text-align: center;
29 | margin: 0;
30 | padding: $s-size;
31 | }
32 | p:last-child {
33 | background: lighten($background, 20%);
34 | }
35 | }
--------------------------------------------------------------------------------
/src/media-store/blast.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/media-store/drill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/evil-eyes.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/sound-waves.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/thunder-struck.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/anvil-impact.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/click.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/media-store/hell-crosses.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------