Advertisement
Guest User

Untitled

a guest
Jul 20th, 2017
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.47 KB | None | 0 0
  1. import { Injectable } from '@angular/core';
  2. import { CardService } from '../card/card.service';
  3. import { PlayerService } from '../player/player.service';
  4. import { Constants } from '../constants';
  5. import { CoolLocalStorage } from 'angular2-cool-storage';
  6.  
  7. import _ from "lodash";
  8.  
  9. @Injectable()
  10. export class GameService {
  11. constructor(private cardService: CardService,
  12. private playerService: PlayerService,
  13. private localStorage: CoolLocalStorage){}
  14.  
  15. passCards(players, cards): void {
  16. players.forEach((player) => {
  17. cards = this.cardService.filterCards(cards, 'in-the-desk')
  18. player.cards = player.cards.concat(_.sampleSize(cards, Constants.cardsOnHands-player.cards.length))
  19. this.playerService.update(player);
  20. player.cards.forEach((card) => {
  21. card.status = 'on-hands';
  22. card.userId = player.id;
  23. this.cardService.update(card)
  24. })
  25. })
  26. }
  27.  
  28. next = (myArray, item, itemName) => {
  29. let player;
  30. if (_.last(myArray) == item){
  31. player = _.first(myArray)
  32. }else {
  33. player = _.find(myArray, {id: item.id + 1})
  34. }
  35. this.setSomethToLs(player.id, itemName);
  36. return player;
  37. }
  38.  
  39. panelName = (panel, leftPanel, rightPanel) => {
  40. if (panel == leftPanel) return 'leftPanel';
  41. if (panel == rightPanel) return 'rightPanel';
  42. }
  43.  
  44. setSomethToLs = (id, fieldName) => {
  45. this.localStorage.setItem(fieldName, id)
  46. }
  47.  
  48. clearAll(): void {
  49. this.localStorage.clear();
  50. location.reload()
  51. }
  52.  
  53. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement