Giter VIP home page Giter VIP logo

gem_wordle's Introduction

Wordle

Данный гем предназначен для реализации логики игры Worlde

Installation

Для установки данного гема нужно скачать архив со всеми файлами в репозитории

Далее нужно открыть консоль и перейти в дерикторию данного гема и выполнить команду rake install. После этого гем можно подключать к своим проектам с помощью require "Wordle"

Usage

В данный гем состоит из module Wordle, в котором определены все исключения:

  • class WordleError
  • class WrongAttemptsNumberError < WordleError
  • class WrongLengthError < WordleError
  • class NoMatchInDB < WordleError

и главный класс GameRound.

Для инициализации игры нужно вызвать конструктор GameRound с длиной слова(от 4 до 8) и количеством разрешенных попыток

  game = Wordle::GameRound.new(4,3) #@answer = "date", @attempts = 3

Гем случайным образом выберет слово нужной длины из своей базы данных. Чтобы попытаться угадать слово, нужно вызвать метод guess у данного объекта

  game.guess("meta") 

Данный метод возвращает массив разметки букв:

[[['m', :gray], ['e', :yellow], ['m', :green], ['a', :yellow]], :not_solved]

где

  • :gray - буквы в ответе нет
  • :yellow - буква есть,но она стоит не на своём месте
  • :green - буква стоит на своём месте

Кроме возвращаемого значения, этот метод выводит на коснсоль слово, буквы которого разукрашены в соотвествующие цвета. Например: ${\color{grey}d\color{green}a\color{grey}r\color{yellow}k}$

При подборе правильного слова, также выводится надпись, сообщающая о победе: ${\color{green}YOU \space \color{green}WIN}$,

и при поражении соответственно выводится сообщение о поражении: ${\color{red}YOU \space \color{red}LOSE}$

gem_wordle's People

Contributors

sensej808 avatar sskytt avatar valentinkri avatar

Watchers

 avatar

Forkers

dan11l54

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.