☰
DFK Developers

Raffle Tickets

Description

ERC20: The Raffle Tickets are based on the ERC20 standard. For more information, please view the documentation by OpenZeppelin: https://docs.openzeppelin.com/contracts/4.x/erc20

Raffle Tickets are non-transferrable except by bridging; they can only be burned after receiving permission from the user.

Suggested Use Cases

  • 3rd-party games can wholesale buy Raffle Tickets to award as prizes
  • Game Rewards

To be eligible to wholesale purchase Raffle Tickets, submit a Master Raffle Application at: https://build.defikingdoms.com/.

Contracts

Addresses

DFK Chain

NameMainnetTestnet
Raffle Ticket0xBbd7c4Be2e54fF5e013471162e1ABAD7AB74c3C30x1ac602641F578A4Ec6705888Cc705C544cD8dd33
Raffle Wholesale0x6e473afad39150ffdc18aab5d436c0cce06d44b20x87B3E8A2A755aDe019E882DE42D5eA4e64D586dd

Kaia

NameMainnetTestnet
Raffle Ticket0x3E5081337d1a12F261b013Bc08745fB3cd756Eb30x9ceAAF10e2353a31FB4715C48d22bCB7fD90EcE5
Raffle Wholesale0xF455E000C75Bc92492e3FDc332DC3c6d1Ee834900x939Ea05C81aAC48F7C10BdB08615082B82C80c63

Metis

NameMainnetTestnet
Submersian Shell (DFKSUBSHELL)0x628ded2aB1741e6005ea3b99c070BB5AFd9d27AE0x92162d9Fdca9D0b191Fd9A358412BE3F612a06fB

Interfaces

interface INonTransferableInventoryItem {

    event Approval(address indexed owner, address indexed spender, uint256 value);
    event Transfer(address indexed from, address indexed to, uint256 value);
    
    function allowance(address owner, address spender) view returns (uint256);
    function approve(address spender, uint256 amount) returns (bool);
    function balanceOf(address account) view returns (uint256);
    function burn(uint256 amount);
    function burnFrom(address account, uint256 amount);
    function burnable() view returns (bool);
    function decimals() view returns (uint8);
    function decreaseAllowance(address spender, uint256 subtractedValue) returns (bool);
    function increaseAllowance(address spender, uint256 addedValue) returns (bool);
    function mint(address to, uint256 amount);
    function name() view returns (string);
    function paused() view returns (bool);
    function symbol() view returns (string);
    function totalSupply() view returns (uint256);
    function transfer(address to, uint256 amount) returns (bool);
    function transferFrom(address from, address to, uint256 amount) returns (bool);
    
}
interface IRaffleWholesale {

    event FeeAddressAdded(address indexed feeAddress, uint256 indexed feePercent);
    event FeeDeferred(address indexed source, address indexed from, address indexed to, address token, uint256 amount, uint64 timestamp);
    event FeeDisbursed(address indexed source, address indexed from, address indexed to, address token, uint256 amount, uint64 timestamp);
    event FeeLockedBurned(address indexed source, address indexed from, address indexed to, address token, uint256 amount, uint64 timestamp);
    event LimitSet(address indexed wholesaler, uint256 limit);
    event PricingSet(address indexed wholesaler, tuple(uint256[] levels, uint256[] prices, uint256 periodLimit, uint256 method, uint256 startPeriod) pricing);
    event RefundClaimed(address indexed wholesaler, uint256 period, uint256 amount, uint256 refundableTickets);
    event TicketsPurchased(address indexed wholesaler, address indexed recipient, uint256 tickets);

    function claimRefund(uint256 _period);
    function costPerTicket() view returns (uint256);
    function currentPeriod() view returns (uint256);
    function feeAddresses(uint256) view returns (address);
    function feePercents(uint256) view returns (uint256);
    function getCurrentPeriod() returns (uint256);
    function paused() view returns (bool);
    function periodDuration() view returns (uint256);
    function periodLimit(address) view returns (uint256);
    function potentialRefundableTickets(address, uint256) view returns (uint256);
    function powerToken() view returns (address);
    function purchaseTickets(address _recipient, uint256 _tickets);
    function purchaseTicketsWithLocked(address _recipient, uint256 _tickets);
    function raffleTickets() view returns (address);
    function ticketsPurchased(address, uint256) view returns (uint256);
    function userPricing(address) view returns (uint256 periodLimit, uint256 method, uint256 startPeriod);

}

ABIs

DuelRaffleTicket.json

RaffleWholesale.json

Historical Contracts

These contracts have been deprecated and should not be used. They are listed here for data analysis and tracking purposes only.

Harmony

NameMainnetTestnet
Raffle Ticket0x0405f1b828C7C9462877cC70A9f266887FF55adA0x262f3D1C9D6A0A99871f9Fc9BE6E1797D0ADbae4

DFK Duel