Files
2025-05-01 07:20:41 +09:00

75 lines
2.9 KiB
C#

using ServerCommon;
using ServerCore; using ServerBase;
namespace GameServer;
[ChatCommandAttribute("seasonpassexp", typeof(SeasonPassExpComplete), AuthAdminLevelType.Developer, AuthAdminLevelType.GmNormal, AuthAdminLevelType.GmSuper)]
internal class SeasonPassExpComplete : ChatCommandBase
{
public override async Task invoke(Player player, string token, string[] args)
{
if (args.Length < 1)
{
Log.getLogger().error($"Invalid Argument");
return;
}
if (!int.TryParse(args[0], out var exp))
{
Log.getLogger().error($"SeasonPassExpComplete param parsing Error args : {args[0]}");
return;
}
var season_pass_action = player.getEntityAction<SeasonPassAction>();
var server_logic = GameServerApp.getServerLogic();
var fn_start = async delegate ()
{
var result = season_pass_action.IncreaseExp((UInt32)exp);
var batch = new QueryBatchEx<QueryRunnerWithDocument>(player, LogActionType.CheatCommandIncreaseExp
, server_logic.getDynamoDbClient());
{
batch.addQuery(new DBQWriteToAttributeAllWithTransactionRunner());
}
result = await QueryHelper.sendQueryAndBusinessLog(batch);
if (result.isFail())
{
return result;
}
return result;
};
var transaction_name = "CheatIncreaseSeasonPassExp";
var result = await player.runTransactionRunnerSafelyWithTransGuid(player.getUserGuid()
, TransactionIdType.PrivateContents, transaction_name
, fn_start);
if (result.isFail())
{
var err_msg = $"Failed to runTransactionRunnerSafelyWithTransGuid() !!! : {result.toBasicString()} - transactionName:{transaction_name}, {player.toBasicString()}";
Log.getLogger().error(err_msg);
}
}
}
[ChatCommandAttribute("seasonpasscharge", typeof(SeasonPassCharge), AuthAdminLevelType.Developer, AuthAdminLevelType.GmNormal, AuthAdminLevelType.GmSuper)]
internal class SeasonPassCharge : ChatCommandBase
{
public override async Task invoke(Player player, string token, string[] args)
{
var season_pass_action = player.getEntityAction<SeasonPassAction>();
await season_pass_action.tryBuyChargedPass();
}
}
[ChatCommandAttribute("seasonpassinit", typeof(SeasonPassCheatInit), AuthAdminLevelType.Developer, AuthAdminLevelType.GmNormal, AuthAdminLevelType.GmSuper)]
internal class SeasonPassCheatInit : ChatCommandBase
{
public override async Task invoke(Player player, string token, string[] args)
{
var season_pass_action = player.getEntityAction<SeasonPassAction>();
await season_pass_action.CheatSeasonDataInit();
}
}