nitro-renderer/packages/room/src/PetColorResult.ts
2024-03-19 21:53:17 -04:00

62 lines
1.6 KiB
TypeScript

import { IPetColorResult } from '@nitrots/api';
export class PetColorResult implements IPetColorResult
{
private static COLOR_TAGS: string[] = ['Null', 'Black', 'White', 'Grey', 'Red', 'Orange', 'Pink', 'Green', 'Lime', 'Blue', 'Light-Blue', 'Dark-Blue', 'Yellow', 'Brown', 'Dark-Brown', 'Beige', 'Cyan', 'Purple', 'Gold'];
private _breed: number;
private _tag: string;
private _id: string;
private _primaryColor: number;
private _secondaryColor: number;
private _isMaster: boolean;
private _layerTags: string[];
constructor(primaryColor: number, secondaryColor: number, breed: number, tag: number, id: string, isMaster: boolean, layerTags: string[])
{
this._layerTags = [];
this._primaryColor = (primaryColor & 0xFFFFFF);
this._secondaryColor = (secondaryColor & 0xFFFFFF);
this._breed = breed;
this._tag = (((tag > -1) && (tag < PetColorResult.COLOR_TAGS.length)) ? PetColorResult.COLOR_TAGS[tag] : '');
this._id = id;
this._isMaster = isMaster;
this._layerTags = layerTags;
}
public get primaryColor(): number
{
return this._primaryColor;
}
public get secondaryColor(): number
{
return this._secondaryColor;
}
public get breed(): number
{
return this._breed;
}
public get tag(): string
{
return this._tag;
}
public get id(): string
{
return this._id;
}
public get isMaster(): boolean
{
return this._isMaster;
}
public get layerTags(): string[]
{
return this._layerTags;
}
}