Add /playerxp command.

This commit is contained in:
Mustafa Alperen Seki
2019-04-30 17:09:54 +03:00
committed by reaperrr
parent 5e38cfda81
commit a4bac42c7f
2 changed files with 19 additions and 1 deletions

View File

@@ -53,7 +53,8 @@ namespace OpenRA.Mods.Common.Commands
register("all", "toggles all cheats and gives you some cash for your trouble.");
register("crash", "crashes the game.");
register("levelup", "adds a specified number of levels to the selected actors.");
register("poweroutage", "causes owners of selected actors to have a 5 second power outage.");
register("playerexperience", "adds a specified amount of player experience to the owner(s) of selected actors.");
register("poweroutage", "causes owner(s) of selected actors to have a 5 second power outage.");
register("kill", "kills selected actors.");
register("dispose", "disposes selected actors.");
}
@@ -105,6 +106,14 @@ namespace OpenRA.Mods.Common.Commands
break;
case "playerexperience":
var experience = 0;
int.TryParse(arg, out experience);
foreach (var player in world.Selection.Actors.Select(a => a.Owner.PlayerActor).Distinct())
world.IssueOrder(new Order("DevPlayerExperience", player, false) { ExtraData = (uint)experience });
break;
case "poweroutage":
foreach (var player in world.Selection.Actors.Select(a => a.Owner.PlayerActor).Distinct())
world.IssueOrder(new Order("PowerOutage", player, false) { ExtraData = 250 });

View File

@@ -229,6 +229,15 @@ namespace OpenRA.Mods.Common.Traits
break;
}
case "DevPlayerExperience":
{
var playerExperience = self.Owner.PlayerActor.TraitOrDefault<PlayerExperience>();
if (playerExperience != null)
playerExperience.GiveExperience((int)order.ExtraData);
break;
}
case "DevKill":
{
if (order.Target.Type != TargetType.Actor)