You've already forked Nitro_Render_V3
mirror of
https://github.com/duckietm/Nitro_Render_V3.git
synced 2026-06-20 07:26:18 +00:00
feat: rare values + fortune wheel protocol + prize editor
Composers/parsers/events for rare values + wheel (open/spin/buy/data/result/ recent-wins) + admin (get/save prizes), headers 9300-9305 / 9400-9404. fix: figure map uses split-aware loadGamedata (raw fetch broke on tier-manifest gamedata, silently empty avatars).
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
import { IMessageDataWrapper, IMessageParser } from '@nitrots/api';
|
||||
|
||||
export interface IRareValue
|
||||
{
|
||||
credits: number;
|
||||
points: number;
|
||||
pointsType: number;
|
||||
}
|
||||
|
||||
export class RareValuesParser implements IMessageParser
|
||||
{
|
||||
private _values: Map<number, IRareValue> = new Map();
|
||||
|
||||
public flush(): boolean
|
||||
{
|
||||
this._values = new Map();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public parse(wrapper: IMessageDataWrapper): boolean
|
||||
{
|
||||
if(!wrapper) return false;
|
||||
|
||||
const count = wrapper.readInt();
|
||||
|
||||
for(let i = 0; i < count; i++)
|
||||
{
|
||||
const spriteId = wrapper.readInt();
|
||||
const credits = wrapper.readInt();
|
||||
const points = wrapper.readInt();
|
||||
const pointsType = wrapper.readInt();
|
||||
|
||||
this._values.set(spriteId, { credits, points, pointsType });
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public get values(): Map<number, IRareValue> { return this._values; }
|
||||
}
|
||||
Reference in New Issue
Block a user