1.0.11 • Published 6 years ago

memorytest v1.0.11

Weekly downloads
48
License
-
Repository
-
Last release
6 years ago

BUILD STATUS

Travis: Build Status, Scrutinizer: Build Status

CODE COVERAGE

Scrutinizer: Code Coverage, Coveralls: Coverage Status, Codecov: codecov

CODE QUALITY

Scrutinizer: Scrutinizer Code Quality, Codeclimate: Maintainability, Codeacy: Codacy Badge

Memory Game

exempelbild

A module for educational purposes

This is a test module for educational purposes (PA1442 H17 Lp2 Webbaserade ramverk 2, BTH).

Installation

npm install memorytest

Detta är blott och enbart klasserna för att sätta upp och spela memoryspelet på serversidan.

Den är beroende av modulen ws.


Kod och bilder som måste läggas till

Serversidan lib/Server/memoryserver.js eller memoryserver.js Läggs in i bin/www eller motsvarande.

Klienten lib/Client/memoryclient.js eller memoryclient.js Glöm inte sätta ws host:port i koden i klienten.

connect.addEventListener("click", function() {
    websocket = new WebSocket('ws://host:port/');

Bilder lib/Images/Memorycards eller memorycards Att lägga under public/images/memorycards/ Nuvarnde bildnamn är "alpaca.png", "giraff.png", "monkeys.png", "panda.png", "puppy.png", "ram.png", "wolf.png", "squirrel.png", "fox.png", "bear.png". Vill man ha andra bilder ändras detta i lib/Memory/Memorycard.js och att det finns korresponderande bilder i public/images/memorycards/

Style lib/Style/memory.less eller memory.less Att lägga under public/stylesheet/

HTML lib/Pug/memory.pug eller memory.pug Bara ett skelett som bygger på bootstrap. Måste själv extend layout och lägga till scripts så som memoryclient.js.


Beskrivning av klasserna

Gameboard

Spelbrädet som skickas till spelarna för uppdatering av webbläsaren.

Spelbrädet kan idagsläget enbart skapas med storleken Gameboard(4, 5)

params:

  • width - antalet rutor horisontellt
  • height - antalet rutor vertikalt
  • numOfCards
  • position
  • cardvalue
  • activeplayer
  • gotpair
  • pairpositions
  • pairvalues
  • paircolors

Metoder:

  • getWidth() returns int width
  • getHeight() return int height
  • setWidth(int width)
  • setHeight(int height)
  • setGotPair(gotpair)
  • addPosition(position)
  • addCardValue(cardvalue)
  • addPairPositions(pairposition)
  • addPairValues(cardvalue)
  • addPairColors(colorclass)
  • resetCards() flips all cards
  • setActivePlayer(string player)

Gamebrain

Spelhjärnan som håller koll på regler, vilka spelarna är och vad som bör hända härnäst beroende på vad spelarna gör.

params:

  • colors - string möjliga färger på spelarna. Begränsar antalet spelare.
    • "blackplayer",
    • "redplayer",
    • "blueplayer",
    • "greenplayer",
    • "pinkplayer",
    • "orangeplayer",
    • "yellowplayer",
    • "limegreenplayer",
    • "purpleplayer"
  • usedcolors - string namnen på de färger som används
  • players - string spelomgångens spelares namn
  • playersscore
  • paircheck
  • playerinturnmarker - int markör för spelets turgång
  • playerinturn string namnet på spelaren som är på tur
  • numberofplayermoves - int antalet drag en spelare har gjort under sin tur
  • cardvalues - vända kort

Metoder:

  • addPlayer(string player, string color)
  • makeMove()
  • setCardValue(string player, string colorclass, string cardvalue) - metod för att avgöra om en spelares drag är slut eller inte efter att ha lyft ett kort.
  • setActivePlayer(firstround = false) return string aktiv spelares namn. Metoden anropas med true för första spelrundan och då slumpas en spelare fram som får börja.
  • dropPlayer(string player) - tar bort spelare från spelomgången.
  • setPlayerColor(string player) - return string färg på spelaren. Sätter unik färg på player.
  • uniquifyname(string incomingnickname) - return string unikt spelarnamn. Om någon redan har önskat nickname sätt en siffra bakom nya nicknamet med början på 2. Exemplevis doe och doe2.
  • getPlayersNicks() - return array alla deltagande spelarnas namn
  • getPlayersColors() - return array alla deltagande spelarnas färger
  • gotPair() - return string nopair om det inte var ett par. Annars spelarens som lyfte parets färg.

Memorycard

Innehåller informationen om korten i spelet. Vad för bild som är på och vilken plats kortet ligger på på spelbärdet.

params:

  • cards - Map [string position, string cardvalue,... ]
  • cardvalues - array med namnet på bilderna (string)
  • positions - array med positionerna som (string)
  • numOfCards - int antalet kort

Metoder:

  • getCardValue(position) - return string kortvärde (bildnamn) på viss given position
  • getPairPositions(pairvalue) - return array positionerna för kort med värdet pairvalue
  • isPair(cardone, cardtwo) - return boolean true om korten är ett par. False annars.
  • placeCards(random = true) - placerar korten på brädet. Om man anropar med false blandas inte korten innan.
  • shuffle() - blandar korten.
  • getCardValues() - return array med alla kortens värde (bildnamn)
1.0.11

6 years ago

1.0.10

6 years ago

1.0.9

6 years ago

1.0.8

6 years ago

1.0.7

6 years ago

1.0.6

6 years ago

1.0.5

6 years ago

1.0.4

6 years ago

1.0.3

6 years ago

1.0.2

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago