Giter Site home page Giter Site logo

fields-of-arle's People

Contributors

depfu[bot] avatar o-mutt avatar philihp avatar renovate-bot avatar rubenroy avatar stefan-hanke avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

fields-of-arle's Issues

Implement function for sheering in spring

If you're into functional programming, this task represents a fun task/puzzle.

Implement sheering here:

const sheering = player => {
// TODO
if (!player) return null
return player
}

Given a player object, return a new player object with baby animals in it, given by the following rule:

  • If the player has 1-3 sheep, get 1 wool
  • If the player has 4-5 sheep, get 2 wool
  • If the player has 6+ sheep, get 3 wool

Further clarification in page 8 of the rules: https://boardgamegeek.com/filepage/107460/fields-arle-rulebook

If you'd like to write a test suite for this, export the function and put the test in ./__tests__/endOfRound.test.js

Implement Buildings: build payment

Issue to serve as a checklist for implementing the buildings.

Implement how to pay

workshops

  • farmersHouse
  • plowMakersWorkshop
  • novicesHut
  • workshop

minorCraftBuildings

  • turnery
  • smokehouse

majorCraftBuildings

  • mill
  • weavingMill
  • textileHouse
  • saddlery
  • joinery
  • waterfrontHouse

innTiles

  • pottersInn
  • farmersInn
  • junkDealersInn

largeBuildings

  • villageChurch
  • lutetsburgCastle
  • berumCastle

Implement later

smallHouses

  • weavingParlor
  • colonistsHouse
  • carpentersWorkshop
  • schnappsDistillery
  • loadingStation
  • litterStorage
  • woodTrader

minorCraftBuildings

  • turnery
  • smokehouse
  • smithy
  • cooperage
  • bakehouse

innTiles

  • gulfHouseInn
  • milkHouseInn
  • sluiceYardInn

Command that runs tests is borked

Tests are busted. I think it happened when I did an eject of create react app. Would be nice to be able to write some tests again.


> [email protected] test /Users/philihp/work/fields-of-arle
> node scripts/test.js --env=jsdom

2018-10-22 22:57 node[60182] (FSEvents.framework) FSEventStreamStart: register_with_server: ERROR: f2d_register_rpc() => (null) (-22)
2018-10-22 22:57 node[60182] (FSEvents.framework) FSEventStreamStart: register_with_server: ERROR: f2d_register_rpc() => (null) (-22)
2018-10-22 22:57 node[60182] (FSEvents.framework) FSEventStreamStart: register_with_server: ERROR: f2d_register_rpc() => (null) (-22)
events.js:183
      throw er; // Unhandled 'error' event
      ^

Error: Error watching file for changes: EMFILE
    at FSEvent.FSWatcher._handle.onchange (fs.js:1359:9)
npm ERR! Test failed.  See above for more details.

Action for Imitate should be disabled if < 2 food

Good bug for someone getting their feet wet:

The Imitate action consumes 2 food from the current player. As such, the current player should not be allowed to take this action if they don't have 2 food. This issue has two parts:

First, the Laborer job should not do anything if the client attempts to try to do it without 2 food. Currently it just takes 2 food away and allows the player to go negative. https://github.com/philihp/fields-of-arle/blob/master/src/game/jobs/laborer.js

Second, on the Action component, disable the buttons if they have less than 2 food. A good starting place is right here:
https://github.com/philihp/fields-of-arle/blob/master/src/components/actionsBoard.js#L355-L370

Best to satisfy the first requirement first, since the second will make it difficult to test the first.

Implement Buildings: build action

Checklist for each of the buildings - do a thing when it's built

workshops

  • farmersHouse
  • plowMakersWorkshop
  • novicesHut
  • workshop

minorCraftBuildings

  • turnery
  • smokehouse

majorCraftBuildings

  • mill
  • weavingMill
  • textileHouse
  • saddlery
  • joinery
  • waterfrontHouse

innTiles

  • pottersInn
  • farmersInn
  • junkDealersInn

largeBuildings

  • villageChurch
  • lutetsburgCastle
  • berumCastle

Defer to after launch

smallHouses

  • weavingParlor
  • colonistsHouse
  • carpentersWorkshop
  • schnappsDistillery
  • loadingStation
  • litterStorage
  • woodTrader

minorCraftBuildings

  • turnery
  • smokehouse
  • smithy
  • cooperage
  • bakehouse

innTiles

  • gulfHouseInn
  • milkHouseInn
  • sluiceYardInn

Needs a web designer

I'm really really looking for a good web designer for this. If you'd simply like to play around with CSS and make something that looks good, I would happily welcome a PR.

You would not be able to use copyrighted artwork from the actual game itself, but maybe something that looks like the aesthetic of the original? https://boardgamegeek.com/boardgame/159675/fields-arle

Warden on a moor should put peat on it

Right now a Warden can flip a moor tile, but the drained moor doesn't have any peat on it so it never can be cut and cleared

Also a Warden shouldn't be able to flip a dMoor tile

Implement function for animal breeding in spring

If you're into functional programming, this task represents a fun task/puzzle.

Implement babyAnimals here:

const babyAnimals = player => {
// TODO
if (!player) return null
return player
}

Given a player object, return a new player object with baby animals in it, given by the following rule:

Each spring (May), animals will breed.

  • In each stall with exactly 2 animals of the same type, add a 3rd animal
  • In each stable with 2, 3, or 5 animals of the same type, add another animal; if the stable had 4 animals of the same type, add 2 more animals.
  • In double-stalls are basically two stalls.
    • if there are 2 animals of the same type, add a 3rd.
    • if there are 3 animals, and at least 2 are the same type, add another of that type.
    • if there are 4 animals, 2 of 2 types, add a 5th of the first type and a 6th of the second.
    • if there are 5 animals, 2 of first type, and 3 of another type, add a 6th of the first type.

Further clarification in page 8 of the rules: https://boardgamegeek.com/filepage/107460/fields-arle-rulebook

If you'd like to write a test suite for this, export the function and put the test in ./__tests__/endOfRound.test.js

Limit max food to 30

Followup to #60, player should be able to get up to 30 food, rather than 15 as with all the other goods.

Player should be able to be something like

{
  "goods": {
    "food": 23,
    "wool": 10,
    "grain": 15,
    "flax": 4,
  }
}

Upgrade to Webpack 4

Update the Webpack dependency to Webpack 4.

This will probably require some config changes to ensure the game still loads. At a minimum, it should still:

  • Start for development with npm run start
  • Build for production with npm run build

Recommend Projects

  • React photo React

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

  • Vue.js photo Vue.js

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

  • Typescript photo Typescript

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

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

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

Recommend Topics

  • javascript

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

  • web

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

  • server

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

  • Machine learning

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

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

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

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

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

  • D3 photo D3

    Data-Driven Documents codes.