Fake Genshin1.0
沿用了抽卡小程序1.6的大部分代码,以后会逐渐变成类似Silly Wisher的无图版
上代码
#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
void jz();
void cka();
void bb();
void ck();
int bd,up,s,a;
int n,x;
char t;
bool flag=true;
bool uppf[100],wpf[100],spf[100];
void sc(string n)
{
for(int i=0;i<n.size();i++)
{
cout<<n[i];
Sleep(10);
}
puts("");
Sleep(15);
}
void open()
{
ifstream in("ysck.txt");
in>>bd;
in>>up;
in>>s;
in>>a;
for(int i=0;i<100;i++) in>>uppf[i];
for(int i=0;i<100;i++) in>>wpf[i];
for(int i=0;i<100;i++) in>>spf[i];
in.close();
}
void cclose()
{
ofstream out("ysck.txt");
out<<bd<<" ";
out<<up<<" ";
out<<s<<" ";
out<<a<<" ";
for(int i=0;i<100;i++) out<<uppf[i]<<" ";
for(int i=0;i<100;i++) out<<wpf[i]<<" ";
}
int main()
{
open();
int cz;
string NAME="原始人";//默认名字为‘原始人’,在此可改
system("title 原神");
jz();//出场动画
cout<<"请输入您的昵称:";
system("cls");
while(1)
{
printf(//输入对应编号进入程序
"=======================================================================================================================\n"
"| |\n"
"| 1.**************抽卡* |\n"
"| ***@@@****@**@***** |\n"
"| **@*******@*@****** |\n"
"| **@*******@@@****** |\n"
"| ***@@@****@**@***** |\n"
"| ******************* |\n"
"| |\n"
"| |\n"
"| |\n"
"| |\n"
"| |\n"
"| |\n"
"| |\n"
"| |\n"
"| |\n"
"|注:按0退出 |\n"
"=======================================================================================================================\n"
);
cin>>cz;
if(cz==0) break;
if(cz==1)
ck();
}
cclose();
}
void ck()
{
system("cls");
srand(time(0));
cout<<"你好!\n";
Sleep(500);
cout<<"我是您的抽卡小助手,接下来是抽卡的一些小规则\n\n";
Sleep(100);
while(1)
{
cout<<"**************************************\n";
cout<<"* 1.卡池分为新手池和UP池,本次UP为尘 *\n";
cout<<"* 世闲游——钟离、无暇之人——爱莉希 *\n";
cout<<"* 雅,五星(S级)陪跑为迪锅巴、小提,四 *\n";
cout<<"* 星(A级)陪跑若干,九十抽小保底,一百 *\n";
cout<<"* 八十抽大保底。 *\n";
cout<<"* 注:按a一抽,按s十连,0退出 *\n";
cout<<"* 五星出率:%2 UP出率(已出五星):%10 *\n";
cout<<"**************************************\n";
cin>>t;
if(t=='a')
{
}
if(t=='0')
break;
if(t=='s')
{
for(int i=1;i<=10;i++)
{
cka();
}
}
if(s>99){
s=100;
cout<<"目前五星99+个 ";
}
else cout<<"目前五星"<<s<<"个 UP";
if(up>99){
up=100;
cout<<"99+个 四星";
}
else cout<<up<<"个 四星";
if(a>99){
a=100;
cout<<"99+个 距离大保底还有";
}
else cout<<a<<"个 距离大保底还有";
cout<<180-bd<<"次\n";
if(t=='b')
{
bb();
}
cclose();
Sleep(2000);
system("cls");
}
}
void jz(){
system("color F0");
cout<<"\n\n\n\n\n\n\n\n\n\n 玖葉";
Sleep(2000);
system("cls");
cout<<"\n\n\n\n\n\n\n\n\n\n 斗原\n\n\n\n\n\n\n\n\n\n\n\n\n\nGAME制作:玖葉 剧情策划:玖葉 如侵立删";
Sleep(2000);
system("cls");
cout<<"\n\n\n\n\n\n\n\n\n\n 加载中\n\n";
cout<<" 火 水 风 雷 草 冰 岩";
Sleep(1000);
system("cls");
cout<<"\n\n\n\n\n\n\n\n\n\n 加载中\n\n";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),252);
cout<<" 火";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),240);
cout<<" 水 风 雷 草 冰 岩";
system("cls");
cout<<"\n\n\n\n\n\n\n\n\n\n 加载中\n\n";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),252);
cout<<" 火";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),249);
cout<<" 水";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),240);
cout<<" 风 雷 草 冰 岩";
Sleep(1000);
system("cls");
cout<<"\n\n\n\n\n\n\n\n\n\n 加载中\n\n";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),252);
cout<<" 火";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),249);
cout<<" 水";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),250);
cout<<" 风";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),240);
cout<<" 雷 草 冰 岩";
Sleep(600);
system("cls");
cout<<"\n\n\n\n\n\n\n\n\n\n 加载中\n\n";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),252);
cout<<" 火";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),249);
cout<<" 水";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),250);
cout<<" 风";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),245);
cout<<" 雷";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),240);
cout<<" 草 冰 岩";
system("cls");
cout<<"\n\n\n\n\n\n\n\n\n\n 加载中\n\n";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),252);
cout<<" 火";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),249);
cout<<" 水";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),250);
cout<<" 风";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),245);
cout<<" 雷";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),242);
cout<<" 草";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),240);
cout<<" 冰 岩";
Sleep(895);
system("cls");
cout<<"\n\n\n\n\n\n\n\n\n\n 加载中\n\n";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),252);
cout<<" 火";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),249);
cout<<" 水";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),250);
cout<<" 风";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),245);
cout<<" 雷";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),242);
cout<<" 草";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),251);
cout<<" 冰";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),240);
cout<<" 岩";
Sleep(1599);
system("cls");
cout<<"\n\n\n\n\n\n\n\n\n\n 加载中\n\n";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),252);
cout<<" 火";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),249);
cout<<" 水";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),250);
cout<<" 风";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),245);
cout<<" 雷";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),242);
cout<<" 草";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),251);
cout<<" 冰";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),254);
cout<<" 岩";
system("cls");
system("color F0");
Sleep(20);
system("color 70");
Sleep(20);
system("color 80");
Sleep(20);
system("color 0F");
Sleep(500);
}
void cka(){
if(bd==180)
{
s++;
x=rand()%10;
if(x>0&&x<6)
{
cout<<"获得——爱莉希雅!\n";
uppf[0]=1;
up++;
}
else
{
cout<<"获得——钟离!\n";
uppf[1]=1;
up++;
}
bd=0;
}
if(bd==90)
{
s++;
x=rand()%100;
if(x>11&&x<17||x==99||x==43||x>=50&&x<=53)
{
x=rand()%10;
if(x>0&&x<6)
{
cout<<"获得——爱莉希雅!\n";
uppf[0]=1;
up++;
}
else
{
cout<<"获得——钟离!\n";
uppf[1]=1;
up++;
}
bd=0;
}
else
{
x=rand()%10;
if(x==1||x==5||x==2||x==10||x==7)
cout<<"获得——迪卢克!\n",wpf[0]=1;
else
cout<<"获得——提纳里!\n",wpf[1]=1;
}
}
x=rand()%1000;
if(x>=11&&x<=21||x>=597&&x<=607)//五星
{
s++;
x=rand()%100;
if(x>11&&x<17||x==99||x==43||x>=50&&x<=53)
{
x=rand()%10;
if(x>0&&x<6)
{
cout<<"获得——爱莉希雅!\n";
uppf[0]=1;
up++;
}
else
{
cout<<"获得——钟离!\n";
uppf[1]=1;
up++;
}
bd=0;
}
else
{
x=rand()%10;
if(x==1||x==5||x==2||x==10||x==7)
cout<<"获得——迪卢克!\n",wpf[0]=1;
else
cout<<"获得——提纳里!\n",wpf[1]=1;
}
}
else
{
x=rand()%100;
if(x>=22&&x<=66)
{
x=rand()%100;
if(x>=1&&x<=20) cout<<"获得——云堇!\n",spf[0]=1;
else if(x>=21&&x<=40) cout<<"获得——班尼特!\n",spf[1]=1;
else if(x>=41&&x<=60) cout<<"获得——行秋!\n",spf[2]=1;
else if(x>=61&&x<=80) cout<<"获得——久岐忍!\n",spf[3]=1;
else if(x>=81&&x<=100) cout<<"获得——香菱!\n",spf[4]=1;
a++;
}
else
cout<<"依托答辩\n";
bd++;
}
}
void bb(){
cout<<NAME<<"的角色库\n-----------------------------------------------------\n";
int y=1;
for(int i=0;i<12;i++)
{
switch(i)
{
case 0:if(uppf[0])cout<<y<<'.',sc("爱莉希雅"),y++;break;
case 1:if(uppf[1])cout<<y<<'.',sc("钟离"),y++;break;
case 2:if(uppf[2])cout<<y<<'.',sc("温迪"),y++;break;
case 3:if(uppf[3])cout<<y<<'.',sc("魈"),y++;break;
case 4:if(wpf[0])cout<<y<<'.',sc("迪卢克"),y++;break;
case 5:if(wpf[1])cout<<y<<'.',sc("提纳里"),y++;break;
case 6:if(wpf[2])cout<<y<<'.',sc("琴团长"),y++;break;
case 7:if(spf[0])cout<<y<<'.',sc("云堇"),y++;break;
case 8:if(spf[1])cout<<y<<'.',sc("班尼特"),y++;break;
case 9:if(spf[2])cout<<y<<'.',sc("行秋"),y++;break;
case 10:if(spf[3])cout<<y<<'.',sc("久岐忍"),y++;break;
case 11:if(spf[4])cout<<y<<'.',sc("香菱"),y++;break;
}
}
}