Fix extended hitboxes breaking dual-weapon givers.

This commit is contained in:
Mari the Deer 2022-04-02 12:09:45 +02:00
commit b4f81fa4e3
6 changed files with 18 additions and 5 deletions

View file

@ -66,7 +66,7 @@ Class SWWMExtendedItemHitbox : Actor
}
override void Touch( Actor toucher )
{
if ( !master || !master.bSPECIAL || !swwm_extendedpickup )
if ( !master || !master.bSPECIAL || Inventory(master).Owner || !swwm_extendedpickup )
return;
master.Touch(toucher);
}

View file

@ -175,7 +175,7 @@ Class SWWMCreditsMenu : GenericMenu
cvoice.Push(new("SWWMCreditsEntry").Init("Vyolette","$T_DEMOLITIONIST"));
cfanart.Push(new("SWWMCreditsEntry").Init("Substance20 (@S20TBL)"));
cfanart.Push(new("SWWMCreditsEntry").Init("Captain J (@Jho7835)"));
cfanart.Push(new("SWWMCreditsEntry").Init("Redead-ITA"));
cfanart.Push(new("SWWMCreditsEntry").Init("Redead-ITA (@RedeadITA)"));
cfanart.Push(new("SWWMCreditsEntry").Init("Sgt. Shivers (@Sgt_Shivers_)"));
cfanart.Push(new("SWWMCreditsEntry").Init("Moa Dixøn / Endie (@MoaDixon)"));
cfanart.Push(new("SWWMCreditsEntry").Init("Monsoon-Soft (@MonsoonSoft)"));

View file

@ -2114,6 +2114,11 @@ Class SWWMUtility
// pistol spawn, pretty simple
static Class<Weapon> PickSWWMSlot2()
{
// as they are dual-wieldable, there should be a 50% chance for spares to also appear if needed
if ( Random[Replacements](0,1) && !CheckNeedsItem('ExplodiumGun') && CheckNeedsItem('ExplodiumGun',true) )
return 'ExplodiumGun';
if ( Random[Replacements](0,1) && !CheckNeedsItem('PlasmaBlast') && CheckNeedsItem('PlasmaBlast',true) )
return 'PlasmaBlast';
return PickPair('ExplodiumGun','PlasmaBlast');
}
// shotgun spawn

View file

@ -493,6 +493,14 @@ Class SWWMDualWeaponGiver : Inventory
FloatBobStrength 0.25;
}
override void BeginPlay()
{
Super.BeginPlay();
if ( !swwm_extendedpickup ) return;
let box = Spawn("SWWMExtendedItemHitbox",pos);
box.master = self;
}
override void Touch( Actor toucher )
{
// show prompt to swap weapon, and prevent normal pickup