https://github.com/runner365/gamenft
一个基于 Sepolia 测试网的区块链俄罗斯方块游戏,代码仓库分为三层: 智能合约层(Solidity + Foundry);前端层Vue 3;后端层Go;
https://github.com/runner365/gamenft
Last synced: about 16 hours ago
JSON representation
一个基于 Sepolia 测试网的区块链俄罗斯方块游戏,代码仓库分为三层: 智能合约层(Solidity + Foundry);前端层Vue 3;后端层Go;
- Host: GitHub
- URL: https://github.com/runner365/gamenft
- Owner: runner365
- Created: 2026-05-20T03:10:25.000Z (27 days ago)
- Default Branch: master
- Last Pushed: 2026-05-22T12:58:04.000Z (24 days ago)
- Last Synced: 2026-06-15T00:32:56.106Z (about 16 hours ago)
- Language: Solidity
- Size: 27.9 MB
- Stars: 2
- Watchers: 0
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
> 中文 | [English](README_en.md)
一个基于 Sepolia 区块链俄罗斯方块游戏.
核心玩法: 玩家在浏览器玩俄罗斯方块,根据游戏表现获得奖励(刀、手枪、炸弹), 并将道具上架到市场合约进行交易。获得的 NFT 可以在链上市场用 GameToken 上架交易,GameToken 与 ETH 之间可通过 Uniswap 互相兑换。
# GameNFT — 项目概述
项目功能:
* 俄罗斯方块游戏,玩家可以在Sepolia网络上进行游戏,获得奖励NFT,包括刀、手枪、炸弹。
* 游戏奖励NFT的合约地址在Sepolia网络上部署,玩家可以在Sepolia网络上进行游戏,获得奖励NFT。
* 玩家可以将获得的NFT上架到市场合约进行交易,市场合约支持ERC1155类型的NFT。
* 市场合约支持ERC1155类型的NFT,玩家可以将获得的NFT上架到市场合约进行交易。
## 主要合约
* GameToken.sol:GameToken是游戏的代币,基于ERC20标准,玩家需要用ETH在Uniswap上兑换GameToken。GameToken可以在Uniswap上兑换为ETH。
1)玩家可以在Uniswap上兑换GameToken
2)玩家可以用GameToken购买独特NFT
3)玩家可以在市场合约上架NFT进行交易
* GameItems.sol:GameItems是游戏的奖励NFT合约,基于ERC1155标准,玩家可以在Sepolia网络上进行游戏,获得奖励NFT。
玩家可以在Sepolia网络上进行游戏,获得奖励NFT。如:某address用户在游戏中获得了一把刀,立刻上链到GameItems合约中。
* NFTMarketplace.sol:NFTMarketplace是游戏的NFT市场合约,基于ERC1155标准,玩家可以在市场合约上架NFT进行交易。
1)玩家可以在市场合约上架NFT进行交易,如:某address用户上架了3把刀,价格为100GameToken。
2)玩家可以在市场合约上购买NFT进行交易,如:某address用户购买了3把刀,支付了100GameToken。
* UniswapLiquiditySetup.sol:UniswapLiquiditySetup是游戏的Uniswap流动性合约,玩家可以在Uniswap上兑换GameToken。
## 后端服务(golang)
* 监听区块链事件:监听GameItems合约的TransferSingle事件,获取玩家获得NFT的记录,并存储到数据库中。
* 提供API接口:提供玩家查询NFT记录的接口,玩家可以通过接口查询自己的NFT记录。
* 数据库:使用SQLite数据库存储玩家NFT记录,数据库文件为gamenft.db。
## 前端应用(Vue3)-GameNFT
* 俄罗斯方块游戏:玩家可以在浏览器玩俄罗斯方块,根据游戏表现获得链上ERC-1155 NFT奖励(刀、手枪、炸弹)。
* NFT市场:玩家可以在市场页面查看所有上架的NFT,进行购买和销售。
* 玩家可以在市场页面上架自己的NFT进行交易。
* 玩家可以在市场页面购买其他玩家上架的NFT进行交易。
* 玩家可以在市场页面查看自己的NFT记录。
注意:钱包采用Phantom Wallet。
玩家需要在Phantom Wallet中创建一个钱包,才能进行游戏和交易。