Ban mesage

- Create type message could be use to send private message at any user
- Create SendMessageUser message
- Add sound when user receive ban message
This commit is contained in:
Gregoire Parant 2020-10-19 19:32:47 +02:00
parent 88a1e899a3
commit bf9dfcc835
11 changed files with 160 additions and 8 deletions

View file

@ -0,0 +1,36 @@
import {RoomConnection} from "../Connexion/RoomConnection";
import * as TypeMessages from "./TypeMessage";
export interface TypeMessageInterface{
showMessage(message: string) : void;
};
export class UserMessageManager {
typeMessages : Map<string, TypeMessageInterface> = new Map<string, TypeMessageInterface>();
constructor(private Connection: RoomConnection) {
let valueTypeMessageTab = Object.values(TypeMessages);
Object.keys(TypeMessages).forEach((value: string, index: number) => {
let typeMessageInstance : TypeMessageInterface = (new valueTypeMessageTab[index]() as TypeMessageInterface);
this.typeMessages.set(value.toLowerCase(), typeMessageInstance);
});
this.initialise();
}
initialise(){
//receive signal to show message
this.Connection.receiveUserMessage((type: string, message: string) => {
this.showMessage(type, message);
});
}
showMessage(type: string, message: string){
let classTypeMessage = this.typeMessages.get(type.toLowerCase());
if(!classTypeMessage){
console.error('Message unknown');
return;
}
classTypeMessage.showMessage(message);
}
};