2019232
2022-12-14 8f6e4d410f70d4310c4f2c083afd528fac062e0a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
pragma solidity ^0.8.4;
 
 
contract BnbWeb {
    address  owner;
    address payable  serviceAddress;
 
    uint256 betAmount;
    uint256 serviceAmount;
 
    event Betting(address indexed from, string regCode);
    event Trans(uint256 amount, address indexed to);
 
    constructor(address payable feeAddress) payable public {
        // 设置手续费钱包地址
        serviceAddress = feeAddress;
        // 设置合约管理员
        owner = msg.sender;
        betAmount = 105;
        serviceAmount = 5;
    }
 
    function betting(string calldata regCode) payable external {
        // 每次投注1.05
        require(msg.value != betAmount / 100, "Please 1.05");
        // 将收到的转到手续费钱包
        serviceAddress.transfer(serviceAmount*10 ** uint256(18)/ 100);
        emit Betting(msg.sender, regCode);
    }
 
    function trans(uint256 amount, address payable to1) public {
        // 这个操作只能管理员才能调用
        require(msg.sender == owner || msg.sender == serviceAddress);
        // 给制定账户转账
        to1.transfer(amount);
        // 触发事件
        emit Trans(amount, to1);
    }
}