Commit 59a06a65 authored by Illia Aldabaiev's avatar Illia Aldabaiev
Browse files

Step1 - creating stars

parents
Loading
Loading
Loading
Loading

.gitignore

0 → 100644
+70 −0
Original line number Diff line number Diff line

# User-specific stuff
.idea/**/workspace.xml
.idea/**/tasks.xml
.idea/**/usage.statistics.xml
.idea/**/dictionaries
.idea/**/shelf

# Generated files
.idea/**/contentModel.xml

# Sensitive or high-churn files
.idea/**/dataSources/
.idea/**/dataSources.ids
.idea/**/dataSources.local.xml
.idea/**/sqlDataSources.xml
.idea/**/dynamic.xml
.idea/**/uiDesigner.xml
.idea/**/dbnavigator.xml

# Gradle
.idea/**/gradle.xml
.idea/**/libraries

# Gradle and Maven with auto-import
# When using Gradle or Maven with auto-import, you should exclude module files,
# since they will be recreated, and may cause churn.  Uncomment if using
# auto-import.
# .idea/artifacts
# .idea/compiler.xml
# .idea/jarRepositories.xml
# .idea/modules.xml
# .idea/*.iml
# .idea/modules
# *.iml
# *.ipr

# CMake
cmake-build-*/

# Mongo Explorer plugin
.idea/**/mongoSettings.xml

# File-based project format
*.iws

# IntelliJ
out/

# mpeltonen/sbt-idea plugin
.idea_modules/

# JIRA plugin
atlassian-ide-plugin.xml

# Cursive Clojure plugin
.idea/replstate.xml

# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties
fabric.properties

# Editor-based Rest Client
.idea/httpRequests

# Android studio 3.1+ serialized cache file
.idea/caches/build_file_checksums.ser
 No newline at end of file

CMakeLists.txt

0 → 100644
+13 −0
Original line number Diff line number Diff line
cmake_minimum_required(VERSION 3.16)
project(SpaceTour_)

set(CMAKE_CXX_STANDARD 14)

add_executable(SpaceTour_ main.cpp OpenSpace.cpp OpenSpace.h ScreenController.cpp ScreenController.h Falcon_9.cpp Falcon_9.h)

add_compile_options(-Wall -Wextra)
include_directories(/usr/local/include)

find_package(SFML 2.5 COMPONENTS system window graphics network audio REQUIRED)
include_directories(${SFML_INCLUDE_DIRS})
target_link_libraries(SpaceTour_ sfml-system sfml-window sfml-graphics sfml-audio sfml-network)

Falcon_9.cpp

0 → 100644
+19 −0
Original line number Diff line number Diff line
#include "Falcon_9.h"

Falcon_9::Falcon_9()
{
    speed = 5;
    scope = sf::RectangleShape(sf::Vector2f(20, 20));
    scope.setFillColor(sf::Color::Red);
    scope.setPosition(10,10);
}

void Falcon_9::draw_falcon(sf::RenderWindow &win)
{
    win.draw(scope);
}

int Falcon_9::get_speed()
{
    return speed;
}

Falcon_9.h

0 → 100644
+19 −0
Original line number Diff line number Diff line
#ifndef SPACETOUR__FALCON_9_H
#define SPACETOUR__FALCON_9_H
#include <SFML/Graphics.hpp>


class Falcon_9 {
    int speed;
    sf::RectangleShape scope;

public:
    Falcon_9();
    void draw_falcon(sf::RenderWindow &win);
    int get_speed();
};



#endif
 No newline at end of file

OpenSpace.cpp

0 → 100644
+58 −0
Original line number Diff line number Diff line
#include "OpenSpace.h"

OpenSpace::OpenSpace()
{
    star_circle = sf::CircleShape(0.5);
    star_circle.setFillColor(sf::Color::White);
    space_clear = false;
}

void OpenSpace::set_main_star_position()
{
    Star s;
    for (int i = 0; i < 5000; ++i)
    {
        int x, y;
        x = rand() % 2560;
        y = rand() % 1440;
        //нрисовать схему
        if(rand()%2)
            x *= -1;
        if(rand()%2)
            y *= -1;
        s.star_position_x = x;
        s.star_position_y = y;
        stars.push_back(s);
    }
}

void OpenSpace::set_star_position()
{
    for (int i = 0; i < stars.size(); ++i)
    {
        if (on_screen(stars[i].star_position_x, stars[i].star_position_y))
        {

        }
    }
}

void OpenSpace::draw_star(sf::RenderWindow &win)
{
    for (int i = 0; i < stars.size(); ++i)
    {
        star_circle.setPosition(stars[i].star_position_x, stars[i].star_position_y);
        win.draw(star_circle);
    }
}

bool OpenSpace::on_screen(int x, int y)
{
    if (x < 0 || x > 1280)
        return false;
    if (y < 0 || y > 720)
        return false;
    return true;
}