Fancy Verb Menu & Verb API Refactor (#928)

This commit is contained in:
Pieter-Jan Briers
2020-05-23 03:09:44 +02:00
committed by GitHub
parent 4527fc9e84
commit cad59d2cb4
33 changed files with 1099 additions and 399 deletions

View File

@@ -14,24 +14,29 @@ namespace Content.Server.GlobalVerbs
[GlobalVerb]
class RejuvenateVerb : GlobalVerb
{
public override string GetText(IEntity user, IEntity target) => "Rejuvenate";
public override string GetCategory(IEntity user, IEntity target) => "Debug";
public override bool RequireInteractionRange => false;
public override VerbVisibility GetVisibility(IEntity user, IEntity target)
public override void GetData(IEntity user, IEntity target, VerbData data)
{
data.Text = "Rejuvenate";
data.CategoryData = VerbCategories.Debug;
data.Visibility = VerbVisibility.Invisible;
var groupController = IoCManager.Resolve<IConGroupController>();
if (user.TryGetComponent<IActorComponent>(out var player))
{
if (!target.HasComponent<DamageableComponent>() && !target.HasComponent<HungerComponent>() && !target.HasComponent<ThirstComponent>())
return VerbVisibility.Invisible;
if (!target.HasComponent<DamageableComponent>() && !target.HasComponent<HungerComponent>() &&
!target.HasComponent<ThirstComponent>())
{
return;
}
if (groupController.CanCommand(player.playerSession, "rejuvenate"))
return VerbVisibility.Visible;
{
data.Visibility = VerbVisibility.Visible;
}
}
return VerbVisibility.Invisible;
}
public override void Activate(IEntity user, IEntity target)
@@ -42,7 +47,6 @@ namespace Content.Server.GlobalVerbs
if (groupController.CanCommand(player.playerSession, "rejuvenate"))
PerformRejuvenate(target);
}
}
public static void PerformRejuvenate(IEntity target)
{