洛谷转载。。。感谢原作者(4)
2025-03-05 22:06:29
发布于:广东
string type;
cin >> type;
if(type == "block")
{
int id, num;
cin >> id >> num;
if(id < 0 || id > block_max)
{
SetPos(0, 32);
cout << "错误:方块ID越界";
}
else
{
fkl[now].id = id;
fkl[now].fluid = block[fkl[now].id].fluid;
fkl[now].hard = block[fkl[now].id].hard;
fkl[now].color = block[fkl[now].id].color;
fkl[now].level = block[fkl[now].id].level;
fkl[now].name = block[fkl[now].id].name;
fkl[now].txt = block[fkl[now].id].txt;
fknum[now] = num;
SetPos(0, 32);
cout << "已将方块栏第" << now << "处";
cout << "设为" << block[id].name;
}
}
else if(type == "item")
{
int id, num;
cin >> id >> num;
if(id < 0 || id > item_max)
{
SetPos(0, 32);
cout << "错误:物品ID越界";
}
else
{
wpl[now - 5].id = id;
wpl[now - 5].hurt = item[wpl[now - 5].id].hurt;
wpl[now - 5].level = item[wpl[now - 5].id].level;
wpl[now - 5].rare = item[wpl[now - 5].id].rare;
wpl[now - 5].speed = item[wpl[now - 5].id].speed;
wpl[now - 5].name = item[wpl[now - 5].id].name;
wpnum[now - 5] = num;
SetPos(0, 32);
cout << "已将物品栏第" << now - 5 << "处";
cout << "设为" << item[id].name;
}
}
else if(type == "effect")
{
int id, time, level;
cin >> id >> time >> level;
if(id < 0 || id > buff_max)
{
SetPos(0, 32);
cout << "错误:效果ID越界";
}
else
{
buff_give(buff[id], level, time);
buff_merge();
SetPos(0, 32);
cout << "已给予" << level << "级" << buff[id].name;
}
}
else
{
SetPos(0, 32);
cout << "错误:没有该类型";
}
}
else if(main_com == "delete")
{
string type;
cin >> type;
if(type == "block")
{
int id;
cin >> id;
if(id < 0 || id > block_max)
{
SetPos(0, 32);
cout << "错误:方块ID越界";
}
else
{
block_delete(block[id]);
SetPos(0, 32);
cout << "已删除 " << block[id].name;
}
}
else if(type == "item")
{
int id;
cin >> id;
if(id < 0 || id > item_max)
{
SetPos(0, 32);
cout << "错误:物品ID越界";
}
else
{
item_delete(item[id]);
SetPos(0, 32);
cout << "已删除 " << item[id].name;
}
}
else
{
SetPos(0, 32);
cout << "错误:没有该类型";
}
}
else if(main_com == "add_xp")
{
int ax;
cin >> ax;
if(ax < 0)
{
SetPos(0, 32);
cout << "错误:不能降低xp" << endl;
}
else
{
xp += ax;
}
}
else if(main_com == "bomb")
{
int lvl;
cin >> lvl;
if(lvl < 0)
{
SetPos(0, 32);
cout << "错误:爆炸等级不能为负数" << endl;
}
else if(lvl > 20)
{
SetPos(0, 32);
cout << "错误:爆炸等级不能高于20" << endl;
}
else
{
bomb(playerx, playery, lvl);
}
}
else if(main_com == "tp")
{
int x, y;
cin >> x >> y;
playerx = x;
playery = y;
block_copy(playerx, playery, 19);
}
else if(main_com == "kill")
{
attack(1e9, "玩家被一种奇怪的力量抹杀");
}
else if(main_com == "attack")
{
int num;
cin >> num;
attack(num, "玩家被一种奇怪的力量抹杀");
}
else if(main_com == "health")
{
int num;
cin >> num;
health += num;
}
else if(main_com == "set_health")
{
int new_health;
cin >> new_health;
health = new_health;
attack(0, "玩家被一种奇怪的力量抹杀");
}
else if(main_com == "set_oxygen")
{
int new_oxygen;
cin >> new_oxygen;
if(new_oxygen >= 20 || new_oxygen < 0)
{
SetPos(0, 32);
cout << "错误:氧气值不在正常范围内" << endl;
}
else
{
oxygen = new_oxygen;
}
}
else
{
SetPos(0, 32);
cout << "错误:未知命令";
}
SetPos(0, 33);
cout << " ";
SetPos(0, 33);
system("pause");
SetPos(0, 30);
cout << " ";
SetPos(0, 31);
cout << " ";
SetPos(0, 32);
cout << " ";
SetPos(0, 33);
cout << " ";
}
}
else wjjd = 0;
}
}
void jiaocheng()
{
SetPos(2, 2);
Color(5), cout << "世界与我 Craft And My 新手教程" << endl;
Sleep(400);
SetPos(2, 4);
Color(1), cout << "这款游戏是2D版的";
Color(6), cout << "我的世界(Minecraft)";
Sleep(400);
SetPos(2, 6);
Color(0), cout << "游戏的第一项基本操作是移动" << endl;
Sleep(400);
SetPos(42, 4);
Color(5), cout << "w";
SetPos(2, 8);
cout << "现在跳跃 ";
char x = input('w', 'w');
SetPos(40, 6);
Color(5), cout << "a";
SetPos(2, 8);
cout << "现在向左移动";
x = input('a', 'a');
SetPos(44, 6);
Color(5), cout << "d";
SetPos(2, 8);
cout << "现在向右移动";
x = input('d', 'd');
SetPos(2, 8);
cout << "做的好! ";
Sleep(400);
SetPos(2, 10);
Color(0), cout << "你可以使用另一套按键挖掘或放置方块" << endl;
Sleep(400);
int cnt[4] = {5, 5, 5, 5};
int rank = 0, now = 0;
SetPos(2, 14);
cout << "持续点击方块直到它变成白色";
while(cnt[0] || cnt[1] || cnt[2] || cnt[3])
{
Sleep(50);
rank++;
if(rank % 10 == 0)
{
Color(0);
if(now == 0)
{
now++;
SetPos(2, 12);
cout << "使用 i 挖掘上面方块";
}
else if(now == 1)
{
now++;
SetPos(2, 12);
cout << "使用 j 挖掘左面方块";
}
else if(now == 2)
{
now++;
SetPos(2, 12);
cout << "使用 l 挖掘右面方块";
}
else if(now == 3)
{
now = 0;
SetPos(2, 12);
cout << "使用 k 挖掘下面方块";
}
}
SetPos(62, 4);
Color(cnt[0]), cout << "i";
SetPos(60, 6);
Color(cnt[1]), cout << "j";
SetPos(64, 6);
Color(cnt[2]), cout << "l";
SetPos(62, 8);
Color(cnt[3]), cout << "k";
char y = ' ';
if(_kbhit()) y = input();
if(y == 'i') cnt[0] = max(cnt[0] - 1, 0);
if(y == 'j') cnt[1] = max(cnt[1] - 1, 0);
if(y == 'l') cnt[2] = max(cnt[2] - 1, 0);
if(y == 'k') cnt[3] = max(cnt[3] - 1, 0);
}
Color(0);
SetPos(2, 12);
cout << "你完成了这项任务! " << endl;
Sleep(400);
SetPos(2, 16);
Color(7), cout << "注意,只有手中拿物品的时候才能挖掘" << endl;
Sleep(800);
SetPos(2, 18);
Color(0), cout << "在你的物品栏中,0~4为方块 5~9为物品" << endl;
SetPos(2, 20);
Color(2), cout << "0 1 2 3 4 ";
Color(1), cout << "5 6 7 8 9";
SetPos(2, 22);
Color(0), cout << "地图中会生成许多结构 等待着你去探索" << endl;
Sleep(1000);
SetPos(2, 24);
cout << "新手教程到此结束,现在,生成你的第一张地图!" << endl;
Sleep(1000);
SetPos(2, 26);
system("pause");
system("cls");
cout << "你的第一张地图正在生成中 0%" << endl;
init();
cout << "50%";
print_data();
cout << "100%";
}
int main()
{
//世界准备
system("mode con cols=130 lines=35");
srand(time(0));
HideCursor();
SetConsoleTitle("世界与我 0.8_v2.3");
cundang:
cout << "Craft and My: 世界与我" << endl;
cout << "1 使用原先存档" << endl;
cout << "2 重置新的世界" << endl;
cout << "3 查看更新日志" << endl;
cout << "4 新手教程(";
Color(5), cout << "新人必看";
Color(0), cout << ")" << endl;
cout << "版本: 测试版0.8_v2.3" << endl;
char n = input('1', '4');
if(n == '1') input_data();
else if(n == '2')
{
cout << "世界种子:(数字 输入0以随机选择)" << endl;
int zhongzi;
cin >> zhongzi;
if(zhongzi != 0) srand(zhongzi);
cout << "选择模式:" << endl;
cout << "1 生存:" << endl;
cout << " 挖掘 战斗 成为英雄!" << endl;
cout << "2 创造:" << endl;
cout << " 建造 规划 成为上帝!" << endl;
cout << "3 极限:" << endl;
cout << " 求生 变强 成为王者!" << endl;
char m = input('1', '3');
if(m == '1') gamemode = 0;
else if(m == '2') gamemode = 1;
else gamemode = 2;
system("cls");
SetPos(0, 0);
cout << "Map 地图生成中 0%" << endl;
init();
cout << "50%" << endl;
print_data();
cout << "100%" << endl;
system("cls");
srand(time(0));
}
else if(n == '3')
{
system("cls");
cout << "更新日志" << endl;
int page = 1, pagemax = 3;
while(1)
{
Color(0);
system("cls");
cout << "A 上一页 D 下一页 E退出" << endl;
cout << page << '/' << pagemax << "页" << endl;
if(page == 1)
{
Color(6), cout << "(1) 0.6pre1" << endl;
Color(6), cout << "(2) 0.6pre2" << endl;
Color(5), cout << "(3) 0.6" << endl;
Color(6), cout << "(4) 0.7pre1" << endl;
Color(6), cout << "(5) 0.7pre2" << endl;
Color(6), cout << "(6) 0.7pre3" << endl;
Color(6), cout << "(7) 0.7pre4" << endl;
Color(5), cout << "(8) 0.7" << endl;
Color(5), cout << "(9) 0.7a" << endl;
}
else if(page == 2)
{
Color(5), cout << "(1) 0.7b" << endl;
Color(5), cout << "(2) 0.7c" << endl;
Color(6), cout << "(3) 0.8pre1" << endl;
Color(6), cout << "(4) 0.8pre1.1" << endl;
Color(6), cout << "(5) 0.8pre1.2" << endl;
Color(6), cout << "(6) 0.8pre2" << endl;
Color(6), cout << "(7) 0.8pre2.1" << endl;
Color(5), cout << "(8) 0.8_v1" << endl;
Color(5), cout << "(9) 0.8_v2" << endl;
}
else if(page == 3)
{
Color(5), cout << "(1) 0.8_v2.1" << endl;
Color(5), cout << "(2) 0.8_v2.2" << endl;
Color(5), cout << "(3) 0.8_v2.3" << endl;
Color(0), cout << "(4)" << endl;
Color(0), cout << "(5)" << endl;
Color(0), cout << "(6)" << endl;
Color(0), cout << "(7)" << endl;
Color(0), cout << "(8)" << endl;
Color(0), cout << "(9)" << endl;
}
char n = input();
if(n == 'a')
{
if(page != 1) page--;
}
else if(n == 'd')
{
if(page != pagemax) page++;
}
else if(n >= '1' && n <= '9')
{
if(page == 1)
{
switch(n)
{
case '1':
Color(6), cout << "内部版0.6pre1" << endl, Color(0);
cout << "- 更新2种新的效果" << endl;
cout << "- 更新4种新的方块" << endl;
cout << "- 新增更新日志栏" << endl;
cout << "- 更新血量栏的颜色" << endl;
system("pause");
system("cls");
break;
case '2':
Color(6), cout << "内部版0.6pre2" << endl, Color(0);
cout << "- 更新1个新的配方栏" << endl;
cout << "- 使药水配方能够合成" << endl;
cout << "- 修改属性界面" << endl;
cout << "- 修改日志界面" << endl;
cout << "- 使桶能够收集流体" << endl;
cout << "- 修复一些漏洞" << endl;
system("pause");
system("cls");
break;
case '3':
Color(5), cout << "测试版0.6" << endl, Color(0);
cout << "- 更新2个新的命令" << endl;
cout << "- 新增命令系统" << endl;
cout << "- 修复一些漏洞" << endl;
system("pause");
system("cls");
break;
case '4':
Color(6), cout << "内部版0.7pre1" << endl, Color(0);
cout << "- 更新4个方块 5个物品" << endl;
cout << "- 增加结构 海之环" << endl;
cout << "- 扩大地图(与之前存档不兼容)" << endl;
system("pause");
system("cls");
break;
case '5':
Color(6), cout << "内部版0.7pre2" << endl, Color(0);
cout << "- 更新海洋合成专区" << endl;
cout << "- 新增Z键键位提示" << endl;
cout << "- 修复一些漏洞" << endl;
system("pause");
system("cls");
break;
case '6':
Color(6), cout << "内部版0.7pre3" << endl, Color(0);
cout << "- 修改游戏名称" << endl;
system("pause");
system("cls");
break;
case '7':
Color(6), cout << "内部版0.7pre4" << endl, Color(0);
cout << "- 修复一些漏洞" << endl;
system("pause");
system("cls");
break;
case '8':
Color(5), cout << "测试版0.7" << endl, Color(0);
cout << "- 修改give命令" << endl;
cout << "- 新增1个命令" << endl;
cout << "- 修改主界面" << endl;
cout << "- 重置存档时允许输入种子" << endl;
cout << "- 修复一些漏洞" << endl;
system("pause");
system("cls");
break;
case '9':
Color(5), cout << "测试版0.7a" << endl, Color(0);
cout << "- 修改提升了程序的兼容性" << endl;
system("pause");
system("cls");
break;
default:
break;
}
}
else if(page == 2)
{
switch(n)
{
case '1':
Color(5), cout << "测试版0.7b" << endl, Color(0);
cout << "- 修复了0.7pre1以来致命的错误(错误发现者 武意程先生)" << endl;
system("pause");
system("cls");
break;
case '2':
Color(5), cout << "测试版0.7c" << endl, Color(0);
cout << "- 增加了几种新的树" << endl;
system("pause");
system("cls");
break;
case '3':
Color(6), cout << "内部版0.8pre1" << endl, Color(0);
cout << "- 全新结构:于苗神殿登场!" << endl;
cout << "- 全新结构:宝藏岛登场!" << endl;
cout << "- 下界地形优化:不再填满方块!" << endl;
cout << "- 新增多个物品、方块" << endl;
cout << "- 新增等级系统" << endl;
cout << "- 其它一些小改动or小优化" << endl;
system("pause");
system("cls");
break;
case '4':
Color(6), cout << "内部版0.8pre1.1" << endl, Color(0);
cout << "- 宝藏探测器的一点小更改" << endl;
cout << "- 补上了0.8pre1漏掉的一个小改动" << endl;
cout << "- 等级系统BUG修复" << endl;
system("pause");
system("cls");
break;
case '5':
Color(6), cout << "内部版0.8pre1.2" << endl, Color(0);
cout << "- 大整改!!!" << endl;
cout << "- 爆炸更新:添加了巨大的爆炸系统!" << endl;
cout << "- 指令更新:增加了许多种指令!" << endl;
cout << "- 伤害更新:大幅提升了高伤害时的减免!" << endl;
cout << "- 经验更新:经验等级现在与生命值和挖掘速度挂钩!" << endl;
cout << "- BUG 修改:修改了许多BUG !" << endl;
system("pause");
system("cls");
break;
case '6':
Color(6), cout << "内部版0.8pre2" << endl, Color(0);
cout << "- 修改代码结构" << endl;
system("pause");
system("cls");
break;
case '7':
Color(6), cout << "内部版0.8pre2.1" << endl, Color(0);
cout << "- 灵魂套前导预告:灵魂地牢" << endl;
cout << "- 灵魂地牢:大型地牢结构(好吧没多大),内部含有珍贵魂石" << endl;
system("pause");
system("cls");
break;
case '8':
Color(5), cout << "测试版0.8_v1" << endl, Color(0);
cout << "- 灵魂地牢更新:" << endl;
cout << "- 地牢扩大,增加死水池" << endl;
cout << "- 预计地牢在接下来几个版本里将会持续扩张" << endl;
cout << "- 修复了死亡后重生在地底的BUG" << endl;
cout << "- 新增一个修改氧气值的指令" << endl;
cout << "- 更改伤害指令的死亡信息" << endl;
system("pause");
system("cls");
break;
case '9':
Color(5), cout << "测试版0.8_v2" << endl, Color(0);
cout << "- 灵魂地牢更新:" << endl;
cout << "- 地牢再一次扩大 增加了几个目前没用的房间" << endl;
cout << "- 地牢石和魂石的硬度大幅提升 成为目前可以破坏的最坚硬的物质" << endl;
cout << "- 新增灵魂装备 目前灵魂装备是全游戏最强的装备" << endl;
cout << "- 修改了合成中的一些BUG" << endl;
cout << "- BETA测试专属功能:x=1200格下方必生成灵魂地牢" << endl;
cout << "- 修复了日志栏一直跳转不显示目录的BUG" << endl;
system("pause");
system("cls");
break;
default:
break;
}
}
else if(page == 3)
{
switch(n)
{
case '1':
Color(5), cout << "测试版0.8_v2.1" << endl, Color(0);
cout << "- 改了一下生成 现在不会卡崩了" << endl;
cout << "- 船新新手教程 基础操作手把手指引!" << endl;
system("pause");
system("cls");
break;
case '2':
Color(5), cout << "测试版0.8_v2.2" << endl, Color(0);
cout << "- 改摔伤 降低了摔落伤害 同时修复了单次坠落格数过高时无法再跳跃的问题" << endl;
cout << "- 修改了硬度系统 增高降低了某些方块的硬度 调高了一些镐子的挖掘速度" << endl;
cout << "- 增大了海之环" << endl;
system("pause");
system("cls");
case '3':
Color(5), cout << "测试版0.8_v2.3" << endl, Color(0);
cout << "- 修改宝藏岛 让它的生成变得更难" << endl;
cout << "- 增加了未完成的下界要塞:生成机制重做中" << endl;
system("pause");
system("cls");
default:
break;
}
}
}
else if(n == 'e')
{
system("cls");
goto cundang;
}
}
}
else if(n == '4')
{
system("cls");
jiaocheng();
}
minecraft();
return 0;
}
就这些了,如果有需要其他的可以找我。
加纳!!!!
这里空空如也
有帮助,赞一个