GregTao
本帖最后由 GregTao 于 2022-7-14 21:44 编辑
资源包作物模型生成器 —— 简单的命令行工具


虽然很水(可能?)


使用方法

1. 在exe所在文件夹右键点击从终端打开(或Win+R打开“运行”后输入“cmd”,并用cd /d 【路径】命令将路径切换)

2. 输入"./modelspawner.exe [命名空间] [作物英文ID] [最小age] [最大age]"。如下图:



生成文件中,无数字后缀的文件是blockstate文件。


获取程序

1. 蓝奏:modelspawner.exe - 蓝奏云 (lanzoub.com)

2.  自行编译:(参考环境:VScode,mingw64-4.3.5, g++8.1.0,C++14)

#include <iostream>
#include <cstdio>
#include <ctime>
#include <fstream>
#include <iomanip>
using namespace std;
int main(int argc, char *argv[])
{
    if (argc <= 3)
    {
        printf("Usage: ~~~ namespace cropName minage maxage");
        return 0;
    }
    string space = argv[1];
    string crop = argv[2];
    string minAgeS = argv[3];
    int minAge = atoi(minAgeS.c_str());
    string maxAgeS = argv[4];
    int maxAge = atoi(maxAgeS.c_str());
    string stateFile = crop + ".json";
    ofstream writeState(stateFile);
    writeState << "{\n  \"variants\": {\n";
    for (int i = minAge; i <= maxAge; i++) {
        string modelFile = crop + to_string(i) + ".json";
        ofstream writeModel(modelFile);
        writeState << "    \"age=" << i << "\": { \"model\": \"" << space << ":block/" << crop << i << "\" }";
        if (i != maxAge) {
            writeState << ",\n";
        } else {
            writeState << "\n";
        }
        writeModel << "{\n  \"parent\": \"block/crop\",\n  \"textures\": {\n    \"crop\": \"" << space << ":block/" << crop << i << "\"\n  }\n}";
        cout << "Wrote AGE " << i << endl;
    }
    writeState << "  }\n}\n";
    return 0;
}




挽秋丶
MCBBS有你更精彩~

漏途
感谢大佬分享 大佬辛苦啦

李虹鲛
MCBBS有你更精彩

没味的蛋糕
感谢大佬的分享

i断桥i烟雨i
感谢大佬分享

李虹鲛

6666666666

真情实感非水帖

小莫云岚

感谢分享。支持

踩踩踩踩踩
谢谢大佬的分享

GGYYZZ
谢谢大佬的分享,很精美的页面,功能强大。

qq2593653436
感谢大佬分享

第一页 上一页 下一页 最后一页