mirror of
				https://gitlab.com/Kwoth/nadekobot.git
				synced 2025-11-04 00:34:26 -05:00 
			
		
		
		
	Merge branch 'v4' into v5
This commit is contained in:
		
							
								
								
									
										75
									
								
								src/NadekoBot/Db/Models/Waifu.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										75
									
								
								src/NadekoBot/Db/Models/Waifu.cs
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,75 @@
 | 
			
		||||
#nullable disable
 | 
			
		||||
using NadekoBot.Db.Models;
 | 
			
		||||
 | 
			
		||||
namespace NadekoBot.Services.Database.Models;
 | 
			
		||||
 | 
			
		||||
public class WaifuInfo : DbEntity
 | 
			
		||||
{
 | 
			
		||||
    public int WaifuId { get; set; }
 | 
			
		||||
    public DiscordUser Waifu { get; set; }
 | 
			
		||||
    
 | 
			
		||||
    public int? ClaimerId { get; set; }
 | 
			
		||||
    public DiscordUser Claimer { get; set; }
 | 
			
		||||
 | 
			
		||||
    public int? AffinityId { get; set; }
 | 
			
		||||
    public DiscordUser Affinity { get; set; }
 | 
			
		||||
 | 
			
		||||
    public long Price { get; set; }
 | 
			
		||||
    public List<WaifuItem> Items { get; set; } = new();
 | 
			
		||||
 | 
			
		||||
    public override string ToString()
 | 
			
		||||
    {
 | 
			
		||||
        var status = string.Empty;
 | 
			
		||||
 | 
			
		||||
        var waifuUsername = Waifu.ToString().TrimTo(20);
 | 
			
		||||
        var claimer = Claimer?.ToString().TrimTo(20)
 | 
			
		||||
            ?? "no one";
 | 
			
		||||
 | 
			
		||||
        var affinity = Affinity?.ToString().TrimTo(20);
 | 
			
		||||
 | 
			
		||||
        if (AffinityId is null)
 | 
			
		||||
            status = $"... but {waifuUsername}'s heart is empty";
 | 
			
		||||
        else if (AffinityId == ClaimerId)
 | 
			
		||||
            status = $"... and {waifuUsername} likes {claimer} too <3";
 | 
			
		||||
        else
 | 
			
		||||
        {
 | 
			
		||||
            status =
 | 
			
		||||
                $"... but {waifuUsername}'s heart belongs to {affinity}";
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return $"**{waifuUsername}** - claimed by **{claimer}**\n\t{status}";
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
public class WaifuLbResult
 | 
			
		||||
{
 | 
			
		||||
    public string Username { get; set; }
 | 
			
		||||
    public string Discrim { get; set; }
 | 
			
		||||
 | 
			
		||||
    public string Claimer { get; set; }
 | 
			
		||||
    public string ClaimerDiscrim { get; set; }
 | 
			
		||||
 | 
			
		||||
    public string Affinity { get; set; }
 | 
			
		||||
    public string AffinityDiscrim { get; set; }
 | 
			
		||||
 | 
			
		||||
    public long Price { get; set; }
 | 
			
		||||
 | 
			
		||||
    public override string ToString()
 | 
			
		||||
    {
 | 
			
		||||
        var claimer = "no one";
 | 
			
		||||
        var status = string.Empty;
 | 
			
		||||
 | 
			
		||||
        var waifuUsername = Username.TrimTo(20);
 | 
			
		||||
        var claimerUsername = Claimer?.TrimTo(20);
 | 
			
		||||
 | 
			
		||||
        if (Claimer is not null)
 | 
			
		||||
            claimer = $"{claimerUsername}#{ClaimerDiscrim}";
 | 
			
		||||
        if (Affinity is null)
 | 
			
		||||
            status = $"... but {waifuUsername}'s heart is empty";
 | 
			
		||||
        else if (Affinity + AffinityDiscrim == Claimer + ClaimerDiscrim)
 | 
			
		||||
            status = $"... and {waifuUsername} likes {claimerUsername} too <3";
 | 
			
		||||
        else
 | 
			
		||||
            status = $"... but {waifuUsername}'s heart belongs to {Affinity.TrimTo(20)}#{AffinityDiscrim}";
 | 
			
		||||
        return $"**{waifuUsername}#{Discrim}** - claimed by **{claimer}**\n\t{status}";
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -28,7 +28,7 @@
 | 
			
		||||
        <PackageReference Include="AWSSDK.S3" Version="3.7.307" />
 | 
			
		||||
        <PackageReference Include="CodeHollow.FeedReader" Version="1.2.6" />
 | 
			
		||||
        <PackageReference Include="CommandLineParser" Version="2.9.1" />
 | 
			
		||||
        <PackageReference Include="Discord.Net" Version="3.203.0" />
 | 
			
		||||
        <PackageReference Include="Discord.Net" Version="3.204.0" />
 | 
			
		||||
        <PackageReference Include="CoreCLR-NCalc" Version="3.0.203" />
 | 
			
		||||
        <PackageReference Include="Google.Apis.Urlshortener.v1" Version="1.41.1.138" />
 | 
			
		||||
        <PackageReference Include="Google.Apis.YouTube.v3" Version="1.62.1.3205" />
 | 
			
		||||
 
 | 
			
		||||
@@ -195,6 +195,8 @@ setnick:
 | 
			
		||||
setavatar:
 | 
			
		||||
  - setavatar
 | 
			
		||||
  - setav
 | 
			
		||||
setbanner:
 | 
			
		||||
  - setbanner
 | 
			
		||||
setgame:
 | 
			
		||||
  - setgame
 | 
			
		||||
send:
 | 
			
		||||
 
 | 
			
		||||
@@ -402,6 +402,10 @@ setavatar:
 | 
			
		||||
  desc: "Sets a new avatar image for the NadekoBot. Parameter is a direct link to an image."
 | 
			
		||||
  args:
 | 
			
		||||
    - "https://i.imgur.com/xTG3a1I.jpg"
 | 
			
		||||
setbanner:
 | 
			
		||||
  desc: "Sets a new banner image for the NadekoBot. Parameter is a direct link to an image. Supports gifs."
 | 
			
		||||
  args:
 | 
			
		||||
    - "https://i.imgur.com/xTG3a1I.jpg"
 | 
			
		||||
setgame:
 | 
			
		||||
  desc: "Sets the bots game status to either Playing, Listening, or Watching."
 | 
			
		||||
  args:
 | 
			
		||||
 
 | 
			
		||||
@@ -184,6 +184,7 @@
 | 
			
		||||
  "setrole": "Successfully added role {0} to user {1}",
 | 
			
		||||
  "setrole_err": "Failed to add role. I have insufficient permissions.",
 | 
			
		||||
  "set_avatar": "New avatar set!",
 | 
			
		||||
  "set_banner": "New banner set!",
 | 
			
		||||
  "set_channel_name": "New channel name set.",
 | 
			
		||||
  "set_game": "New game set!",
 | 
			
		||||
  "set_stream": "New stream set!",
 | 
			
		||||
@@ -838,7 +839,7 @@
 | 
			
		||||
  "server_leaderboard": "Server XP Leaderboard",
 | 
			
		||||
  "global_leaderboard": "Global XP Leaderboard",
 | 
			
		||||
  "modified": "Modified server XP of the user {0} by {1}",
 | 
			
		||||
  "club_insuff_lvl": "You're insufficient level to join that club.",
 | 
			
		||||
  "club_already_applied": "You've already applied to that club.",
 | 
			
		||||
  "club_join_banned": "You're banned from that club.",
 | 
			
		||||
  "club_already_in": "You are already a member of a club.",
 | 
			
		||||
  "club_name_too_long": "Club name is too long.",
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user