Я просматривал контракт токенов BAT и отклоняемые транзакции, поэтому мне было интересно, как вы запланировали эти распределения. Это привело меня к договору купли -продажи First Blood . Первое упоминание о startBlock, которое я увидел, было в строке 145.
uint public startBlock; //crowdsale start block (set in constructor)
uint public endBlock; //crowdsale end block (set in constructor)
Последнее упоминание о любом из них (вне некоторого сравнения) находится здесь:
function FirstBloodToken(address founderInput, address signerInput, uint startBlockInput, uint endBlockInput) {
founder = founderInput;
signer = signerInput;
startBlock = startBlockInput;
endBlock = endBlockInput;
}
... что именно мне здесь не хватает? Я еще не вдавался в подробности, хотя мне кажется, что это должно быть довольно очевидно, и все же я не вижу, в каком блоке этот контракт начал принимать транзакции.
И передаются контракту через конструктор startBlock
. endBlock
Таким образом, вы должны запрашивать их из состояния контракта, и, поскольку они являются общедоступными переменными, вы должны иметь возможность использовать call
для запроса обеих переменных из общедоступной сети без затрат эфира. Следующее дает представление о том, как взаимодействовать с контрактом, используя вызов https://ethereum.gitbooks.io/frontier-guide/content/interacting_contract.html .