小游戏(后续)
2025-09-12 14:06:02
发布于:浙江
void suiji() {
int a = rand() % 40 + 1;
o[i] = a;
if (a == 1) {
cout << "金刚不坏:加300最大生命值,但攻击减少%8";
} else if (a == 2) {
cout << "蓄力重击:你的普攻伤害提高%160,但有冷却一回合";
} else if (a == 3) {
cout << "盛大开场(蓝):每回合第一次攻击增加%80";
} else if (a == 4) {
cout << "盛大开场(紫):每回合第一次攻击增加%100";
} else if (a == 5) {
cout << "盛大开场(彩):每回合第一次攻击增加%150";
} else if (a == 6) {
if (b == 1) {
cout << "双重波波(小蓝专属):[高能激光]命中时,造成双倍伤害";
} else if (b == 2) {
cout << "漂浮不定(小黑专属) [隐身]时普攻加%100";
} else if (b == 3) {
cout << "复刻射击(劝学小子专属)能量光波发射两次 ";
} else if (b == 4) {
cout << "多重投放:(小粉专属):[爆炸箭]发射三次(双倍伤害)";
} else if (b == 5) {
cout << "淘气连环(淘气丸子专属)拍拍拍持续时间从4回合到8回合";
} else if (b == 6) {
cout << "空间散射(王则羽专属)空间爆炸产生两倍伤害";
}
} else if (a == 7) {
cout << "法术伤害+20";
} else if (a == 8) {
cout << "痛痛痛(紫):当普攻命中时,使对方减少%3最大生命值,最多叠加1层";
} else if (a == 9) {
cout << "痛痛痛痛(彩):当普攻命中时,使对方减少%4最大生命值,最多叠加1层";
} else if (a == 10) {
cout << "哦啦啦啦:禁用你的大招,但技能冷却减少%50";
} else if (a == 11) {
cout << "降温斗篷:加120最大生命值,回合行动点加一";
} else if (a == 12) {
cout << "金刚不坏(紫):加400最大生命值,但攻击减少%8";
} else if (a == 13) {
cout << "落井下石:对手血量低于%150时,伤害*1.24";
} else if (a == 14) {
if (b == 1) {
cout << "思维敏捷(小蓝专属):当[高能激光]命中对手时,cd减少1回合";
} else if (b == 2) {
cout << "快速咸鱼(小黑专属):[旋转咸鱼]命中对手是cd减少1回合";
} else if (b == 3) {
cout << "极致能量(劝学小子专属):你的真理脉冲伤害提高30%";
} else if (b == 4) {
cout << "蓄力提升:(小粉专属):[爆炸箭]伤害提高30%";
} else if (b == 5) {
cout << "(淘气丸子):[拍拍拍]伤害系数+0.2";
} else if (b == 6) {
cout << "被动2层就可以触发";
}
} else if (a == 15) {
if (b == 1 || b == 6) {
cout << "法术枪:法术攻击力+35,加80最大生命值";
} else if (b >= 2 && b != 6) {
cout << "金钢棒:物理攻击力+35,加80最大生命值";
}
} else if (a == 16) {
cout << "普攻之力(蓝):当普攻命中时,增加2点物理伤害";
} else if (a == 17) {
if (b == 1 || b == 6) {
cout << "毒药:法术攻击力+25,加30最大生命值,对手行动点减一";
} else if (b >= 2) {
cout << "火力压制:物理攻击力+25,加30最大生命值,对手行动点减一";
}
} else if (a == 18) {
cout << "威力代价:技能伤害提高%25,收到的伤害提高%15";
} else if (a == 19) {
cout << "能量转化仪:加150最大生命值,每20血转换成1点法伤";
} else if (a == 20) {
if (b == 1 || b == 7) {
cout << "超能激光枪:加50法术攻击力";
} else {
cout << "超能弹弓:加50物理攻击力";
}
} else if (a == 21) {
cout << "坚韧起源:每回合加150点最大生命值";
} else if (a == 22) {
cout << "普攻之力(紫):当普攻命中时,增加4点物理伤害";
} else if (a == 23) {
if (b == 1 || b == 6) {
cout << "法术瞄准镜:每8点法术伤害额外提供1点法术暴击伤害";
}
if (b >= 2) {
cout << "力量控制:每8点物理伤害额外提供1点物理暴击伤害和1点物理暴伤";
}
} else if (a == 24) {
cout << "暴击专家:获得25%物理暴击和25%法术暴击";
} else if (a == 25) {
cout << "节节高:每个回合胜利增加80的血量,失败不减少";
} else if (a == 26) {
cout << "节节高:每个回合胜利增加100的血量,失败不减少";
} else if (a == 27) {
cout << "节节高:每个回合胜利增加150的血量,失败不减少";
} else if (a == 28) {
cout << "威力代价:技能伤害提高%55,收到的伤害提高%15";
} else if (a == 29) {
cout << "金刚不坏:加550最大生命值,但攻击减少%8";
} else if (a == 30) {
if (b == 3) {
cout << "极速光波(劝学小子专属):你的能量光波减少技能冷却的效果从1回合到2回合";
}
if (b == 2 || b >= 4 && b != 6) {
cout << "霹雳斧:物理伤害+20,物理暴击+%30,物理暴伤+%25";
}
if (b == 1 || b == 6) {
cout << "超能激光枪:加20法术攻击力";
}
} else if (a == 31) {
cout << "双倍加减:加星和掉星效果成二";
} else if (a == 32) {
if (b == 1 || b == 6) {
cout << "电磁炮:加%25法术暴击,+30法术攻击力";
} else {
cout << "霹雳斧:物理伤害+20,物理暴击+%30,物理暴伤+%25";
}
} else if (a == 33) {
cout << "二刀流:普攻额外触发一次特效";
} else if (a == 34) {
cout << "合金狼牙棒:物理攻击加20,普攻额外扣除对方8%的生命";
} else if (a == 35) {
cout << "巨人拳套:增加200生命上限,普攻额外附加%2的生命上限";
} else if (a == 36) {
cout << "钛金套装:加300生命上限,加28物理抗性,加28法术抗性";
} else if (a == 37) {
cout << "优势(蓝):生命>生命上限的80%,暴击加35%";
} else if (a == 38) {
cout << "优势(紫):生命>生命上限的80%,暴击加40%,暴击伤害加40%";
} else if (a == 39) {
cout << "优势(彩):生命>生命上限的70%,暴击加55%,暴击伤害加55%";
} else if (a == 40) {
cout << "汲取之刃:吸血+%25,加30双攻";
}
}
int main() {
cout << "1. 新游戏\n2. 读取存档\n 3.50层地牢模组\n 4.修仙\n请选择: ";
int choice;
cin >> choice;
if (choice == 4) {
cultivationModeMenu();
bodyTempering = 30;
} else if (choice == 3) {
if (choice == 3) { // 地牢模式
system("cls");
cout << "=====================\n";
cout << " 地牢50层挑战 \n";
cout << "=====================\n\n";
cout << "规则说明:\n";
cout << "- 每层地牢都有强大的敌人\n";
cout << "- 通过击败敌人来提升层数\n";
cout << "- 每层可以获得特殊卡牌增强实力\n";
cout << "- 每5层有小BOSS,每10层有大BOSS\n";
cout << "- 击败BOSS能获得额外奖励\n\n";
cout << "准备开始挑战吗?(y/n): ";
char confirm;
cin >> confirm;
if (confirm == 'y' || confirm == 'Y') {
dungeonFloor = 1;
sheng = shengmax;
while (dungeonFloor <= 50) {
dungeonBattle();
if (sheng <= 0) {
cout << "地牢挑战结束。你达到了第 " << dungeonFloor << " 层。\n";
cout << "是否重新开始?(y/n): ";
cin >> confirm;
if (confirm == 'y' || confirm == 'Y') {
dungeonFloor = 1;
sheng = shengmax;
initDungeonFloor();
} else {
break;
}
}
}
}
}
} else if (choice == 2) {
if (!loadGame()) {
// 如果读档失败,继续新游戏
cout << "将开始新游戏..." << endl;
Sleep(1000);
cout << "请选择你的角色 \n 1.小蓝(引力炸弹、高能激光、头脑风暴)\n 2.小黑(旋转咸鱼,隐身,惊吓箱) \n 3.劝学小子(闪耀冲刺,能量光波,真理脉冲)\n 4.小粉(标记箭,爆炸箭,飓风之力)\n 5.淘气丸子(快迟到了,拍拍拍,淘气一击)\n 6.王则羽(空间撕裂,空间爆炸,空间绞杀)";
cin >> b;
dishengmax = 455; // 基础值
diwugong = 64;
difagong = 64;
} else {
shengmax += bodyTempering / 4;
wugong += realmLevel * 23;
fagong += realmLevel * 23;
}
} else {
cout << "请选择你的角色 \n 1.小蓝(引力炸弹、高能激光、头脑风暴)\n 2.小黑(旋转咸鱼,隐身,惊吓箱) \n 3.劝学小子(闪耀冲刺,能量光波,真理脉冲)\n 4.小粉(标记箭,爆炸箭,飓风之力)\n 5.淘气丸子(快迟到了,拍拍拍,淘气一击)\n 6.王则羽(空间撕裂,空间爆炸,空间绞杀)";
cin >> b;
}
if (choice == 1) { // 新游戏
dishengmax = 455; // 基础值
diwugong = 64;
difagong = 64;
// 在角色选择后调用
cout << "是否跳过新手教程(y/n)";
char a;
cin >> a;
if (a != 'y' && a != 'Y') {
for (int i = 1; i <= 4; i++) {
showTutorial(i);
cout << "将开启新手教程\n";
Sleep(1000);
}
}
}
srand(static_cast<unsigned int>(time(0)));
if (b == 1) {
shengmax = 467;
fagong = 42;
wugong = 29;
} else if (b == 2) {
shengmax = 505;
fagong = 15;
wugong = 59;
} else if (b == 3) {
shengmax = 467;
fagong = 21;
wugong = 61;
} else if (b == 4) {
shengmax = 515;
fagong = 21;
wugong = 50;
} else if (b == 5) {
shengmax = 521;
fagong = 20;
wugong = 63;
} else if (b == 6) {
shengmax = 404;
fagong = 44;
wugong = 40;
}
shengmax += bodyTempering / 4;
wugong += realmLevel * 23;
fagong += realmLevel * 23;
while (1 && b != 9999) {
i = 15;
while (i) {
i--;
suiji();
cout << "\n";
cout << "要 (y/n)";
char dd;
cin >> dd;
if (dd == 'y') {
cout << "你获得";
Sleep(1000);
if (o[i] == 1) {
cout << i << "." << "金刚不坏:加300最大生命值,但攻击减少%8";
shengmax += 300;
fagong = fagong * 100 / 108;
wugong = wugong * 100 / 108;
} else if (o[i] == 2) {
cout << i << '.' << "蓄力重击:你的普攻伤害提高%160,但有冷却一回合\n";
if (xul >= 160 && xu == true) {
xul += 80;
} else {
xul = 160;
cout << "可以叠加,不过叠加只有一半的效果但冷却不加\n";
Sleep(1000);
}
xu = true;
} else if (o[i] == 3) {
cout << i << "." << "盛大开场(蓝)(小蓝/黑四幻神):每回合第一次攻击增加%80";
shengda = 80;
} else if (o[i] == 4) {
cout << i << "." << "盛大开场(紫)(小蓝/黑四幻神):每回合第一次攻击增加%100";
shengda = 100;
} else if (o[i] == 5) {
cout << i << "." << "盛大开场(彩)(小蓝/黑四幻神):每回合第一次攻击增加%150";
shengda = 150;
} else if (o[i] == 6) {
if (b == 1) {
cout << "双重波波(小蓝专属):激光命中时,造成双倍伤害";
zhuan2 = true;
} else if (b == 2) {
cout << "漂浮不定(小黑专属) 隐身时普攻加%100";
zhuan1 = true;
} else if (b == 3) {
cout << "复刻射击(劝学小子专属)能量光波发射两次 ";
zhuan3 = true;
} else if (b == 4) {
cout << "多重投放:(小粉专属):[爆炸箭]发射三次(只有双倍伤害)";
zhuan4 = true;
} else if (b == 5) {
cout << "(淘气丸子专属)拍拍拍持续时间从4回合到8回合";
erchi = 8;
} else {
cout << "空间散射(王则羽专属)空间爆炸产生两倍伤害";
zhuan6 = true;
}
} else if (o[i] == 7) {
cout << i << "." << "法术伤害+20,物理伤害+20";
fagong += 20;
wugong += 20;
} else if (o[i] == 8) {
cout << i << "." << "痛痛痛(紫):当普攻命中时,使对方减少%3生命值";
pue += 3;
} else if (o[i] == 9) {
cout << i << "." << "痛痛痛(彩):当普攻命中时,使对方减少%4生命值";
pue += 4;
} else if (o[i] == 10) {
cout << i << "." << "哦啦啦啦:禁用你的大招,但技能冷却减少%50";
jingda = true;
} else if (o[i] == 11) {
cout << "降温斗篷:加120最大生命值,回合行动点加一";
shengmax += 120;
jiandian++;
} else if (o[i] == 12) {
cout << "金刚不坏(紫):加400最大生命值,但攻击减少%8";
shengmax += 400;
fagong = fagong * 100 / 108;
} else if (o[i] == 13) {
cout << "落井下石:对手血量低于%150时,伤害*1.24";
luojin = 1.24;
} else if (o[i] == 14) {
if (b == 1) {
cout << "思维敏捷(小蓝专属):当[高能激光]命中对手时,cd减少1回合";
zhuanlan = true;
} else if (b == 2) {
cout << "快速咸鱼(小黑专属):[旋转咸鱼]命中对手是cd减少1回合";
zhuanhei = true;
} else if (b == 3) {
cout << "极致能量(劝学小子专属):你的真理脉冲伤害提高50%";
da += 50;
} else if (b == 4) {
cout << "蓄力提升:(小粉专属):[爆炸箭]伤害提高30%";
fen2 += 30;
} else if (b == 5) {
cout << "(淘气丸子):[拍拍拍]伤害系数+0.2";
xi += 0.2;
} else if (b == 6) {
cout << "被动2层就可以触发";
beidongcf = 2;
}
} else if (o[i] == 15) {
if (b == 1 || b == 6) {
cout << "法术枪:法术攻击力+35,加80最大生命值";
fagong += 35;
shengmax += 80;
} else if (b >= 2) {
cout << "金钢棒:物理攻击力+35,加80最大生命值";
wugong += 35;
shengmax += 80;
}
} else if (o[i] == 16) {
cout << "普攻之力(蓝):当普攻命中时,增加2点物理伤害";
pujia += 2;
} else if (o[i] == 17) {
if (b == 1 || b == 6) {
cout << "毒药:法术攻击力+25,加30最大生命值,对手行动点减一";
fagong += 25;
shengmax += 30;
jiandian += 1;
} else if (b >= 2) {
cout << "火力压制:物理攻击力+25,加30最大生命值,对手行动点减一";
wugong += 25;
shengmax += 30;
jiandian += 1;
}
} else if (o[i] == 18) {
cout << "威力代价(小蓝四幻神):技能伤害提高%25,收到的伤害提高%15";
wei += 25;
weis += 15;
} else if (o[i] == 19) {
cout << "能量转化仪:加150最大生命值,每20血转换成1点法伤,加20点法伤";
shengmax += 150;
nengn = true;
fagong += 20;
} else if (o[i] == 20) {
if (b == 1 || b == 6) {
cout << "超能激光枪:加50法术攻击力";
fagong += 50;
} else {
cout << "超能弹弓:加50物理攻击力";
wugong += 50;
}
} else if (o[i] == 21) {
cout << "坚韧起源:每回合加150点最大生命值";
jian += 150;
} else if (o[i] == 22) {
cout << "普攻之力(紫):当普攻命中时,增加4点物理伤害";
pujia += 4;
} else if (o[i] == 23) {
if (b == 1 || b == 6) {
cout << "法术瞄准镜:每8点法术伤害额外提供1点法术暴击伤害";
}
if (b >= 2) {
cout << "力量控制:每8点物理伤害额外提供1点物理暴击伤害";
}
miao = true;
} else if (o[i] == 24) {
cout << "获得25%物理暴击和25%法术暴击";
fabao1 += 5;
wubao1 += 5;
} else if (o[i] == 25) {
cout << "节节高:每个回合胜利增加80的血量,失败不减少";
jie = 80;
} else if (o[i] == 26) {
cout << "节节高:每个回合胜利增加100的血量,失败不减少";
jie = 100;
} else if (o[i] == 27) {
cout << "节节高:每个回合胜利增加150的血量,失败不减少";
jie = 150;
cai = true;
} else if (o[i] == 28) {
cout << "威力代价:技能伤害提高%55,收到的伤害提高%15";
wei += 55;
weis += 15;
} else if (o[i] == 29) {
cout << "金刚不坏:加550最大生命值,但攻击减少%8";
shengmax += 550;
fagong = fagong * 0.92;
} else if (o[i] == 30) {
if (b == 3) {
cout << "极速光波(劝学小子专属):你的能量光波减少技能冷却的效果从1回合到2回合";
ji = 2;
}
if (b == 2 || b == 4 || b == 5) {
cout << "霹雳斧:物理伤害+20,物理暴击+%30,物理暴伤+%25";
wubao2 += 6;
wubaos2 += 25;
wugong += 20;
}
if (b == 1 || b == 6) {
cout << "超能激光枪:加20法术攻击力";
fagong += 20;
}
} else if (o[i] == 31) {
cout << "双倍加减:加星和掉星效果成二";
cheng = 2;
} else if (o[i] == 32) {
if (b == 1 || b == 6) {
cout << "电磁炮:加%25法术暴击,+30法术攻击力";
fagong += 30;
fabao2 += 5;
} else {
cout << "霹雳斧:物理伤害+20,物理暴击+%30,物理暴伤+%25";
wubao2 += 6;
wubaos2 += 25;
wugong += 20;
}
} else if (o[i] == 33) {
cout << "二刀流:普攻额外触发一次特效";
ci++;
} else if (o[i] == 34) {
cout << "合金狼牙棒:物理攻击加20,普攻额外扣除对方10%的生命";
he = 8;
wugong += 20;
} else if (o[i] == 35) {
cout << "巨人拳套:增加200生命上限,普攻额外附加%2的生命上限";
shengmax += 200;
quan = 2;
} else if (o[i] == 36) {
cout << "钛金套装:加300生命上限,加28物理抗性,加28法术抗性";
shengmax += 300;
fakang += 28;
wukang += 28;
} else if (o[i] == 37) {
cout << "优势(蓝):生命>生命上限的80%,暴击加35%";
yousheng = 80;
youbao = 35;
} else if (o[i] == 38) {
cout << "优势(紫):生命>生命上限的80%,暴击加40%,暴击伤害加40%";
yousheng = 80;
youbao = 40;
youbaos = 40;
} else if (o[i] == 39) {
cout << "优势(彩):生命>生命上限的70%,暴击加55%,暴击伤害加55%";
yousheng = 70;
youbao = 55;
youbaos = 55;
} else if (o[i] == 40) {
cout << "汲取之刃:吸血+25%,加30双攻";
wugong += 30;
fagong += 30;
xixie += 25;
}
Sleep(1000);
break;
}
cout << endl;
}
int l = 0;
xing = 6;
xing += jiandian;
shengmax += jian;
j();
sheng = shengmax; //重置状态
disheng = dishengmax;
int duixing = 7;
diwugong += 21;
dishengmax += 275;
dishengmax+=mu*40;
difagong += 24;
diwukang += 9;
difakang += 6;
cdd = 0;
cd1 = 0;
cd2 = 0;
cdp = 0;
dcd1 = 0;
dcd2 = 0;
dcdd = 0;
hui = shengda;
l = 0;
oi = 3;
oj = 3;
ri = 6;
rj = 3;
dichao = 20;
chao = 20;
if (ci > 4) {
ci = 4;
}
fawu();
difacd = 0;
wubaos1 = wubaos1 + wubaos2;
wubao1 = wubao1 + wubao2;
fabao1 = fabao1 + fabao2;
fabaos1 = fabaos2 + fabaos1;
wubao2 = 0;
wubaos2 = 0;
fabao2 = 0;
fabaos2 = 0;
beidong = 0;
if (b == 1) {
while (1) {
if (xing <= 0) {
while (duixing) {
cout << "对手回合";
if (abs(oi - ri) + abs(oj - rj) <= 5 && duixing >= 2 && dcd2 == 0) {
cout << "对手释放惊吓箱造成了" << max(diwugong + 35 - wukang, 1) << "点伤害";
duixing -= 1;
Sleep(1000);
sheng -= max(diwugong + 35 - wukang, 1);
dcd2 += 4;
} else if (abs(oi - ri) + abs(oj - rj) <= 3 && duixing >= 1) {
cout << "对手普攻造成了" << max( diwugong - wukang, 1) << "点伤害";
duixing -= 1;
sheng -= max( diwugong - wukang, 1);
Sleep(1000);
if (sheng <= 0) {
cout << "你输了";
chao -= 20;
break;
Sleep(1000);
Sleep(1000);
}
} else if (duixing <= 0) {
break;
} else {
if (rj < oi) {
cout << "对手2坐标+1" << endl;
rj++;
duixing -= 1;
}
if (rj > oi) {
rj--;
cout << "对手2坐标-1" << endl;
duixing -= 1;
}
if (ri < oj) {
cout << "对手1坐标+1" << endl;
duixing -= 1;
ri++;
}
if (ri > oj) {
cout << "对手1坐标-1" << endl;
duixing -= 1;
ri--;
}
if (ri == oj && ri == oi) {
cout << "对手普攻造成了" << diwugong << "点伤害";
duixing -= 1;
sheng -= diwugong;
Sleep(1000);
if (sheng <= 0) {
cout << "你输了";
chao -= 20;
break;
Sleep(1000);
Sleep(1000);
}
}
cout << "目前坐标" << rj << "," << ri;
Sleep(1000);
}
dcd1--;
dcdd--;
if (sheng <= 0) {
chao -= 20;
break;
cout << "你输了";
Sleep(1000);
}
}
xing += 6;
duixing = 7;
duixing -= jiandian;
}
system("cls");
if (sheng <= 0) {
break;
cout << "你输了";
}
cout << " 第" << l << "回合\n";
cout << "你的回合,0.普攻 ,1.引力炸弹,2.高能激光,3.头脑风暴\nw一坐标 s一坐标-1,d二坐标+1,a二坐标+1\n行动点剩余" << xing << endl << " 生命" << sheng << " 对手血量" << disheng << endl;
cout << " 当前冷却 ";
if (cdp < 0) {
cout << "0 ";
} else {
cout << cdp << " ";
}
if (cd1 < 0) {
cout << "0 ";
} else {
cout << cd1 << " ";
}
if (cd2 < 0) {
cout << "0 ";
} else {
cout << cd2 << " ";
}
if (cdd < 0) {
cout << "0 ";
} else {
cout << cdd << " ";
}
if (jingda == true) cout << "你的大招被禁用了" << endl;
bool p = false;
if (sheng >= float(sheng * yousheng / 100)) {
fabao1 += youbao / 5;
wubao1 += youbao / 5;
wubaos1 += youbao;
fabaos1 += youbao;
p = true;
}
cout << " 目前位置:" << "(" << oi << "," << oj << ")\n";
cout << " 对手目前位置:" << "(" << ri << "," << rj << ")\n";
if (chi == 1) {
cout << "(头脑风暴)你对对手造成了" << tongli << "点伤害\n";
disheng -= tongli;
chi--;
}
float linjia = 0;
char aa;
cin >> aa;
if (aa == 'w') {
oi++;
xing -= 1;
}
if (aa == 's') {
oi--;
xing -= 1;
}
if (aa == 'd') {
oj++;
xing -= 1;
}
if (aa == 'a') {
oj--;
xing -= 1;
}
if (aa == '2' && cd2 <= 0) {
int g = rand() % 20 + 1;
if (jingda == true) {
cd2 = 2;
} else {
cd2 = 4;
}
if (g <= fabao1) {
cout << "暴击!!,";
linjia = fabaos1;
}
xing -= 1;
if (abs(oi - ri) + abs(oj - rj) <= 5) {
float damage = ((20 + fagong * 1.6) * (1 + shengda / 100 + wei / 100 )) * (linjia / 100 + 1);
// 法术抗性减免(至少造成1点伤害)
damage = max(1.0f, damage - difakang);
cout << "你对对手造成了" << damage << "点伤害\n";
sheng += xixie * damage / 100;
if (sheng > shengmax)sheng = shengmax;
disheng -= damage;
if (zhuanlan == true) {
cd2--;
}
Sleep(200);
if (disheng <= dishengmax / 2) {
cout << "(落井下石)你对对手造成了" << (20 + fagong * (1 + shengda / 100))*(luojin - 1) << "点伤害\n";
disheng = disheng - (20 + fagong * (1 + shengda / 100 + wei / 100)) * (luojin - 1);
}
if (zhuan2 == true) {
cout << "双重波波额外" << damage << "点伤害";
disheng = disheng - damage;
Sleep(200);
if (zhuanlan == true) cd2--;
}
shengda = 0;
} else {
cout << "没打中\n";
Sleep(2000);
}
if (disheng <= 0) {
dichao -= 20;
cout << "你赢了";
break;
}
} else if (aa == '1' && cd1 <= 0) {
int g = rand() % 20 + 1;
if (g <= fabao1) {
cout << "暴击!!,";
linjia = fabaos1;
}
float damage = ((20 + fagong * 0.6) * (1 + shengda / 100 + wei / 100 )) * (linjia / 100 + 1);
xing -= 1;
damage = max(1.0f, damage - difakang);
cout << "你对对手造成了" << damage << "点伤害\n";
sheng += xixie * damage / 100;
if (sheng > shengmax)sheng = shengmax;
disheng -= damage;
if (disheng <= dishengmax / 2) {
cout << "(落井下石)你对对手造成了" << damage * (luojin - 1) << "点伤害\n";
disheng = disheng - damage * (luojin - 1);
}
if (jingda == true) {
cd1 = 1;
} else {
cd1 = 2;
}
if (disheng <= 0) {
cout << "你赢了";
dichao -= 20;
break;
}
shengda = 0;
} else if (aa == '3' && cdd <= 0 && jingda != true) {
int g = rand() % 20 + 1;
if (g <= fabao1) {
cout << "暴击!!,";
linjia = fabaos1;
}
float damage = ((20 + fagong * 0.4) * (1 + shengda / 100 + wei / 100 )) * (linjia / 100 + 1);
xing -= 1;
damage = max(1.0f, damage - difakang);
cout << "你对对手造成了" << damage << "点伤害\n";
sheng += xixie * damage / 100;
if (sheng > shengmax)sheng = shengmax;
disheng -= damage;
if (disheng <= dishengmax / 2) {
cout << "(落井下石)你对对手造成了" << damage* (luojin - 1) << "点伤害\n";
disheng = disheng - damage * (luojin - 1);
}
tongli = ( 30 + fagong * (1 + shengda / 100 + wei / 100) * 0.2 + wugong * (1 + shengda / 100 + wei / 100) * 0.3);
chi = 1;
shengda = 0;
if (jingda == true) {
cdd = 3;
} else {
cdd = 6;
}
if (disheng <= 0) {
cout << "你赢了";
dichao -= 20;
break;
}
} else if (aa == '0' && cdp <= 0 && abs(oi - ri) + abs(oj - rj) <= 7) {
int g = rand() % 20 + 1;
if (g <= wubao1) {
cout << "暴击!!,";
linjia = wubaos1;
}
float damage = ((shengda / 100 + 1) * wugong * (xul / 100 + 1) + (pue * dishengmax / 100)) * (1 + linjia / 100);
xing -= 1;
damage = max(1.0f, damage - difakang);
cout << "你对对手造成了" << damage << "点伤害\n";
sheng += xixie * damage / 100;
if (sheng > shengmax)sheng = shengmax;
disheng = disheng - damage;
if (xu == true) {
cdp = 2;
}
shengda = 0;
for (int i = 0; i < ci; i++) {
if (he > 0) {
cout << "合金狼牙棒:造成了" << he*disheng * 0.01 << "点伤害\n";
disheng -= he * disheng * 0.01;
}
if (quan > 0) {
cout << "巨人拳套:造成了" << shengmax*quan * 0.01 << "点伤害\n";
disheng -= shengmax * quan * 0.01;
}
}
wugong += pujia;
Sleep(300);
} else {
cdd++;
cd2++;
cd1++;
cdp++;
l--;
difacd++;
}
Sleep(500);
if (disheng <= 0) {
cout << "你赢了";
dichao -= 20;
break;
}
dcd1--;
dcdd--;
dcd2--;
cdd--;
cd2--;
l++;
cd1--;
cdp--;
difacd--;
if (p == true) {
fabao1 -= youbao / 5;
wubao1 -= youbao / 5;
wubaos1 -= youbao;
fabaos1 -= youbao;
}
leifa();
}
} else if (b == 2) {
while (1) {
if (xing <= 0) {
while (duixing) {
cout << "对手回合";
Sleep(1000);
if (abs(oi - ri) + abs(oj - rj) <= 5 && duixing >= 2 && dcd2 == 0) {
cout << "对手释放激光造成了" << difagong * 1.6 - fakang << "点伤害";
duixing -= 1;
Sleep(1000);
sheng -= difagong * 1.6;
dcd2 += 4;
} else if (abs(oi - ri) + abs(oj - rj) <= 5 && duixing >= 1 && dcd1 <= 0) {
cout << "对手引力炸弹造成了" << (20 + difagong) * 0.6 - fakang << "点伤害";
duixing -= 1;
sheng -= (20 + difagong * 0.6);
Sleep(1000);
dcd1++;
if (sheng <= 0) {
cout << "你输了";
chao -= 20;
break;
Sleep(2000);
}
} else if (abs(oi - ri) + abs(oj - rj) <= 3 && duixing >= 1) {
cout << "对手普攻造成了" << diwugong << "点伤害";
duixing -= 1;
sheng -= diwugong;
Sleep(1000);
if (sheng <= 0) {
cout << "你输了";
chao -= 20;
break;
Sleep(1000);
Sleep(1000);
}
} else if (duixing <= 0) {
break;
} else {
if (ri < oi) {
cout << "对手1坐标+1" << endl;
ri++;
duixing -= 1;
} else if (ri > oi) {
ri--;
cout << "对手1坐标-1" << endl;
duixing -= 1;
} else if (rj < oj) {
cout << "对手2坐标+1" << endl;
duixing -= 1;
rj++;
} else if (rj > oj) {
cout << "对手2 坐标-1" << endl;
duixing -= 1;
rj--;
}
cout << "目前坐标" << rj << "," << ri;
Sleep(400);
Sleep(2000);
}
dcd1--;
dcdd--;
dcd2--;
if (sheng <= 0) {
break;
cout << "你输了";
chao -= 20;
Sleep(1000);
}
}
xing += 6;
duixing = 6;
duixing -= jiandian;
}
system("cls");
if (sheng <= 0) {
cout << "你输了";
chao -= 20;
break;
}
system("cls");
cout << " 第" << l << "回合\n";
cout << "你的回合\n0.普攻,1.咸鱼飞刀,2.隐身,3.惊吓箱,w一坐标 s一坐标-1,d二坐标+1,a二坐标-1\n行动点剩余" << xing << endl << " 生命" << sheng << " 对手血量" << disheng;
if (jingda == true) {
cout << "你的大招被禁用了\n";
}
bool p = false;
if (sheng >= float(sheng * yousheng / 100)) {
fabao1 += youbao / 5;
wubao1 += youbao / 5;
wubaos1 += youbao;
fabaos1 += youbao;
}
cout << " 目前位置:" << "(" << oi << "," << oj << ")\n";
cout << " 对手目前位置:" << "(" << ri << "," << rj << ")\n";
char aa;
cin >> aa;
float linjia = 0;
if (aa == 'w') {
oi++;
xing -= 1;
Sleep(500);
}
if (aa == 's') {
oi--;
xing -= 1;
Sleep(500);
}
if (aa == 'd') {
oj++;
xing -= 1;
Sleep(500);
}
if (aa == 'a') {
oj--;
xing -= 1;
Sleep(500);
} else if (aa == '0' && cdp <= 0 && abs(oi - ri) + abs(oj - rj) <= 4) {
int g = rand() % 20 + 1;
if (g <= wubao1) {
cout << "暴击!!,";
linjia = wubaos1;
}
float damage = ((shengda / 100 + 1) * wugong * (xul / 100 + 1) + (pue * dishengmax / 100)) * (1 + linjia / 100);
xing -= 1;
damage = max(1.0f, damage - difakang);
cout << "你对对手造成了" << damage << "点伤害\n";
sheng += xixie * damage / 100;
if (sheng > shengmax)sheng = shengmax;
disheng = disheng - damage;
if (xu == true) {
cdp = 2;
}
if (ying == true && zhuan1 == true) {
cout << "(漂浮不定)你对对手造成了" << damage << "点伤害\n";
disheng = disheng - damage;
}
zengshang = 1;
ying = false;
for (int i = 0; i < ci; i++) {
if (he > 0) {
cout << "合金狼牙棒:造成了" << he*disheng * 0.01 << "点伤害\n";
disheng -= he * disheng * 0.01;
}
if (quan > 0) {
cout << "巨人拳套:造成了" << shengmax*quan * 0.01;
disheng -= shengmax * quan * 0.01;
}
}
shengda = 0;
if (xu == true) {
cdp = 1;
}
Sleep(1000);
wugong += pujia;
} else if (aa == '1' && cd1 <= 0) {
int g = rand() % 20;
if (g <= wubao1) {
cout << "暴击!!,";
linjia = wubaos1;
}
if (jingda == true) {
cd1 = 2;
} else {
cd1 = 4;
}
if (abs(oi - rj) + abs(oj - ri) <= 7) {
int g = rand() % 20 + 1;
if (g <= wubao1) {
cout << "暴击!!,";
linjia = wubaos1;
}
float damage = ((shengda / 100 + 1) * wugong * (1.2 + wei) + (pue * dishengmax / 100)) * (1 + linjia / 100);
damage = max(1.0f, damage - difakang);
xing -= 1;
cout << "你对对手造成了" << damage << "点伤害\n";
sheng += xixie * damage / 100;
if (sheng > shengmax)sheng = shengmax;
disheng = disheng - damage;
if (xu == true) {
cdp = 2;
}
shengda = 0;
}
ying = false;
} else if (aa == '2' && cd2 <= 0) {
cout << "你开启了隐身";
zengshang = 1.55;
Sleep(1000);
ying = true;
if (jingda == true) {
cd2 = 4;
} else {
cd2 = 8;
}
} else if (aa == '3' && cdd <= 0) {
int g = rand() % 20;
if (g <= wubao1) {
cout << "暴击!!,";
linjia = wubaos1;
}
if (abs(oi - ri) + abs(oj - rj) <= 4) {
float damage = ((shengda / 100 + 1) * wugong * (1.5 + wei) + (pue * dishengmax / 100)) * (1 + linjia / 100);
xing += 1;
damage = max(1.0f, damage - difakang);
cout << "你对对手造成了" << damage << "点伤害\n";
sheng += xixie * damage / 100;
if (sheng > shengmax)sheng = shengmax;
disheng = disheng - damage;
if (xu == true) {
cdp = 2;
}
shengda = 0;
} else {
cout << "没打中";
}
if (jingda == true) {
cdd = 4;
} else {
cdd = 8;
}
ying = false;
Sleep(1000);
} else {
cdd++;
cd2++;
cd1++;
cdp++;
l--;
}
if (disheng <= 0) {
cout << "你赢了";
Sleep(1000);
dichao -= 20;
break;
}
cdd--;
cd2--;
cd1--;
cdp--;
l++;
difacd--;
cdp--;
if (p == true) {
fabao1 -= youbao / 5;
wubao1 -= youbao / 5;
wubaos1 -= youbao;
fabaos1 -= youbao;
}
leifa();
}
}
全部评论 7
怎么报错了
2025-08-06 来自 四川
0还有
2025-08-06 来自 浙江
0你重复制一下
2025-08-06 来自 浙江
0我那时候在更新
2025-08-06 来自 浙江
0
蛋仔加好友吗?
名:你12点黄2025-06-15 来自 浙江
0跟我玩别抢我劝学
2025-06-16 来自 浙江
0我叫广水全智蛋
2025-06-16 来自 浙江
0ok
2025-06-22 来自 浙江
0
6,现在c++都能玩超燃了
2025-06-15 来自 浙江
0不完全体
2025-06-16 来自 浙江
0
OKOK
2025-05-28 来自 浙江
0暴击目前只做了小蓝
2025-06-03 来自 浙江
0好的好的
2025-06-03 来自 浙江
0
2025-05-28 来自 浙江
0顶
2025-05-28 来自 浙江
0顶
2025-05-28 来自 浙江
0
有帮助,赞一个