pragma solidity ^0.4.11; import "./SafeMath.sol"; import "./NEFToken.sol"; contract NEFCrowdsale{ using SafeMath for uint; address public admin; NEFToken public tokenContract; uint public tokenPrice = 1000000000000000 wei; uint public tokensSold; // address public myAddress = 0xeF32DcAf2394431b68cFDddA3B2E83C77ce47a01; address public myAddress = 0xca35b7d915458ef540ade6068dfe2f44e8fa733c; mapping (address => uint) public balances; event Sell(address _buyer,uint _amount); function NEFCrowdsale(NEFToken _tokenContract) public { admin = msg.sender; tokenContract = _tokenContract; } function () payable public { // transfer(admin,msg.value); buyTokens(msg.) } // function buyTokens(uint _numberOfTokens) public payable returns(uint){ // // require(msg.value == SafeMath.mul(_numberOfTokens , tokenPrice)); // uint purchaseAmount = _numberOfTokens * tokenPrice; // tokenSold = purchaseAmount; // // require(tokenContract.transfer(msg.sender,purchaseAmount)); // require(msg.value == _numberOfTokens.mul( tokenPrice)); // // require(tokenContract.balanceOf(this) >= _numberOfTokens); // // require(tokenContract.transfer(msg.sender,_numberOfTokens)); // // tokenSold += _numberOfTokens; // // emit Sell(msg.sender,_numberOfTokens); // // tokenPrice = _numberOfTokens; // // return _numberOfTokens; // } // function multiply(uint x, uint y) internal pure returns (uint z) { // require(y == 0 || (z = x * y) / y == x); // } function buyTokens(uint _numberOfTokens) public payable { // require(msg.value > 0); // require(tokenContract.balanceOf(this) >= tokenPrice); // require(tokenContract.transfer(msg.sender, _numberOfTokens)); // myAddress.send(msg.value); // uint currentPrice = _numberOfTokens.mul(tokenPrice); // require(msg.value == SafeMath.mul(_numberOfTokens, tokenPrice)); // require(tokenContract.balanceOf(this) >= currentPrice); // require(tokenContract.transfer(msg.sender, currentPrice)); // tokenContract.transfer(msg.sender, currentPrice); // // // // // tokensSold = currentPrice; // tokensSold += _numberOfTokens; // emit Sell(msg.sender, _numberOfTokens); // return currentPrice; // require(msg.value == SafeMath.mul(_numberOfTokens, tokenPrice)); // require(tokenContract.balanceOf(this) >= _numberOfTokens); // require(tokenContract.transfer(msg.sender, _numberOfTokens)); // tokensSold += _numberOfTokens; // Sell(msg.sender, _numberOfTokens); // require(msg.value == _numberOfTokens); // return msg.value ; // return _numberOfTokens; } function transfer(address _to,uint _value) private { // balances[msg.sender] >= _value; balances[msg.sender] -= _value; balances[_to] += _value; } function endSale() public{ require(msg.sender == admin); require(tokenContract.transfer(admin, tokenContract.balanceOf(this))); admin.transfer(address(this).balance); } }
0.4.18