XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet

DeathMod

【Terraria】DeathMod (now aka Soul Harvest)

公开
关注 0 Fork 0 Star 0
UTF-8
using SoulHarvest.Common;
using SoulHarvest.Items;
using Microsoft.Xna.Framework;
using System;
using Terraria;
using Terraria.ID;
using Terraria.Localization;
using Terraria.ModLoader;

namespace SoulHarvest.Commands;

public sealed class ReaperDebugGiveCommand : ModCommand
{
    public override string Command => "reaperdebuggive";
    public override CommandType Type => CommandType.World;
    public override string Usage => "/reaperdebuggive";
    public override string Description => Language.GetTextValue("Mods.SoulHarvest.Commands.GiveDescription");

    public override void Action(CommandCaller caller, string input, string[] args)
    {
        if (!ReaperDebugMode.TryGetPlayer(caller, out Player player))
            return;

        player.QuickSpawnItem(
            player.GetSource_Misc("SoulHarvest:DebugResources"),
            ModContent.ItemType<Soul>(),
            999);

        MyPlayer modPlayer = player.GetModPlayer<MyPlayer>();
        for (ReaperStage stage = ReaperStage.StageI; stage <= ReaperStage.StageIII; stage++)
        {
            while (modPlayer.ReaperProgression.CanIssueSoulSeal(stage))
            {
                if (!ReaperProgressionSoulSealService.TryGrant(player, stage))
                    break;
            }
        }

        caller.Reply(Language.GetTextValue("Mods.SoulHarvest.Commands.GiveSuccess"),
            new Color(105, 235, 255));
    }
}