Manipuler directement le terminal pour faire un Rogue-like ?

Manipuler directement le terminal pour faire un Rogue-like ? - C - Programmation

Marsh Posté le 13-06-2009 à 22:04:46    

[Edit : j'ai trouvé ce que je cherchais : ncurses, par contre j'ai des problème pour l'utiliser... voir mon poste un peu plus bas. Merci !]
 
Hello,
j'aimerais m'amuser à faire un petit Rogue-like (jeu en ASCII dans le terminal). Je pensais le faire en C (un langage que je connais bien). Mais je ne voit pas du tout comment modifier directement dans le terminal une lettre d'une chaine de caractère.  
Par exemple, comment faire pour déplacer le personnage d'une case sans savoir à ré-afficher tout le niveau.
Avant :
 ____
⎮ x  ⎮
⎮     ⎮
 ------
 
 Apres avoir appuyer sur une touche du clavier :  
 ____
⎮   x⎮
⎮     ⎮
 ------
 
Y'a t'il des fonctions pour faire ça en C, ou des libraires pour le faire ? Ou alors un autre langage de programmation ?
 
Merci d'avance !


Message édité par magicpotu le 14-06-2009 à 15:12:34
Reply

Marsh Posté le 13-06-2009 à 22:04:46   

Reply

Marsh Posté le 13-06-2009 à 22:14:33    

regarde du coté de ncurses peut-être ?

Reply

Marsh Posté le 14-06-2009 à 15:04:33    

ncurses obviously :o

 

Je t'avouerais que la bonne maniére est de decouper le jeu en phase :
calcul du monde - affichage - interaction et on boucle.
l'affichage est juste construire la grosse chaine de caractére d el'ecran et l'afficher.

 

pas besoin de te casser à effacer un caractére pour le deplacer


Message édité par Joel F le 14-06-2009 à 15:05:27
Reply

Marsh Posté le 14-06-2009 à 15:10:03    

Magnifique, exactement ce que je cherchais, merci !
Mais... j'ai un petit problème lors de l'installation...
 
1- J'ai un mac sous léopard
2- je télécharge ncurses-5.7.tar.gz ici : http://gnu.mirror.ironie.org/pub/gnu/ncurses/
3- Je tape ./configure  et j'obtiens :

Citation :

** Configuration summary for NCURSES 5.7 20081102:
 
     extended funcs: yes
     xterm terminfo: xterm-new
 
      bin directory: /usr/local/bin
      lib directory: /usr/local/lib
  include directory: /usr/local/include/ncurses
      man directory: /usr/local/man
 terminfo directory: /usr/local/share/terminfo
 
** Include-directory is not in a standard location


 
3- Je tape make. Et apres une longue liste de gcc j'obtiens une erreur :

Citation :

gcc ../objects/tic.o ../objects/dump_entry.o -Wl,-search_paths_first -I../progs -I. -DHAVE_CONFIG_H -I. -I../include  -U_XOPEN_SOURCE -D_XOPEN_SOURCE=500 -DSIGWINCH=28 -DNDEBUG -I/usr/local/include/ncurses -O2 --param max-inline-insns-single=1200  -no-cpp-precomp -static -L../lib -lncurses -L../lib -lncurses -dynamic   -o tic
ld_classic: only one of -dynamic or -static can be specified
collect2: ld returned 1 exit status
make[1]: *** [tic] Error 1
make: *** [all] Error 2


 
Une idée d'où viens le problème et comment le corriger ?

Reply

Marsh Posté le 15-06-2009 à 00:08:26    

mais y a déjà curses sur ton mac ...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed