public void DropTheFlag() { _boxColl.enabled = true; Rigidbody2D rg = GetComponent <Rigidbody2D>(); _IsFree = true; _Catcher.transform.Find("FlagSign").GetComponent <SpriteRenderer>().enabled = false; _Catcher = null; transform.SetParent(null); transform.position = new Vector3(transform.position.x, transform.position.y + 5, 0); rg.AddForce(Vector2.up * 5); GetComponent <SpriteRenderer>().enabled = true; GetComponent <BoxCollider2D>().enabled = true; }
override public bool Attack() { if (!CanAttack()) { return(false); } //The Attack GameObject temp = _skills.get(_counterSkill).UseAbility(); if (temp) { ControlerCharacter c = temp.GetComponent <ControlerCharacter>(); if (c /*|| temp.tag == "Enemy"*/) // melee attacks { Debug.Log("Hit"); c._char.IsAttacked(_skills.get(_counterSkill)._value); } } return(true); }
public void OnTriggerEnter2D(Collider2D collision) { ControlerCharacter c = collision.GetComponent <ControlerCharacter>(); if (c != null) { Character ch = c._char; if (_RedTeam == ch._Redteam) // Same Team { if (!_InBase && _IsFree) // isnt in Base { ReturnToBase(); } else if (_InBase && ch._hasFlag) // is in base { ch._hasFlag.ReturnToBase(); ch.SetFlag(null); collision.transform.Find("FlagSign").GetComponent <SpriteRenderer>().enabled = false; ch._score++; } } else { if (_IsFree) // Someone catch the flag { _Catcher = GameObject.FindGameObjectWithTag("Player").GetComponent <ControlerCharacter>(); _Catcher.transform.Find("FlagSign").GetComponent <SpriteRenderer>().enabled = true; ch.SetFlag(this); _IsFree = false; _InBase = false; transform.SetParent(collision.transform); GetComponent <BoxCollider2D>().enabled = false; GetComponent <SpriteRenderer>().enabled = false; //transform.localPosition = Vector3.up; } } } }
// Use this for initialization void Start() { _value = 0; _cc = GameObject.FindGameObjectWithTag("Player").GetComponent <ControlerCharacter>(); _cc._bHandler = this; }