New Command added & Leveling System update

This commit is contained in:
2022-08-17 14:19:46 +03:00
parent 1f5e5d0611
commit 8b36c086ef
7 changed files with 58 additions and 30 deletions

View File

@@ -1,6 +1,8 @@
using Discord;
using Discord.WebSocket;
using EVE_LevelingSystem.LevelingSystemCore;
using PluginManager;
using PluginManager.Interfaces;
using PluginManager.Others;
@@ -9,8 +11,8 @@ namespace EVE_LevelingSystem
{
internal class Level : DBEvent
{
public string name => "Leveling System Event Handler";
public string description => "The Leveling System Event Handler";
public string name => "Leveling System Event Handler";
public string description => "The Leveling System Event Handler";
internal static Settings globalSettings = new();
@@ -39,7 +41,7 @@ namespace EVE_LevelingSystem
{
if (arg.Author.IsBot || arg.IsTTS || arg.Content.StartsWith(Config.GetValue<string>("prefix"))) return;
string userID = arg.Author.Id.ToString();
User user;
User user;
if (File.Exists($"{Config.GetValue<string>("LevelingSystemPath")}/{userID}.dat"))
{
user = await Functions.ConvertFromJson<User>(Config.GetValue<string>("LevelingSystemPath")! + $"/{userID}.dat");

View File

@@ -3,6 +3,7 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using PluginManager;
namespace EVE_LevelingSystem.LevelingSystemCore
@@ -18,7 +19,7 @@ namespace EVE_LevelingSystem.LevelingSystemCore
internal static void LevelUp(this User user)
{
user.CurrentEXP = 0;
user.CurrentEXP = 0;
user.RequiredEXPToLevelUp = GetNextLevelRequiredEXP(user.CurrentLevel);
user.CurrentLevel++;
}
@@ -26,15 +27,15 @@ namespace EVE_LevelingSystem.LevelingSystemCore
internal static bool AddEXP(this User user)
{
if (OnWaitingList.Contains(user.user.userID.ToString())) return false;
Random r = new Random();
int exp = r.Next(2, 12);
Int64 userXP = user.CurrentEXP;
Int64 reqEXP = user.RequiredEXPToLevelUp;
Random r = new Random();
int exp = r.Next(Level.globalSettings.MinEXP, Level.globalSettings.MaxEXP + 1);
Int64 userXP = user.CurrentEXP;
Int64 reqEXP = user.RequiredEXPToLevelUp;
if (userXP + exp >= reqEXP)
{
user.LevelUp();
user.CurrentEXP = exp - (reqEXP - userXP);
Console.WriteLine("Level up");
//Console.WriteLine("Level up");
return true;
}
@@ -49,7 +50,7 @@ namespace EVE_LevelingSystem.LevelingSystemCore
Thread.Sleep(60000 * minutesToWait);
OnWaitingList.Remove(user.user.userID.ToString());
}
);
).Start();
return false;
}

View File

@@ -9,5 +9,7 @@ namespace EVE_LevelingSystem
public class Settings
{
public int TimeToWaitBetweenMessages { get; set; }
public int MinEXP { get; set; }
public int MaxEXP { get; set; }
}
}