243 lines
7.2 KiB
TypeScript
243 lines
7.2 KiB
TypeScript
declare interface Game {
|
|
AddDevilRoomDeal(): void;
|
|
AddEncounteredBoss(entityType: EntityType | int, variant: int): void;
|
|
AddPixelation(duration: int): void;
|
|
AddStageWithoutDamage(): void;
|
|
AddStageWithoutHeartsPicked(): void;
|
|
AddTreasureRoomsVisited(): void;
|
|
/**
|
|
* There is no separate BombFlags enum, so bombs use tear flags.
|
|
* Be aware that this really takes a BitSet128 instead of an integer.
|
|
* However, all of the TearFlags enums values use BitSet128 constructors.
|
|
*
|
|
* @param position
|
|
* @param damage
|
|
* @param radius
|
|
* @param lineCheck Default is true.
|
|
* @param source Default is undefined.
|
|
* @param tearFlags Default is TearFlags.TEAR_NORMAL.
|
|
* @param damageFlags Default is DamageFlag.DAMAGE_EXPLOSION.
|
|
* @param damageSource Default is false.
|
|
*/
|
|
BombDamage(
|
|
position: Vector,
|
|
damage: float,
|
|
radius: float,
|
|
lineCheck?: boolean,
|
|
source?: Entity,
|
|
tearFlags?: int,
|
|
damageFlags?: DamageFlag,
|
|
damageSource?: boolean,
|
|
): void;
|
|
/**
|
|
* There is no separate BombFlags enum, so bombs use tear flags.
|
|
* Be aware that this really takes a BitSet128 instead of an integer.
|
|
* However, all of the TearFlags enums values use BitSet128 constructors.
|
|
*
|
|
* @param position
|
|
* @param damage
|
|
* @param tearFlags Default is TearFlags.TEAR_NORMAL.
|
|
* @param color Default is Color.Default.
|
|
* @param source Default is undefined.
|
|
* @param radiusMult Default is 1.
|
|
* @param lineCheck Default is true.
|
|
* @param damageSource Default is false.
|
|
* @param damageFlags Default is DamageFlag.DAMAGE_EXPLOSION.
|
|
*/
|
|
BombExplosionEffects(
|
|
position: Vector,
|
|
damage: float,
|
|
tearFlags?: int,
|
|
color?: Color,
|
|
source?: Entity,
|
|
radiusMult?: float,
|
|
lineCheck?: boolean,
|
|
damageSource?: boolean,
|
|
damageFlags?: DamageFlag,
|
|
): void;
|
|
/**
|
|
* There is no separate BombFlags enum, so bombs use tear flags.
|
|
* Be aware that this really takes a BitSet128 instead of an integer.
|
|
* However, all of the TearFlags enums values use BitSet128 constructors.
|
|
*
|
|
* @param position
|
|
* @param radius
|
|
* @param tearFlags
|
|
* @param source Default is undefined.
|
|
* @param radiusMult Default is 1.
|
|
*/
|
|
BombTearflagEffects(
|
|
position: Vector,
|
|
radius: float,
|
|
tearFlags: int,
|
|
source?: Entity,
|
|
radiusMult?: float,
|
|
): void;
|
|
ButterBeanFart(
|
|
position: Vector,
|
|
radius: float,
|
|
source: Entity,
|
|
showEffect: boolean,
|
|
doSuperKnockback: boolean,
|
|
): void;
|
|
/**
|
|
* @param roomIndex
|
|
* @param dimension Default is Dimension.CURRENT.
|
|
*/
|
|
ChangeRoom(roomIndex: int, dimension?: Dimension): void;
|
|
CharmFart(position: Vector, radius: float, source: Entity): void;
|
|
ClearDonationModAngel(): void;
|
|
ClearDonationModGreed(): void;
|
|
ClearStagesWithoutDamage(): void;
|
|
ClearStagesWithoutHeartsPicked(): void;
|
|
Darken(darkness: float, timeout: int): void;
|
|
DonateAngel(donate: int): void;
|
|
DonateGreed(donate: int): void;
|
|
End(ending: Ending): void;
|
|
Fadein(speed: float): void;
|
|
Fadeout(speed: float, fadeoutTarget: FadeoutTarget): void;
|
|
/**
|
|
* @param position
|
|
* @param radius Default is 85.
|
|
* @param source Default is undefined.
|
|
* @param fartScale Default is 1.
|
|
* @param fartSubType Default is 0
|
|
* @param fartColor Default is Color.Default.
|
|
*/
|
|
Fart(
|
|
position: Vector,
|
|
radius?: float,
|
|
source?: Entity,
|
|
fartScale?: float,
|
|
fartSubType?: int,
|
|
fartColor?: Color,
|
|
): void;
|
|
FinishChallenge(): void;
|
|
// GetAmbush(): Ambush; // Ambush is not implemented
|
|
GetDarknessModifier(): float;
|
|
GetDevilRoomDeals(): int;
|
|
GetDonationModAngel(): int;
|
|
GetDonationModGreed(): int;
|
|
GetFont(): Font;
|
|
GetFrameCount(): int;
|
|
GetGreedBossWaveNum(): int;
|
|
GetGreedWavesNum(): int;
|
|
// GetItemOverlay(): ItemOverlay; // ItemOverlay is not implemented
|
|
GetHUD(): HUD;
|
|
GetItemPool(): ItemPool;
|
|
/** This function is bugged and returns useless userdata. */
|
|
GetLastDevilRoomStage(fakeArg: never): LevelStage;
|
|
GetLastLevelWithDamage(): LevelStage;
|
|
GetLastLevelWithoutHalfHp(): LevelStage;
|
|
GetLevel(): Level;
|
|
GetNearestPlayer(position: Vector): EntityPlayer;
|
|
GetNumEncounteredBosses(): int;
|
|
GetNumPlayers(): int;
|
|
/** Use `Isaac.GetPlayer()` instead of this function. */
|
|
GetPlayer(fakeArg: never): EntityPlayer | undefined;
|
|
GetRandomPlayer(position: Vector, radius: float): EntityPlayer;
|
|
GetRoom(): Room;
|
|
GetScreenShakeCountdown(): Readonly<int>;
|
|
GetSeeds(): Seeds;
|
|
GetStagesWithoutDamage(): int;
|
|
GetStagesWithoutHeartsPicked(): int;
|
|
GetStateFlag(gameStateFlag: GameStateFlag): boolean;
|
|
GetTargetDarkness(): float;
|
|
GetTreasureRoomVisitCount(): int;
|
|
GetVictoryLap(): int;
|
|
HasEncounteredBoss(entityType: EntityType | int, variant: int): boolean;
|
|
HasHallucination(): int;
|
|
IsGreedMode(): boolean;
|
|
IsPaused(): boolean;
|
|
MoveToRandomRoom(IAmErrorRoom: boolean, seed: int): void;
|
|
NextVictoryLap(): void;
|
|
Render(): void;
|
|
RerollEnemy(entity: Entity): boolean;
|
|
RerollLevelCollectibles(): void;
|
|
RerollLevelPickups(seed: int): void;
|
|
SetLastDevilRoomStage(levelStage: LevelStage): void;
|
|
SetLastLevelWithDamage(levelStage: LevelStage): void;
|
|
SetLastLevelWithoutHalfHp(levelStage: LevelStage): void;
|
|
SetStateFlag(gameStateFlag: GameStateFlag, val: boolean): void;
|
|
ShakeScreen(timeout: int): void;
|
|
ShowFortune(): void;
|
|
/**
|
|
* @param frameCount
|
|
* @param hallucinationBackdrop Default is BackdropType.NUM_BACKDROPS.
|
|
*/
|
|
ShowHallucination(
|
|
frameCount: int,
|
|
hallucinationBackdropType?: BackdropType,
|
|
): void;
|
|
ShowRule(): void;
|
|
Spawn(
|
|
entityType: EntityType | int,
|
|
variant: int,
|
|
position: Vector,
|
|
velocity: Vector,
|
|
spawner: Entity | undefined,
|
|
subType: int,
|
|
seed: int,
|
|
): Entity;
|
|
/*
|
|
SpawnEntityDesc(
|
|
entityDesc: EntityDesc, // EntityDesc is not implemented
|
|
position: Vector,
|
|
spawner: Entity,
|
|
): EntityNPC;
|
|
*/
|
|
/**
|
|
* @param position
|
|
* @param effectVariant
|
|
* @param numParticles
|
|
* @param speed
|
|
* @param color Default is Color.Default.
|
|
* @param height Default is 100000.
|
|
* @param subType Default is 0.
|
|
*/
|
|
SpawnParticles(
|
|
position: Vector,
|
|
effectVariant: EffectVariant | int,
|
|
numParticles: int,
|
|
speed: float,
|
|
color?: Color,
|
|
height?: float,
|
|
subType?: int,
|
|
): void;
|
|
/**
|
|
* You have to set Level.LeaveDoor to an appropriate value before using this function. Otherwise,
|
|
* you will be sent to the wrong room. (For teleports, set it to -1.)
|
|
*
|
|
* @param roomIndex
|
|
* @param direction
|
|
* @param roomTransition Default is RoomTransitionAnim.WALK.
|
|
* @param player Default is undefined.
|
|
* @param dimension Default is Dimension.CURRENT.
|
|
*/
|
|
StartRoomTransition(
|
|
roomIndex: int,
|
|
direction: Direction,
|
|
roomTransitionAnim?: RoomTransitionAnim,
|
|
player?: EntityPlayer,
|
|
dimension?: Dimension,
|
|
): void;
|
|
StartStageTransition(
|
|
sameStage: boolean,
|
|
stageTransition: StageTransition,
|
|
): void;
|
|
Update(): void;
|
|
/**
|
|
* @param position
|
|
* @param force Default is 10.
|
|
* @param radius Default is 250.
|
|
*/
|
|
UpdateStrangeAttractor(position: Vector, force?: float, radius?: float): void;
|
|
|
|
BlueWombParTime: int;
|
|
BossRushParTime: int;
|
|
Challenge: Challenge | int;
|
|
readonly Difficulty: Difficulty;
|
|
readonly ScreenShakeOffset: Readonly<Vector>;
|
|
TimeCounter: int;
|
|
}
|