mirror of
https://github.com/MikuLeaks/MikuSB.git
synced 2026-06-05 05:33:58 +00:00
add girl skin command
This commit is contained in:
@@ -35,6 +35,7 @@ public class ServerTextCHS
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public class WordTextCHS
|
public class WordTextCHS
|
||||||
{
|
{
|
||||||
|
public string Skin => "Skin";
|
||||||
public string WeaponPart => "武器部件";
|
public string WeaponPart => "武器部件";
|
||||||
public string CallItem => "召唤道具";
|
public string CallItem => "召唤道具";
|
||||||
public string SkinPart => "皮肤部件";
|
public string SkinPart => "皮肤部件";
|
||||||
|
|||||||
@@ -35,6 +35,7 @@ public class ServerTextCHT
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public class WordTextCHT
|
public class WordTextCHT
|
||||||
{
|
{
|
||||||
|
public string Skin => "皮膚";
|
||||||
public string WeaponPart => "武器部件";
|
public string WeaponPart => "武器部件";
|
||||||
public string CallItem => "召喚道具";
|
public string CallItem => "召喚道具";
|
||||||
public string SkinPart => "外觀部件";
|
public string SkinPart => "外觀部件";
|
||||||
|
|||||||
@@ -35,6 +35,7 @@ public class ServerTextEN
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public class WordTextEN
|
public class WordTextEN
|
||||||
{
|
{
|
||||||
|
public string Skin => "Skin";
|
||||||
public string WeaponPart => "Weapon Part";
|
public string WeaponPart => "Weapon Part";
|
||||||
public string CallItem => "Call Item";
|
public string CallItem => "Call Item";
|
||||||
public string SkinPart => "Skin Part";
|
public string SkinPart => "Skin Part";
|
||||||
|
|||||||
@@ -258,4 +258,40 @@ public class CommandGiveAll : ICommands
|
|||||||
await arg.SendMsg(I18NManager.Translate("Game.Command.GiveAll.GiveAllItems",
|
await arg.SendMsg(I18NManager.Translate("Game.Command.GiveAll.GiveAllItems",
|
||||||
I18NManager.Translate("Word.WeaponPart"), weaponPartItems.Count.ToString()));
|
I18NManager.Translate("Word.WeaponPart"), weaponPartItems.Count.ToString()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[CommandMethod("skin")]
|
||||||
|
public async ValueTask GiveAllSkin(CommandArg arg)
|
||||||
|
{
|
||||||
|
if (!await arg.CheckOnlineTarget()) return;
|
||||||
|
if (await arg.GetOption('p') is not int particular) return;
|
||||||
|
if (await arg.GetOption('l') is not int level) return;
|
||||||
|
if (await arg.GetOption('g') is not int genre) return;
|
||||||
|
|
||||||
|
var detail = arg.GetInt(0);
|
||||||
|
var player = arg.Target!.Player!;
|
||||||
|
List<GameSkinInfo> skinItems = [];
|
||||||
|
if (detail == -1)
|
||||||
|
{
|
||||||
|
// add all
|
||||||
|
foreach (var config in GameData.CardSkinData.Values)
|
||||||
|
{
|
||||||
|
var skin = await player.InventoryManager!
|
||||||
|
.AddSkinItem((ItemTypeEnum)config.Genre, config.Detail, config.Particular, config.Level, false);
|
||||||
|
if (skin != null) skinItems.Add(skin);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
var skin = await player.InventoryManager!.AddSkinItem((ItemTypeEnum)genre, (uint)detail, (uint)particular, (uint)level, false);
|
||||||
|
if (skin == null)
|
||||||
|
{
|
||||||
|
await arg.SendMsg(I18NManager.Translate("Game.Command.GiveAll.NotFound", I18NManager.Translate("Word.Skin")));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
skinItems.Add(skin);
|
||||||
|
}
|
||||||
|
if (skinItems.Count > 0) await player.SendPacket(new PacketNtfCallScript(skinItems));
|
||||||
|
await arg.SendMsg(I18NManager.Translate("Game.Command.GiveAll.GiveAllItems",
|
||||||
|
I18NManager.Translate("Word.Skin"), skinItems.Count.ToString()));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -68,6 +68,21 @@ public class PacketNtfCallScript : BasePacket
|
|||||||
SetData(proto);
|
SetData(proto);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public PacketNtfCallScript(List<GameSkinInfo> skins) : base(CmdIds.NtfScript)
|
||||||
|
{
|
||||||
|
var proto = new NtfCallScript
|
||||||
|
{
|
||||||
|
Api = "",
|
||||||
|
Arg = "{}",
|
||||||
|
ExtraSync = new NtfSyncPlayer
|
||||||
|
{
|
||||||
|
Items = { skins.Select(x => x.ToProto()) }
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
SetData(proto);
|
||||||
|
}
|
||||||
|
|
||||||
public PacketNtfCallScript(InventoryData inventory) : base(CmdIds.NtfScript)
|
public PacketNtfCallScript(InventoryData inventory) : base(CmdIds.NtfScript)
|
||||||
{
|
{
|
||||||
var proto = new NtfCallScript
|
var proto = new NtfCallScript
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
v=2.1
|
v=2.2
|
||||||
Reference in New Issue
Block a user