Basically I understand why this is happening, with me using public static variables. When you shoot or kick an enemy in a specific place it's switched out with another version which is damaged... I'm wondering how I go about making this an instance for each enemy. Instead of blowing one enemies head off to see them all pop off on other enemies. The public static variables are being called from the weapon scripts. Like when you kick the enemy in the head, guardTest.head = true.
var bfHeadHelm : GameObject;
var bfHeadNoHelm : GameObject;
var bfChest : GameObject;
var bfArmL : GameObject;
var bfArmR : GameObject;
var bflegs : GameObject;
//var bfHelmet : GameObject;
var afArmL : GameObject;
var afArmR : GameObject;
var afHeadNoHelm : GameObject;
var afHelmet : GameObject;
var afHeadHelm : GameObject;
var neckBlood : GameObject;
var neckBlood2 : GameObject;
var armRBlood : GameObject;
var armLBlood : GameObject;
var headKickBlood : GameObject;
var bodyRagdoll : GameObject;
var bodyRagdollArms : GameObject;
var bodyRagdollLeftArm : GameObject;
var bodyRagdollRightArm : GameObject;
var body : GameObject;
var bodyRagdollFull : GameObject;
var bodyRagdollHeadKick : GameObject;
public static var head : boolean = false;
public static var headExplode : boolean = false;
public static var chest : boolean = false;
public static var armL : boolean = false;
public static var armR : boolean = false;
public static var helmet : boolean = true;
public static var helmetDamage : float = 0f;
public static var headDamage : float = 0f;
public static var rJointDamage : float = 0f;
public static var lJointDamage : float = 0f;
public static var kicked : boolean = false;
public static var headKicked : boolean = false;
function Start () {
}
function Update () {
if (helmet == false){
bfHeadHelm.active = false;
bfHeadNoHelm.active = true;
afHelmet.active = true;
}
if (head == true && helmet == false && armL == false && armR == false){
bfArmL.active = false;
bfArmR.active = false;
bfHeadNoHelm.active = false;
afHeadNoHelm.active = true;
neckBlood.active = true;
body.active = false;
bodyRagdollArms.active = true;
}
if (head == true && helmet == false && armL == true && armR == true){
bfHeadNoHelm.active = false;
afHeadNoHelm.active = true;
neckBlood.active = true;
body.active = false;
bodyRagdoll.active = true;
}
if (head == true && helmet == false && armL == false && armR == true){
bfHeadNoHelm.active = false;
afHeadNoHelm.active = true;
neckBlood.active = true;
bfArmL.active = false;
body.active = false;
bodyRagdollRightArm.active = true;
}
if (head == true && helmet == false && armL == true && armR == false){
bfHeadNoHelm.active = false;
afHeadNoHelm.active = true;
neckBlood.active = true;
bfArmR.active = false;
body.active = false;
bodyRagdollLeftArm.active = true;
}
if (headExplode == true){
afHeadNoHelm.active = false;
}
if (armR == true){
bfArmR.active = false;
afArmR.active = true;
armRBlood.active = true;
}
if (armL == true){
bfArmL.active = false;
afArmL.active = true;
armLBlood.active = true;
}
if (kicked == true){
body.active = false;
bodyRagdollFull.active = true;
bfHeadHelm.active = false;
bfArmL.active = false;
bfArmR.active = false;
}
if (headKicked == true){
body.active = false;
neckBlood2.active = true;
bodyRagdollHeadKick.active = true;
afHeadHelm.active = true;
bfHeadHelm.active = false;
bfArmL.active = false;
bfArmR.active = false;
}
}
↧