ERC20
This contract is an ERC20 token.
Name
PlayChip
Symbol
PLA
Decimals
18
Total Supply
50,000,000,000 PLA
About
link
description
PlayChip’s vision is to become the Universal Gaming Token. PlayChip is an ERC20 token at the centre of an existing online gaming ecosystem.
PlayChip will serve as the payment and rewards system to an existing user base in the range of over one million in approximately 70 different countries. The PlayChip may be used to enter competitions and challenges, deliver instant payouts, incentivise new and existing users, and carry metadata to help the operational partners of the PlayChip determine whether users can enter certain challenges or bets on their platform based on the local jurisdiction after the KYC of each user.
Stats
Public Functions
15
Event Types
10
Code Size
26,251 bytes
Events (10) keyboard_arrow_up
Functions
nominateNewOwner keyboard_arrow_up
Modifiers help
onlyOwner checks for the following:
Source Code
function nominateNewOwner(address _owner)
public
onlyOwner
{
nominatedOwner = _owner;
emit OwnerNominated(_owner);
}
acceptOwnership keyboard_arrow_up
setSelfDestructBeneficiary keyboard_arrow_up
Modifiers help
onlyOwner checks for the following:
Requirements help
Source Code
function setSelfDestructBeneficiary(address _beneficiary)
external
onlyOwner
{
require(_beneficiary != address(0), "Beneficiary must not be the zero address.");
selfDestructBeneficiary = _beneficiary;
emit SelfDestructBeneficiaryUpdated(_beneficiary);
}
initiateSelfDestruct keyboard_arrow_up
Parameters help
This function has no parameters.
Modifiers help
onlyOwner checks for the following:
Requirements help
Source Code
function initiateSelfDestruct()
external
onlyOwner
{
require(!selfDestructInitiated, "Self-destruct already initiated.");
selfDestructInitiationTime = now;
selfDestructInitiated = true;
emit SelfDestructInitiated(SELFDESTRUCT_DELAY);
}
terminateSelfDestruct keyboard_arrow_up
Parameters help
This function has no parameters.
Modifiers help
onlyOwner checks for the following:
Requirements help
selfDestructInitiated must be true
Source Code
function terminateSelfDestruct()
external
onlyOwner
{
require(selfDestructInitiated, "Self-destruct not yet initiated.");
selfDestructInitiationTime = 0;
selfDestructInitiated = false;
emit SelfDestructTerminated();
}
selfDestruct keyboard_arrow_up
Parameters help
This function has no parameters.
Modifiers help
onlyOwner checks for the following:
Requirements help
selfDestructInitiated must be true
Source Code
function selfDestruct()
external
onlyOwner
{
require(selfDestructInitiated, "Self-destruct not yet initiated.");
require(selfDestructInitiationTime + SELFDESTRUCT_DELAY < now, "Self-destruct delay has not yet elapsed.");
address beneficiary = selfDestructBeneficiary;
emit SelfDestructed(beneficiary);
selfdestruct(beneficiary);
}
pause keyboard_arrow_up
unpause keyboard_arrow_up
approve keyboard_arrow_up
Modifiers help
pausableIfNotSelfDestructing checks for the following:
Requirements help
Source Code
function approve(address spender, uint quantity)
public
pausableIfNotSelfDestructing
returns (bool)
{
require(spender != address(0), "Approvals for 0x0 disallowed.");
allowance[msg.sender][spender] = quantity;
emit Approval(msg.sender, spender, quantity);
return true;
}
transfer keyboard_arrow_up
transferFrom keyboard_arrow_up
Modifiers help
pausableIfNotSelfDestructing checks for the following:
Requirements help
Source Code
function transferFrom(address from, address to, uint quantity)
public
pausableIfNotSelfDestructing
returns (bool)
{
// safeSub handles insufficient allowance.
allowance[from][msg.sender] = safeSub(allowance[from][msg.sender], quantity);
return _transfer(from, to, quantity);
}
batchTransfer keyboard_arrow_up
Modifiers help
pausableIfNotSelfDestructing checks for the following:
Source Code
function batchTransfer(address[] recipients, uint[] quantities)
external
pausableIfNotSelfDestructing
returns (bool)
{
return _batchTransfer(msg.sender, recipients, quantities);
}
batchApprove keyboard_arrow_up
Modifiers help
pausableIfNotSelfDestructing checks for the following:
requireSameLength checks for the following:
Source Code
function batchApprove(address[] spenders, uint[] quantities)
external
pausableIfNotSelfDestructing
requireSameLength(spenders.length, quantities.length)
returns (bool)
{
uint length = spenders.length;
for (uint i = 0; i < length; i++) {
approve(spenders[i], quantities[i]);
}
return true;
}
batchTransferFrom keyboard_arrow_up
Modifiers help
pausableIfNotSelfDestructing checks for the following:
requireSameLength checks for the following:
requireSameLength checks for the following:
Source Code
function batchTransferFrom(address[] spenders, address[] recipients, uint[] quantities)
external
pausableIfNotSelfDestructing
requireSameLength(spenders.length, recipients.length)
requireSameLength(recipients.length, quantities.length)
returns (bool)
{
uint length = spenders.length;
for (uint i = 0; i < length; i++) {
transferFrom(spenders[i], recipients[i], quantities[i]);
}
return true;
}
contractBatchTransfer keyboard_arrow_up
Modifiers help
onlyOwner checks for the following:
Source Code
function contractBatchTransfer(address[] recipients, uint[] quantities)
external
onlyOwner
returns (bool)
{
return _batchTransfer(this, recipients, quantities);
}