-
Notifications
You must be signed in to change notification settings - Fork 2
GameManager
storm1er edited this page Sep 27, 2017
·
2 revisions
Accueil > Spécifications techniques > GameManager
Le Game Manager permet de gérer tout les éléments du jeu, c'est le moteur de jeu.
"Un bon gros manager pour gérer tout le bordel et dire à tout les éléments comment ça marche ... si si."
Constat simple : On va avoir plein d'élément qui vont 1) se répliquer et 2) inter-communiquer.
Solution simple : Un outil de gestion de dépendance et de communication.
- Peu importe quel élément dépend de quel élément, pour le GameManager, tout les éléments seront des GameElement (original non ?).
- Tout les GameElement peuvent avoir des ressources communes partagé, auxquels tout les autres éléments pourront avoir accès.
- Donc les GameElement peuvent demander au GameManager de charger des GameElement qui ne le serait pas encore, ou retourner l'instance d'un gameElement déjà chargé.
- Un GameElement est unique, il doit gérer ses réplicats comme un grand.
- Un GameElement doit obligatoirement
expands GameElement
Donc sauf modification critique, tout les éléments de jeux sont contenu dans /src/js/*/*.js
et sauf exception ne doit pas nécessité de modification à GameManager
GameManager est un extands de Emitter, il gère aussi les événements des GameElements. Les events système (du GameManager) sont les suivants :
-
Core::loadGameElement
: Emit lorsqu'un élément est chargé (concerne tout les éléments) -
Core::loadGameElement[MonSuperSysteme::MonSuperGameElement]
: Emit lorsque le GameElementMonSuperSysteme::MonSuperGameElement
est chargé -
Core::getGameElement
: Emit lorsqu'un élément est récupéré (il a déjà été chargé) -
Core::getGameElement[MonSuperSysteme::MonSuperGameElement]
: Emit lorsque le GameElementMonSuperSysteme::MonSuperGameElement
est récupéré (il a déjà été chargé) -
Core::update
: Emit dans le callback derequestAnimationFrame()
, c'est ici que l'actualisation des gameElement doit se faire -
Core::destroy
: Emit lors d'une erreur fatale du système (n'est pas censé arriver ...)
-
Règles et Story line
1.1. Map
1.2. Appareils
1.3. Données
1.4. Vous
1.5. Les quêtes -
Utilis. & Config. client
2.1. Compte
2.2. Interface
2.3. Appareil
2.4. Quêtes - Utilis. & Config. serveur
-
Spécifications techniques
4.1. Env. de développement
4.2. GameManager
4.3. GameElement -
WorkFlow
5.1. Guideline du Wiki
5.2. Guideline du tracker