private void FixedUpdate() { if (animState) { return; } if (data == null) { return; } if (!data.Alive) { return; } if (data.CurrentAttackInterval > 0) { data.CurrentAttackInterval -= Time.fixedDeltaTime; } if (targetControl == null) { targetControl = FightMgr.instance.GetHeroTarget(transform.position, data.AttackDistance, data.Stance); OnMoveForTarget(); } else { Attack(); } }
public Config(UnitsControlPlus main) { Main = main; Screen = new Vector2(Drawing.Width - 160, Drawing.Height); Factory = MenuFactory.CreateWithTexture("UnitsControlPlus", "unitscontrolplus"); Factory.Target.SetFontColor(Color.Aqua); ControllableMenu = Factory.Menu("Controllable Heroes"); ControlHeroesItem = ControllableMenu.Item("Control Heroes", false); var DrawingMenu = Factory.Menu("Drawing"); TextItem = DrawingMenu.Item("Text", true); TextXItem = DrawingMenu.Item("X", new Slider(0, 0, (int)Screen.X - 60)); TextYItem = DrawingMenu.Item("Y", new Slider(0, 0, (int)Screen.Y - 200)); RadiusTargetUnitsItem = Factory.Item("Radius from Target to Units", new Slider(5000, 0, 10000)); RadiusTargetUnitsItem.Item.SetTooltip("Activation for Units from Target Radius"); PressKeyItem = Factory.Item("Press Key", new KeyBind('0')); PressTargetItem = Factory.Item("Press Target", new StringList("Lock", "Default")); ToggleKeyItem = Factory.Item("Toggle Key", new KeyBind('0', KeyBindType.Toggle, false)); ChangeTargetItem = Factory.Item("Change Target Key", new KeyBind('0')); FollowKeyItem = Factory.Item("Follow Key", new KeyBind('0', KeyBindType.Toggle, false)); ControlWithoutTargetItem = Factory.Item("Control Without Target in Radius", new Slider(5000, 0, 10000)); ControlWithoutTargetItem.Item.SetTooltip("Control all Units in this radius, if there is no Target"); WithoutTargetItem = Factory.Item("Without Target", new StringList("Move Mouse Position", "Follow on Hero", "None")); Mode = new Mode(this); FollowMode = new FollowMode(this); HeroControl = new HeroControl(this); UpdateMode = new UpdateMode(this); Renderer = new Renderer(this); }
public void Damaged() { Debug.Log("monster hitted"); GameObject Hero = GameObject.Find("Hero"); HeroControl mHeroControl = Hero.GetComponent <HeroControl> (); saveDamageTextForShow = mHeroControl.GetRandomDamage(); mIn_GameManager.mIngTextMassage.text = "적에게 데미지:" + saveDamageTextForShow + "를 주었다."; mHP -= saveDamageTextForShow; monsterHPtext.text = mHP.ToString(); mAnimator.SetTrigger("Damaged"); Debug.Log("last hp =" + mHP); // 사망처리 if (mHP <= 0) { mStatus = Status.Dead; mHP = 0; mIn_GameManager.mIngTextMassage.text = "적을 물리쳤다."; SingleTargeted = false; AllTargeted = false; mAnimator.SetTrigger("Dead"); TargetNumber = -1; //더이상 타겟이 아님요... Debug.Log("Dead"); mIn_GameManager.ReAutoTarget(); Destroy(gameObject, 1); } }
// public float CurrenthBonus // { // get { return currenthBonus; } // set // { // currenthBonus = value; // if (CurrentBonusUpdateX != null) // { // CurrentBonusUpdateX( currenthBonus ); // } // } // } public void Init(Level lvl) { base.Init(); var playerData = MainController.Instance.PlayerData; var allWeared = playerData.GetAllWearedItems(); var notBonuses = allWeared.Where(x => x.Slot != Slot.bonus); var bonuses = allWeared.Where(x => x.Slot == Slot.bonus); foreach (var allWearedItem in notBonuses) { allWearedItem.Activate(this, lvl); } foreach (var bonuseItem in bonuses) { bonuseItem.Activate(this, lvl); } foreach (ParamType v in Enum.GetValues(typeof(ParamType))) { Parameters[v] = playerData.CalcParameter(v); Debug.Log("Calc parameter: " + v + " : " + Parameters[v]); } curHp = Parameters[ParamType.Heath]; Parameters[ParamType.Speed] /= Formuls.SpeedCoef; ; // Parameters.Parameters[ParamType.PPower] *= (damageBonusFromItem + 1f); // Parameters.Parameters[ParamType.MPower] *= (damageBonusFromItem + 1f); // GetItemEffect.Stop(true); heorControl = Control as HeroControl; heorControl.Init(OnRotationEnds); Utils.GroundTransform(transform); }
// Use this for initialization void Awake() { startHP = 5; hp = startHP; isDead = false; lastHero = this; }
public void AddNewHero(HeroControl hero) { if (Pursuer.IndexOf(hero) == -1) { Pursuer.Add(hero); } }
public override void Attack() { if (!targetControl.data.Alive) { targetControl = null; return; } if (targetControl != null && targetControl.data.Alive) { if (data.CurrentAttackInterval <= 0) { Debug.Log("怪物:攻击"); if (targetControl != null) { if (targetControl.transform.position.x > transform.position.x) { renderer.flipX = false; } else { renderer.flipX = true; } } //攻击 Damage(); data.CurrentAttackInterval = data.AttackInterval; } } }
// Use this for initialization void Start() { hero_ = GameObject.Find("Hero").GetComponent <HeroControl>(); heroPre = GameObject.Find("Hero"); samen = GameObject.Find("saman"); anim = this.GetComponent <Animator>(); deadSound = GetComponent <AudioSource>(); }
void Start() { instance = this; heroStrong = FindObjectOfType <HeroStrong>(); heroFast = FindObjectOfType <HeroFast>(); heroStrongControl = heroStrong.GetComponent <HeroControl>(); heroFastControl = heroFast.GetComponent <HeroControl>(); }
public void InstantiateHero(GameObject heroModel) { hero = Instantiate(heroModel, transform); heroControl = hero.GetComponent <HeroControl>(); heroControl.SetPos(); hero.SetActive(true); }
// Use this for initialization void Start() { mControl = gameObject.AddComponent<HeroControl> () as HeroControl; mControl.mHero = this; mMotion = gameObject.AddComponent<HeroMotion> () as HeroMotion; mMotion.mHero = this; mProperty = gameObject.AddComponent<HeroProperty> () as HeroProperty; mAnimator = gameObject.GetComponent<Animator>() as Animator; }
public void UpdateHeroes(HeroControl heroControl) { foreach (var element in heroWrapPanel.Children) { if ((element as HeroControl) != heroControl && viewModel.CheckHero((element as HeroControl).GetHero())) { (element as HeroControl).ResetExcretion(); } } }
// Use this for initialization void Start() { mControl = gameObject.AddComponent <HeroControl> () as HeroControl; mControl.mHero = this; mMotion = gameObject.AddComponent <HeroMotion> () as HeroMotion; mMotion.mHero = this; mProperty = gameObject.AddComponent <HeroProperty> () as HeroProperty; mAnimator = gameObject.GetComponent <Animator>() as Animator; }
//Стандартна функція, яка викличеться, //коли поточний об’єкт зіштовхнеться із іншим void OnTriggerEnter2D(Collider2D collider) { //Намагаємося отримати компонент кролика HeroControl hero = collider.GetComponent <HeroControl>(); //Впасти міг не тільки кролик if (hero != null) { //Повідомляємо рівень, про смерть кролика LevelController.current.onHeroDeath(hero); } }
public void OnTriggerEnter(Collider other) { //When I detect the enemy base, I will explode and do some damage based on my own AD //In future releases, I will keep attacking the base until someone comes after me //If we find an enemy, we update the list, and update the objective of NavMesh if ((gameObject.tag).Equals("Demacia") && (other.gameObject.tag).Equals("Noxus") || (gameObject.tag).Equals("Noxus") && (other.gameObject.tag).Equals("Demacia")) { //Find amount of soldiers already attackin detected enemy, to check if we should attack as well HeroControl tmp = (other.transform.gameObject).GetComponent <HeroControl>(); if (tmp.getEnemiesAmt() < 2) { enemyFound = true; bool addedHimAlready = false; for (int i = 0; i < detectedEnemies.Count; i++) { if (detectedEnemies[i] == other.gameObject) { addedHimAlready = true; } } if (!addedHimAlready) { detectedEnemies.Add(other.gameObject); } } chooseNextPath(); } //If we get to the position that we were walking to, find next Path to move to else if (objective != null && (other.gameObject.name).Equals(objective.name) && !movingToEnemy) { if ((hero.Faction).Equals(UnitType.NOXUS)) { reachedPosition++; } else { reachedPosition--; } chooseNextPath(); } else if (objective == null) { chooseNextPath(); } }
void enabledMoving() { this.gameObject.GetComponent <CapsuleCollider2D>().isTrigger = true; GameObject hero = GameObject.Find("main_hero"); HeroControl move = hero.GetComponent <HeroControl>(); move.enabled = false; HeroJump jump = hero.GetComponent <HeroJump>(); jump.enabled = false; HeroAttack attack = hero.GetComponent <HeroAttack>(); attack.enabled = false; }
public override void Init() { base.Init(); var playerData = MainController.Instance.PlayerData; foreach (ParamType v in Enum.GetValues(typeof(ParamType))) { Parameters.Parameters[v] = playerData.CalcParameter(v); Debug.Log("Calc parameter: " + v + " : " + Parameters.Parameters[v]); } curHp = Parameters.Parameters[ParamType.Hp]; Parameters.Parameters[ParamType.PPower] *= damageBonusFromItem + 1f; Parameters.Parameters[ParamType.MPower] *= damageBonusFromItem + 1f; // GetItemEffect.Stop(true); heorControl = Control as HeroControl; heorControl.Init(OnRotationEnds); Utils.GroundTransform(transform); }
void OnTriggerEnter2D(Collider2D collider) { //Намагаємося отримати компонент кролика HeroControl hero = collider.GetComponent <HeroControl>(); //Впасти міг не тільки кролик if (hero != null) { if (once == 1) { attackSource.Play(); Vector3 temp = new Vector3(0, 0, -1f); LevelController.current.setStartPosition(transform.position + temp); Animator animator = GetComponent <Animator>(); animator.SetBool("fire", true); once = 0; } } }
private HeroControl GetNearestHeroMag(HexagonControl hexagon) { HeroControl heroControl = null; float Magnitude = float.PositiveInfinity; for (int i = 0; i < _listHero.Count; i++) { float magnitude = 0; magnitude += (hexagon.position - (Vector2)_listHero[i].transform.position).magnitude; if (Magnitude > magnitude) { Magnitude = magnitude; heroControl = _listHero[i]; } } return(heroControl); }
void Start() { Dbg.Log(this, "Start"); hero = GameObject.FindGameObjectWithTag("Player"); messageText = GameObject.Find("MessageText").GetComponent <Text> (); messageText.text = "\n\n\nSmall Worlds!\nMade by @damrem in 48h for #ld38.\n\n\nUse arrow keys to move.\nYou can 'multi-jump'.\n\n\nMusic by @Ynck_33."; heroControl = hero.GetComponent <HeroControl> (); heroControl.moved.AddListener(ClearMessage); heroGravityAttracted = hero.GetComponent <GravityAttracted> (); sfxSource = GetComponent <AudioSource> (); planets = GetComponentsInChildren <PlanetView> (); isOver = false; }
void Update() { if (Input.GetMouseButtonDown(0)) { Collider2D Collider = Physics2D.OverlapPoint(_camera.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, -100))); if (Collider != null) { if (Collider.gameObject.tag == "Hero") { _heroControl = Collider.gameObject.GetComponentInParent <HeroControl>(); } } } else if (Input.GetMouseButtonUp(0)) { Collider2D Collider = Physics2D.OverlapPoint(_camera.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, -100))); if (_heroControl != null) { if (Collider != null) { var Hexagon = Collider.GetComponent <HexagonControl>(); if ((Collider.gameObject.layer == 9 || Collider.gameObject.layer == 10) && Hexagon.TypeHexagon != 1) { _heroControl.DisConectEnemy(); _heroControl.StartWay(Hexagon); } else if (Collider.tag == "Enemy") { var Enemy = Collider.GetComponent <EnemyControl>(); _heroControl.StartWayEnemy(Enemy); } } } _heroControl = null; } }
private HeroControl GetNearestHero(HexagonControl hexagon) { HeroControl heroControl = null; float Magnitude = float.PositiveInfinity; for (int i = 0; i < _listHero.Count; i++) { List <HexagonControl> listHex = new List <HexagonControl>(); listHex.AddRange(hexagon.GetWay(_listHero[i].HexagonMain())); float magnitude = 0; for (int j = 0; j < listHex.Count - 1; j++) { magnitude += (listHex[j].position - listHex[j + 1].position).magnitude; } if (Magnitude > magnitude) { Magnitude = magnitude; heroControl = _listHero[i]; } } return(heroControl); }
void FixedUpdate() { Animator animator = GetComponent <Animator>(); if (isDead == true) { // myBody.simulated=false; HeroControl hero = GetComponent <HeroControl>(); animator.SetBool("dead", true); timer -= Time.deltaTime; if (timer <= 0) { LevelController.current.onHeroDeath(hero); timer = time_to_wait; isDead = false; startHP = 5; hp = startHP; } } else { myBody.simulated = true; animator.SetBool("dead", false); } if (isDead == true) { return; } Vector3 from = transform.position + Vector3.up * 0.1f; Vector3 to = transform.position + Vector3.down * 0.2f; int layer_id = 1 << LayerMask.NameToLayer("Ground"); RaycastHit2D hit = Physics2D.Linecast(from, to, layer_id); if (hit) { //Перевіряємо чи ми опинились на платформі if (hit.transform != null && hit.transform.GetComponent <MovingPlatform>() != null) { //Приліпаємо до платформи SetNewParent(this.transform, hit.transform); } } else { //Ми в повітрі відліпаємо під платформи SetNewParent(this.transform, this.heroParent); } if (hit) { isGrounded = true; } else { isGrounded = false; } //Намалювати лінію (для розробника) Debug.DrawLine(from, to, Color.red); if (Input.GetButtonDown("Jump") && isGrounded) { this.JumpActive = true; } if (this.JumpActive) { //Якщо кнопку ще тримають if (Input.GetButton("Jump")) { this.JumpTime += Time.deltaTime; if (this.JumpTime < this.MaxJumpTime) { Vector2 vel = myBody.velocity; vel.y = JumpSpeed * (1.0f - JumpTime / MaxJumpTime); myBody.velocity = vel; } } else { this.JumpActive = false; this.JumpTime = 0; } } if (this.isGrounded) { animator.SetBool("jump", false); } else { animator.SetBool("jump", true); } //[-1, 1] float value = Input.GetAxis("Horizontal"); if (Mathf.Abs(value) > 0) { Vector2 vel = myBody.velocity; vel.x = value * speed; myBody.velocity = vel; animator.SetBool("run", true); } else { animator.SetBool("run", false); } SpriteRenderer sr = GetComponent <SpriteRenderer>(); if (value < 0) { sr.flipX = true; } else if (value > 0) { sr.flipX = false; } }
public void StartWay(HeroControl hero) { IMoveMain.StartWay(hero.IControlMain.HexagonMain(), hero.IMoveMain); }
protected override void OnHeroHit(HeroControl hero) { attackSource.Play(); up = true; }
public void RemoveHero(HeroControl hero) { Pursuer.Remove(hero); }
void OnClick2() { HeroControl.settype(false); down = true; }
void OnClick1() { HeroControl.settype(true); down = true; }
private void Start() { hero = GameObject.FindGameObjectWithTag("hero").GetComponent <HeroControl>(); }
protected override void OnHeroHit(HeroControl hero) { this.CollectedHide(); }
public void RemoveHero(HeroControl heroControl) { _listHero.Remove(heroControl); }
public void CancelHero() { Destroy(hero); hero = null; heroControl = null; }
private void Awake() { //获取主角的游戏物体 hero = GameObject.FindGameObjectWithTag("hero"); hc = hero.GetComponent <HeroControl>(); }