Les valeurs de productions sont boostées pour tester.
L'outline drag and drop doit être redimensionner manuellement dû à des contraintes d'ordre d'éxecution (l'outline est créé avant qu'on puisse modifier la taille dans un script).
L'art est placeholder.
Reviewed-on: #10
Reviewed-by: Ader_Alisma <ader.alisma.1@ens.etsmtl.ca>
Co-authored-by: Adam <adam-hamid.salah-salah.1@ens.etsmtl.ca>
Co-committed-by: Adam <adam-hamid.salah-salah.1@ens.etsmtl.ca>
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
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)
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
Ajout de YieldTile dans la scène de TestDragAndDrop
Ajout de Meat pour le yield de nourriture afin de séparer Farm
Ajusté ResourceTile pour toujours produire des ressources à moins que YieldSpeed est égal à 0
problème : au moment de load une save, les tiles qui spawnaient des GameObjects au start les spawnaient malgré qu'ils l'avait déjà spawné dans la dernière session de jeu + problèmes de sérialisation divers
solution : spawner le GameObject seulement si le lifetime de la tile est de zéro. correction des différents problèmes de sérialisation.
note : les tiles ne semblent vraiment pas être faites pour avoir une update loop. mais bon, maintenant ça marche.
problem : tiles dont have an update loop, neither do they have a start / destroy method
solution : finished working on a way to create a custom start/update/destroy pipeline for the projects custom tiles. it's using LevelManagerScript as to Update.
note : also created a database and a start of serialization system so we can save and load stuff.
le fait qu'il faille updater des tiles du tilemap posait un réel problème
création d'un système d'héritage pour que les game objects et les tiles puissent cohabiter dans une même game loop
- ILevelObject contient des fonctions de start, de destroy, d'update, d'égalité et une position
- LevelTile et LevelObject héritent de ILevelObject et peuvent être hérité par des tiles ou des MonoBehaviours.
- le level manager est un monobehaviour singleton qui update tous les ILevelObjects à chaque frame.
au lieu d'ajouter une classe data intermédiaire.
l'idée est que ça rend les modifications complexes d'avoir un intermédiaire. Autant ajouter la tuile direct.