Blockchain
阻止區塊鏈內的存檔事件
我想編寫一個基於時間的賭博智能合約(基於乙太坊區塊鏈中的塊號)。
**目前網路塊將歸檔某個數字時,做某些工作的最佳方法是什麼?**例如,噹噹前網路區塊將存檔6320132號時,我想關閉目前回合併將所有獎勵發送給獲勝者?
你必須在不依賴任何觸發的情況下做到這一點。
您使用
block.number
來決定是否允許投注。function isOpen() { return(block.number <= deadline); } function bet( ... { require(isOpen()); ... }
您追溯確定獲勝者。
function didIWin( ... { if(!isOpen()) return false; return winner() == msg.sender; }
棘手的部分是創建一個公平的遊戲。這可能涉及對其他玩家隱藏動作或嘗試引入隨機性。這些都是不小的挑戰。
function winner() { ...
希望能幫助到你。