estou tentando fazer um programa aonde tem uma tela e você pode se movimentar com a mira apertando wasd mais problema e que quando eu aperto w ou a ou s ou d ele so vai pra uma direção e eu não estou conseguindo resolver
Aqui esta o codigo:
#include <iostream>
#include <conio.h>
#include <stdlib.h>
#include <cstdlib>
using namespace std;
char tela[15][15];
int x, y, perx, pery, movimento = 0, movimentacao(), imprime(), define();;
int movimentacao(){
movimento = getche();
if (movimento == 119 || movimento == 97 || movimento == 115 || movimento == 100){
if (movimento = 119){
if(perx != 0){
define();
perx--;
}
}
if (movimento = 97){
if(pery != 0){
define();
pery--;
}
}
if (movimento == 115){
if(perx != 14){
define();
perx++;
}
}
if (movimento == 100){
if(pery != 14){
define();
pery++;
}
}
}else{
system("cls");
imprime();
movimentacao();
}
}
int define(){
for (int xtela = 0;xtela<15;xtela++){
for (int ytela = 0;ytela<15;ytela++){
tela[xtela][ytela] = ' ';
}
}
}
int personagem(){
tela[perx][pery] = '+';
}
int imprime(){
for (int xtela = 0;xtela<15;xtela++){
for (int ytela = 0;ytela<15;ytela++){
if (ytela == 14){
cout << tela[xtela][ytela] << endl;
}
else{
cout << tela[xtela][ytela];
}
}
}
}
int main(){
while (true){
define();
perx = 7;
pery = 7;
while (true){
system("cls");
personagem();
imprime();
movimentacao();
}
}
}
Pergunta
Elon Neto
estou tentando fazer um programa aonde tem uma tela e você pode se movimentar com a mira apertando wasd mais problema e que quando eu aperto w ou a ou s ou d ele so vai pra uma direção e eu não estou conseguindo resolver
Aqui esta o codigo:
#include <iostream>
Editado por Elon Neto#include <conio.h>
#include <stdlib.h>
#include <cstdlib>
using namespace std;
char tela[15][15];
int x, y, perx, pery, movimento = 0, movimentacao(), imprime(), define();;
int movimentacao(){
movimento = getche();
if (movimento == 119 || movimento == 97 || movimento == 115 || movimento == 100){
if (movimento = 119){
if(perx != 0){
define();
perx--;
}
}
if (movimento = 97){
if(pery != 0){
define();
pery--;
}
}
if (movimento == 115){
if(perx != 14){
define();
perx++;
}
}
if (movimento == 100){
if(pery != 14){
define();
pery++;
}
}
}else{
system("cls");
imprime();
movimentacao();
}
}
int define(){
for (int xtela = 0;xtela<15;xtela++){
for (int ytela = 0;ytela<15;ytela++){
tela[xtela][ytela] = ' ';
}
}
}
int personagem(){
tela[perx][pery] = '+';
}
int imprime(){
for (int xtela = 0;xtela<15;xtela++){
for (int ytela = 0;ytela<15;ytela++){
if (ytela == 14){
cout << tela[xtela][ytela] << endl;
}
else{
cout << tela[xtela][ytela];
}
}
}
}
int main(){
while (true){
define();
perx = 7;
pery = 7;
while (true){
system("cls");
personagem();
imprime();
movimentacao();
}
}
}
Link para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.