Comment puis-je enregistrer le caractère occupant un certain espace dans malédictions?

StackOverflow https://stackoverflow.com/questions/4107425

  •  29-09-2019
  •  | 
  •  

Question

Je commence à essayer de faire des jeux de console simples en C ++ avec malédictions, et mon premier projet est juste une grande pièce à se promener. Je me dis que je vais mettre en œuvre la marche en ayant le programme de sauvegarde de l'état du carré que le personnage marche, donc quand il marche sur la place à côté, il peut restaurer tout ce qui était là. Le problème est, je ne sais pas comment sauver le personnage à une certaine position à une variable, et à ma grande surprise, je ne peux pas sembler trouver une documentation complète malédictions. Je suis à la recherche d'une fonction comme ceci:

int storage = mvsavechar(1,1);

Est-ce que toute exist fonction?

Était-ce utile?

La solution

Vous cherchez mvinch () :

int storage = mvinch(1, 1) & A_CHARTEXT;

Autres conseils

Vous allez avoir besoin de stocker les données pour la chambre dans une sorte de structure de données dans votre programme. Curses est une bibliothèque de sortie.

Je stocker l'état de l'écran dans un 80x24 (ou autre) tableau de caractères. Mais probablement vous feriez taille du tableau pour correspondre aux dimensions de votre « grande pièce ». Si la chambre était très grande, vous pouvez stocker l'équivalent d'un tableau clairsemé en utilisant (par exemple) une liste chaînée de coordonnées et le contenu.

Curses n'a probablement pas la fonction que vous voulez parce que les premiers terminaux n'avaient probablement pas la capacité d'être interrogé sur le contenu de l'écran.

Je ne sais pas beaucoup sur malédictions, ce que vous voulez peut-être possible que si les détails des malédictions maintenir le contenu de l'écran -. Mais cela semble très improbable

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top