File

src/app/core/models/game.model.ts

Constructor

constructor(host_id: number, survey_id: number, type: GameType, state: GameState, point_type: PointsType, are_questions_visible: boolean, course_id: number)

Properties

are_questions_visible
are_questions_visible: boolean
Default value: false
course
course: Course
course_id
course_id: number
Default value: 0
created_at
created_at: string
host_id
host_id: number
Default value: 0
id
id: number
point_type
point_type: PointsType
state
state: GameState
survey
survey: Survey
survey_id
survey_id: number
Default value: 0
type
type: GameType
user
user: User
import { Course } from "./course.model";
import { Question } from "./question.model";
import { Survey } from "./survey.model";
import { User, UserResult } from "./user.model";


export class Game {

    constructor(host_id: number, survey_id: number, type: GameType, state: GameState, point_type: PointsType, are_questions_visible: boolean, course_id: number) {
        this.survey_id = survey_id;
        this.host_id = host_id;
        this.type = type;
        this.state = state;
        this.are_questions_visible = are_questions_visible;
        this.point_type = point_type;
        this.course_id = course_id
    }

    id? :number;
    host_id: number = 0;
    survey_id: number = 0;
    type: GameType = GameType.online;
    state: GameState = GameState.created;
    are_questions_visible: boolean = false;
    point_type: PointsType = PointsType.standard;
    course_id: number = 0;
    course?: Course;
    user?: User;
    survey?: Survey;
    created_at?: string;
}

export enum GameType {
    offline = 'offline',
    online = 'online'
}

export enum GameState {
    created = 'created',
    started = 'started',
    closed = 'closed'
}

export enum PointsType {
    standard = 'standard',
    double = 'double',
    no_points = 'no_points'
}

export interface GameSession {
    game: Game;
    users: User[];
    state: GameSessionState;
    question_list: Question[];
    question_index: number;
    user_results: UserResult[];
}

export enum GameSessionState {
    not_started,
    is_leaderboard_screen,
    is_preview_screen,
    is_question_screen,
    is_question_result,
    is_finished
}

results matching ""

    No results matching ""