by NeuralStunner » Sun Jun 23, 2013 10:37 am
So, trying to create a secondary effect for hitscan attacks using [wiki]A_RadiusGive[/wiki] and a CustomInventory.
Code: Select all
Actor StaffPuffEx : StaffPuff2
{
+NoDamageThrust
+PuffGetsOwner
States
{
Spawn:
PUF4 A 0 Bright
PUF4 A 0 A_RadiusGive ("SS_Staff2Push", 1, RGF_Players|RGF_Monsters|RGF_Objects|RGF_Voodoo|RGF_NoTarget|RGF_Cube, 1)
Goto Super::Spawn
}
}
Problem: Nothing is given. If the radius (second option there) is less than the radius of the thing being attacked, the victim doesn't recive the item or gain the added effect. Apparently the function only uses X/Y/Z checks to gather actors in range, the problem with this is that only actors with their origin inside the "area of effect" will recieve the item. (Unlike A_Explode, which it claims to be similar to.)
This suggestion is for an added flag ("RGF_Touch"?) that will
actually behave like A_Explode, and give to any eligible actor that is even partially inside the give area. Unsure if this would work with the default "spherical" AOE, if it implies RGF_Cube that's perfectly fine with me.
(And no, I can't "just" use Pain state hacks or anything else that requires editing every actor that could possibly be attacked. This function is supposed to replace that crap.)
So, trying to create a secondary effect for hitscan attacks using [wiki]A_RadiusGive[/wiki] and a CustomInventory.
[code]Actor StaffPuffEx : StaffPuff2
{
+NoDamageThrust
+PuffGetsOwner
States
{
Spawn:
PUF4 A 0 Bright
PUF4 A 0 A_RadiusGive ("SS_Staff2Push", 1, RGF_Players|RGF_Monsters|RGF_Objects|RGF_Voodoo|RGF_NoTarget|RGF_Cube, 1)
Goto Super::Spawn
}
}
[/code]
Problem: Nothing is given. If the radius (second option there) is less than the radius of the thing being attacked, the victim doesn't recive the item or gain the added effect. Apparently the function only uses X/Y/Z checks to gather actors in range, the problem with this is that only actors with their origin inside the "area of effect" will recieve the item. (Unlike A_Explode, which it claims to be similar to.)
This suggestion is for an added flag ("RGF_Touch"?) that will [i]actually[/i] behave like A_Explode, and give to any eligible actor that is even partially inside the give area. Unsure if this would work with the default "spherical" AOE, if it implies RGF_Cube that's perfectly fine with me.
(And no, I can't "just" use Pain state hacks or anything else that requires editing every actor that could possibly be attacked. This function is supposed to replace that crap.)