Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs

Salut, j'ai du nouveau.

J'ai fais un système qui gère les salles et j'ai un peu galèré...

Je me demandais si il fallait faire une grosse scène qui comporte toutes les salles ou plusieurs petites scènes, ou bien une scène qui load et reload constamment dans la même salle des assets graphiques...

Bref, j'ai finalement décidé de faire plusieurs salles,

  • comme ça je peux commencer facilement dans n'importe laquelle dans l'unity editor, tester et continuer l'aventure.
  • et puis je voulais pas utiliser le dontdestroyonload pour éviter les doublons.

J'ai fais une classe statique qui contient les données du joueur, l'inventaire et l'ensemble des objects du jeu, sinon on perd toutes nos données quand on change de salle...

  • les objects du jeu sont crées une seule fois au début et stocker dans la class statique
  • à chaque fois qu'une salle est chargée, on charge les données issus de la class statique
  • à chaque fois qu'une salle est chargée, on crée les objects correspondant à la scène.
  • les objects sont lus par un script Json ça ressemble à ça(une seule fois au début puis stocker dans la classe statique) :

{"DATABASE_ITEMS_DEFAULT":

{"SC001":{

"Weapon":{

"Type":"Mitraillette",

"Name":"MitrailletteM23",

"Quantity":1,

"Power":5,

"Weight":10,

"Bullet":50,

"BulletMax":150,

"Position":{"x":10,"y":15,"z":1}}}}}


il faut imaginer qu'il y a plus de données... je pense que je diviserais en plusieurs fichiers pour par exemple les différents types d'objet, les différentes scènes pour que ce soit moins lourd.


Pour intégrer ça dans unity, c'est assez facile on crée un object correspondant un peu comme ça:

[System.Serializable]
public class testerJson
{
public string name;
public List<string> mots = new List<string> ();
}

unity convertit le fichier json grâce à JsonUtility.

Au passage on peux aussi avoir des commentaire sur certains décors...