📒Contract
Documentation for contract actions
Loot Contract Actions
📝 User Registration (regnewuser
)
regnewuser
)Purpose: Registers a user on the contract, enabling participation in NFT staking and rewards.
Parameters:
user
: Account name to be registered.referrer
: (Optional) Account name of the referrer, if any.
💰 Claiming Rewards (claim
)
claim
)Purpose: Allows users to claim accumulated rewards from staked NFTs.
Parameters:
user
: Account name claiming the rewards.collection
: Name of the NFT collection from which to claim rewards.
🔄 Unstaking NFTs (unstake
)
unstake
)Purpose: Enables users to remove their NFTs from staking, halting reward accumulation.
Parameters:
user
: Account name performing the unstake action.asset_ids
: List of NFT asset IDs to be unstaked.
🔄 Resetting User Data (resetuser
)
resetuser
)Purpose: Clears a user's staking data and returns any staked NFTs.
Parameters:
user
: Account name whose data is to be reset.
💸 Refunding Tokens (refund
)
refund
)Purpose: Issues a refund of tokens to a user under specific conditions.
Parameters:
user
: Recipient of the refund.collection
: Collection associated with the refund.refund_amount
: Amount of tokens to be refunded.
🌐 Registering NFT Collection (setnftcolrew
)
setnftcolrew
)Purpose: Sets up a new NFT collection for staking with specific reward parameters.
Parameters:
user
: Account initiating the registration.collection
: Collection name.token_symbol
: Token symbol for rewards.token_contract
: Contract managing the reward tokens.time_unit_length
: Length of time units for reward calculation.unstake_period
: Minimum staking period before NFTs can be unstaked.reward_series_referral
: Series for calculating referral rewards.reward_coefficient_referral
: Coefficient for referral reward calculation.reward_series_hodl
: Series for calculating holding rewards.reward_coefficient_hodl
: Coefficient for holding reward calculation.
➕ Adding Eligible NFT Templates (addtemplates
)
addtemplates
)Purpose: Includes NFT templates in the staking program of a collection.
Parameters:
user
: Account adding the templates.template_id
: ID of the template to be added.collection
: Collection to which the template belongs.timeunit_rate
: Reward rate per time unit for the template.
➖ Removing NFT Templates (rmtemplates
)
rmtemplates
)Purpose: Excludes NFT templates from the staking program of a collection.
Parameters:
user
: Account removing the templates.template_id
: ID of the template to be removed.collection
: Collection from which the template is removed.
🔔 Receiving NFTs (receiveassets
)
receiveassets
)Purpose: Automatically stakes NFTs sent to the contract and updates user staking data.
Parameters:
Handled through
atomicassets::transfer
notifications; no direct user parameters.
📈 Handling Token Transfers (on_transfer
)
on_transfer
)Purpose: Manages incoming token transfers to fund the contract's reward pool.
Parameters:
Handled through token
transfer
notifications; the memo should contain the collection name.
Last updated