Solidity实现智能合约——宠物孵化系统(一)

Solidity实现智能合约——宠物孵化系统(一)

上一节中简单介绍了如何实现一个智能合约,接下来我们将实现一个宠物孵化系统。

合约功能:输入宠物名会生成宠物相对于的DNA,然后会将宠物名和DNA存储到一个数组当中,我们可以进行查询。

首先在AnimalFactory.sol文件当中建立一个基础合约AnimalFactory,并指定Solidity编译器版本

pragma solidity ^0.4.19;

contract  AnimalFactory{
    
   
        
    }
    

宠物DNA由16个数字组成

uint dnaDigits = 16;   //宠物DNA位数
uint dnaLength = 10**dnaDigits;

创建宠物结构体

  struct Animal{
        
        string name;
        uint dna;
        
    }

为了将宠物们保存在合约当中,并且让其他合约也能够看到这些宠物,因为需要一个公共数组,创建一个Animal的结构体数组

 Animal [] public animals;

定义一个事件NewAnimal,有三个参数AnimalId,name,以及dna

event NewAnimal(uint AnimalId,string name,uint dna);

定义一个孵化宠物函数,其功能为孵化一个新宠物并添加入animas数组

 //  孵化宠物函数 
    function hatchAnimal(string name,uint dna)
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值