Newsgroup: it.comp.lang.c++
Titolo: Grafica: muovere un oggetto!

Salve a tutti!é da un pò che programmo in C++..o meglio, in C ma non sono
ancora pratico al 100% ed è per questo che vi vorrei chiedere:
sto facendo un giochino simile a PuzzleBubble per scuola(per un 10 in
informatica si fa questo ed altro....non pensate male!)ma non riesco a far
muovere bene il cannoncino(che poi in realtà è un archetto di 20° di
apertura)perchè quando schiaccio il tasto 'd' mi si muove(ruota) verso
destra, poi se schiaccio il tasto 's' si muove(ruota) a sinistra, non dal
punto in cui si era fermato prima, ma da una posizione diametralmente
opposta!so che c'è qualcosa di sbagliato ma non riesco a capire cosa devo
fare.
qui c'è il programma(non ancora finito perchè manca tutta la parte in cui
gli dico che ogni volta che sparo la pallina mi deve distruggere il
mattoncino...ho detto simile a puzzle bubble non uguale!):
#include<stdio.h>
#include<conio.h>
#include<graphics.h>
#include<dos.h>
int gdriver = DETECT, gmode, errorcode;
int I,J,X,Y,angolo,inizio,fine;
char pattern[8] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
char S;
main()
{  initgraph(&gdriver, &gmode, "C:\\TC\\BGI");
   errorcode = graphresult();
   if (errorcode != grOk)
   {
      printf("Graphics error: %s\n", grapherrormsg(errorcode));
      printf("Press any key to halt:");
      getch();
   }
outtextxy(20,20,"d=destra  s=sinistra  f=spara  q=esci");
getch();
setcolor(0);
outtextxy(20,20,"d=destra  s=sinistra  f=spara  q=esci");
setcolor(GREEN);
rectangle(160,30,480,450);//sfondo
setfillpattern(pattern,YELLOW );//corpo
setcolor(RED);
fillellipse(320,450,10,10);
setcolor(BLUE);
arc(320,450,80,100,15);//mirino
arc(320,450,80,100,16);
arc(320,450,80,100,17);
arc(320,450,80,100,18);
X=40;//mattoncini
Y=20;
for(J=0;J<7;J++){
setcolor(J);
for(I=0;I<8;I++){
setcolor(I+1);
rectangle(160+X*I,30+Y*J,200+X*I,50+Y*J);
}}
angolo=0;
inizio=0;
fine=0;
while(1)
{
S=getch();
if (S=='d')
{
angolo=angolo+5;
setcolor(0);
arc(320,450,85-angolo,105-angolo,15);
arc(320,450,85-angolo,105-angolo,16);
arc(320,450,85-angolo,105-angolo,17);
arc(320,450,85-angolo,105-angolo,18);
setcolor(BLUE);
inizio=80-angolo;
fine=100-angolo;
arc(320,450,inizio,fine,15);
arc(320,450,inizio,fine,16);
arc(320,450,inizio,fine,17);
arc(320,450,inizio,fine,18);
}
if (S=='s')
{
angolo=angolo+5;
setcolor(0);
arc(320,450,75+angolo,95+angolo,15);
arc(320,450,75+angolo,95+angolo,16);
arc(320,450,75+angolo,95+angolo,17);
arc(320,450,75+angolo,95+angolo,18);
setcolor(BLUE);
inizio=80+angolo;
fine=100+angolo;
arc(320,450,inizio,fine,15);
arc(320,450,inizio,fine,16);
arc(320,450,inizio,fine,17);
arc(320,450,inizio,fine,18);
}
if (S=='q')
break;
}
getch();
closegraph();
}
Altre 2 cose..come faccio a muovere contemporaneamente una pallina con il
"cannoncino" e poi come faccio a far si che la pallina sparata contro un
muro
rimbalzi(in modo quasi reale da non compromettere il gioco) e che invece
contro un mattoncino scompaiano entrambi?
Lo so che è brutto fare un programma con l'aiuto di qualcun'altro ma mi
serve per scuola ed è veramente importante!...praticamente me lo farete
quasi completamente voi!
Per favore rispondetemi(meglio se con pezzi di programma, o addirittura con
il programma gia fatto)
ciao e grazie in anticipo
Luca

 il programma gia fatto)
Per 500 euro ti faccio tutto il gioco, visto anche che ho già i sorgenti 
in un altro linguaggio, causa precedente lavoro nel campo dei 
videogiochi... ;) 
-- 
Luc

1 sei completamente off-topic
2 per le ricette pronte it.comp.hobby.cucina