besoin :
- le level était loadé directement au moment de cliquer dans le level selector ce qui n'est pas très fenshui
solution :
- fade out avec nuages
- les tuiles tombent à leur place au lieu d'apparaitre toutes en même temps
Merge in CGD/gather-and-defend from origin/feature/ChangeGameSpeed to main
* commit '059b6d5bd84b3f07963f222f575a61c7dc7b86a2':
Correction du nom d'une méthode.
Ajout du menu pause et de son interface.
- Ajout d'une fonction qui met le jeu en pause.
- Implémentation d'une méthode pour accèler le jeux pendant un partie;
Made interval between spawns adapt to enemies spawned at the Start
Removed the random factor of interval to respect the game duration
Made max spawn per row dependent of enemy toughness on that row
Merge in CGD/gather-and-defend from feature/globalConfigFile to main
* commit '0714036b57f45e2c04dc8de469ce99b1b8a2d6d3':
separate ally and enemy config + bugfixes
appliquer global config aux différents endroits
forgot changes in game.unity
creer le scriptable object GlobalConfig
la config des ennemis influencait la config des alliés, ce qui était un bug maintenant, il y a une config différente pour les alliés et les ennemis.
l'animation d'attaque ne se terminait pas à temps pour faire le dégat, il a donc fallu multiplier la vitesse d'animation par le attack speed quand on attaque
j'en ai profité pour faire la même chose pour le walk animation et le speed
j'ai changé l'attribut des unités "attack speed" pour un "attack interval", pour que ça représente mieux son utilisation. Le multiplicateur reste sur la vitesse, et non sur l'interval.
Les configs pour les ressources sont les valeurs des ressources directement (pas des multiplicateurs)
PROBLÈME :
la config existait mais n'était pas appliquée nulle part
SOLUTION :
maintenant elle l'est
NOTES :
Elle n'est pas encore appliquée au flash de dégat
besoin : il serait bien d'avoir un fichier central qui permettrait de modifier toutes les valeurs du jeu sans avoir à aller dans chaque prefab et gosser
solution : un fichier central de paramétrage qui sera hooked en middleman dans les valeurs des différents objets du jeu, et pourra être changé en temps réel et appliqué globalement
note : le fichier est créé mais les paramètres ne sont pas encore hooked.
Merge in CGD/gather-and-defend from feature/integrateLevelSelector to main
* commit '9696ee614e4666d93da40bcec686e87ac6a30559':
spawners n'apparaissent plus + beau back button
finish integrating level selector
Level selector was already working after work by William but some small bugs remained to be fixed + it wasn't possible to return to level selector once we were in the level.
- it's now possible to go back to level selector from Level
- LevelManagerScript is no longer a singleton (this way, it resets with the Game scene unloading)
- Added a property drawer for using scene files in inspectors
problème :
- le harvester avait une apparence non-changeante dépendant du genre de ressource sur lequel il était placé.
solution :
- ajouter une logique qui change le prefab choisi dépendant de sur quelle tuile on place le harvester.
- also, quelques micro refactorings (changement de noms, ajout de doc)
WaveObserver gère le nombre d'ennemi à créer et assure d'arreter la création d'ennemis supplémentaires.
SpawnerTile détermine un intervalle aléatoire automatiquement après chaque création d'ennemi. La première intervalle a plus de chance d'être plus courte que les intervalles suivantes.
Config01 est le scriptable object de type LevelConfig
Suppression de commentaires de tests
WaveObserver donne aux spawners les unités à instancier ainsi que l'intervalle de création de ceux-ci
LevelConfig passe de Level vers LevelManager puis il est utilisé dans l'instance de WaveObserver
problème : il faut que les resource tiles produisent des resources seulement quand elles ont une unité au dessus d'elles pour les harvester.
solution : créer une classe harvester qui est vérifiée par la resource tile avant d'updater. Si aucun harvester n'est au dessus, aucune update n'est faite.
problems :
- game scene was not as shown in the GDD
- problem when moving tilemap (the placeholders didn't follow)
- possible to place units outside the game area
solutions :
- try to make the game scene as close to the gdd as possible
- don't move the tilemap : move the camera instead (this keeps the world position of tilemap intact)
- there was a logic bug in the DraggablePlaceholder. It ain't anymore
problème :
- la scène game n'avait pas toute les dernières features créées
solution :
- ajouté LevelManager, boutons d'ajout d'unités, labels de resources
Merge in CGD/gather-and-defend from animation_unites to main
* commit 'e44264d66f2068dc53f341e5bb19684e2e3409db':
ajout event animation, ajout classe Root qui sert de transition entre la classe Entity et l'animator.
correction du merge request
no message
animations walk/idle/death/move working