Skip to content
Snippets Groups Projects
Commit 89b29ad6 authored by Sofiane Lasri's avatar Sofiane Lasri
Browse files

les fichiers avaient été supprimés

parent 968b496a
No related branches found
No related tags found
No related merge requests found
fileFormatVersion: 2
guid: 280a4310a54c8c5428e3a84f0d97ef6c
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 7e3e1c812c58f624faa0def6ecadbabd, type: 3}
m_Name: Joueur
m_EditorClassIdentifier:
fileFormatVersion: 2
guid: bed2504b502abf846b3d00ca8b5a5e46
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
/**
* Fichier : Joueur.cs
*
* Auteur : Sayf-Allah GABSI
* Date : Février 2022
* Groupe : TP 4C
*
* Résumé du fichier :
*
* Ce fichier est un fichier qui gère les données globales liées
* aux joueurs.
* Il enregistre différentes informations (pseudo du joueur, apparence utilisé
* son niveau actuel, etc...)
*
*/
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
[CreateAssetMenu]
public class Joueur : ScriptableObject
{
private string _pseudo;
private string _apparence;
private int _XP;
private int _niveauActuel;
private int _nombrePointCompetence;
private int[] _niveauCompetence = new int[4];
public string pseudo{
get => _pseudo;
set{
_pseudo = value;
}
}
public string apparence{
get => _apparence;
set{
_apparence = value;
}
}
public int XP{
get => _XP;
set{
_XP = value;
}
}
public int niveauActuel{
get => _niveauActuel;
set{
_niveauActuel = value;
}
}
public int nombrePointCompetence{
get => _nombrePointCompetence;
set{
_nombrePointCompetence = value;
}
}
public int[] niveauCompetence{
get => _niveauCompetence;
set{
_niveauCompetence = value;
}
}
public Joueur(string pseudo, string apparence){
this.pseudo = pseudo;
this.apparence = apparence;
XP = 0;
niveauActuel = 0;
nombrePointCompetence = 0;
}
/**
*
* void ajouterXp ( int xp )
*
* Résumé de la fonction ajouterXp :
*
* La fonction ajouterXp ajoute de l'expérience à un joueur
* et si le joueur atteint le niveau d'expérience maximal,
* il ajoute un niveau au joueur et lui donne un point de
* compétence.
*
* Paramètres : entier : contient le montant d'expérience du joueur
*
* Valeur de retour : Rien -- Note: Modifie directement les valeurs voulu.
*
* Description :
*
* Cette fonction utilise une simple équation pour calculer le
* niveau actuel du joueur et le montant maximum pour le niveau à passer.
*
*/
public void ajouterXp(int xp){
XP += xp;
int nivAct = (int)(0.1f * Mathf.Sqrt(XP));
if(nivAct != niveauActuel){
niveauActuel = nivAct;
nombrePointCompetence++;
//commentaire à remplacer par une UI qui gère l'afichage de la montée de LVL
}
int xpNextLevel = 100 * (niveauActuel + 1) * (niveauActuel + 1);
int differenceXp = xpNextLevel - XP;
int totalDifference = xpNextLevel - (100 * niveauActuel * niveauActuel);
// differencexp / totaldifference;
}
/**
*
* void ajouterCompetence ( int competence )
*
* Résumé de la fonction ajouterCompetence :
*
* La fonction ajouterCompetence ajoute un niveau de compétence
* à la compétence choisie et mis en paramètre, et retire un point de compétence
* par compétence ajouter.
*
* Paramètres : entier : contient le numéro de la compétence à augmenter
* => 1 pour la "vitesse", 2 pour la "précision", 3 pour le "style", 4 pour la "puissance"
*
* Valeur de retour : Rien -- Note: Modifie directement les valeurs voulu.
*
* Description :
*
* Cette fonction ajoute et retire simplement 1 pour chaque point de compétence ajouter
* et test si il reste des points de compétences.
*
*/
public void ajouterCompetence(int competence){
if(nombrePointCompetence > 0){
niveauCompetence[competence] += 1;
nombrePointCompetence--;
}
}
/**
*
* void afficherTab ( )
*
* Résumé de la fonction afficherTab :
*
* La fonction ajouterXp ajoute de l'expérience à un joueur
* et si le joueur atteint le niveau d'expérience maximal,
* il ajoute un niveau au joueur et lui donne un point de
* compétence.
*
* Paramètres : rien -- Note : s'utilise en l'appelant par variable.afficherTab()
*
* Valeur de retour : Chaîne de caractères : contient tout les éléments du tableau à afficher.
*
* Description :
*
* Cette fonction parcours le tableau et ajoute à la variable afficheTab un élément du tableau.
*
*/
public string afficherTab(){
string afficheTab = "[";
foreach (int competence in niveauCompetence){
afficheTab = afficheTab + competence + " ";
}
afficheTab += "]";
return afficheTab;
}
}
fileFormatVersion: 2
guid: 7e3e1c812c58f624faa0def6ecadbabd
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class testClassJoueur : MonoBehaviour
{
Joueur joueur1 = new Joueur("LeSabreDeDieu", "skin1");
// Start is called before the first frame update
void Start()
{
Debug.Log("Expérience actuel : " + joueur1.XP);
Debug.Log("Niveau actuel : " + joueur1.niveauActuel);
Debug.Log("Nombre de points de compétence : " + joueur1.nombrePointCompetence);
}
// Update is called once per frame
void Update()
{
joueur1.ajouterXp(Random.Range(0,100));
joueur1.ajouterCompetence(Random.Range(0, 4));
Debug.Log("<color=white> Expérience actuel : </color> " + joueur1.XP);
Debug.Log("<color=green> Niveau actuel : </color> " + joueur1.niveauActuel);
Debug.Log("<color=blue>Nombre de points de compétence : </color> " + joueur1.nombrePointCompetence);
Debug.Log("<color=red>Les compétences : </color> " + joueur1.afficherTab());
}
}
fileFormatVersion: 2
guid: 38a5973108ca5ce4da17f6c9bb4344e8
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment