6hundred9.RockPaperScissors 2.1.0

dotnet add package 6hundred9.RockPaperScissors --version 2.1.0                
NuGet\Install-Package 6hundred9.RockPaperScissors -Version 2.1.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="6hundred9.RockPaperScissors" Version="2.1.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add 6hundred9.RockPaperScissors --version 2.1.0                
#r "nuget: 6hundred9.RockPaperScissors, 2.1.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install 6hundred9.RockPaperScissors as a Cake Addin
#addin nuget:?package=6hundred9.RockPaperScissors&version=2.1.0

// Install 6hundred9.RockPaperScissors as a Cake Tool
#tool nuget:?package=6hundred9.RockPaperScissors&version=2.1.0                

Rock-Paper-Scissors-Library

A Simple NuGet library for rock paper scissors

Documentation

Choice Enums

The Choice Enums are used for what each player chooses

State Enums

The State Enums are used to determine if player 1 lost, won, or finished with a draw

Play Method

Definition 1: public static State Play(Choice player1, Choice player2)

Arguements:

  • Player 1: The input of player 1

  • Player 2: The input of player 2

  • Returns: Which player won or if it was a draw from these

Definition 2: public static State Play(int player1, int player2)

Arguments:

  • Player 1: The integer of player 1 (Rock = 0, Paper = 1, Scissors = 2)
  • Player 2: The integer of player 2 (Rock = 0, Paper = 1, Scissors = 2)

Returns: Which player won or if it was a draw from these

ChooseRandom Method

Definition:public static Choice ChooseRandom()

Arguments: None

Returns: A random choice

IntToChoice Method

Definition:public static Choice IntToChoice(int choice)

Arguments: An integer

Returns: The choice

ChoiceToInt Method

Definition: public static int ChoiceToInt(Choice choice)

Arguments: A choice

Returns: The integer of the choice

Main Method

Definition: public static List<object> Main(Choice? player1, Choice? player2, bool player1IsHuman = true, bool player2IsHuman = false)

Arguements:

  • player1: What the choice of player 1 was, not used if player1IsHuman is false, random if null.
  • player2: What the choice of player 2 was, not used if player2IsHuman is false, random if null
  • player1IsHuman: Whether player 1 input will be randomized or not
  • player2IsHuman: Whether player 2 input will be randomized or not

Returns:

  • Element 0: Player 1 score
  • Element 1: Player 2 score
  • Element 2: Player 1 choice
  • Element 3: Player 2 choice
  • Element 4: State (Player 1 win, player 2 win, draw)

Extension Methods

Random Extensions

NextEnum Method

Definition: public static T NextEnum<T>(this Random random) Arguments: Random Extension Returns: A random enum value

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net8.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
2.1.0 85 6/8/2024
2.0.0 78 6/7/2024
1.4.1 82 6/6/2024
1.3.0 68 6/6/2024
1.2.0 73 6/6/2024
1.1.0 82 6/6/2024

Small bugfix (removed the loops arguement from the main method)
Updated documentation