J'ai du mal à visualiser ce que tu veut dire par "déplacer les appels au moteur de rendu dans une classe à part".
Tu veut dire qu'il faut que je fasse une classe qui gere totalement une catégorie (pnj, cartes, etc...) puis faire une class qui apelle virtuellement via la class réelle qui gere les pnj, cartes etc... (une "pure interface" comme ça s'apelle je croit ).
Je suis d'accord mais après comment gerer justement les scripts?
Exemple bête que j'ai :
Dans mon main, je doit charger une carte de démarrage. Je renseigne donc un ficier ville.map. Il le charge, il lance la carte, ça tourne
Je déplace le personnage en case x=5 y=3 (c'est une porte d'un magasin). Là je sais depuis un ficier script que cette case doit ramener à magasin.map.
c'est peut être bête mais si dans mon main j'ai fais :
1 2 3
|
carte* macarte = new carte();
macarte->charger("ville.map"); |
Si j'obtient avec le script "magasin.map". Comment je gère ça? je connais pas d'avance le nom de l'objet (içi c'est "macarte" mais j'aurais bien pu l'appeler "toto", "titi", "tata" ....). Faudrais que j'ecrive
macarte->changer("magasin.map");
Ensuite c'est là qu'intervient mon problème de structure. Faudrais peut être que la class carte soit dans la class engine ainsi que les sprites et tout le reste....
Partager