private void SetupEnemyItems(HumanoidCombatClass HAC, Transform child) { HumanoidMaster HM = child.GetComponent <HumanoidMaster>(); int firing_distance; ArmorWeightClass AWC; if (HAC == HumanoidCombatClass.Sharpshooter) { firing_distance = 2; AWC = ArmorWeightClass.Light; } else if (HAC == HumanoidCombatClass.Generalist) { firing_distance = Random.Range(0, 3); //Any AWC = ArmorWeightClass.Medium; } else if (HAC == HumanoidCombatClass.Tank) { firing_distance = Random.Range(0, 2); //Melee or Medium AWC = ArmorWeightClass.Heavy; } else { firing_distance = Random.Range(0, 3); //Any AWC = ArmorWeightClass.Light; } GameObject TempWeapon = itemCataog.ReturnWeaponInBudget(10, firing_distance); //TODO base the points off somthing (GameObject, GameObject, GameObject)TempArmor = itemCataog.ReturnArmorInBudget(10, AWC); //TODO base the points off somthing if (TempArmor.Item1) { (TempArmor.Item1).transform.parent = child.Find("Hitbox"); } if (TempArmor.Item2) { (TempArmor.Item2).transform.parent = child.Find("Hitbox"); } if (TempArmor.Item3) { (TempArmor.Item3).transform.parent = child.Find("Hitbox"); } if (TempWeapon) { TempWeapon.transform.parent = child.Find("Body"); } HM.SetupHumanoidItems(TempWeapon, TempArmor); }
private HumanoidCombatClass PickClass(bool SpecialClass, Transform child) { HumanoidCombatClass CombatClass = HumanoidCombatClass.Classless; //No class HumanoidMaster HM = child.GetComponent <HumanoidMaster>(); if (SpecialClass) { CombatClass = (HumanoidCombatClass)Random.Range(1, 4); } HM.SetupHumanoidStats(CombatClass); return(CombatClass); }
public void DialogueMenuBool(Transform DiaData = null) { if (DiaData != null) { Paused(); cinemachineBrain.m_IgnoreTimeScale = true; cinemachineBrain.m_UpdateMethod = CinemachineBrain.UpdateMethod.LateUpdate; playerAnimationUpdater.SetUpdateMode(AnimatorUpdateMode.UnscaledTime); playerAnimationUpdater.PlayAnimation("idle"); Map.SetActive(false); inescapableExternalMenu = true; DialogueMenu.SetActive(true); DialogueMenu.GetComponent <Animator>().Play("Panel In"); DialogueMenu.GetComponent <DiaParent>().SetupDia(DiaData); HumanoidMaster TempMaster = DiaData.GetComponentInParent <HumanoidMaster>(); if (TempMaster) //Don't set if no npc { npcTransform = TempMaster.transform; } inDialogueMenu = true; List <Transform> targetTransforms = new List <Transform>(); targetTransforms.Add(playerAnimationUpdater.GetComponentInParent <PlayerMaster>().transform); targetTransforms.Add(TempMaster.transform); camStateController.SetDiaTargetGroup(targetTransforms); camStateController.SetCamState(CameraStateController.CameraState.DialogueMenuCam); } else { Unpaused(true); inescapableExternalMenu = false; DialogueMenu.GetComponent <Animator>().Play("Panel Out"); camStateController.RevertCamToPreviousState(); inDialogueMenu = false; StartCoroutine(TurnOffPanel(DialogueMenu)); } }
private NPCActivityFlag ActivityFlag = NPCActivityFlag._NO_FLAG_; //Used for activity based Dia private void Awake() { int total = 0; for (int i = 0; i < NPC_Facs_Percentages_input.Count; ++i) { total += NPC_Facs_Percentages_input[i]; NPC_Facs_Percentages.Add(total); } if (NPC_Facs.Count != 0) { Assert.IsTrue(total == 100); Assert.IsTrue(CustomActivities.Count == 0); } Assert.IsTrue(NPC_Facs.Count == NPC_Facs_Percentages_input.Count); HM = GetComponentInParent <HumanoidMaster>(); NL = FindObjectOfType <NPC_Logic>(); DNC = FindObjectOfType <DayNightController>(); StartCoroutine(DelayedStart()); }
protected override void Start() { base.Start(); HM = GetComponentInParent <HumanoidMaster>(); HMB = HM.GetComponentInChildren <HumanoidMeleeBox>(); }
protected virtual void Start() { HM = GetComponentInParent <HumanoidMaster>(); ETM = GetComponentInParent <EnemyTemplateMaster>(); FL = GameObject.Find("NPCs").GetComponent <FactionLogic>(); }