public Transform metgoragdoll(Vector3 varpvelocity = default(Vector3)) { Transform transform = UnityEngine.Object.Instantiate(this.vargamragdoll, base.transform.position, base.transform.rotation) as Transform; transform.localScale = base.transform.localScale; this.metcopytransforms(base.transform, transform, varpvelocity * 1f); if (this.doCreepySkin) { transform.gameObject.SendMessage("setSkin", this.health.MySkin.sharedMaterial, SendMessageOptions.DontRequireReceiver); this.health.MySkin.GetPropertyBlock(this.bloodPropertyBlock); transform.gameObject.SendMessage("setSkinDamageProperty", this.bloodPropertyBlock, SendMessageOptions.DontRequireReceiver); if (BoltNetwork.isServer) { IMutantState state = base.transform.parent.GetComponent <BoltEntity>().GetState <IMutantState>(); CoopMutantDummyToken coopMutantDummyToken = new CoopMutantDummyToken(); coopMutantDummyToken.Scale = base.transform.localScale; coopMutantDummyToken.skinDamage1 = this.bloodPropertyBlock.GetFloat("_Damage1"); coopMutantDummyToken.skinDamage2 = this.bloodPropertyBlock.GetFloat("_Damage2"); coopMutantDummyToken.skinDamage3 = this.bloodPropertyBlock.GetFloat("_Damage3"); coopMutantDummyToken.skinDamage4 = this.bloodPropertyBlock.GetFloat("_Damage4"); mutantTypeSetup component = base.transform.parent.GetComponent <mutantTypeSetup>(); if (component) { coopMutantDummyToken.storedRagDollName = component.storedRagDollName; } BoltNetwork.Attach(transform.gameObject, coopMutantDummyToken); } } if (this.animal) { animalSpawnFunctions component2 = base.transform.root.GetComponent <animalSpawnFunctions>(); if (component2) { transform.gameObject.SendMessage("setSkin", component2.meshRenderer.sharedMaterial, SendMessageOptions.DontRequireReceiver); } } if (this.bird) { lb_Bird component3 = base.transform.GetComponent <lb_Bird>(); transform.gameObject.SendMessage("setSkin", component3.skin.sharedMaterial, SendMessageOptions.DontRequireReceiver); } if (this.fish) { transform.gameObject.SendMessage("doSkinSetup", this.fishScript.fishTypeInt, SendMessageOptions.DontRequireReceiver); } if (this.burning) { transform.gameObject.SendMessage("enableFire", SendMessageOptions.DontRequireReceiver); } if (this.alreadyBurnt) { transform.gameObject.SendMessage("enableBurntSkin", SendMessageOptions.DontRequireReceiver); } this.burning = false; this.alreadyBurnt = false; return(transform); }
private void Start() { this.setup = base.GetComponentInChildren <mutantScriptSetup>(); this.spawnSetup = base.transform.root.GetComponent <mutantTypeSetup>(); this.ai = base.GetComponentInChildren <mutantAI>(); this.search = base.GetComponentInChildren <mutantSearchFunctions>(); this.animator = base.GetComponentInChildren <Animator>(); if (this.dragPoint) { this.dragPointInit = this.dragPoint.transform.localPosition; } this.mutantControl = Scene.MutantControler; this.health = base.GetComponentInChildren <EnemyHealth>(); this.fsmDeathBool = this.setup.pmCombat.FsmVariables.GetFsmBool("deathBool"); }
private void Awake() { this.ragDollSetup = base.GetComponent <clsragdollify>(); this.setup = base.GetComponent <mutantScriptSetup>(); this.typeSetup = base.transform.parent.GetComponent <mutantTypeSetup>(); this.ai = base.GetComponent <mutantAI>(); this.familyFunctions = base.transform.parent.GetComponent <mutantFamilyFunctions>(); this.targetSwitcher = base.GetComponentInChildren <mutantTargetSwitching>(); if (!this.ai.creepy) { this.animator = base.GetComponent <Animator>(); } else { this.animator = base.GetComponentInChildren <Animator>(); } this.MP = base.gameObject.GetComponent <mutantPropManager>(); this.bloodPropertyBlock = new MaterialPropertyBlock(); }
public Transform metgoragdoll(Vector3 varpvelocity = default(Vector3)) { Transform transform = UnityEngine.Object.Instantiate <Transform>(this.vargamragdoll, base.transform.position, base.transform.rotation); if (!this.ignoreScale) { transform.localScale = base.transform.localScale; } this.metcopytransforms(base.transform, transform, varpvelocity * 1f); if (this.doCreepySkin && this.enemyHealth) { transform.gameObject.SendMessage("setSkin", this.enemyHealth.MySkin.sharedMaterial, SendMessageOptions.DontRequireReceiver); this.enemyHealth.MySkin.GetPropertyBlock(this.bloodPropertyBlock); transform.gameObject.SendMessage("setSkinDamageProperty", this.bloodPropertyBlock, SendMessageOptions.DontRequireReceiver); if (this.enemyHealth.Fire.Length > 0) { mutantTransferFire component = base.transform.parent.GetComponent <mutantTransferFire>(); foreach (GameObject gameObject in this.enemyHealth.Fire) { if (gameObject.activeSelf && component) { component.transferFireToTarget(gameObject, transform.gameObject); } } } if (BoltNetwork.isServer) { BoltEntity component2 = base.transform.parent.GetComponent <BoltEntity>(); if (component2) { IMutantState state = component2.GetState <IMutantState>(); CoopMutantDummyToken coopMutantDummyToken = new CoopMutantDummyToken(); coopMutantDummyToken.Scale = base.transform.localScale; coopMutantDummyToken.skinDamage1 = this.bloodPropertyBlock.GetFloat("_Damage1"); coopMutantDummyToken.skinDamage2 = this.bloodPropertyBlock.GetFloat("_Damage2"); coopMutantDummyToken.skinDamage3 = this.bloodPropertyBlock.GetFloat("_Damage3"); coopMutantDummyToken.skinDamage4 = this.bloodPropertyBlock.GetFloat("_Damage4"); coopMutantDummyToken.skinColor = this.enemyHealth.MySkin.sharedMaterial.GetColor("_Color"); mutantTypeSetup component3 = base.transform.parent.GetComponent <mutantTypeSetup>(); if (component3) { } BoltNetwork.Attach(transform.gameObject, coopMutantDummyToken); } } } if (this.animalHealth && this.animalHealth.mySkin) { this.animalHealth.mySkin.GetPropertyBlock(this.bloodPropertyBlock); float @float = this.bloodPropertyBlock.GetFloat("_Damage1"); transform.gameObject.SendMessage("setSkinDamageProperty", this.bloodPropertyBlock, SendMessageOptions.DontRequireReceiver); } if (this.animalHealth && this.animalHealth.Fire) { mutantTransferFire component4; if (base.transform.parent) { component4 = base.transform.parent.GetComponent <mutantTransferFire>(); } else { component4 = base.transform.GetComponent <mutantTransferFire>(); } if (this.animalHealth.Fire.activeSelf && component4) { component4.transferFireToTarget(this.animalHealth.Fire, transform.gameObject); } } if (this.bat && this.burning) { transform.gameObject.SendMessage("enableFire", SendMessageOptions.DontRequireReceiver); } if (this.animal) { animalSpawnFunctions component5 = base.transform.root.GetComponent <animalSpawnFunctions>(); if (component5) { transform.gameObject.SendMessage("setSkin", component5.meshRenderer.sharedMaterial, SendMessageOptions.DontRequireReceiver); } if (this.ca && this.ca.isSnow) { transform.gameObject.SendMessage("setupSnowRabbitTypeTrigger", SendMessageOptions.DontRequireReceiver); } } if (this.bird) { if (this.burning) { transform.gameObject.SendMessage("enableFire", SendMessageOptions.DontRequireReceiver); } lb_Bird component6 = base.transform.GetComponent <lb_Bird>(); transform.gameObject.SendMessage("setSkin", component6.skin.sharedMaterial, SendMessageOptions.DontRequireReceiver); } if (this.fish) { transform.gameObject.SendMessage("doSkinSetup", this.fishScript.fishTypeInt, SendMessageOptions.DontRequireReceiver); transform.gameObject.SendMessage("setupFishType", this.fishScript.fishNatureGuideValue, SendMessageOptions.DontRequireReceiver); } if (this.alreadyBurnt) { transform.gameObject.SendMessage("enableBurntSkin", SendMessageOptions.DontRequireReceiver); } if (this.ast) { arrowStickToTarget component7 = transform.GetComponent <arrowStickToTarget>(); if (component7) { int num = 0; foreach (KeyValuePair <Transform, int> keyValuePair in this.ast.stuckArrows) { if (keyValuePair.Key) { component7.CreatureType(this.ast.IsAnimal, this.ast.IsBird, this.ast.IsFish); int arrowType = 0; if (num < this.ast.stuckArrowsTypeList.Count) { arrowType = this.ast.stuckArrowsTypeList[num]; } component7.applyStuckArrowToDummy(keyValuePair.Key, keyValuePair.Key.localPosition, keyValuePair.Key.localRotation, keyValuePair.Value, arrowType); num++; } } } } this.burning = false; this.alreadyBurnt = false; return(transform); }
private void doAwake() { if (this.disableAiForDebug) { this.disableForDebug(); } this.allFSM = base.gameObject.GetComponents<PlayMakerFSM>(); PlayMakerFSM[] array = this.allFSM; for (int i = 0; i < array.Length; i++) { PlayMakerFSM playMakerFSM = array[i]; if (playMakerFSM.FsmName == "action_combatFSM") { this.pmCombat = playMakerFSM; this.actionFSM.Add(playMakerFSM); } if (playMakerFSM.FsmName == "action_inTreeFSM") { this.pmTree = playMakerFSM; this.actionFSM.Add(playMakerFSM); } if (playMakerFSM.FsmName == "global_visionFSM") { this.pmVision = playMakerFSM; } if (playMakerFSM.FsmName == "action_searchFSM") { this.pmSearch = playMakerFSM; this.actionFSM.Add(playMakerFSM); } if (playMakerFSM.FsmName == "action_stalkingFSM") { this.pmStalk = playMakerFSM; this.actionFSM.Add(playMakerFSM); } if (playMakerFSM.FsmName == "global_motorFSM") { this.pmMotor = playMakerFSM; } if (playMakerFSM.FsmName == "action_sleepingFSM") { this.pmSleep = playMakerFSM; this.actionFSM.Add(playMakerFSM); } if (playMakerFSM.FsmName == "global_brainFSM") { this.pmBrain = playMakerFSM; } if (playMakerFSM.FsmName == "global_alertManagerFSM") { this.pmAlert = playMakerFSM; } if (playMakerFSM.FsmName == "action_encounterFSM") { this.pmEncounter = playMakerFSM; this.actionFSM.Add(playMakerFSM); } if (playMakerFSM.FsmName == "global_targetManagerFSM") { this.pmTargetManager = playMakerFSM; } } this.thisGo = base.gameObject; this.rootTr = base.transform.root.transform; this.rotateTr = base.transform; this.familyFunctions = base.transform.parent.GetComponent<mutantFamilyFunctions>(); this.animator = base.GetComponent<Animator>(); this.ai = base.GetComponent<mutantAI>(); this.aiManager = base.GetComponent<mutantAiManager>(); this.typeSetup = base.transform.parent.GetComponent<mutantTypeSetup>(); this.health = base.GetComponent<EnemyHealth>(); this.dayCycle = base.GetComponentInChildren<mutantDayCycle>(); this.enemyEvents = base.transform.GetComponent<enemyAnimEvents>(); this.controller = base.transform.root.GetComponent<CharacterController>(); this.hashs = base.transform.GetComponent<mutantMaleHashId>(); this.propManager = base.transform.GetComponent<mutantPropManager>(); this.bodyVariation = base.transform.GetComponentInChildren<setupBodyVariation>(); this.collisionDetect = base.transform.GetComponentInChildren<mutantCollisionDetect>(); this.hitReceiver = base.transform.GetComponentInChildren<mutantHitReceiver>(); this.animControl = base.transform.GetComponentInChildren<mutantAnimatorControl>(); if (!this.disableAiForDebug) { this.sceneInfo = Scene.SceneTracker; } this.search = base.GetComponent<mutantSearchFunctions>(); this.worldSearch = base.transform.parent.GetComponent<mutantWorldSearchFunctions>(); this.mutantStats = base.transform.parent.GetComponent<targetStats>(); Transform[] componentsInChildren = base.transform.parent.GetComponentsInChildren<Transform>(); Transform[] array2 = componentsInChildren; for (int j = 0; j < array2.Length; j++) { Transform transform = array2[j]; if (transform.name == "char_Head") { this.headJoint = transform.gameObject; } if (transform.name == "char_LeftHandWeapon") { this.charLeftWeaponGo = transform.gameObject; } if (transform.name == "currentWaypoint") { this.currentWaypoint = transform.gameObject; } if (transform.name == "lastPlayerSighting") { this.lastSighting = transform.gameObject; } if (transform.name == "tempLookat") { this.lookatTr = transform; } if (transform.name == "char_club_mesh1") { this.weapon = transform.gameObject; } if (transform.name == "FireStick") { this.fireWeapon = transform.gameObject; } if (transform.name == "char_RightHand") { this.clawsWeapon = transform.gameObject; } if (transform.name == "weaponLeftGO") { this.leftWeapon = transform.gameObject; } if (transform.name == "weaponLeftGO1") { this.leftWeapon1 = transform.gameObject; } if (transform.name == "weaponRightGO") { this.rightWeapon = transform.gameObject; } if (transform.name == "mainHitTrigger") { this.mainWeapon = transform.gameObject; } if (transform.name == "fireBomb") { this.fireBombGo = transform.gameObject; } if (transform.name == "dragPointGo") { this.familyFunctions.dragPoint = transform.gameObject; } if (transform.name == "bodyCollision") { if (this.pmCombat) { this.pmCombat.FsmVariables.GetFsmGameObject("bodyCollisionGo").Value = transform.gameObject; } this.bodyCollisionCollider = transform.GetComponent<CapsuleCollider>(); } if (transform.name == "char_LeftFoot") { this.leftFoot = transform; } if (transform.name == "headCollision") { this.headColliderGo = transform.gameObject; } } }
private IEnumerator SetTypeRoutine() { yield return(null); mutantTypeSetup typeSetup = base.GetComponent <mutantTypeSetup>(); if (typeSetup) { mutantAI ai2 = typeSetup.setup.ai; if (ai2.skinned) { this.Type = EnemyType.skinMaskMale; } else if (ai2.maleSkinny) { this.Type = ((!ai2.pale) ? EnemyType.skinnyMale : EnemyType.skinnyMalePale); } else if (ai2.femaleSkinny) { this.Type = ((!ai2.pale) ? EnemyType.skinnyFemale : EnemyType.skinnyFemalePale); } else if (ai2.male) { this.Type = ((!ai2.pale) ? EnemyType.regularMale : EnemyType.paleMale); } else if (ai2.female) { this.Type = ((!ai2.pale) ? EnemyType.regularFemale : EnemyType.paleFemale); } else if (ai2.creepy_male) { this.Type = ((!ai2.pale) ? EnemyType.creepyArmsy : EnemyType.creepyArmsy); } else if (ai2.creepy_fat) { this.Type = EnemyType.creepyFat; } else if (ai2.creepy_baby) { this.Type = EnemyType.creepyBaby; } else if (ai2.creepy) { this.Type = ((!ai2.pale) ? EnemyType.creepySpiderLady : EnemyType.blueCreepySpiderLady); } } else { BoltEntity entity = base.GetComponent <BoltEntity>(); mutantAI_net ai = base.GetComponentInChildren <mutantAI_net>(); IMutantState state = entity.GetState <IMutantState>(); while (!entity.isAttached || state.ai_mask == 0) { yield return(null); } if (ai) { if (ai.skinned) { this.Type = EnemyType.skinMaskMale; } else if (ai.maleSkinny) { this.Type = ((!ai.pale) ? EnemyType.skinnyMale : EnemyType.skinnyMalePale); } else if (ai.femaleSkinny) { this.Type = ((!ai.pale) ? EnemyType.skinnyFemale : EnemyType.skinnyFemalePale); } else if (ai.male) { this.Type = ((!ai.pale) ? EnemyType.regularMale : EnemyType.paleMale); } else if (ai.female) { this.Type = ((!ai.pale) ? EnemyType.regularFemale : EnemyType.paleFemale); } else if (ai.creepy_male) { this.Type = ((!ai.pale) ? EnemyType.creepyArmsy : EnemyType.creepyArmsy); } else if (ai.creepy_fat) { this.Type = EnemyType.creepyFat; } else if (ai.creepy_baby) { this.Type = EnemyType.creepyBaby; } else if (ai.creepy) { this.Type = ((!ai.pale) ? EnemyType.creepySpiderLady : EnemyType.blueCreepySpiderLady); } } } yield break; }
private void doAwake() { if (this.disableAiForDebug) { this.disableForDebug(); } this.allFSM = base.gameObject.GetComponents <PlayMakerFSM>(); PlayMakerFSM[] array = this.allFSM; for (int i = 0; i < array.Length; i++) { PlayMakerFSM playMakerFSM = array[i]; if (playMakerFSM.FsmName == "action_combatFSM") { this.pmCombat = playMakerFSM; this.actionFSM.Add(playMakerFSM); } if (playMakerFSM.FsmName == "action_inTreeFSM") { this.pmTree = playMakerFSM; this.actionFSM.Add(playMakerFSM); } if (playMakerFSM.FsmName == "global_visionFSM") { this.pmVision = playMakerFSM; } if (playMakerFSM.FsmName == "action_searchFSM") { this.pmSearch = playMakerFSM; this.actionFSM.Add(playMakerFSM); } if (playMakerFSM.FsmName == "action_stalkingFSM") { this.pmStalk = playMakerFSM; this.actionFSM.Add(playMakerFSM); } if (playMakerFSM.FsmName == "global_motorFSM") { this.pmMotor = playMakerFSM; } if (playMakerFSM.FsmName == "action_sleepingFSM") { this.pmSleep = playMakerFSM; this.actionFSM.Add(playMakerFSM); } if (playMakerFSM.FsmName == "global_brainFSM") { this.pmBrain = playMakerFSM; } if (playMakerFSM.FsmName == "global_alertManagerFSM") { this.pmAlert = playMakerFSM; } if (playMakerFSM.FsmName == "action_encounterFSM") { this.pmEncounter = playMakerFSM; this.actionFSM.Add(playMakerFSM); } if (playMakerFSM.FsmName == "global_targetManagerFSM") { this.pmTargetManager = playMakerFSM; } } this.thisGo = base.gameObject; this.rootTr = base.transform.root.transform; this.rotateTr = base.transform; this.familyFunctions = base.transform.parent.GetComponent <mutantFamilyFunctions>(); this.animator = base.GetComponent <Animator>(); this.ai = base.GetComponent <mutantAI>(); this.aiManager = base.GetComponent <mutantAiManager>(); this.typeSetup = base.transform.parent.GetComponent <mutantTypeSetup>(); this.health = base.GetComponent <EnemyHealth>(); this.dayCycle = base.GetComponentInChildren <mutantDayCycle>(); this.enemyEvents = base.transform.GetComponent <enemyAnimEvents>(); this.controller = base.transform.root.GetComponent <CharacterController>(); this.hashs = base.transform.GetComponent <mutantMaleHashId>(); this.propManager = base.transform.GetComponent <mutantPropManager>(); this.bodyVariation = base.transform.GetComponentInChildren <setupBodyVariation>(); this.collisionDetect = base.transform.GetComponentInChildren <mutantCollisionDetect>(); this.hitReceiver = base.transform.GetComponentInChildren <mutantHitReceiver>(); this.animControl = base.transform.GetComponentInChildren <mutantAnimatorControl>(); if (!this.disableAiForDebug) { this.sceneInfo = Scene.SceneTracker; } this.search = base.GetComponent <mutantSearchFunctions>(); this.worldSearch = base.transform.parent.GetComponent <mutantWorldSearchFunctions>(); this.mutantStats = base.transform.parent.GetComponent <targetStats>(); Transform[] componentsInChildren = base.transform.parent.GetComponentsInChildren <Transform>(); Transform[] array2 = componentsInChildren; for (int j = 0; j < array2.Length; j++) { Transform transform = array2[j]; if (transform.name == "char_Head") { this.headJoint = transform.gameObject; } if (transform.name == "char_LeftHandWeapon") { this.charLeftWeaponGo = transform.gameObject; } if (transform.name == "currentWaypoint") { this.currentWaypoint = transform.gameObject; } if (transform.name == "lastPlayerSighting") { this.lastSighting = transform.gameObject; } if (transform.name == "tempLookat") { this.lookatTr = transform; } if (transform.name == "char_club_mesh1") { this.weapon = transform.gameObject; } if (transform.name == "FireStick") { this.fireWeapon = transform.gameObject; } if (transform.name == "char_RightHand") { this.clawsWeapon = transform.gameObject; } if (transform.name == "weaponLeftGO") { this.leftWeapon = transform.gameObject; } if (transform.name == "weaponLeftGO1") { this.leftWeapon1 = transform.gameObject; } if (transform.name == "weaponRightGO") { this.rightWeapon = transform.gameObject; } if (transform.name == "mainHitTrigger") { this.mainWeapon = transform.gameObject; } if (transform.name == "fireBomb") { this.fireBombGo = transform.gameObject; } if (transform.name == "dragPointGo") { this.familyFunctions.dragPoint = transform.gameObject; } if (transform.name == "bodyCollision") { if (this.pmCombat) { this.pmCombat.FsmVariables.GetFsmGameObject("bodyCollisionGo").Value = transform.gameObject; } this.bodyCollisionCollider = transform.GetComponent <CapsuleCollider>(); } if (transform.name == "char_LeftFoot") { this.leftFoot = transform; } if (transform.name == "headCollision") { this.headColliderGo = transform.gameObject; } } }
private void Awake() { this.ragDollSetup = base.GetComponent<clsragdollify>(); this.setup = base.GetComponent<mutantScriptSetup>(); this.typeSetup = base.transform.parent.GetComponent<mutantTypeSetup>(); this.ai = base.GetComponent<mutantAI>(); this.familyFunctions = base.transform.parent.GetComponent<mutantFamilyFunctions>(); this.targetSwitcher = base.GetComponentInChildren<mutantTargetSwitching>(); if (!this.ai.creepy) { this.animator = base.GetComponent<Animator>(); } else { this.animator = base.GetComponentInChildren<Animator>(); } this.MP = base.gameObject.GetComponent<mutantPropManager>(); this.bloodPropertyBlock = new MaterialPropertyBlock(); }