More give command and removed redundant error checking

This commit is contained in:
Kyle873
2023-06-01 05:30:26 -04:00
parent 35313b8787
commit 6911638544
2 changed files with 34 additions and 38 deletions

View File

@@ -32,8 +32,6 @@ namespace PemukulPaku.GameServer.Commands
switch (action) switch (action)
{ {
case "add": case "add":
if (player.Equipment is not null)
{
if (avatarId == -1) if (avatarId == -1)
{ {
foreach (AvatarDataExcel avatarData in AvatarData.GetInstance().All) foreach (AvatarDataExcel avatarData in AvatarData.GetInstance().All)
@@ -49,7 +47,6 @@ namespace PemukulPaku.GameServer.Commands
AvatarScheme avatar = Common.Database.Avatar.Create(avatarId, player.User.Uid, player.Equipment); AvatarScheme avatar = Common.Database.Avatar.Create(avatarId, player.User.Uid, player.Equipment);
player.AvatarList = player.AvatarList.Append(avatar).ToArray(); player.AvatarList = player.AvatarList.Append(avatar).ToArray();
} }
}
player.Equipment.Save(); player.Equipment.Save();
break; break;
default: default:

View File

@@ -1,6 +1,7 @@
using Common.Database; using Common.Database;
using Common.Resources.Proto; using Common.Resources.Proto;
using Common.Utils.ExcelReader; using Common.Utils.ExcelReader;
using MongoDB.Bson;
using PemukulPaku.GameServer.Game; using PemukulPaku.GameServer.Game;
namespace PemukulPaku.GameServer.Commands namespace PemukulPaku.GameServer.Commands
@@ -25,8 +26,6 @@ namespace PemukulPaku.GameServer.Commands
case "avatars": case "avatars":
case "characters": case "characters":
case "chars": case "chars":
if (player.Equipment is not null)
{
foreach (AvatarDataExcel avatarData in AvatarData.GetInstance().All) foreach (AvatarDataExcel avatarData in AvatarData.GetInstance().All)
{ {
if (avatarData.AvatarId >= 9000) continue; // Avoid APHO avatars if (avatarData.AvatarId >= 9000) continue; // Avoid APHO avatars
@@ -34,41 +33,41 @@ namespace PemukulPaku.GameServer.Commands
AvatarScheme avatar = Common.Database.Avatar.Create(avatarData.AvatarId, player.User.Uid, player.Equipment); AvatarScheme avatar = Common.Database.Avatar.Create(avatarData.AvatarId, player.User.Uid, player.Equipment);
player.AvatarList = player.AvatarList.Append(avatar).ToArray(); player.AvatarList = player.AvatarList.Append(avatar).ToArray();
} }
}
break; break;
case "weapons": case "weapons":
if (player.Equipment is not null)
{
foreach (WeaponDataExcel weaponData in WeaponData.GetInstance().All) foreach (WeaponDataExcel weaponData in WeaponData.GetInstance().All)
{ {
player.Equipment.AddWeapon(weaponData.Id); player.Equipment.AddWeapon(weaponData.Id);
} }
}
break; break;
case "stigmata": case "stigmata":
case "stigs": case "stigs":
if (player.Equipment is not null)
{
foreach (StigmataDataExcel stigmataData in StigmataData.GetInstance().All) foreach (StigmataDataExcel stigmataData in StigmataData.GetInstance().All)
{ {
player.Equipment.AddStigmata(stigmataData.Id); player.Equipment.AddStigmata(stigmataData.Id);
} }
}
break; break;
/*
* TODO: Needs MaterialDataExcel implementation
case "materials": case "materials":
case "matz": case "matz":
if (player.Equipment is not null)
{
foreach (MaterialDataExcel materialData in MaterialData.GetInstance().All) foreach (MaterialDataExcel materialData in MaterialData.GetInstance().All)
{ {
player.Equipment.AddMaterial(materialData.Id, 9999999); player.Equipment.AddMaterial(materialData.Id, 9999999);
} }
}
break; break;
*/ case "dress":
case "dress": // TODO: Needs DressDataExcel implementation foreach (DressDataExcel dressData in DressData.GetInstance().All)
{
foreach (int avatarId in dressData.AvatarIdList)
{
AvatarScheme? avatar = player.AvatarList.ToList().Find(av => av.AvatarId == avatarId);
if (avatar is not null)
{
avatar.DressLists = avatar.DressLists.Append((uint)dressData.DressId).ToArray();
avatar.Save();
}
}
}
break; break;
default: default:
throw new ArgumentException("Unrecognized action"); throw new ArgumentException("Unrecognized action");