Open mahmoud31415 opened 4 years ago
using namespace std;
float d = 0.017453f;
float dd = 0.017453f; int main() { sf::Font font; if (!font.loadFromFile("/system/fonts/Roboto-Regular.ttf")) return EXIT_FAILURE;
int wx=1080,wy=2340; sf::RenderWindow app(sf::VideoMode(wx,wy),"my app");
float x=500,y=300; float xx=xx,yy=y; float dy=0,dx=0,angle=0; float dyy=0,dxx=0,anglee=0; bool go=false; int l=0; //////// the Ship sf::CircleShape ship(50,3); ship.setOutlineThickness(5); ship.setFillColor(sf::Color(0,0,0)); ship.setScale(1,1.4); ship.setOrigin(25,25); //////The buttons sf::CircleShape but(50,3); but.setScale(1,1.4); but.setFillColor(sf::Color(200,200,0)); vectorbutt(5); for(int i=0;i<5;i++) { butt[i]=but; butt[0].setPosition(200,100); butt[1].setPosition(150,350); butt[1].rotate(45); butt[2].setPosition(200,2000); butt[2].rotate(-90); } /////
//////////the fire
sf::CircleShape f(10);
vectorfire; fire.push_back(sf::CircleShape (f));
while(app.isOpen()) { sf::Event event; while(app.pollEvent(event)) { if(event.type == sf::Event::Closed) app.close(); } butt[3].setPosition(1000,500); butt[4].setPosition(1000,700);
for(int i=0;i<2;i++) if (event.type == sf::Event::TouchMoved) {
sf::Vector2i touchpos = sf::Touch::getPosition(0); fire.push_back(sf::CircleShape (f));
f.setPosition(ship.getPosition().x,ship.getPosition().y); l+=1; }
xx+=sin(angle)20; yy+=cos(angle)20; for(int j=0;j<fire.size();j+=1) {
// fire[j].setPosition(xx,yy); anglee=sin(angle); fire[j].move(anglee20,cos(angle)20); //fire[j].setPosition();
}
for(int i=0;i<=1;i++) if(sf::Touch::isDown(i)) { sf::Vector2i touchpo = sf::Touch::getPosition(1); butt[4].setPosition(touchpo.x,touchpo.y); sf::Vector2i touchpos = sf::Touch::getPosition(0); go=false; butt[3].setPosition(touchpos.x,touchpos.y);
if(butt[3].getGlobalBounds().intersects(butt[0].getGlobalBounds()))angle-=3; if(butt[3].getGlobalBounds().intersects(butt[1].getGlobalBounds()))angle+=3; if(butt[3].getGlobalBounds().intersects(butt[2].getGlobalBounds())||butt[4].getGlobalBounds().intersects(butt[2].getGlobalBounds()))go=true;
else go=false; if(butt[4].getGlobalBounds().intersects(butt[0].getGlobalBounds()))angle-=3; if(butt[4].getGlobalBounds().intersects(butt[1].getGlobalBounds()))angle+=3;
if(go) { dxx+=cos(angleedd)10; dyy+=sin(angleedd)10;
dx+=cos(angled)0.2; dy+=sin(angled)0.2;
} else { ////سرعة التوقف dx=0.99; dy=0.99;
int max=15; float sp=sqrt(dxdx+dydy); if(sp>max) { dx=max/sp; dy=max/sp; }
x+=dx; y+=dy;
if(x>1100)x=-100; if(y>2400)y=-100; if(x<-100)x=1100; if(y<-100)y=2400;
ship.setPosition(x,y); ship.setRotation(angle+90);
///////////// stringstream ss; ss<< ship.getRotation(); string s; ss>>s; sf::Text text(s, font, 50); text.setPosition(100,5);
////shoing iny thing here draw
for(int i=0;i<fire.size();i++) { app.draw(fire[i]);
} for(int i=0;i<3;i++) app.draw(butt[i]); app.draw(text); app.draw(ship); app.display(); } return 0; }
include <SFML/Graphics.hpp>
include
include
include
include <SFML/Audio.hpp>
include
include
using namespace std;
float d = 0.017453f;
float dd = 0.017453f; int main() { sf::Font font; if (!font.loadFromFile("/system/fonts/Roboto-Regular.ttf")) return EXIT_FAILURE;
int wx=1080,wy=2340; sf::RenderWindow app(sf::VideoMode(wx,wy),"my app");
float x=500,y=300; float xx=xx,yy=y; float dy=0,dx=0,angle=0; float dyy=0,dxx=0,anglee=0; bool go=false; int l=0; //////// the Ship sf::CircleShape ship(50,3); ship.setOutlineThickness(5); ship.setFillColor(sf::Color(0,0,0)); ship.setScale(1,1.4); ship.setOrigin(25,25); //////The buttons sf::CircleShape but(50,3); but.setScale(1,1.4); but.setFillColor(sf::Color(200,200,0)); vectorbutt(5);
for(int i=0;i<5;i++)
{
butt[i]=but;
butt[0].setPosition(200,100);
butt[1].setPosition(150,350);
butt[1].rotate(45);
butt[2].setPosition(200,2000);
butt[2].rotate(-90);
}
/////
//////////the fire
sf::CircleShape f(10);
vectorfire;
fire.push_back(sf::CircleShape (f));
while(app.isOpen()) { sf::Event event; while(app.pollEvent(event)) { if(event.type == sf::Event::Closed) app.close(); } butt[3].setPosition(1000,500); butt[4].setPosition(1000,700);
for(int i=0;i<2;i++) if (event.type == sf::Event::TouchMoved) {
sf::Vector2i touchpos = sf::Touch::getPosition(0); fire.push_back(sf::CircleShape (f));
f.setPosition(ship.getPosition().x,ship.getPosition().y); l+=1; }
xx+=sin(angle)20; yy+=cos(angle)20; for(int j=0;j<fire.size();j+=1) {
// fire[j].setPosition(xx,yy); anglee=sin(angle); fire[j].move(anglee20,cos(angle)20); //fire[j].setPosition();
}
for(int i=0;i<=1;i++) if(sf::Touch::isDown(i)) { sf::Vector2i touchpo = sf::Touch::getPosition(1); butt[4].setPosition(touchpo.x,touchpo.y); sf::Vector2i touchpos = sf::Touch::getPosition(0); go=false; butt[3].setPosition(touchpos.x,touchpos.y);
}
if(butt[3].getGlobalBounds().intersects(butt[0].getGlobalBounds()))angle-=3; if(butt[3].getGlobalBounds().intersects(butt[1].getGlobalBounds()))angle+=3; if(butt[3].getGlobalBounds().intersects(butt[2].getGlobalBounds())||butt[4].getGlobalBounds().intersects(butt[2].getGlobalBounds()))go=true;
else go=false; if(butt[4].getGlobalBounds().intersects(butt[0].getGlobalBounds()))angle-=3; if(butt[4].getGlobalBounds().intersects(butt[1].getGlobalBounds()))angle+=3;
if(go) { dxx+=cos(angleedd)10; dyy+=sin(angleedd)10;
dx+=cos(angled)0.2; dy+=sin(angled)0.2;
} else { ////سرعة التوقف dx=0.99; dy=0.99;
}
int max=15; float sp=sqrt(dxdx+dydy); if(sp>max) { dx=max/sp; dy=max/sp; }
x+=dx; y+=dy;
if(x>1100)x=-100; if(y>2400)y=-100; if(x<-100)x=1100; if(y<-100)y=2400;
ship.setPosition(x,y); ship.setRotation(angle+90);
///////////// stringstream ss;
ss<< ship.getRotation(); string s; ss>>s; sf::Text text(s, font, 50); text.setPosition(100,5);
////shoing iny thing here draw
for(int i=0;i<fire.size();i++) { app.draw(fire[i]);
} for(int i=0;i<3;i++) app.draw(butt[i]); app.draw(text); app.draw(ship); app.display(); } return 0; }