//================================================
//
// LimbSevered
//
//================================================
function LimbSevered(int BodyPart, vector Momentum)
{
local int joint;
local actor part;
local vector X,Y,Z,pos;
local class<actor> partclass;
ApplyGoreCap(BodyPart);
partclass = SeveredLimbClass(BodyPart);
switch(BodyPart)
{
case BODYPART_LARM1:
DropShield();
joint = JointNamed(‘lshouldb’);
pos = GetJointPos(joint);
GetAxes(Rotation, X, Y, Z);
part = Spawn(partclass, pos, Rotation);
if(part != None)
{
part.DrawScale = 1.0; // Necessary to scale down SarkArms
part.Velocity = -Y * 100 + vect(0, 0, 175);
part.GotoState(‘Drop’);
}
part = Spawn(class’´GreenBloodSpurt’, self, pos, Rotation);
if(part != None)
{
AttachActorToJoint(part, joint);
}
break;
case BODYPART_RARM1:
LastHeldWeapon = None; // No retrieving
DropWeapon();
joint = JointNamed(‘rshouldb’);
pos = GetJointPos(joint);
GetAxes(Rotation, X, Y, Z);
part = Spawn(partclass, pos, Rotation);
if(part != None)
{
part.DrawScale = 1.0; // Necessary to scale down SarkArms
part.Velocity = Y * 100 + vect(0, 0, 175);
part.GotoState(‘Drop’);
}
part = Spawn(class’GreenBloodSpurt’, self, pos, Rotation);
if(part != None)
{
AttachActorToJoint(part, joint);
}
break;
case BODYPART_HEAD:
joint = JointNamed(‘head’);
pos = GetJointPos(joint);
part = Spawn(partclass, pos, Rotation);
if(part != None)
{
part.Velocity = 0.75 * (momentum / Mass) + vect(0, 0, 300);
part.GotoState(‘Drop’);
}
part = Spawn(class’BloodSpurt’, self, pos, Rotation);
if(part != None)
{
AttachActorToJoint(part, joint);
}
break;
}
SetMovementMode(); // Set combat or exploration mode (player could lose an arm)
}
![]()
Just small quest… would that work if i create greenbloodspurt class and set this to every pawn?
hä?
Original thread: https://lowcaliber.com/eve/forums/a/tpc/f/7786011002/m/1166089222