Advertisement
Caminhoneiro

ExampleAPITest

Apr 16th, 2018
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 4.54 KB | None | 0 0
  1. using UnityEngine;
  2. using UnityEditor;
  3. using ExperienceLevelAPI;
  4. using System.Collections.Generic;
  5. //
  6. //
  7. //***********************************EXAMPLE CLASS ************************* */
  8. //
  9. public class CharacterLevelControllerTest : MonoBehaviour {
  10.    
  11.     Character character;
  12.  
  13.     private long xp;
  14.     private long level;
  15.  
  16.     [Header("Add your constant value formula (0.4 recommended for the current formula)")]
  17.     [Tooltip("Current value to operate between your function(0.4 recommended for the current formula)")]
  18.     public float constantBase = 0.4f;
  19.     [Header("XP value to Sum (Press: RightArrow)")]
  20.     public int lvlSumValue = 1;
  21.     [Header("XP value to Sub (Press: LeftArrow)")]
  22.     public int lvlSubValue = 1;
  23.     [Header("XP value to Sum (Press: UpArrow)")]
  24.     public long xpAddValue = 10;
  25.     [Header("XP value to Subtract (Press: DownArrow)")]
  26.     public long xpSubValue = 10;
  27.     [Header("Arbitrary level value to get your delta difference")]
  28.     public long levelDesiredToDeltaCal ;
  29.     [Header("Arbitrary level value for operations")]
  30.     public long lvlValue;
  31.     [Header("Arbitrary XP desired for operations")]
  32.     public long xpValue;
  33.  
  34.     void Awake(){
  35.         character = new Character();
  36.         xp = character.Experience_Current;
  37.         level = character.Level_Current;
  38.     }
  39.  
  40.     void Start () {
  41.         character.OnLevelUpdate += () =>  {
  42.             //INSERT YOUR LVL UPDATE FORMULA HERE USE HOW MANY CONSTANTS YOU WANT AND USE THE character.Experience_Current METHOD TO WORK IN THE API CLASS
  43.             character.Level_Current = Mathf.FloorToInt(constantBase * Mathf.Sqrt(character.Experience_Current));
  44.             UpdateUnityDebuger();
  45.         };
  46.  
  47.         character.OnExperienceUpate += () => {
  48.             //INSERT YOUR XP UPDATE FORMULA HERE USE HOW MANY CONSTANTS YOU WANT AND USE THE character.Level_Current METHOD TO WORK IN THE API CLASS
  49.             character.Experience_Current = Mathf.FloorToInt((character.Level_Current*character.Level_Current) / (constantBase*constantBase));
  50.             UpdateUnityDebuger();
  51.         };
  52.  
  53.         character.OnCalculateArbitraryLevel += () => {
  54.             //REPEAT THE SAME FORMULA TO LVL UPDATE AND USE THE character.Experience_Arbitrary TO WORK ON ARBITRARY OPERATIONS LVL CALC
  55.             character.Level_Arbitrary = Mathf.FloorToInt(constantBase * Mathf.Sqrt(character.Experience_Arbitrary));
  56.         };
  57.  
  58.         character.OnCalculateArbitraryExperience += () => {
  59.             //REPEAT THE SAME FORMULA TO XP UPDATE AND USE THE character.Level_Arbitrary* TO WORK ON ARBITRARY OPERATIONS LVL CALC
  60.             character.Experience_Arbitrary = Mathf.FloorToInt((character.Level_Arbitrary*character.Level_Arbitrary) / (constantBase*constantBase));
  61.         };
  62.     }
  63.  
  64.     void Update () {
  65.         if(Input.GetKeyDown(KeyCode.UpArrow)){
  66.             character.Experience_Add(xpAddValue);
  67.             print("Gained experience, Current level is: " + level + "and my xp is: " + xp);
  68.         }
  69.         if(Input.GetKeyDown(KeyCode.DownArrow)){
  70.             character.Experience_Reduce(lvlSubValue);
  71.             print("Gained experience, Current level is: " + level + "and my xp is: " + xp);
  72.         }
  73.         if(Input.GetKeyDown(KeyCode.RightArrow)){
  74.             character.Level_Add(lvlSumValue);
  75.             print("Gained experience, Current level is: " + level + "and my xp is: " + xp);
  76.         }
  77.         if(Input.GetKeyDown(KeyCode.LeftArrow)){
  78.             character.Level_Sub(lvlSubValue);
  79.             print("Gained experience, Current level is: " + level + "and my xp is: " + xp);
  80.         }
  81.         if(Input.GetKeyDown(KeyCode.R)){
  82.             character.ResetXPToLastLvlUp();
  83.             print("Gained experience, Current level is: " + level + "and my xp is: " + xp);
  84.         }
  85.  
  86.         if(Input.GetKeyDown(KeyCode.Delete)){
  87.             character.Reset();
  88.             Debug.LogWarning("FULL LEVEL RESET!");
  89.             print("RESETED, Current level is:" + level + "and my xp is: " + xp);
  90.         }
  91.         if(Input.GetKeyDown(KeyCode.E)){
  92.             print("From your level, to reach level " + lvlValue + "You need" + character.ExperienceNeededToAnArbitraryLevelValueFromYourLvl(lvlValue));
  93.         }
  94.         if(Input.GetKeyDown(KeyCode.L)){
  95.             print("Experience needed Reamining to level "+ lvlValue +" is: " + character.LevelNeededToAnArbitraryExperienceValue(xpValue));
  96.         }
  97.         if(Input.GetKeyDown(KeyCode.N)){
  98.             print("Next lvl: "+ character.NextLevelCalculateEvent());
  99.         }
  100.         if(Input.GetKeyDown(KeyCode.P)){
  101.             print("Percentage remaining for the next level is: " + character.PercentualProgress() + "%");
  102.         }
  103.         if(Input.GetKeyDown(KeyCode.D)){
  104.             // PercentualExperienceProgress();
  105.             print("The difference delta between your current XP to level's: " + levelDesiredToDeltaCal + " required XP is from: " + character.ReturnDelta_BetweenXPAndArbitraryLevel(levelDesiredToDeltaCal));
  106.         }
  107.  
  108.     }
  109.  
  110.     void UpdateUnityDebuger(){
  111.         xp = character.Experience_Current;
  112.         level = character.Level_Current;
  113.     }
  114.  
  115.      
  116. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement