Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <SFML/Graphics.hpp>
- #include <SFML/Audio.hpp>
- #include <iostream>
- #include <fstream>
- #include <string>
- #include <windows.h>
- #include <list>
- #include "Player.h"
- #include "Bullet.h"
- #include "view.h"
- using namespace sf;
- bool pause(RenderWindow & window, int *playerscount) {
- Texture menuTexture1, menuTexture2, menuTexture3, menuBackground;
- menuTexture1.loadFromFile("images/111.png");
- menuTexture2.loadFromFile("images/222.png");
- menuTexture3.loadFromFile("images/333.png");
- menuBackground.loadFromFile("images/Penguins.jpg");
- Sprite menu1(menuTexture1), menu2(menuTexture2), menu3(menuTexture3), menuBg(menuBackground);
- bool isMenu = 1;
- int menuNum = 0;
- menu1.setPosition(100, 30);
- menu2.setPosition(100, 90);
- menu3.setPosition(100, 150);
- menuBg.setPosition(345, 0);
- //////////////////////////////МЕНЮ///////////////////
- while (isMenu)
- {
- menu1.setColor(Color::White);
- menu2.setColor(Color::White);
- menu3.setColor(Color::White);
- menuNum = 0;
- window.clear(Color(129, 181, 221));
- if (IntRect(100, 30, 300, 50).contains(Mouse::getPosition(window))) { menu1.setColor(Color::Blue); menuNum = 1; }
- if (IntRect(100, 90, 300, 50).contains(Mouse::getPosition(window))) { menu2.setColor(Color::Blue); menuNum = 2; }
- if (IntRect(100, 150, 300, 50).contains(Mouse::getPosition(window))) { menu3.setColor(Color::Blue); menuNum = 3; }
- if (Mouse::isButtonPressed(Mouse::Left))
- {
- if (menuNum == 1) { *playerscount = 2; return true; }
- if (menuNum == 2) { *playerscount = 3; return true; }
- if (menuNum == 3) { window.close(); return false; }
- }
- window.draw(menuBg);
- window.draw(menu1);
- window.draw(menu2);
- window.draw(menu3);
- window.display();
- }
- }
- bool StartGame(RenderWindow &window, int *playercount, bool *firststart) {
- int tempj = 0, tempi = 0;
- int snd = 0;
- String camera = "y";
- bool cameradone = true;
- float nt = 0;
- float endround = 0;
- //if (menu(playercount) == true) return false;
- int playerscount = *playercount;
- int scrwidth = 1800, scrheight = 800;
- //menu(window, &playerscount);
- bool soundover = false;
- bool soundover1 = false;
- bool soundover2 = false;
- bool soundover3 = false;
- Texture tileSet;
- tileSet.loadFromFile("Mario_Tileset.png");
- //Загрузка звуков
- SoundBuffer buffer;
- buffer.loadFromFile("sfx/4.ogg");
- Sound kill(buffer);
- SoundBuffer buffer1;
- buffer1.loadFromFile("sfx/akshot.ogg");
- Sound damage(buffer1);
- SoundBuffer buffer2;
- buffer2.loadFromFile("sfx/pistolshot.ogg");
- Sound revolversn(buffer2);
- SoundBuffer buffer3;
- buffer3.loadFromFile("sfx/bazookashot.ogg");
- Sound bazookasn(buffer3);
- SoundBuffer buffer4;
- buffer4.loadFromFile("sfx/explotion.ogg");
- Sound exploz(buffer4);
- Music music;
- music.openFromFile("sfx/li.ogg");
- Music gamem;
- gamem.openFromFile("sfx/ramsing.ogg");
- gamem.setVolume(25);// громкость фоновой музыки
- gamem.play();
- //Загрузка текстур
- Texture t;
- t.loadFromFile("fang.png");
- Texture bg;
- bg.loadFromFile("bg.png");
- Texture bul;
- bul.loadFromFile("bullet.png");
- Texture revolver;
- revolver.loadFromFile("revolver.png");
- Texture bazooka;
- bazooka.loadFromFile("bazooka.png");
- //Фон
- Sprite background(bg);
- background.setOrigin(bg.getSize().x / 3, bg.getSize().y / 3);
- background.setScale(2.1f, 2.1f); //размер карты
- float currentFrame = 0;
- PLAYER p(t, 30 * 32, 20 * 32);
- PLAYER p2(t, 15 * 32, 5 * 32);
- PLAYER p3(t, 26 * 32, 5 * 32);
- if (playerscount <= 2) {
- p3.life = -1;
- }
- std::list<Bullet*> bullets;
- std::list<Bullet*>::iterator it;
- Sprite tile(tileSet);
- //tile.setScale(1.1f, 1.1f);
- Clock clock;
- RectangleShape rectangle(Vector2f(32, 32));
- while (window.isOpen())
- {
- float time = clock.getElapsedTime().asMicroseconds();
- clock.restart();
- time = time / 700;
- if (time > 20) time = 20;
- Event event;
- while (window.pollEvent(event))
- {
- if (event.type == Event::Closed)
- window.close();
- }
- if (p.life>0) {
- if (Keyboard::isKeyPressed(Keyboard::Space)) {
- if ((p.weapon == "ak-47") && (p.ammo>0) && (p.reload>0.6) && (p.onStairs == false)) {
- if (p.ammoin > 0) {
- bullets.push_back(new Bullet(bul, p.rect.left, p.rect.top + 25, p.dir, p.weapon, "p1"));
- damage.play();
- p.reload = 0;
- p.ammo -= 1;
- p.ammoin -= 1;
- p.readyshoot = 0;
- p.shootanim = "ak-47_shoot";
- //p.dy = -0.1;отдача
- //p.dx = -50;
- }
- }
- else if ((p.weapon == "revolver") && (p.ammo>0) && (p.reload>0.9)) {
- if (p.ammoin > 0) {
- bullets.push_back(new Bullet(revolver, p.rect.left, p.rect.top + 30, p.dir, p.weapon, "p1"));
- revolversn.play();
- p.reload = 0;
- p.ammo -= 1;
- p.ammoin -= 1;
- p.readyshoot = 0;
- p.shootanim = "revolver_shoot";
- //p.dy = -0.1;отдача
- //p.dx = -50;
- }
- }
- else if ((p.weapon == "bazooka") && (p.ammo>0) && (p.reload>0.9)) {
- if (p.ammoin > 0) {
- bullets.push_back(new Bullet(bazooka, p.rect.left, p.rect.top + 20, p.dir, p.weapon, "p1"));
- bazookasn.play();
- p.reload = 0;
- p.ammo -= 1;
- p.ammoin -= 1;
- p.readyshoot = 0;
- p.shootanim = "bazooka_shoot";
- //p.dy = -0.1;отдача
- //p.dx = -50;
- }
- }
- }
- }
- //Camera
- float maxX, maxY, minX, minY;
- if ((p.life > 0) && (p2.life > 0)) {
- //Right top corner coords X:
- if ((p.rect.left) >= (p2.rect.left)) maxX = p.rect.left;
- if ((p2.rect.left) >= (p.rect.left)) maxX = p2.rect.left;
- //Y:
- if ((p.rect.top) >= (p2.rect.top)) maxY = p.rect.top;
- if ((p2.rect.top) >= (p.rect.top)) maxY = p2.rect.top;
- //Left bottom corner X:
- if ((p.rect.left) <= (p2.rect.left)) minX = p.rect.left;
- if ((p2.rect.left) <= (p.rect.left)) minX = p2.rect.left;
- //Y:
- if ((p.rect.top) <= (p2.rect.top)) minY = p.rect.top;
- if ((p2.rect.top) <= (p.rect.top)) minY = p2.rect.top;
- view.reset(FloatRect(0, 0, 1800, 800));
- view.setCenter((maxX - (maxX - minX) / 2 + 11), (maxY - (maxY - minY) / 2 + 18));
- //Обзор
- //По иксу, левый, правый края
- if (((maxX - minX) > 300) && ((maxY - minY) < 300)) {
- if (camera != "x") {
- camera = "x";
- cameradone = false;
- }
- if (cameradone == false) {
- if ((((maxX - minX) / 1200) > nt)) {
- if ((maxX - minX) / 1200 - nt > 0.08) { nt += 0.001 / 2 * time; }
- else {
- nt += 0.001 / 6 * time;
- }
- }
- else if (((maxX - minX) / 1200) < nt) {
- if ((nt - maxX - minX) / 1200 > 0.08) { nt -= 0.001 / 2 * time; }
- else {
- nt -= 0.001 / 6 * time;
- }
- }
- if (((maxX - minX) / 1200 - 0.002 < nt) && ((maxX - minX) / 1200 + 0.002 > nt)) {
- cameradone = true;
- }
- }
- else {
- nt = (maxX - minX) / 1200;
- }
- view.zoom(nt);
- }
- //По игрику, верхяя, нижняя полоса
- else if (((maxY - minY) > 160) && ((maxX - minX) < 300)) {
- if (camera != "y") {
- camera = "y";
- cameradone = false;
- }
- if (cameradone == false) {
- if (((maxY - minY) / 600) > nt) {
- if ((maxY - minY) / 600 - nt > 0.05) {
- nt += 0.001*time;
- }
- else
- {
- nt += 0.001 / 4 * time;
- }
- }
- else if (((maxY - minY) / 600) < nt) {
- if (nt - (maxY - minY) / 600 > 0.05) {
- nt -= 0.001*time;
- }
- else
- {
- nt -= 0.001 / 4 * time;
- }
- }
- if (((maxY - minY) / 600 - 0.002 < nt) && ((maxY - minY) / 600 + 0.002 > nt)) {
- cameradone = true;
- }
- }
- else
- {
- nt = (maxY - minY) / 600;
- }
- view.zoom(nt);
- }
- //Минимальная камера
- else if (((maxY - minY) < 200) && ((maxX - minX) < 300)) {
- if (camera != "none") {
- camera = "none";
- cameradone = false;
- }
- if (cameradone == false) {
- if ((nt < 0.25 + 0.002) && (nt > 0.25 - 0.002)) {
- cameradone = true;
- }
- if (nt > 0.25) {
- nt -= 0.001 / 2 * time;
- }
- else if (nt < 0.25) {
- nt += 0.001 / 2 * time;
- }
- }
- else
- {
- nt = 0.25;
- }
- view.zoom(nt);
- }
- //Края карты
- else {
- if (camera == "x") {
- if (((maxX - minX) < 850) || ((maxY - minY) > 600)) {
- camera = "y";
- cameradone = false;
- }
- if ((cameradone == false) && (camera == "x")) {
- if (((maxX - minX) / 1200 + 0.002 > nt) && ((maxX - minX) / 1200 - 0.002 < nt)) {
- cameradone = true;
- }
- if ((maxX - minX) / 1200 < nt) {
- if (nt - (maxX - minX) / 1200>0.09) {
- nt -= 0.001 / 3 * time;
- }
- else
- {
- nt -= 0.0002*time;
- }
- }
- else if ((maxX - minX) / 1200 > nt) {
- if ((maxX - minX) / 1200 - nt>0.09) {
- nt += 0.001 / 3 * time;
- }
- else
- {
- nt += 0.0002*time;
- }
- }
- }
- else {
- nt = (maxX - minX) / 1200;
- }
- view.zoom(nt);
- }
- else if (camera == "y") {
- if (((maxY - minY)<200) || ((maxX - minX)>850) && ((maxY - minY)<600)) {
- camera = "x";
- cameradone = false;
- }
- if ((cameradone == false) && (camera == "y")) {
- if (((maxY - minY) / 600 + 0.002 > nt) && ((maxY - minY) / 600 - 0.002 < nt)) {
- cameradone = true;
- if (camera == "y") {
- }
- }
- if ((maxY - minY) / 600 < nt) {
- if (nt - (maxY - minY) / 600>0.9) {
- nt -= 0.001 / 4 * time;
- }
- else
- {
- nt -= 0.0006*time;
- }
- }
- else if ((maxY - minY) / 600 > nt) {
- if ((maxY - minY) / 600 - nt > 0.9) {
- nt += 0.001 / 4 * time;
- }
- else {
- nt += 0.0006*time;
- }
- }
- }
- else {
- nt = (maxY - minY) / 600;
- }
- view.zoom(nt);
- }
- }
- }
- else {
- if (p2.life > 0) {
- view.reset(FloatRect(0, 0, 1800, 800));
- view.setCenter(p2.rect.left, p2.rect.top);
- view.zoom(0.25f);
- }
- if (p.life > 0) {
- view.reset(FloatRect(0, 0, 1800, 800));
- view.setCenter(p.rect.left, p.rect.top);
- view.zoom(0.25f);
- }
- }
- //Camera end
- if (p2.life>0) {
- if (Keyboard::isKeyPressed(Keyboard::B)) {
- if ((p2.weapon == "ak-47") && (p2.ammo>0) && (p2.reload>0.6) && (p2.onStairs == false)) {
- if (p2.ammoin > 0) {
- bullets.push_back(new Bullet(bul, p2.rect.left, p2.rect.top + 25, p2.dir, p2.weapon, "p2"));
- damage.play();
- p2.reload = 0;
- p2.ammo -= 1;
- p2.ammoin -= 1;
- p2.readyshoot = 0;
- p2.shootanim = "ak-47_shoot";
- //p2.dy = -0.1;отдача
- //p2.dx = -50;
- }
- }
- else if ((p2.weapon == "revolver") && (p2.ammo>0) && (p2.reload>0.9)) {
- if (p2.ammoin > 0) {
- bullets.push_back(new Bullet(revolver, p2.rect.left, p2.rect.top + 30, p2.dir, p2.weapon, "p2"));
- revolversn.play();
- p2.reload = 0;
- p2.ammo -= 1;
- p2.ammoin -= 1;
- p2.readyshoot = 0;
- p2.shootanim = "revolver_shoot";
- //p2.dy = -0.1;отдача
- //p2.dx = -50;
- }
- }
- else if ((p2.weapon == "bazooka") && (p2.ammo>0) && (p2.reload>2)) {
- if (p2.ammoin > 0) {
- bullets.push_back(new Bullet(bazooka, p2.rect.left, p2.rect.top + 20, p2.dir, p2.weapon, "p2"));
- bazookasn.play();
- p2.reload = 0;
- p2.ammo -= 1;
- p2.ammoin -= 1;
- p2.readyshoot = 0;
- p2.shootanim = "bazooka_shoot";
- //p2.dy = -0.1;отдача
- //p2.dx = -50;
- }
- }
- }
- }
- if (p3.life>0) {
- if (Keyboard::isKeyPressed(Keyboard::B)) {
- if ((p3.weapon == "ak-47") && (p3.ammo>0) && (p3.reload>0.6)) {
- if (p3.ammoin > 0) {
- bullets.push_back(new Bullet(bul, p3.rect.left, p3.rect.top + 25, p3.dir, p3.weapon, "p3"));
- damage.play();
- p3.reload = 0;
- p3.ammo -= 1;
- p3.ammoin -= 1;
- p3.readyshoot = 0;
- p3.shootanim = "ak-47_shoot";
- //p3.dy = -0.1;отдача
- //p3.dx = -50;
- }
- }
- else if ((p3.weapon == "revolver") && (p3.ammo>0) && (p3.reload>0.9)) {
- if (p3.ammoin > 0) {
- bullets.push_back(new Bullet(revolver, p3.rect.left, p3.rect.top + 30, p3.dir, p3.weapon, "p3"));
- revolversn.play();
- p3.reload = 0;
- p3.ammo -= 1;
- p3.ammoin -= 1;
- p3.readyshoot = 0;
- p3.shootanim = "revolver_shoot";
- //p3.dy = -0.1;отдача
- //p3.dx = -50;
- }
- }
- else if ((p3.weapon == "bazooka") && (p3.ammo>0) && (p3.reload>2)) {
- if (p3.ammoin > 0) {
- bullets.push_back(new Bullet(bazooka, p3.rect.left, p3.rect.top + 20, p3.dir, p3.weapon, "p3"));
- bazookasn.play();
- p3.reload = 0;
- p3.ammo -= 1;
- p3.ammoin -= 1;
- p3.readyshoot = 0;
- p3.shootanim = "bazooka_shoot";
- //p3.dy = -0.1;отдача
- //p3.dx = -50;
- }
- }
- }
- }
- if ((tempi != 0) && (tempj != 0)) {
- TileMap[tempi][tempj] = ' ';
- TileMap[tempi][tempj - 1] = ' ';
- TileMap[tempi - 1][tempj] = ' ';
- TileMap[tempi][tempj + 1] = ' ';
- TileMap[tempi + 1][tempj] = ' ';
- TileMap[tempi + 1][tempj + 1] = ' ';
- TileMap[tempi - 1][tempj - 1] = ' ';
- TileMap[tempi - 1][tempj + 1] = ' ';
- TileMap[tempi + 1][tempj - 1] = ' ';
- }
- if ((p2.life <= 0) && (p3.life <= 0)) {
- if (soundover == false) { gamem.stop(); music.play(); soundover = true; std::cout << "Console: Player 1 wins! Congrats!\n"; }
- if (endround<185) {
- endround += 0.01*time;
- }
- else {
- return true;
- }
- }
- if ((p.life <= 0) && (p3.life <= 0)) {
- if (soundover == false) { gamem.stop(); music.play(); soundover = true; std::cout << "Console: Player 2 wins! Congrats!\n"; }
- if (endround<185) {
- endround += 0.01*time;
- }
- else {
- return true;
- }
- }
- if ((p.life <= 0) && (p2.life <= 0)) {
- if (soundover == false) { gamem.stop(); music.play(); soundover = true; std::cout << "Console: Player 3 wins! Congrats!\n"; }
- if (endround>185) {
- endround += 0.01*time;
- }
- else {
- return true;
- }
- }
- if ((p.life <= 0) && (soundover1 == false)) {
- kill.play();
- soundover1 = true;
- }
- if ((p2.life <= 0) && (soundover2 == false)) {
- kill.play();
- soundover2 = true;
- }
- if ((p3.life <= 0) && (soundover3 == false) && (*playercount>2)) {
- kill.play();
- soundover3 = true;
- }
- for (it = bullets.begin(); it != bullets.end(); it++) {
- (*it)->update(time, &tempi, &tempj, &snd);
- }
- for (it = bullets.begin(); it != bullets.end(); it++) {
- (*it)->Attack(time, p2.rect.left, p2.rect.top, &p2.life, "p2");
- }
- for (it = bullets.begin(); it != bullets.end(); it++) {
- (*it)->Attack(time, p.rect.left, p.rect.top, &p.life, "p1");
- }
- for (it = bullets.begin(); it != bullets.end(); it++) {
- (*it)->Attack(time, p3.rect.left, p3.rect.top, &p3.life, "p3");
- }
- if (p.life>0) {
- if (Keyboard::isKeyPressed(Keyboard::Up))
- {
- if ((p.onGround) && (p.onStairs == false)) {
- p.dy = -0.35; p.onGround = false;
- }
- if (p.onStairs == true) {
- p.dy = -0.1;
- }
- }
- if (Keyboard::isKeyPressed(Keyboard::Left))
- {
- if (p.onGround) {
- p.dx = -0.1;
- p.dir = -1;
- }
- else {
- p.dx = -0.2;
- p.dir = -1;
- }
- }
- if (Keyboard::isKeyPressed(Keyboard::Right))
- {
- if (p.onGround) {
- p.dx = 0.1;
- p.dir = 1;
- }
- else {
- p.dx = 0.2;
- p.dir = 1;
- }
- }
- }
- //2nd player
- if (p2.life>0) {
- if (Keyboard::isKeyPressed(Keyboard::A))
- {
- if (p2.onGround) {
- p2.dx = -0.1;
- p2.dir = -1;
- }
- else {
- p2.dx = -0.2;
- p2.dir = -1;
- }
- }
- if (Keyboard::isKeyPressed(Keyboard::D))
- {
- if (p2.onGround) {
- p2.dx = 0.1;
- p2.dir = 1;
- }
- else {
- p2.dx = 0.2;
- p2.dir = 1;
- }
- }
- if (Keyboard::isKeyPressed(Keyboard::W))
- {
- if ((p2.onGround) && (p2.onStairs == false) && (p2.equip != "jetpack")) {
- p2.dy = -0.35; p2.onGround = false;
- }
- if (p2.onStairs == true) {
- p2.dy = -0.1;
- }
- if (p2.equip == "jetpack") {
- p2.dy = -0.1;
- }
- }
- }
- //Звуки
- if (snd != 0) {
- if (snd == 1) {
- exploz.play();
- snd = 0;
- }
- }
- //Перезарядка
- if ((p.readyshoot > 4) && (p.ammo>0))
- {
- if (p.weapon == "ak-47") {
- p.ammoin = 3;
- }
- else if (p.weapon == "revolver") {
- p.ammoin = 2;
- }
- else if (p.weapon == "bazooka") {
- p.ammoin = 1;
- }
- }
- if ((p2.readyshoot > 4) && (p2.ammo>0))
- {
- if (p2.weapon == "ak-47") {
- p2.ammoin = 3;
- }
- else if (p2.weapon == "revolver") {
- p2.ammoin = 2;
- }
- else if (p2.weapon == "bazooka") {
- p2.ammoin = 1;
- }
- }
- //Удаление пули
- for (it = bullets.begin(); it != bullets.end();)
- {
- Bullet *b = *it;
- if (b->life == false)
- {
- it = bullets.erase(it);
- delete b;
- }
- else it++;
- }
- if (Keyboard::isKeyPressed(Keyboard::Escape)) { *firststart = true; return true; }
- p.update(time);
- p2.update(time);
- p3.update(time);
- window.clear(Color(107, 140, 255));
- background.setPosition(scrwidth / 2, scrheight / 2);
- window.draw(background);
- for (int i = 0; i < H; i++)
- for (int j = 0; j < W - 1; j++)
- {
- if (TileMap[i][j] == 'P') tile.setTextureRect(IntRect(0, 884, 16, 16));
- if (TileMap[i][j] == 'T') tile.setTextureRect(IntRect(16, 884, 16, 16));
- if (TileMap[i][j] == 'O') tile.setTextureRect(IntRect(32, 884, 16, 16));
- if (TileMap[i][j] == 'V') tile.setTextureRect(IntRect(48, 884, 16, 16));
- if (TileMap[i][j] == 'U') tile.setTextureRect(IntRect(64, 884, 16, 16));
- if (TileMap[i][j] == 'Z') tile.setTextureRect(IntRect(0, 836, 90, 48));
- if (TileMap[i][j] == 'S') tile.setTextureRect(IntRect(96, 884, 16, 16));
- if (TileMap[i][j] == 'B') tile.setTextureRect(IntRect(80, 884, 16, 16));
- if (TileMap[i][j] == 'X') tile.setTextureRect(IntRect(112, 884, 16, 16));
- if (TileMap[i][j] == 'N') tile.setTextureRect(IntRect(128, 851, 16, 48));
- if (TileMap[i][j] == 'H') tile.setTextureRect(IntRect(143, 851, 9, 48));
- if (TileMap[i][j] == 'D') tile.setTextureRect(IntRect(0, 0, 1344, 228));
- if (TileMap[i][j] == 'J') tile.setTextureRect(IntRect(152, 865, 24, 35));
- if ((TileMap[i][j] == ' ') || (TileMap[i][j] == '0') || (TileMap[i][j] == '\0') || (TileMap[i][j] == 'E')) continue;
- tile.setPosition(j * 16, i * 16);
- window.draw(tile);
- }
- for (it = bullets.begin(); it != bullets.end(); it++)
- (*it)->draw(window, bul);
- window.setView(view);
- window.draw(p.sprite);
- window.draw(p2.sprite);
- window.draw(p3.sprite);
- window.display();
- }
- }
- void gameRun(RenderWindow &window, int *playerscount, int lvlnum, bool *firststart) {
- if (*firststart == true) {
- *firststart = false;
- if (((pause(window, playerscount)) == true)) {
- if (lvlnum == 1) {
- String TileMapNum1[H] = {
- "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 J P 00",
- "00 SSS B PXXX 00",
- "00 SSS XXX B 00",
- "00PSSSPPPPPPPPPPPPPPPPPPPP B 00",
- "00 SSS P B 00",
- "00 SSS P 00",
- "00 SSS PPPPPPPPPPPPPPPPPPPPP 00",
- "00 SSS P P 00",
- "00 SSS P P 00",
- "00 SSS P Z0000 00",
- "00 SSS P 0 0TTTTTTTTTO 00",
- "00 SSS H 00000 V 00",
- "00 SSS 0 P V 00",
- "00 SSS 0 P V 00",
- "00 SSS PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP V 00",
- "00 SSS P V 00",
- "00 SSS P UTTTO PPPPP 00",
- "00 SSS P V XX PPPPP 00",
- "00 SSS P V B XX PPPPP 00",
- "00 SSS P V XX 00",
- "00 SSS P PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP0",
- "00 SSS P P0",
- "00 SSS P P0",
- "00 SSS P XX P0",
- "00 SSS P B XXX B P0",
- "00 SSS P XXX P0",
- "00 SSS P DPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP P0",
- "00 SSS P P PP0",
- "00 SSS P P P P0",
- "00 SSS P P P P0",
- "00 SSS H H P P0",
- "00 SSS 0 B 0 B P P0",
- "00 SSS 0 0 P P0",
- "00PPPPPP PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE",
- "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
- };
- for (int n = 0; n <= H - 1; n++) {
- String *temp = &TileMapNum1[n];
- String *ptr = &TileMap[n];
- *ptr = *temp;
- }
- }
- if (lvlnum >= 2) {
- String TileMapNum1[H] = {
- "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 SSS B 00",
- "00 SSS B 00",
- "00PSSSPPPPPPPPPPPPPPPPPPPP B 00",
- "00 SSS P B 00",
- "00 SSS P 00",
- "00 SSS PPPPPPPPPPPPPPPPPPPPP 00",
- "00 SSS P P 00",
- "00 SSS P P 00",
- "00 SSS P Z0000 00",
- "00 SSS P 0 0TTTTTTTTTO 00",
- "00 SSS H 00000 V 00",
- "00 SSS 0 P V 00",
- "00 SSS 0 P V 00",
- "00 SSS PPPPPPPPPPPPPPPPPPPPP V 00",
- "00 SSS P V 00",
- "00 SSS P UTTTO PPPPP 00",
- "00 SSS P V PPPPP 00",
- "00 SSS P V B PPPPP 00",
- "00 SSS P V 00",
- "00 SSS P PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP00",
- "00 SSS P 00",
- "00 SSS P 00",
- "00 SSS P 00",
- "00 SSS P B B 00",
- "00 SSS P 00",
- "00 SSS P DPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP 00",
- "00 SSS P P P00",
- "00 SSS P P P 00",
- "00 SSS P P P 00",
- "00 SSS H P 00",
- "00 SSS 0 B B P 00",
- "00 SSS 0 P 00",
- "00PPPPPP PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE",
- "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
- };
- for (int n = 0; n <= H - 1; n++) {
- String *temp = &TileMapNum1[n];
- String *ptr = &TileMap[n];
- *ptr = *temp;
- }
- }
- lvlnum++;
- StartGame(window, playerscount, firststart); gameRun(window, playerscount, lvlnum, firststart);
- }
- else { window.close(); }
- }
- else {
- if (lvlnum == 1) {
- String TileMapNum1[H] = {
- "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 SSS B 00",
- "00 SSS B 00",
- "00PSSSPPPPPPPPPPPPPPPPPPPP B 00",
- "00 SSS P B 00",
- "00 SSS P 00",
- "00 SSS PPPPPPPPPPPPPPPPPPPPP 00",
- "00 SSS P P 00",
- "00 SSS P P 00",
- "00 SSS P Z0000 00",
- "00 SSS P 0 0TTTTTTTTTO 00",
- "00 SSS H 00000 V 00",
- "00 SSS 0 P V 00",
- "00 SSS 0 P V 00",
- "00 SSS PPPPPPPPPPPPPPPPPPPPP V 00",
- "00 SSS P V 00",
- "00 SSS P UTTTO PPPPP 00",
- "00 SSS P V PPPPP 00",
- "00 SSS P V B PPPPP 00",
- "00 SSS P V 00",
- "00 SSS P PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP00",
- "00 SSS P 00",
- "00 SSS P 00",
- "00 SSS P 00",
- "00 SSS P B B 00",
- "00 SSS P 00",
- "00 SSS P DPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP 00",
- "00 SSS P P P00",
- "00 SSS P P P 00",
- "00 SSS P P P 00",
- "00 SSS H P 00",
- "00 SSS 0 B B P 00",
- "00 SSS 0 P 00",
- "00PPPPPP PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE",
- "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
- };
- for (int n = 0; n <= H - 1; n++) {
- String *temp = &TileMapNum1[n];
- String *ptr = &TileMap[n];
- *ptr = *temp;
- }
- }
- if (lvlnum >= 2) {
- String TileMapNum1[H] = {
- "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 SSS B 00",
- "00 SSS B 00",
- "00PSSSPPPPPPPPPPPPPPPPPPPP B 00",
- "00 SSS P B 00",
- "00 SSS P 00",
- "00 SSS PPPPPPPPPPPPPPPPPPPPP 00",
- "00 SSS P P 00",
- "00 SSS P P 00",
- "00 SSS P Z0000 00",
- "00 SSS P 0 0TTTTTTTTTO 00",
- "00 SSS H 00000 V 00",
- "00 SSS 0 P V 00",
- "00 SSS 0 P V 00",
- "00 SSS PPPPPPPPPPPPPPPPPPPPP V 00",
- "00 SSS P V 00",
- "00 SSS P UTTTO PPPPP 00",
- "00 SSS P V PPPPP 00",
- "00 SSS P V B PPPPP 00",
- "00 SSS P V 00",
- "00 SSS P PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP0",
- "00 SSS P P0",
- "00 SSS P P0",
- "00 SSS P P0",
- "00 SSS P B B P0",
- "00 SSS P P0",
- "00 SSS P DPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP P0",
- "00 SSS P P PP0",
- "00 SSS P P P P0",
- "00 SSS P P P P0",
- "00 SSS H H P P0",
- "00 SSS 0 B 0 B P P0",
- "00 SSS 0 0 P P0",
- "00PPPPPP PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "00 00",
- "EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE",
- "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
- };
- for (int n = 0; n <= H - 1; n++) {
- String *temp = &TileMapNum1[n];
- String *ptr = &TileMap[n];
- *ptr = *temp;
- }
- }
- lvlnum++;
- StartGame(window, playerscount, firststart); gameRun(window, playerscount, lvlnum, firststart);
- }
- }
- int main() {
- //RenderWindow window(VideoMode(1800, 900, 32), "SFML Graphics");
- sf::VideoMode desktop = sf::VideoMode().getDesktopMode();
- sf::RenderWindow window(desktop, "Kill_real_15!", sf::Style::None);
- bool firststart = true;
- int playerscount = 2;
- int lvlnum = 1;
- gameRun(window, &playerscount, lvlnum, &firststart);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement