PowerHorse Engine
    Preparing search index...

    Hierarchy

    • Pseudo
      • GachaConstructor
    Index

    Constructors

    Properties

    _SPCR: PseudoClientReplicator
    DatastoreGet: DatastoreGet = ...
    DatastoreSet: DatastoreSet = ...
    GachaPass: typeof GachaPass = GachaPass
    GachaPassPurchased: Signal<GachaPassPurchasedParams>
    GachaProduct: typeof GachaProduct = GachaProduct
    GachaProductPurchased: Signal<GachaProductPurchasedParams>
    Mock: {
        Datastore: Record<string, Record<string, unknown>>;
        DatastoreGet: DatastoreGet;
        DatastoreSet: DatastoreSet;
        ProcessReceipt: () => ProductPurchaseDecision;
    } = ...

    While testing in studio, you can quickly use these Mock values to setup gacha.

    ProcessProductInfo:
        | undefined
        | (
            (
                Product: GachaProduct | GachaPass,
                Inquirer?: Player,
            ) => GachaProductInfo
        ) = undefined
    ProcessReceipt: (
        receiptInfo: ReceiptInfo,
        processedByGacha: boolean,
    ) => ProductPurchaseDecision = ...

    Set this value to be your Marketplace.ProcessReceipt callback, Gacha will override the Marketplace.ProcessReceipt to be our custom handler.

    You can also provide ProcessProductReceipt for each product to have unique processors.

    ProcessRequestPromptGachaGift:
        | undefined
        | (
            (
                Sender: Player,
                Receiver: Player,
                targetGift: GachaPass,
                withGiftProduct: GachaProduct,
            ) => void
        )

    Methods

    • Parameters

      • Player: Player
      • GachaPass: string | number
      • Callback: (isOwned: boolean) => usePropertyEffectCleanup

      Returns ServantNext

    • Parameters

      • GachaPass: string | number
      • Callback: (isOwned: boolean) => usePropertyEffectCleanup

      Returns ServantNext

    • Parameters

      • query: string | number
      • timeout: number = 300

      Returns undefined | GachaPass

    • Parameters

      • query: string | number
      • timeout: number = 300

      Returns undefined | GachaProduct

    • Parameters

      • ...args: [
            ProductNameOrId: string
            | number,
            InfoType: InfoType,
            timeout?: number,
            Inquirer?: Player,
        ]

      Returns Promise<GachaProductInfo>

    • Parameters

      • ProductNameOrId: string | number
      • InfoType: InfoType
      • Optionaltimeout: number
      • OptionalInquirer: Player

      Returns GachaProductInfo

    • Parameters

      • GachaPass: string | number
      • Callback: (
            ...args: [
                Player: Player,
                PassInfo: { Id: string
                | number; Name: string },
                wasGifted: false | GiftedPurchaseInfo,
            ],
        ) => void

      Returns RBXScriptConnection

    • Parameters

      • GachaProduct: string | number
      • Callback: (
            ...args: [
                UserId: number,
                ProductInfo: {
                    Id: string
                    | number;
                    Name: string;
                    SubProductUsed?: { Name: string; ProductId: number };
                },
                PlayerInGame?: Player,
            ],
        ) => void

      Returns RBXScriptConnection

    • Parameters

      • GachaPass: string | number
      • OptionaltimeOut: number

      Returns void

    • Parameters

      • Player: Player
      • GachaPass: string | number
      • OptionaltimeOut: number

      Returns void

    • Parameters

      • GachaProduct: string | number
      • OptionaltimeOut: number

      Returns void

    • Parameters

      • Player: Player
      • GachaProduct: string | number
      • OptionaltimeOut: number

      Returns void

    • Parameters

      • ...args: [Player: Player, GachaPass: string | number, timeOut?: number]

      Returns void

    • Parameters

      • ...args: [Player: Player, GachaProduct: string | number, timeOut?: number]

      Returns void

    • Parameters

      • ...args: [
            Receiver: Player,
            GiftingPass: string
            | number,
            withGiftProduct: string | number,
        ]

      Returns Promise<boolean>

    • Parameters

      • Receiver: Player
      • GiftingPass: string | number
      • withGiftProduct: string | number

      Returns boolean

    • Parameters

      • ...args: unknown[]

      Returns Promise<true>

    • Parameters

      • Pass: string | number
      • OptionaltimeOut: number

      Returns boolean

    • Parameters

      • Player: Player
      • Pass: string | number
      • OptionaltimeOut: number
      • OptionalQueryOtherPlayer: Player

      Returns boolean

    • Parameters

      • ...args: [
            Player: Player,
            Pass: string
            | number,
            timeOut?: number,
            QueryOtherPlayer?: Player,
        ]

      Returns boolean