feat(communication): housekeeping economy — 4 composers

OutgoingHeader 9117-9120: give-credits, give-currency (generic across
duckets/diamonds/seasonal via a currencyType int), grant-item,
set-hc-subscription. All four ride the existing
HousekeepingActionResultEvent — no new parser needed.

`yarn compile:fast` clean.
This commit is contained in:
simoleo89
2026-05-24 11:30:53 +02:00
committed by simoleo89
parent 597cd2402f
commit 386bf79ddc
7 changed files with 57 additions and 1 deletions
@@ -541,4 +541,8 @@ export class OutgoingHeader
public static HOUSEKEEPING_KICK_ALL_FROM_ROOM = 9114;
public static HOUSEKEEPING_TRANSFER_ROOM_OWNERSHIP = 9115;
public static HOUSEKEEPING_DELETE_ROOM = 9116;
public static HOUSEKEEPING_GIVE_CREDITS = 9117;
public static HOUSEKEEPING_GIVE_CURRENCY = 9118;
public static HOUSEKEEPING_GRANT_ITEM = 9119;
public static HOUSEKEEPING_SET_HC_SUBSCRIPTION = 9120;
}
@@ -0,0 +1,11 @@
import { IMessageComposer } from '@nitrots/api';
export class HousekeepingGiveCreditsComposer implements IMessageComposer<ConstructorParameters<typeof HousekeepingGiveCreditsComposer>>
{
private _data: ConstructorParameters<typeof HousekeepingGiveCreditsComposer>;
constructor(userId: number, amount: number) { this._data = [userId, amount]; }
public getMessageArray() { return this._data; }
public dispose(): void { return; }
}
@@ -0,0 +1,11 @@
import { IMessageComposer } from '@nitrots/api';
export class HousekeepingGiveCurrencyComposer implements IMessageComposer<ConstructorParameters<typeof HousekeepingGiveCurrencyComposer>>
{
private _data: ConstructorParameters<typeof HousekeepingGiveCurrencyComposer>;
constructor(userId: number, currencyType: number, amount: number) { this._data = [userId, currencyType, amount]; }
public getMessageArray() { return this._data; }
public dispose(): void { return; }
}
@@ -0,0 +1,11 @@
import { IMessageComposer } from '@nitrots/api';
export class HousekeepingGrantItemComposer implements IMessageComposer<ConstructorParameters<typeof HousekeepingGrantItemComposer>>
{
private _data: ConstructorParameters<typeof HousekeepingGrantItemComposer>;
constructor(userId: number, itemId: number, quantity: number) { this._data = [userId, itemId, quantity]; }
public getMessageArray() { return this._data; }
public dispose(): void { return; }
}
@@ -0,0 +1,11 @@
import { IMessageComposer } from '@nitrots/api';
export class HousekeepingSetHcSubscriptionComposer implements IMessageComposer<ConstructorParameters<typeof HousekeepingSetHcSubscriptionComposer>>
{
private _data: ConstructorParameters<typeof HousekeepingSetHcSubscriptionComposer>;
constructor(userId: number, days: number) { this._data = [userId, days]; }
public getMessageArray() { return this._data; }
public dispose(): void { return; }
}
@@ -1,6 +1,9 @@
export * from './HousekeepingBanUserComposer';
export * from './HousekeepingDeleteRoomComposer';
export * from './HousekeepingFindRoomByIdComposer';
export * from './HousekeepingGiveCreditsComposer';
export * from './HousekeepingGiveCurrencyComposer';
export * from './HousekeepingGrantItemComposer';
export * from './HousekeepingFindUserByIdComposer';
export * from './HousekeepingFindUserByNameComposer';
export * from './HousekeepingForceDisconnectUserComposer';
@@ -11,6 +14,7 @@ export * from './HousekeepingMuteUserComposer';
export * from './HousekeepingResetUserPasswordComposer';
export * from './HousekeepingRoomStateComposer';
export * from './HousekeepingSearchRoomsComposer';
export * from './HousekeepingSetHcSubscriptionComposer';
export * from './HousekeepingSetUserRankComposer';
export * from './HousekeepingTradeLockUserComposer';
export * from './HousekeepingTransferRoomOwnershipComposer';