This commit is contained in:
2025-08-21 19:31:17 +08:00
parent d0d125d095
commit 6e232e8eb7
11 changed files with 587 additions and 1 deletions

View File

@@ -0,0 +1,35 @@
using System.Collections.Generic;
using RimWorld;
using Verse;
using Verse.AI;
namespace WulaFallenEmpire
{
public class FloatMenuProvider_Mech : FloatMenuOptionProvider
{
protected override bool Drafted => true;
protected override bool Undrafted => true;
protected override bool Multiselect => false;
protected override bool MechanoidCanDo => true;
public override bool SelectedPawnValid(Pawn pawn, FloatMenuContext context)
{
return base.SelectedPawnValid(pawn, context) && pawn.HasComp<CompMechWeapon>();
}
public override IEnumerable<FloatMenuOption> GetOptionsFor(Thing clickedThing, FloatMenuContext context)
{
Pawn pawn = context.FirstSelectedPawn;
if (clickedThing.def.IsWeapon && pawn.CanReserveAndReach(clickedThing, PathEndMode.Touch, Danger.Deadly))
{
yield return new FloatMenuOption("Equip".Translate(clickedThing.Label), delegate
{
pawn.jobs.StartJob(JobMaker.MakeJob(JobDefOf.Equip, clickedThing));
});
}
}
}
}