雜湊競猜開發原理丨雜湊競猜遊戲原始碼丨雜湊競猜系統開發設計程式碼
這種遊戲是建立在區塊鏈上的,玩家可以透過支付一定的代幣,競猜由智慧合約生成的隨機雜湊值的末尾幾位數字。
DAPP雜湊競猜遊戲 隨著區塊鏈技術的發展,越來越多的去中心化應用程式(DAPP)開始湧現出來,其中之一就是基於
智慧合約的雜湊競猜遊戲。 如果猜中了,則可以獲得獎勵,否則代幣就會被鎖定在智慧合約中。
下面是一個簡單的DAPP雜湊競猜遊戲的程式碼示例,該程式碼基於以太坊區塊鏈和Solidity智慧合約編寫。
scssCopy codepragma solidity ^0.8.0;
uint256 public numberOfBets;
uint256 public maxAmountOfBets = 3;
bytes32 public lastHash;
address payable[] public players;
mapping(address => uint256) public playerBets;
mapping(address => uint256) public playerGuesses;
mapping(address => bool) public playerExists;
constructor() public {
owner = payable(msg.sender);
minBet = 10000000000000000; // 0.01 ether
}
contract HashGuessGame {
address payable public owner;
uint256 public minBet;
uint256 public totalBet;
modifier onlyOwner() {
require(msg.sender == owner);
_;
}
function kill() public onlyOwner {
selfdestruct(owner);
}
function guess(uint256 guessValue) public payable {
require(msg.value >= minBet);
require(numberOfBets < maxAmountOfBets);
require(playerExists[msg.sender] == false);
playerGuesses[msg.sender] = guessValue;
playerBets[msg.sender] = msg.value;
players.push(payable(msg.sender));
playerExists[msg.sender] = true;
totalBet += msg.value;
numberOfBets++;
}
function distributePrizes(uint256 seed) public onlyOwner {
bytes32 winner = keccak256(abi.encodePacked(blockhash(block.number-1), seed));
uint256 count = 0;
for (uint256 i = 0; i < players.length; i++) {
address payable player = players[i];
if (playerGuesses[player] == uint256(winner) % 100) {
count++;
}
}
if (count > 0) {
uint256 winnerEtherAmount = totalBet / count;
for (uint256 j = 0; j < players.length; j++) {
address payable player = players[j];
if (playerGuesses[player] == uint256(winner) % 100) {
player.transfer(winnerEtherAmount);
}
delete playerBets[player];
delete playerGuesses[player];
delete playerExists[player];
}
players = new address payable[](0);
totalBet = 0;
numberOfBets = 0;
}
lastHash = winner;
}
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70027509/viewspace-2941838/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 雜湊競猜遊戲系統開發原理丨雜湊遊戲系統開發技術方案丨雜湊競猜遊戲開發原始碼搭建遊戲開發原始碼
- 雜湊競猜遊戲系統開發技術丨雜湊競猜遊戲開發原始碼部署遊戲開發原始碼
- 雜湊競猜遊戲開發示例丨Hash雜湊遊戲系統開發丨雜湊競猜遊戲詳情遊戲開發
- 雜湊競猜遊戲原始碼版丨雜湊競猜遊戲系統開發(邏輯及詳情)丨雜湊競猜遊戲開發穩定版原始碼遊戲開發
- 雜湊遊戲原始碼開發搭建丨hash雜湊遊戲競猜原始碼搭建丨雜湊遊戲系統開發遊戲原始碼
- 雜湊競猜遊戲系統開發DAPP丨雜湊競猜遊戲開發技術程式碼示例APP遊戲開發
- 雜湊遊戲競猜開發穩定版,雜湊遊戲競猜系統開發技術詳情及案例,雜湊遊戲競猜原始碼部署遊戲原始碼
- 雜湊競猜遊戲系統開發(方案及邏輯)丨雜湊競猜遊戲開發(原始碼及專案)遊戲開發原始碼
- 雜湊競猜遊戲系統開發(詳情及案例)丨雜湊競猜遊戲開發原始碼正式版遊戲開發原始碼
- 競猜雜湊遊戲系統開發程式碼詳情丨競猜hash雜湊遊戲開發技術詳情遊戲開發
- hash雜湊遊戲競猜系統合約開發解析丨defi丨雜湊遊戲原始碼遊戲原始碼
- Hash雜湊遊戲原始碼丨雜湊競猜遊戲系統技術開發丨Hash雜湊遊戲講解遊戲原始碼
- 雜湊競猜遊戲開發正式版丨雜湊競猜遊戲系統開發(開發詳細)及原始碼案例遊戲開發原始碼
- 雜湊遊戲系統技術開發丨雜湊單雙競猜遊戲原始碼丨雜湊遊戲程式設計技術遊戲原始碼程式設計
- Hash雜湊競猜遊戲系統開發(詳細及分析)丨雜湊Hash競猜遊戲系統開發(原始碼專案)遊戲原始碼
- Hash幸運雜湊競猜遊戲系統設計開發丨雜湊單雙尾數大小競猜遊戲遊戲
- hash雜湊競猜遊戲開發模式丨雜湊遊戲競猜玩法系統開發技術功能遊戲開發模式
- HASH雜湊值競猜遊戲開發原始碼丨原始碼示例丨HASH雜湊遊戲程式設計遊戲開發原始碼程式設計
- hash遊戲競猜系統開發方案丨雜湊HASH遊戲競猜系統開發方案/(原始碼部署)遊戲原始碼
- 雜湊競猜遊戲遊戲
- 雜湊競猜遊戲的原理遊戲
- 雜湊競猜遊戲系統開發原理方案探究遊戲
- 雜湊競猜遊戲系統技術開發丨雜湊遊戲Solidity智慧合約遊戲Solid
- 雜湊遊戲競猜系統開發原始碼(DEMO)hash遊戲競猜系統開發瞭解方案遊戲原始碼
- 關於Hash競猜遊戲開發技術方案丨雜湊競猜遊戲系統開發邏輯(原始碼部署)遊戲開發原始碼
- 雜湊競猜遊戲系統構造原理遊戲
- 雜湊競猜遊戲系統搭建原理方案遊戲
- 雜湊競猜遊戲系統開發完成步驟(原始碼demo)遊戲原始碼
- 幸運雜湊單雙競猜遊戲開發技術丨雜湊遊戲系統程式設計開發(部署搭建)遊戲開發程式設計
- 專業開發雜湊競猜遊戲系統《定製》遊戲
- DAPP雜湊競猜遊戲hash系統設計開發方案APP遊戲
- 雜湊競猜遊戲是什麼?遊戲
- 區塊雜湊競猜遊戲系統開發技術原理分析遊戲
- 什麼是雜湊演算法?雜湊競猜遊戲開發原理詳解演算法遊戲開發
- 區塊雜湊競猜遊戲系統開發技術分析遊戲
- 雜湊競猜遊戲(馬蹄鏈)系統模式開發程式碼示例(原始碼部署)遊戲模式原始碼
- Hash雜湊遊戲競猜系統開發程式碼示例丨Solidity智慧合約講解遊戲Solid
- 雜湊競猜遊戲的傳遞方式遊戲