Loading src/app/game/game.component.ts +2 −5 Original line number Original line Diff line number Diff line Loading @@ -15,7 +15,6 @@ import {environment} from '../../environments/environment'; export class GameComponent implements OnInit { export class GameComponent implements OnInit { socket: any; socket: any; init = true; sessionName = ''; sessionName = ''; isWatchdog = false; isWatchdog = false; isExplainer = false; isExplainer = false; Loading Loading @@ -65,7 +64,7 @@ export class GameComponent implements OnInit { this.fillGamestatus(); this.fillGamestatus(); this.team = String(params.get('team')); this.team = String(params.get('team')); this.socket = io(environment.tabuServerURL); this.socket = io(environment.tabuServerURL); this.listen() this.listen(); }); }); this.startTimer(); this.startTimer(); } } Loading @@ -80,9 +79,6 @@ export class GameComponent implements OnInit { this.socket.on(this.sessionName + ':endRound', (data: any) => { this.socket.on(this.sessionName + ':endRound', (data: any) => { console.log('GAME: ', data); console.log('GAME: ', data); if (JSON.parse(data)) { if (JSON.parse(data)) { if (this.init) { this.init = false; } console.log('GAME END: ', data); console.log('GAME END: ', data); this.socket.disconnect(); this.socket.disconnect(); this.router.navigate([this.sessionName + '/' + this.team]); this.router.navigate([this.sessionName + '/' + this.team]); Loading @@ -91,6 +87,7 @@ export class GameComponent implements OnInit { } } onTimesUp(): void{ onTimesUp(): void{ this.socket.disconnect() this.router.navigate([this.sessionName + '/' + this.team]); this.router.navigate([this.sessionName + '/' + this.team]); } } Loading src/app/guesser/guesser.component.ts +36 −11 Original line number Original line Diff line number Diff line Loading @@ -2,12 +2,15 @@ import { Component, OnInit } from '@angular/core'; import {TabuMiddlewareService} from '../dao/TabuMiddlewareService'; import {TabuMiddlewareService} from '../dao/TabuMiddlewareService'; import {GameStatus} from '../interface/gameStatus'; import {GameStatus} from '../interface/gameStatus'; import {ActivatedRoute, Router} from '@angular/router'; import {ActivatedRoute, Router} from '@angular/router'; import {io} from 'socket.io-client'; import {environment} from '../../environments/environment'; @Component({ @Component({ selector: 'app-guesser', selector: 'app-guesser', templateUrl: './guesser.component.html', templateUrl: './guesser.component.html', styleUrls: ['./guesser.component.scss'] styleUrls: ['./guesser.component.scss'] }) }) export class GuesserComponent implements OnInit { export class GuesserComponent implements OnInit { socket: any; sessionName = ''; sessionName = ''; TIME_LIMIT = 100; TIME_LIMIT = 100; timePassed = 0; timePassed = 0; Loading @@ -30,23 +33,31 @@ export class GuesserComponent implements OnInit { this.activatedRoute.paramMap.subscribe(params => { this.activatedRoute.paramMap.subscribe(params => { this.sessionName = String(params.get('sessionName')); this.sessionName = String(params.get('sessionName')); this.team = String(params.get('team')); this.team = String(params.get('team')); this.service.getGamestatus({spielname: this.sessionName}).then(value => { this.fillGamestatus(); const status = JSON.parse(value.status); this.socket = io(environment.tabuServerURL); if (status) { this.listen(); this.gameStatus.sessionID = JSON.parse(value.sessionID); }); this.gameStatus.red = JSON.parse(value.red); this.startTimer(); this.gameStatus.blue = JSON.parse(value.blue); this.gameStatus.redTurn = JSON.parse(value.redTurn); this.gameStatus.activeExplainer = JSON.parse(value.activeExplainer); this.gameStatus.activeWatchdog = JSON.parse(value.activeWatchdog); } } console.log(this.gameStatus); listen(): any { this.socket.on(this.sessionName + ':newCard', (data: any) => { this.service.getCard({cardID: data}).then(value => { this.fillGamestatus(); }); }); }); }); this.startTimer(); this.socket.on(this.sessionName + ':endRound', (data: any) => { console.log('GAME: ', data); if (JSON.parse(data)) { console.log('GAME END: ', data); this.socket.disconnect(); this.router.navigate([this.sessionName + '/' + this.team]); } }); } } onTimesUp(): void{ onTimesUp(): void{ this.socket.disconnect(); this.router.navigate([this.sessionName + '/' + this.team]); this.router.navigate([this.sessionName + '/' + this.team]); } } Loading @@ -65,4 +76,18 @@ export class GuesserComponent implements OnInit { this.timeRemaining = this.timeRemaining -= 1; this.timeRemaining = this.timeRemaining -= 1; }, 1000); }, 1000); } } fillGamestatus(): void { this.service.getGamestatus({spielname: this.sessionName}).then(value => { const status = JSON.parse(value.status); if (status) { this.gameStatus.sessionID = JSON.parse(value.sessionID); this.gameStatus.red = JSON.parse(value.red); this.gameStatus.blue = JSON.parse(value.blue); this.gameStatus.redTurn = JSON.parse(value.redTurn); this.gameStatus.activeExplainer = JSON.parse(value.activeExplainer); this.gameStatus.activeWatchdog = JSON.parse(value.activeWatchdog); } }); } } } src/app/overview/overview.component.ts +5 −2 Original line number Original line Diff line number Diff line Loading @@ -56,6 +56,7 @@ export class OverviewComponent implements OnInit { this.membership = 'Wähle dein Team'; this.membership = 'Wähle dein Team'; } } else { else { this.socket.disconnect(); this.router.navigate(['error']); this.router.navigate(['error']); return; return; } } Loading @@ -71,12 +72,12 @@ export class OverviewComponent implements OnInit { console.log('OVERVIEW: ', data); console.log('OVERVIEW: ', data); if (((this.team === 'red' && this.nextTeam === 'Rot') || (this.team === 'blue' && this.nextTeam === 'Blau')) if (((this.team === 'red' && this.nextTeam === 'Rot') || (this.team === 'blue' && this.nextTeam === 'Blau')) && !this.wantToBeExplainer) { && !this.wantToBeExplainer) { this.socket.disconnect(); console.log('OVERVIEW GO GUESSER: ', data); console.log('OVERVIEW GO GUESSER: ', data); this.socket.disconnect(); this.router.navigate([this.sessionName + '/' + this.team + '/guesser']); this.router.navigate([this.sessionName + '/' + this.team + '/guesser']); } else if ((this.team === 'red' || this.team === 'blue') && !this.wantToBeExplainer) { } else if ((this.team === 'red' || this.team === 'blue') && !this.wantToBeExplainer) { this.socket.disconnect(); console.log('OVERVIEW GO WATCHDOG: ', data); console.log('OVERVIEW GO WATCHDOG: ', data); this.socket.disconnect(); this.router.navigate([this.sessionName + '/' + this.team + '/watchdog']); this.router.navigate([this.sessionName + '/' + this.team + '/watchdog']); } } } } Loading @@ -97,11 +98,13 @@ export class OverviewComponent implements OnInit { nextRound(): void { nextRound(): void { this.wantToBeExplainer = true; this.wantToBeExplainer = true; this.service.newRound({spielname: this.sessionName}); this.service.newRound({spielname: this.sessionName}); this.socket.disconnect() this.router.navigate([this.router.url + '/explainer']); this.router.navigate([this.router.url + '/explainer']); } } joinTeam(team: string): void { joinTeam(team: string): void { this.team = team; this.team = team; this.socket.disconnect() this.router.navigate([this.sessionName + '/' + team]); this.router.navigate([this.sessionName + '/' + team]); } } Loading src/environments/environment.ts +2 −2 Original line number Original line Diff line number Diff line Loading @@ -4,8 +4,8 @@ export const environment = { export const environment = { production: false, production: false, //tabuMiddlewareURL: 'http://localhost:8080/', tabuMiddlewareURL: 'http://localhost:8080/', tabuMiddlewareURL: 'http://tabu-middleware.willers.digital/', //tabuMiddlewareURL: 'http://tabu-middleware.willers.digital/', tabuServerURL: 'http://localhost:3000/' tabuServerURL: 'http://localhost:3000/' //tabuServerURL: 'ws://tabu-server.willers.digital' //tabuServerURL: 'ws://tabu-server.willers.digital' }; }; Loading Loading
src/app/game/game.component.ts +2 −5 Original line number Original line Diff line number Diff line Loading @@ -15,7 +15,6 @@ import {environment} from '../../environments/environment'; export class GameComponent implements OnInit { export class GameComponent implements OnInit { socket: any; socket: any; init = true; sessionName = ''; sessionName = ''; isWatchdog = false; isWatchdog = false; isExplainer = false; isExplainer = false; Loading Loading @@ -65,7 +64,7 @@ export class GameComponent implements OnInit { this.fillGamestatus(); this.fillGamestatus(); this.team = String(params.get('team')); this.team = String(params.get('team')); this.socket = io(environment.tabuServerURL); this.socket = io(environment.tabuServerURL); this.listen() this.listen(); }); }); this.startTimer(); this.startTimer(); } } Loading @@ -80,9 +79,6 @@ export class GameComponent implements OnInit { this.socket.on(this.sessionName + ':endRound', (data: any) => { this.socket.on(this.sessionName + ':endRound', (data: any) => { console.log('GAME: ', data); console.log('GAME: ', data); if (JSON.parse(data)) { if (JSON.parse(data)) { if (this.init) { this.init = false; } console.log('GAME END: ', data); console.log('GAME END: ', data); this.socket.disconnect(); this.socket.disconnect(); this.router.navigate([this.sessionName + '/' + this.team]); this.router.navigate([this.sessionName + '/' + this.team]); Loading @@ -91,6 +87,7 @@ export class GameComponent implements OnInit { } } onTimesUp(): void{ onTimesUp(): void{ this.socket.disconnect() this.router.navigate([this.sessionName + '/' + this.team]); this.router.navigate([this.sessionName + '/' + this.team]); } } Loading
src/app/guesser/guesser.component.ts +36 −11 Original line number Original line Diff line number Diff line Loading @@ -2,12 +2,15 @@ import { Component, OnInit } from '@angular/core'; import {TabuMiddlewareService} from '../dao/TabuMiddlewareService'; import {TabuMiddlewareService} from '../dao/TabuMiddlewareService'; import {GameStatus} from '../interface/gameStatus'; import {GameStatus} from '../interface/gameStatus'; import {ActivatedRoute, Router} from '@angular/router'; import {ActivatedRoute, Router} from '@angular/router'; import {io} from 'socket.io-client'; import {environment} from '../../environments/environment'; @Component({ @Component({ selector: 'app-guesser', selector: 'app-guesser', templateUrl: './guesser.component.html', templateUrl: './guesser.component.html', styleUrls: ['./guesser.component.scss'] styleUrls: ['./guesser.component.scss'] }) }) export class GuesserComponent implements OnInit { export class GuesserComponent implements OnInit { socket: any; sessionName = ''; sessionName = ''; TIME_LIMIT = 100; TIME_LIMIT = 100; timePassed = 0; timePassed = 0; Loading @@ -30,23 +33,31 @@ export class GuesserComponent implements OnInit { this.activatedRoute.paramMap.subscribe(params => { this.activatedRoute.paramMap.subscribe(params => { this.sessionName = String(params.get('sessionName')); this.sessionName = String(params.get('sessionName')); this.team = String(params.get('team')); this.team = String(params.get('team')); this.service.getGamestatus({spielname: this.sessionName}).then(value => { this.fillGamestatus(); const status = JSON.parse(value.status); this.socket = io(environment.tabuServerURL); if (status) { this.listen(); this.gameStatus.sessionID = JSON.parse(value.sessionID); }); this.gameStatus.red = JSON.parse(value.red); this.startTimer(); this.gameStatus.blue = JSON.parse(value.blue); this.gameStatus.redTurn = JSON.parse(value.redTurn); this.gameStatus.activeExplainer = JSON.parse(value.activeExplainer); this.gameStatus.activeWatchdog = JSON.parse(value.activeWatchdog); } } console.log(this.gameStatus); listen(): any { this.socket.on(this.sessionName + ':newCard', (data: any) => { this.service.getCard({cardID: data}).then(value => { this.fillGamestatus(); }); }); }); }); this.startTimer(); this.socket.on(this.sessionName + ':endRound', (data: any) => { console.log('GAME: ', data); if (JSON.parse(data)) { console.log('GAME END: ', data); this.socket.disconnect(); this.router.navigate([this.sessionName + '/' + this.team]); } }); } } onTimesUp(): void{ onTimesUp(): void{ this.socket.disconnect(); this.router.navigate([this.sessionName + '/' + this.team]); this.router.navigate([this.sessionName + '/' + this.team]); } } Loading @@ -65,4 +76,18 @@ export class GuesserComponent implements OnInit { this.timeRemaining = this.timeRemaining -= 1; this.timeRemaining = this.timeRemaining -= 1; }, 1000); }, 1000); } } fillGamestatus(): void { this.service.getGamestatus({spielname: this.sessionName}).then(value => { const status = JSON.parse(value.status); if (status) { this.gameStatus.sessionID = JSON.parse(value.sessionID); this.gameStatus.red = JSON.parse(value.red); this.gameStatus.blue = JSON.parse(value.blue); this.gameStatus.redTurn = JSON.parse(value.redTurn); this.gameStatus.activeExplainer = JSON.parse(value.activeExplainer); this.gameStatus.activeWatchdog = JSON.parse(value.activeWatchdog); } }); } } }
src/app/overview/overview.component.ts +5 −2 Original line number Original line Diff line number Diff line Loading @@ -56,6 +56,7 @@ export class OverviewComponent implements OnInit { this.membership = 'Wähle dein Team'; this.membership = 'Wähle dein Team'; } } else { else { this.socket.disconnect(); this.router.navigate(['error']); this.router.navigate(['error']); return; return; } } Loading @@ -71,12 +72,12 @@ export class OverviewComponent implements OnInit { console.log('OVERVIEW: ', data); console.log('OVERVIEW: ', data); if (((this.team === 'red' && this.nextTeam === 'Rot') || (this.team === 'blue' && this.nextTeam === 'Blau')) if (((this.team === 'red' && this.nextTeam === 'Rot') || (this.team === 'blue' && this.nextTeam === 'Blau')) && !this.wantToBeExplainer) { && !this.wantToBeExplainer) { this.socket.disconnect(); console.log('OVERVIEW GO GUESSER: ', data); console.log('OVERVIEW GO GUESSER: ', data); this.socket.disconnect(); this.router.navigate([this.sessionName + '/' + this.team + '/guesser']); this.router.navigate([this.sessionName + '/' + this.team + '/guesser']); } else if ((this.team === 'red' || this.team === 'blue') && !this.wantToBeExplainer) { } else if ((this.team === 'red' || this.team === 'blue') && !this.wantToBeExplainer) { this.socket.disconnect(); console.log('OVERVIEW GO WATCHDOG: ', data); console.log('OVERVIEW GO WATCHDOG: ', data); this.socket.disconnect(); this.router.navigate([this.sessionName + '/' + this.team + '/watchdog']); this.router.navigate([this.sessionName + '/' + this.team + '/watchdog']); } } } } Loading @@ -97,11 +98,13 @@ export class OverviewComponent implements OnInit { nextRound(): void { nextRound(): void { this.wantToBeExplainer = true; this.wantToBeExplainer = true; this.service.newRound({spielname: this.sessionName}); this.service.newRound({spielname: this.sessionName}); this.socket.disconnect() this.router.navigate([this.router.url + '/explainer']); this.router.navigate([this.router.url + '/explainer']); } } joinTeam(team: string): void { joinTeam(team: string): void { this.team = team; this.team = team; this.socket.disconnect() this.router.navigate([this.sessionName + '/' + team]); this.router.navigate([this.sessionName + '/' + team]); } } Loading
src/environments/environment.ts +2 −2 Original line number Original line Diff line number Diff line Loading @@ -4,8 +4,8 @@ export const environment = { export const environment = { production: false, production: false, //tabuMiddlewareURL: 'http://localhost:8080/', tabuMiddlewareURL: 'http://localhost:8080/', tabuMiddlewareURL: 'http://tabu-middleware.willers.digital/', //tabuMiddlewareURL: 'http://tabu-middleware.willers.digital/', tabuServerURL: 'http://localhost:3000/' tabuServerURL: 'http://localhost:3000/' //tabuServerURL: 'ws://tabu-server.willers.digital' //tabuServerURL: 'ws://tabu-server.willers.digital' }; }; Loading