68 Commits

Author SHA1 Message Date
475ebbaac6 Correction des commentaires de PR
Déplacé énum RessourceChoice vers ResourceMaker

Retiré code commenté dans ResourceTile

Remplacé Awake pour Start dans ResourceMaker
2023-06-12 20:55:29 -04:00
4b756a5321 Corrigé conflit du merge
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
2023-06-11 19:37:29 -04:00
0a88abeed1 Merge remote-tracking branch 'origin/main' into feature/pickUpYield
# Conflicts:
#	Assets/Tiles/Farm.asset
#	Assets/Tiles/Farm.asset.meta
2023-06-11 18:56:00 -04:00
0c0add8f43 Augmenté la vitesse de production de ressource
Fix la zone de ramassage
2023-06-11 18:40:10 -04:00
William Gingras 01
07a3503400 Pull request #17: Added animated ClawClawRough
Merge in CGD/gather-and-defend from art/clawClawRoughAdded to main

* commit 'e5276772025e8dfc2fd9026a017db9e0604a2dfe':
  Added animated ClawClawRough
2023-06-11 22:33:01 +00:00
e527677202 Fix merge conflict 2023-06-11 18:21:07 -04:00
6d4f18e32d Added animated ClawClawRough 2023-06-11 18:15:10 -04:00
1a45b9a1bb Ajout de ClickBehavior pour détecter le click sur les yields
LevelManager prefab comporte aussi ResourceManager et ClickBehavior

Modification de la vitesse de création des yields

Création des yields prefabs
2023-06-11 16:06:01 -04:00
Felix-gabriel Boucher-luneau
3a938eca9d Pull request #16: no need to create a placeholder prefab per unit now.
Merge in CGD/gather-and-defend from bugfix/drag_and_drop_no_placeholder to main

* commit 'dfefec3dccf847fd5c914d0263156230f678239e':
  logic for placing object was not good
  added one method summary
  address PR change requests
  test scene, render issues, collision issues
  enlevé besoin d'un placeholder statique par unit
2023-06-11 18:34:44 +00:00
Felix Boucher
dfefec3dcc logic for placing object was not good
logic was supposed to allow placing object on farms, which it didn't

now it does.

+ changed ObjectPlaceholder's name so it follows the TilePlaceholder's convention
2023-06-11 14:29:44 -04:00
Felix Boucher
f65735c330 added one method summary
oublié de save, manquait ce changement
2023-06-11 14:15:06 -04:00
Felix Boucher
bdaedc28df address PR change requests
ranger les scripts au bon endroit

changer des noms de variables pour les rendre plus descriptif (turns out qu'elles étaient actually pas nécessaire)
2023-06-11 14:13:55 -04:00
8ecf5e0552 Ajout des Yield prefabs et de ResourceMaker
ResourceMaker détecte le click sur le Yield

Les yields font partis du ResourceTile
2023-06-11 10:45:01 -04:00
Felix Boucher
33fb1ffeee test scene, render issues, collision issues
problems :
- there were no test scene
- units would appear weird over some tiles
- units would not recognize some tiles when trying to know if it could place itself on it

solution :
- added test scene
- tweaked sorting layers in units
- added IsCollidable parameter in ILevelObject
2023-06-08 23:51:45 -04:00
Felix Boucher
8dc77e1772 enlevé besoin d'un placeholder statique par unit
problème : créer un placeholder par unit allait être un sale hassle

solution : maintenant, le placeholder est créé dynamiquement

note : also, j'ai ajouté un système pour ajouter des tiles
2023-06-08 23:14:07 -04:00
Felix-gabriel Boucher-luneau
c680713526 Pull request #15: center GOs without offsetting them
Merge in CGD/gather-and-defend from bugfix/center_GOs_on_tiles to main

* commit '102f646340ba8c56ec5c1c64a3c99642e3cc2f65':
  center GOs without offsetting them
2023-06-06 19:19:09 +00:00
Felix Boucher
102f646340 center GOs without offsetting them
problème : les game objects sont offsettés de (-.5, -.5) par rapport aux tiles

contrainte : on ne veut pas changer l'ancrage des game objects ou des tiles

solution : changer le point d'ancrage des tilemaps à la place. Cela peut se faire automatiquement à la création du niveau.
2023-06-06 14:46:33 -04:00
Felix-gabriel Boucher-luneau
4557af6661 Pull request #13: implemented drag and drop
Merge in CGD/gather-and-defend from feature/drag_drop to main

* commit 'b3fd252869a5ce73962c5fc2576b2423deea2967':
  moved shaders and materials to right folder
  some last moment fixes
  drag and drop
2023-06-04 18:53:58 +00:00
Felix Boucher
b3fd252869 moved shaders and materials to right folder
trying to keep everything tidy
2023-06-03 09:46:20 -04:00
Felix Boucher
0a8f5d1a5a some last moment fixes 2023-06-03 09:42:50 -04:00
Felix Boucher
86cb9280b4 drag and drop 2023-06-03 09:35:13 -04:00
William Gingras 01
9304b02c31 Pull request #12: Added sprites from mockups
Merge in CGD/gather-and-defend from art/firstMockupsSprites to main

* commit '9d8b2f89b31f4ca5f68153fa4df8660387f4c941':
  Added sprites from mockups
2023-06-02 18:16:29 +00:00
9d8b2f89b3 Added sprites from mockups 2023-06-02 14:15:04 -04:00
Felix-gabriel Boucher-luneau
3d041bae7f Pull request #11: enlevé génération automatique de Level Manager
Merge in CGD/gather-and-defend from bug/levelManager_auto_generation to main

* commit 'da519fe75fee41e76f13ee7db60fbc0fbf4afa4b':
  enlevé génération automatique de Level Manager
2023-06-02 18:15:03 +00:00
Felix Boucher
da519fe75f enlevé génération automatique de Level Manager
la génération automatique de level manager faisait bugger le jeu

j'ai effacé cette partie du code et ça marche maintenant
2023-06-02 14:11:51 -04:00
Felix-gabriel Boucher-luneau
92ffe56009 Pull request #10: Feature/LoadSave
Merge in CGD/gather-and-defend from feature/LoadSave to main

* commit 'ec94ccfc145829cf329792d9e66188da7663b54b':
  ajout de doc xml pour la classe database
  manage when tiles or objects are removed
  tidied up + addressed issue with non-LevelTiles
  save / load dans un fichier
  working save / load functions
  travail sur le save et le load
  some tidying up
  made LevelObject and Tile methods virtual
  finish to hijack update loop + serialization
  tweaks to LevelManager
2023-05-30 18:44:12 +00:00
Felix Boucher
ec94ccfc14 ajout de doc xml pour la classe database
problème: le but de cette classe semblait flou

solution : j'ai rajouté une documentation xml pour permettre d'expliquer son utilité.
2023-05-30 14:43:26 -04:00
Felix Boucher
c1f008104e manage when tiles or objects are removed
problème : Le level manager n'était pas notified quand un objet ou une tile était enlevée du niveau

solution : LevelTile et LevelObject gèrent l'effaçage avec RefreshTile et OnDestroy.
2023-05-28 23:02:33 -04:00
Felix Boucher
8b5d0370dc tidied up + addressed issue with non-LevelTiles
problèmes :
- mon code et l'arrangement des fichiers avait besoin d'un peu de tidy up
- les tiles qui n'étaient pas des LevelTile ne loadaient pas

solution :
- rangé un peu + respecté structure une classe - un fichier
- tenté un build pour voir si tout roulait comme il faut, ce qui m'a porté à ajouter des directives de preprocessing et à bouger les custom inspectors dans le dossier Editor.
- ajouté une représentation simple des tuiles non-LevelTile dans la sauvegarde.
2023-05-28 22:00:47 -04:00
Felix Boucher
f1a328122c save / load dans un fichier
problème : le save et le load fonctionnait avec un string en mémoire

solution : créer un fichier save.txt dans les assets quand on sauvegarde, et lire de ce fichier quand on load.
2023-05-28 17:37:54 -04:00
Felix Boucher
d4f32e439f working save / load functions
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.
2023-05-28 01:52:44 -04:00
Felix Boucher
4fbce56853 travail sur le save et le load
problème : pas de moyen de sauvegarder et de charger les niveaux entamés

solution : fonctions save et load dans le LevelManager
2023-05-27 20:38:43 -04:00
Felix Boucher
08c9171262 some tidying up
plusieurs scripts ne semblaient pas au bon endroit. Je les ai donc réorganisé un peu.
2023-05-27 20:38:43 -04:00
Felix Boucher
1bf7e04798 made LevelObject and Tile methods virtual
problème : le fait que les méthodes update/start/destroy etc des ILevelObject soit abstraites était restreignant (obligation de override)

solution : j'ai rendu les méthodes virtuelles à la place de abstraites.
2023-05-27 20:38:42 -04:00
Felix Boucher
ef8a70aba4 finish to hijack update loop + serialization
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.
2023-05-27 20:38:42 -04:00
Felix Boucher
d10677db6d tweaks to LevelManager
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.
2023-05-27 20:38:42 -04:00
4c2ad3dbd2 Pull request #9: Corriger merge conflict causé par le merge de GestionResource
Merge in CGD/gather-and-defend from maintenance/textmeshproAssemblyImport to main

* commit '5d9f4d5a964894c5619e979c73065b69cd57f371':
  Ajout de Unity.TestMeshPro au GameAssembly
2023-05-27 14:38:17 +00:00
5d9f4d5a96 Ajout de Unity.TestMeshPro au GameAssembly
Permet d'utiliser TextMeshPro dans le code

Déplacé les script liés à la gestion de ressources dans le répertoire Script/Resource
2023-05-27 10:23:59 -04:00
7851a46c7f Pull request #8: Feature/gestionRessource
Merge in CGD/gather-and-defend from feature/gestionRessource to main

* commit 'd8490535960e2f99e8ea37e87fefeddb83736391':
  SUppression de ResourceMaker et mise à jour de la scène de test des ressources
  Changer le comportement de ResourceMaker et ajout de commentaires
  Avancement sur coroutine de génération de ressources.
  Update sur scene de TestResource
  Debut de la scene de TestResource
  Creation de ResourceManager, ResourceMaker et ResourceRemover
2023-05-27 13:46:41 +00:00
d849053596 SUppression de ResourceMaker et mise à jour de la scène de test des ressources
Bouton de production de ressources supprimées

Correction de la grammaire pour "Rock"
2023-05-26 22:38:33 -04:00
28fdf318d3 Changer le comportement de ResourceMaker et ajout de commentaires
ResourceMaker sera utilisé pour géré la création de mini ressources cliquables dans une autre tâche.

ResourceRemover change le texte en vert si les ressources nécessaires sont disponibles ou en rouge dans le cas contraire.
2023-05-26 18:58:36 -04:00
Felix-gabriel Boucher-luneau
fe7485f815 Pull request #7: ranger les scripts du LevelEditor
Merge in CGD/gather-and-defend from maintenance/tidyUpRepo to main

* commit '5347f2c3fff0fbac0807beb259f6b440dea16e37':
  ranger les scripts du LevelEditor
2023-05-24 17:10:07 +00:00
Felix-gabriel Boucher-luneau
1f3e29b4e7 Pull request #6: Maintenant, le level editor génère les tilemaps
Merge in CGD/gather-and-defend from feature/LevelEditor_GenerateTilemaps to main

* commit 'ac0e52e0df5857fc846810e4bfc5b6c613e9f4ed':
  Maintenant, le level editor génère les tilemaps
2023-05-24 02:29:51 +00:00
Felix Boucher
5347f2c3ff ranger les scripts du LevelEditor
puisqu'on utilise des assembly definitions maintenant, il est important que les scripts soient posés dans le dossier Scripts pour qu'ils soient accessibles aux autres scripts. Il a donc fallu déplacer les scripts se trouvant dans le dossier LevelEditor.
2023-05-22 23:13:17 -04:00
Felix Boucher
ac0e52e0df Maintenant, le level editor génère les tilemaps
le level editor se fiait à ce que le designer crée les tilemaps nécessaires avant de cliquer sur load

maintenant le level editor génère les bons tilemaps avec leurs spécificités (layers sorting order, collider, visibilité etc)
2023-05-22 22:25:28 -04:00
e03abf24ec Avancement sur coroutine de génération de ressources.
Changé la coroutine de ResourceMaker vers ResourceManager.

Changé ResourceMaker pour permettre d'augmenter ou de réduire la quantité de resources produites.
2023-05-21 19:18:35 -04:00
Felix-gabriel Boucher-luneau
2f02d29d27 Pull request #5: Level manager, et tile pour les ressources
Merge in CGD/gather-and-defend from feature/LevelManager_Resources to main

* commit 'dec5aeb8572872f8c73a8d83ddd9bf685f2bba9b':
  ajouter la tile directement au LevelManager
  retiré debug servant à tester
  tidy up level manager related scripts
  level manager et une ferme
2023-05-21 23:14:45 +00:00
Felix Boucher
dec5aeb857 ajouter la tile directement au LevelManager
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.
2023-05-20 23:27:43 -04:00
Felix Boucher
c7132af42f retiré debug servant à tester 2023-05-20 22:51:56 -04:00
Felix Boucher
22abe69340 tidy up level manager related scripts
scripts were not classified

created a LevelManager folder in the scripts folder
2023-05-20 22:42:03 -04:00