Roll
Properties:
type TemplateOptions = {
scene?: {
backgroundImage?: string;
};
};
interface TemplateWithWeb3Props extends BaseGameProps {
options: TemplateOptions;
minWager?: number;
maxWager?: number;
hideBetHistory?: boolean;
onAnimationStep?: (step: number) => void;
onAnimationCompleted?: (result: RollGameResult[]) => void;
onAnimationSkipped?: (result: RollGameResult[]) => void;
}Example:
'use client';
import { GameType } from '@winrlabs/games';
import { useModalsStore, useToast } from '@winrlabs/ui';
import { RollGame } from '@winrlabs/web3-games';
const RollPage = () => {
const { openModal } = useModalsStore();
const { toast } = useToast();
const { checkProgressChanges } = useProgressCheck();
const { minWager, maxWager } = useGetWagerInfo(GameType.DICE);
return (
<>
<RollGame
options={{
scene: {
backgroundImage: 'url(/images/game-assets/roll/roll-bg.png)',
},
}}
minWager={minWager}
maxWager={maxWager}
onAnimationCompleted={() => {
checkProgressChanges();
refetchHistory();
}}
onError={(e) => {
toast({
title: 'Error',
description: e || 'Something went wrong',
variant: 'destructive',
});
}}
onLogin={() => openModal('login')}
/>
</>
);
};
export default RollPage;