Coder Social home page Coder Social logo

jbt's People

Contributors

liamoxley avatar mart500 avatar mikeywalsh avatar robinstephenson avatar tc975 avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

jbt's Issues

Refactor Roboticon Customisation, Tile and Roboticon

Fix roboticoncustomisation, it will not work with null as a parameter for prior customizations. Instead we should have a base customization that all new roboticons have that just have their multipliers set to x1, this is required for roboticons to function correctly anyway, since we go off their customization when calculating production returns for tiles. The base customization should be a static member of the roboticoncustomisation class.
MikeyWalsh

Market errors could be more discriptive

For an example, in the buy method we throw an ArgumentOutOfRangeException both for an error to do with stock and if the user hasn't got enough money. The exceptions would be more descriptive if we had a NotEnoughMoneyException, and a NotEnoughStockException. This also means anyone using the buy method can know why the exception happened which at the moment they cant very easily.
The NotEnoughMoneyException will also be useful in any other classes where players might be buying

Create a market method which returns the maximum quantity the market will buy of an item

implement Market.MaxWillBuy(ItemType) which should return the maximum quantity the shop will buy of an item. It should take into account how much money the market has, the market not wanting to own too much of an item (this doesnt have to be perfect, it could just be something like wont buy more than a constant in a round).
Return the min of the two above.

Display a minimal map

A limited map that is subdivided into plots. Bare in mind that we may have to change the number of plots later on.
There is no need to make the map pretty or show any landmarks.

Create the turn controller

The turn controller is in charge of controlling the phases of each turn eg whether the market is open whether tiles can be bought

Create a RoboticonFactory

A method for producing for the market based on its inventory.
Method for players to buy roboticons for a fee
Method for players to customise roboticons for a fee.
Should throw an error if player interactions happen in the wrong phase

Artwork

Tile art (one for each player and a neutral), sprite for roboticon, ore and energy image

Start of game menu

Create a minimal menu which allows the player to start a game.
This is mostly a placeholder for later assessments when there will have to be more than just a play button, for example choosing whether they want a computer or two players.

ItemType not found in namespace

I think when we moved ItemType into its own file but in the tests folder the actual inventory class cant find it. Can we move it in with the rest of the code and is there a way we can get the tests to reference it from there without having to have 2 copies of the same file?

Check documentation is up to date before submission

Just read through documentation and check that documentation matches implementation. Check names match parameters in methods etc, check the return is still correct and so on.

! Start this only when coding is finished !

Finishing up tile-player-robo

Tidying and finishing classes in tile-player-robo, now that all 3 people have had their pull requests confirmed. Todo list includes:

  1. Remove sprites folder, as it is unnessessary
  2. Remove TilesGridTest scene
  3. Add an ID field to AbstractPlayer, and make it work with the CreateTile test in TileTest
  4. Finish ProduceTest in TileTest, and add any tests you deem appropriate
  5. Fix roboticoncustomisation, it will not work with null as a parameter for prior customizations. Instead we should have a base customization that all new roboticons have that just have their multipliers set to x1, this is required for roboticons to function correctly anyway, since we go off their customization when calculating production returns for tiles. The base customization should be a static member of the roboticoncustomisation class.
  6. Fix SuccessfulAddCustomisation in RoboticonTest and add any new tests if you can think of any.
  7. Fix FinishUnstartedTest in TimeoutTest

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.