Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
Created using remix-ide: Realtime Ethereum Contract Compiler and Runtime. Load this file by pasting this gists URL or ID at
//SPDX-License-Identifier: Unlicense
pragma solidity ^0.8.0;
contract LotteryTicketsDispenser {
event TicketContractCreated();
event TicketsCreated(uint256 ticketCount);
event TicketAssigned(address indexed _address);
uint256 private ticketCount;
uint256 private assignedTicketCount = 0;
mapping(address => uint256) private tickets;
constructor(uint256 _ticketCount) {
ticketCount = _ticketCount;
emit TicketContractCreated();
emit TicketsCreated(ticketCount);
function assign(address _address) external {
require(assignedTicketCount < ticketCount);
emit TicketAssigned(_address);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment