create(address reward)
of the Angel Factory to create the Angel. The parameter reward
is the token address of the reward you provide.add(uint256 allocPoint, address _lpToken, address _Rewarder)
to assign the Fountain(s) to receive the reward in the Angel(s).allocPoint
parameter._lpToken
is the token address that you want to incentivize._Rewarder
is the contract customized developed by the Rewarder. If the Rewarder wants to do some specific behavior based on the staking system, the Rewarder can assign the contract address to _Rewarder
.create(ERC20 token)
of the Fountain Factory to create the Fountain(s).addGraceReward(uint256 _amount, uint256 _endTime)
setGracePerSecond(uint256 _gracePerSecond, uint256 _endTime)
3-A. addGraceReward(uint256 _amount, uint256 _endTime)
3-B. setGracePerSecond(uint256 _gracePerSecond, uint256 _endTime)
deposit(uint256 amount)
of that Fountain contract to stake the specific token.joinAngel(address angel)
of the Fountain to sign up for a single type of reward, or the function joinAngels(address[] angels)
of the Fountain to join multiple types of rewards from multiple Angels.harvestAll()
of the Fountain to claim all available rewards. Alternatively, they can call the function harvest(address angel)
of the Fountain to claim the reward from the specific Angel contract.