UNPKG

isaacscript-common

Version:

Helper functions and features for IsaacScript mods.

52 lines 2.92 kB
import { TrinketType } from "isaac-typescript-definitions"; import type { TrinketSituation } from "../interfaces/TrinketSituation"; /** * Helper function to restore the player's trinkets back to the way they were before the * `temporarilyRemoveTrinket` function was used. It will re-smelt any smelted trinkets that were * removed. */ export declare function giveTrinketsBack(player: EntityPlayer, trinketSituation: TrinketSituation | undefined): void; /** * Helper function to smelt a trinket. Before smelting, this function will automatically remove the * trinkets that the player is holding, if any, and then give them back after the new trinket is * smelted. * * @param player The player to smelt the trinkets to. * @param trinketType The trinket type to smelt. * @param numTrinkets Optional. If specified, will smelt the given number of trinkets. Use this to * avoid calling this function multiple times. Default is 1. */ export declare function smeltTrinket(player: EntityPlayer, trinketType: TrinketType, numTrinkets?: number): void; /** * Helper function to smelt two or more different trinkets. If you want to smelt one trinket (or * multiple copies of one trinket), then use the `smeltTrinket` helper function instead. * * This function is variadic, meaning that you can pass as many trinket types as you want to smelt. * * Before smelting, this function will automatically remove the trinkets that the player is holding, * if any, and then give them back after the new trinket is smelted. * * @param player The player to smelt the trinkets to. * @param trinketTypes The trinket types to smelt. */ export declare function smeltTrinkets(player: EntityPlayer, ...trinketTypes: readonly TrinketType[]): void; /** * Helper function to temporarily remove a specific kind of trinket from the player. Use this in * combination with the `giveTrinketsBack` function to take away and give back a trinket on the same * frame. This function correctly handles multiple trinket slots and ensures that all copies of the * trinket are removed, including smelted trinkets. * * Note that one smelted golden trinket is the same as two smelted normal trinkets. * * @returns Undefined if the player does not have the trinket, or TrinketSituation if they do. */ export declare function temporarilyRemoveTrinket(player: EntityPlayer, trinketType: TrinketType): TrinketSituation | undefined; /** * Helper function to temporarily removes a player's held trinkets, if any. This will not remove any * smelted trinkets. Use this in combination with the `giveTrinketsBack` function to take away and * give back trinkets on the same frame. * * @returns Undefined if the player does not have any trinkets, or TrinketSituation if they do. */ export declare function temporarilyRemoveTrinkets(player: EntityPlayer): TrinketSituation | undefined; //# sourceMappingURL=trinketGive.d.ts.map