Move to Renderer V2

This commit is contained in:
duckietm
2024-04-03 09:27:56 +02:00
parent 110c3ad393
commit b3134ce50b
4080 changed files with 115593 additions and 66375 deletions
@@ -0,0 +1,52 @@
import { IAdvancedMap, IMessageDataWrapper, IMessageParser } from '@nitrots/api';
import { AdvancedMap } from '@nitrots/utils';
export class UnseenItemsParser implements IMessageParser
{
private _items: IAdvancedMap<number, number[]>;
public flush(): boolean
{
this._items = new AdvancedMap();
return true;
}
public parse(wrapper: IMessageDataWrapper): boolean
{
if(!wrapper) return false;
let totalUnseen = wrapper.readInt();
while(totalUnseen > 0)
{
const category = wrapper.readInt();
let totalItems = wrapper.readInt();
const itemIds: number[] = [];
while(totalItems > 0)
{
itemIds.push(wrapper.readInt());
totalItems--;
}
this._items.add(category, itemIds);
totalUnseen--;
}
return true;
}
public getItemsByCategory(category: number): number[]
{
return this._items.getValue(category);
}
public get categories(): number[]
{
return this._items.getKeys();
}
}