- 分享
小游戏1.2.2<无报错>
- @ 2026-4-20 16:32:03
拒绝AI,纯手写
毕竟是手写
可能还有BUG
不过现在能运行了
我已经在努力修BUG了
支持一下吧~qwq
#include<bits/stdc++.h>
#include <fstream>
#include <string>
#include <cstdlib>
#include <ctime>
#include <iomanip>
#include <algorithm>
#include <sstream>
#include <windows.h>
#include <vector>
#include <limits>
#include <cstdlib>
using namespace std;
int shan;
int hp=1;
//——————等待数组——————
void sl(int sw){
if(sw==1){
Sleep(200);
return ;
}
if(sw==2){
Sleep(300);
return ;
}
}
//--------逐字输出-----
void sout(string se){
for(int i=0;i<se.size();i++){
cout<<se[i];
Sleep(120);
}
cout<<"\n";
return ;
}
//———————战斗结构体————————
struct zhan{
int id;
string name;
int shang;
};
vector<int> hui1;
//srand((unsigned int)time(NULL));
//rand用法 int 变量=a + rand() % (b - a + 1)
vector<zhan> wuqi(1000009);//战斗数组
//----------- 战斗系统 ------------
int zhand(int x,int s2){
srand((unsigned int)time(NULL));
cout<<"*是否战斗(y/n)\n";
char sds;
cin>>sds;
if(sds=='n') return 0;
else{
cout<<"*请选择武器\n";
int len=wuqi.size();
for(int i=1;i<=3;i++){
cout<<wuqi[i].id<<"."<<wuqi[i].name<<" ";
}
int nsd;
cin>>nsd;
cout<<"你选择了<"<<wuqi[nsd].name<<">伤害:"<<wuqi[nsd].shang;
string scs1=wuqi[nsd].name;
int scs2=wuqi[nsd].shang;
cout<<"\n";
cout<<"*开始战斗...";
int wer=( rand() % (3 - 1 + 1))+1;
int fool=0;
if(wer==1){
cout<<"\n*你先发起攻击..";
fool=1;
}
else{
cout<<"\n*"<<s2<<"先发起进攻击..";
fool=2;
}
if(fool=1){
}
else{
switch(s2){
case 1:{
cout<<"2342345dsf\n";
break;
}
case 2:{
cout<<"182347m";
break;
}
case 4:{
int xue=180;
cout<<"*对方使用了骨刀\n";
int forl1=( rand() % (7 - 1 + 1))+1;
if(forl1>=6){
}
else{
cout<<"*你触发了'闪避'";
cout<<"<闪避技能熟练度+2>";
shan+=2;
cout<<"*你躲开了对方的攻击\n";
cout<<" 是否还击(y/n/27f*^%*n)";
char apple;
cin>>apple;
if(apple=='y'){
cout<<"*你选择了'还击'\n";
cout<<"*你打出"<<scs2<<"点伤害\n";
cout<<"*对方受伤了\n";
//
xue-=scs2;
//
cout<<"*对方血量:"<<xue<<"\n";
cout<<"*我方血量:"<< hp<<"\n";
}
else{
cout<<"*sans打出伤害:10\n";
cout<<"*当前血量:"<<hp<<"->"<<hp-10;
cout<<" You Died...\n";
cout<<"<点击运行重新开始吧...>\n";
return 0;
}
}
break;
}
case 5:{
int Omegahp=1000;
cout<<"Omega:你知道我是谁吗?\n";
cout<<"Omega:没关系...\n" ;
cout<<"Omega:不知道也没什么大不了的...\n";
cout<<"*你心中充满决心..\n";
cout<<" <hp=100>/<Omega.hp=1000>\n";
cout<<"*你打出一刀...\n";
cout<<"<打出伤害...999/>\n";
Omegahp-=999;
cout<<"Omega:饿啊...\n" ;
cout<<"(Omega闭上双眼...似乎在..闭目养神..么?)\n" ;
cout<<"Omega:今天..";
Sleep(300);
cout<<"只能有一人活着走出这里!!!\n" ;
Sleep(1000);
cout<<"Omega:来吧...\n";
cout<<"*Omega打出一刀...<打中了你>\n";
Sleep(500);
cout<<"*当前血量:"<<hp<<"->"<<hp-18<<"\n";
hp-=18;
Sleep(700);
cout<<"*Omega使用了尖刺雨\n";
cout<<"Omega<小声嘀咕>:饱含风霜..向阳生长..夏天..死亡..!\n";
Sleep(300);
cout<<"*你被打中了!!\n";
cout<<"*当前血量:"<<hp<<"->"<<hp-50<<"\n";
cout<<"*该你反击了...\n";
cout<<"*输入伤害倍数...<最高为8>";
int shan1;
cin>>shan1;
cout<<"";
break;
}
}
}
}
}//--------目录----------
int juqing(int xwsde){
cout<<"加载目录中....\n";
Sleep(3700);
cout<<"请检查网络!!!\n";
cout<<"请退出检查\n";
_sleep(100);
cout<<"第一章 走廊\n";
Sleep(200);
cout<<"第二章 地下城之战\n";
sl(1);
cout<<"第三章 皇宫决爵\n";
sl(1);
cout<<"第四章 诛城汇皖\n";
sout("是否退出...(y/n)\n");
char wert;
cin>>wert;
if(wert=='y'){
return 0;
}
else{
for(int i=1;;i++){
cout<<"是否开始<走廊>...(y/n)\n";
char wert;
cin>>wert;
if(wert=='y'){
return 0;
}
}
}
return 0;
}
int dy1(int www){
juqing(1);
srand((unsigned int)time(NULL));
cout<<"开始游戏 (y/n)";
char cdy;
cin>>cdy;
if(cdy=='n') return 0;
for(int i=1;i<=2;i++) {
cout<<"加载中.";
Sleep(200);
system("cls"); // 清屏
cout<<"加载中..";
Sleep(210);
system("cls"); // 清屏
cout<<"加载中...";
Sleep(220);
system("cls"); // 清屏
}
sout("*你出现在一个阴森的走廊");
cout<<"\n";
int scd;
cout<<"*你现在有两种选择..\n";
cout<<" 1.向前走\n";
cout<<" 2.推开旁边的房门\n";
cin>>scd;
if(scd==2){
cout<<"*你没有钥匙...dasdfwe^&$dh\n";
while(scd==2){
cout<<"*你现在有两种选择..\n";
cout<<" 1.向前走\n";
cout<<" 2.推开旁边的房门\n";
cin>>scd;
if(scd==2){
system("cls"); // 清屏
cout<<"*你没有钥匙...\n";
}
}
}
cout<<"*你向前走去...\n";
cout<<" 1.靠墙走\n";
cout<<" 2.大摇大摆的走过去\n";
int kan;
cin>>kan;
if(kan==2){
cout<<"You DIED\n\t死因:掉进陷阱了\n";
char hui;
cout<<"是否回档?(y/y)";
cin>>hui;
dy1(1);
}
cout<<"*你走过来了,你一阵后怕...\n";
cout<<"*你遇到了";
int r=(rand() % (5-1+1))+1;
int fl1=0;
int fl2=0;
string s1;
switch(r){
case 1:
cout<<"大剑骷髅...\n";
cout<<"危险程度:*****";
fl1=1;
s1="大剑骷髅";
break;
case 2:
cout<<"小型史莱姆\n";
cout<<"*无危险度\n";
char xun;
cout<<"*是否驯服(y/n)";
cin>>xun;
fl1=2;
if(xun=='n'){
cout<<"*你离开了...\n";
fl1=2;
}
else if(xun=='y'){
int r1=( rand() % (6 - 1 + 1))+1;
if(r1>=3){
cout<<"*驯服成功!\n";
}
else{
cout<<"*驯服失败!\n";
}
}
break;
case 3:
cout<<"*僵尸骑兵\n";
cout<<"*危险等级:***\n";
fl1=3;
s1="僵尸骑兵";
break;
case 4:
cout<<"*sans\n";
cout<<"*危险等级:********\n";
fl1=4;
s1="sans";
break;
case 5:
cout<<"*Omega\n";
cout<<"*危险等级:****\n";
fl1=5;
s1="Omega";
break;
break;
}
if(fl1!=2){
zhand(1,fl1);//战斗
}
return 0;
}
int main() {
srand((unsigned int)time(NULL));
wuqi[1].name="木棒";
wuqi[1].id=1;
wuqi[1].shang=10;
wuqi[2].name="燧石小刀";
wuqi[2].id=2;
wuqi[2].shang=13;
wuqi[3].name="石头";
wuqi[3].id=3;
wuqi[3].shang=8;
cout<<"你想干甚么?";
int dy=1;
for(int i=1;;i++){
cout<<"w/s键选择\n";
char ws;
cin>>ws;
if(ws=='s'&&dy<2) dy++;
if(ws=='w'&&dy>1) dy--;
system("cls"); // 清屏
if(dy==1){
cout<<">传说之下<\n";
cout<<"确定吗?(y/n)\n";
cout<<" 我的世界(敬请期待) \n";
cout<<" (去投稿吧) \n";
char sed;
cin>>sed;
if(sed=='y'){
dy1(1);
system("cls"); // 清屏
}
}
if(dy==2){
cout<<" 传说之下 \n";
cout<<">我的世界(敬请期待)<\n";
cout<<" (去投稿吧) \n";
}
}
return 0;
}
持续更新中...
敬请期待...
修了90%的运行BUG
2 条评论
-
张柏然 @ 2026-4-24 22:16:09安卓版本:
#include <iostream> #include <vector> #include <string> #include <cstdlib> #include <ctime> #include <unistd.h> #include <algorithm> using namespace std; int shan = 0; int hp = 1; void sl(int sw) { if (sw == 1) usleep(200000); if (sw == 2) usleep(300000); } void sout(string se) { for (char c : se) { cout << c; cout.flush(); usleep(120000); } cout << "\n"; } struct zhan { int id; string name; int shang; }; vector<zhan> wuqi(100); int zhand(int x, int s2) { cout << "*是否战斗(y/n)\n"; char sds; cin >> sds; if (sds == 'n') return 0; cout << "*请选择武器\n"; for (int i = 1; i <= 3; i++) cout << wuqi[i].id << "." << wuqi[i].name << " "; int nsd; cin >> nsd; cout << "你选择了<" << wuqi[nsd].name << ">伤害:" << wuqi[nsd].shang << "\n"; int scs2 = wuqi[nsd].shang; cout << "*开始战斗...\n"; int wer = rand() % 3 + 1; int fool = (wer == 1) ? 1 : 2; if (fool == 2) { switch (s2) { case 4: { int xue = 180; cout << "*对方使用了骨刀\n"; int forl1 = rand() % 7 + 1; if (forl1 < 6) { cout << "*你触发了'闪避'\n<闪避技能熟练度+2>\n"; shan += 2; cout << "是否还击(y/n)"; char apple; cin >> apple; if (apple == 'y') { cout << "*你打出" << scs2 << "点伤害\n"; xue -= scs2; cout << "*对方血量:" << xue << "\n*我方血量:" << hp << "\n"; } else { cout << "*sans打出伤害:10\n"; hp -= 10; cout << "You Died...\n"; return 0; } } break; } case 5: { int Omegahp = 1000; cout << "Omega:你知道我是谁吗?\nOmega:没关系...\n"; cout << "*你心中充满决心..\n<hp=100>/<Omega.hp=1000>\n"; cout << "*你打出一刀...伤害999\n"; Omegahp -= 999; cout << "Omega:今天只能有一人活着走出这里!!!\n"; usleep(500000); cout << "*Omega打中了你,血量-18\n"; hp -= 18; cout << "*Omega尖刺雨,血量-50\n"; hp -= 50; cout << "*该你反击了...\n"; break; } default: cout << "敌人发起攻击!\n"; } } return 0; } int juqing(int xwsde) { cout << "加载目录中....\n"; usleep(3700000); cout << "第一章 走廊\n第二章 地下城之战\n第三章 皇宫决爵\n第四章 诛城汇皖\n"; cout<<"是否退出...(y/n)"; char wert; cin >> wert; if (wert == 'y') return 0; while (true) { cout << "是否开始<走廊>...(y/n)\n"; cin >> wert; if (wert == 'y') return 0; } } int dy1(int www) { juqing(1); cout << "开始游戏 (y/n)"; char cdy; cin >> cdy; if (cdy == 'n') return 0; for (int i = 1; i <= 2; i++) { cout << "加载中.\r"; cout.flush(); usleep(200000); cout << "加载中..\r"; cout.flush(); usleep(210000); cout << "加载中...\r"; cout.flush(); usleep(220000); cout << " \r"; } cout<<("*你出现在一个阴森的走廊"); int scd; cout << "1.向前走\n2.推开旁边的房门\n"; cin >> scd; while (scd == 2) { cout << "*你没有钥匙!\n1.向前走\n2.推门\n"; cin >> scd; } cout << "*你向前走去...\n1.靠墙走\n2.大摇大摆走\n"; int kan; cin >> kan; if (kan == 2) { cout << "You DIED 死因:掉进陷阱\n是否回档?(y)"; char hui; cin >> hui; dy1(1); return 0; } cout << "*你遇到了:"; int r = rand() % 5 + 1; int fl1 = 0; switch (r) { case 1: cout << "大剑骷髅\n危险程度:*****\n"; fl1 = 1; break; case 2: cout << "小型史莱姆\n是否驯服(y/n)"; fl1 = 2; char xun; cin >> xun; if (xun == 'y') cout << (rand()%6+1>=3 ? "*驯服成功!\n" : "*驯服失败!\n"); break; case 3: cout << "僵尸骑兵\n危险等级:***\n"; fl1 = 3; break; case 4: cout << "sans\n危险等级:********\n"; fl1 = 4; break; case 5: cout << "Omega\n危险等级:****\n"; fl1 = 5; break; } if (fl1 != 2) zhand(1, fl1); return 0; } int main() { srand((unsigned int)time(NULL)); wuqi[1] = {1, "木棒", 10}; wuqi[2] = {2, "燧石小刀", 13}; wuqi[3] = {3, "石头", 8}; int dy = 1; while (true) { cout << "w/s 选择模式\n"; char ws; cin >> ws; if (ws == 's' && dy < 2) dy++; if (ws == 'w' && dy > 1) dy--; system("clear"); if (dy == 1) { cout << ">传说之下<\n确定吗?(y/n)\n 我的世界(敬请期待)\n"; char sed; cin >> sed; if (sed == 'y') { dy1(1); system("clear"); } } else { cout << " 传说之下\n>我的世界(敬请期待)<\n"; } } return 0; }这个大家在Windows系统上无法运行,是为了兼容用鸿蒙或安卓系统的用户而开发的
-
@ 2026-4-20 16:35:06
- 1