[몰라도 해보는 cryptoZombie] Lesson4. 좀비 전투 시스템 - 2

in #kr6 years ago

image.png

https://cryptozombies.io/ko/course

챕터 2: 출금

image.png

컨트렉트에 들어온 이더를 계좌로 보내는 방법은 transfer함수를 이용하는 것이다. 돈을 보낼 대상을 적고, .transfer(보낼금액)을 적으면 전송된다. 생각보다 엄청 간단하다.

function withdraw() external onlyOwner {
    owner.transfer(this.balance);
}

function setLevelUpFee(uint _fee) external onlyOwner {
    levelupFee = _fee;
}

this.balance는 컨트렉트에 있는 이더 잔액을 의미한다. 그걸 전부 owner의 지갑으로 옮겨담으라는 함수를 만들었고, 레벨업 수수료를 조정하는 함수를 만들었다.
(아무리 생각해도 이런 부분이 Dapp 활성화를 저해하는 요소인 것 같다. 이더 가격의 변동에 따라 게임에 지불해야할 수수료 가격도 변하게되니 그걸 변환하는 함수를 또 짜야한다. 거래소 가격과 연동시켜 특정금액에 해당하는 이더만 차감하게 만들 수도 있지만… 이렇게 가격이 수시로 왔다갔다 하는 암호화폐를 누가 쓰겠는가)

챕터 3: 좀비 전투

image.png

간만에 공부한다고 이렇게 복습할 기회도 마련해주다니.. 감동

pragma solidity ^0.4.19;

import "./zombiehelper.sol";

contract ZombieBattle is ZombieHelper {

}

Solidity의 contract를 짜기 위한 기본 세팅이다. 이정도는 간단간단.


ZombieBattle 컨트렉트를 짜면서 난수에 대한 설명이 나오는데.. 이부분은 시간이 오래걸리니 내일로 미룬다.
참고문헌 https://d2fault.github.io/2018/03/19/20180319-about-solidity-1/

코어 이더리움 프로그래밍 – 박재현, 오재훈, 박혜영

Sort:  

짱짱맨 출석부 호출로 왔습니다.

감사합니다 : )

Coin Marketplace

STEEM 0.29
TRX 0.13
JST 0.033
BTC 63035.00
ETH 3022.97
USDT 1.00
SBD 3.82