Giter Site home page Giter Site logo

uno-game-sui's People

Contributors

duedme avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

uno-game-sui's Issues

Fix randomness

The function that creates random cards can only make one only card.
It should be able to make different ones every time it is called.

Big problem while adding players

No player is added to the Game object when using enter_new_player() method in uno.move.

This should not happen as a players are needed to continue testing other game functionalities.

Correct previous tests

Since last upgrade in Sui system, the Scenario object uses the drop ability.
The test_scenario::end() method needs to be used to avoid problems with accidentally dropping the Scenario.

Changes should be done to make this work.

New admin functionalities.

Since game struct is now shared, there is no need to transfer the object when an admin is chosen.

Tasks to do:

  • Erase all admin references in package.
  • Change name of methods that carry an admin.
  • Modify comments so that admin doesn't appear.
  • Erase methods which take functionalities only for admins.
  • Rearrange error flags that reference an admin.

Make some testing on the modules

To prevent further errors while calling code. Some testing must be done.

This issue asks for some testing on uno.move and game_objects.move:

  • game_objects.move
  • uno.move

Implement Option type

Some methods don't return anything and it causes errors.
In order to fix that, the Option type must be implemented.

Let's do that on both game_objects.move and uno.move.

Feedback on project - call 20/09/2022

Would be great to have:

  1. What is UNO?
  2. Warning on this being an experimental code that might change soon.
  3. Missing section on how other people can contribute. See this.
  4. Small section with instructions on how to install Sui.

Feel free to add any feedback @duedme

Create new documentation

The current documentation lacks formality.
It should have a strong form and order to make it understandable to all readers and newcomers.

Three modules to document:

Fix the game so that it works completely with Sui Move.

  • Fix the problem with UID object.
  • Use TxContext instead of signers.
  • Pass objects as arguments instead.
  • Erase borrowing method.
  • Correct ownership problems.
  • Create a special object to emit.
  • Restructure methods like be_the_game_admin_at_start().
  • Set available methods in game.move as entry methods.
  • Erase Place object and locate its elements inside the Game object.
  • Implement getter functions for already used cards.

Correct documentation

Commentaries on param sections in the code should also include the type of each variable.

Create new ways to end the game

Ending a game is now optional.

Some ways it could be done are:

  • freezing the game
  • deleting the game

Implement both ways and a flag in Game object that tells if a game is actually finished.

Limit total number of cards

In order to make the game more realistic, a total number of cards should be named.
The real physical game has 25 cards of each color. A total of 100.
The Sui game should do the same.

Correct nits in Readme file.

Points to correct:

  • Place Warning label on top of the hole repository.
  • Refer to a general issue in Contributing section instead of a particular one.
  • Be clearer in the Instructions section.
  • Correct some English in titles.

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.