コード例 #1
0
ファイル: MeleeWeapon.cs プロジェクト: RyanSalam/3D-Adventure
    private bool CheckDamage(Collider target, AttackPoint point)
    {
        DamageAble victim = target.GetComponent <DamageAble>();

        if (victim == null)
        {
            return(false);
        }

        if (victim.gameObject == wielder)
        {
            return(true);
        }

        DamageAble.DamageData data = new DamageAble.DamageData
        {
            damageAmount = damage,
            damager      = this,
            damageOwner  = wielder,
            direction    = direction,
            damageSource = wielder.transform.position
        };

        victim.ApplyDamage(data);


        if (hit_effect != null)
        {
            hit_effect.transform.position = point.attackRoot.position;
            hit_effect.time = 0;
            hit_effect.Play();
        }

        return(true);
    }
コード例 #2
0
ファイル: BossEnemy.cs プロジェクト: tvl20/GD-Wizard-Bois
    private void Start()
    {
        healthScript = GetComponent <DamageAble>();

        if (isServer)
        {
            TimerController timer = GameObject.FindGameObjectWithTag("Timer").GetComponent <TimerController>();
            timer.onTimerTick.AddListener(onTimerTick);
            timer.onTimerStart.AddListener(onTimerStart);
        }
    }
コード例 #3
0
    void GiveDMG()
    {
        Debug.Log("Give! DMG");

        DamageAble  dmg = gameObject.GetComponent <DamageAble>();
        StatFactory sf  = gameObject.GetComponent <StatFactory>();

        dmg.m_Stats = sf.Get();

        m_Char.m_damage = dmg;
        m_Char.m_Events.MissingDamageComponent = false;
    }
コード例 #4
0
 public void onCollide(GameObject collidedObject)
 {
     if (GetHealth() != null && collidedObject.GetComponent <DamageAble>() != null)
     {
         DamageAble damageAble = collidedObject.GetComponent <DamageAble>();
         GetHealth().ReduceHealth(damageAble.GetDamage());
         if (GetHealth().IsDie())
         {
             Die(collidedObject);
         }
     }
 }
コード例 #5
0
 public void onCollide(GameObject collidedObj)
 {
     if (collidedObj.GetComponent <DamageAble>())
     {
         DamageAble damage = collidedObj.GetComponent <DamageAble>();
         GetPlayerHealth().ReduceHealth(damage.GetDamage());
         if (GetPlayerHealth().IsDie())
         {
             PlayerDie();
         }
     }
 }
コード例 #6
0
    public void UpdateHP()
    {
        DamageAble d = PlayerController.instance.GetComponent <DamageAble>();

        Debug.Log("is this runnning");

        int max     = d.maxHP;
        int current = d.currentHP;

        Debug.Log(current);

        float percent = (float)current / (float)max;

        StartCoroutine(ChangeHPBar(percent));
    }
コード例 #7
0
    private void Start()
    {
        cc   = GetComponent <CharacterController>();
        anim = GetComponentInChildren <Animator>();

        cameraTransform = Camera.main.transform;

        weapon         = GetComponentInChildren <MeleeWeapon>();
        weapon.wielder = gameObject;

        damageAble = GetComponentInChildren <DamageAble>();
        damageAble.messageReceivers.Add(this);

        BlockingLayer = anim.GetLayerIndex("Blocking");
    }
コード例 #8
0
    private void OnTriggerEnter2D(Collider2D collision)
    {
        DamageAble _damage = collision.gameObject.GetComponent <DamageAble>();

        if (_damage)
        {
            if (!_damage.GetPV.IsMine)
            {
                _damage.GetPV.RPC(_damage.DamageName, RpcTarget.AllBuffered, (int)fireBallDamage);
                if (PV != null)
                {
                    PhotonNetwork.Destroy(PV);
                }
            }
        }
    }
コード例 #9
0
 public void onCollide(GameObject colidedObj)
 {
     if (colidedObj.GetComponent <DamageAble>())
     {
         DamageAble damage = colidedObj.GetComponent <DamageAble>();
         if (_health != null)
         {
             _health.ReduceHealth(damage.GetDamage());
             ChangeAlpha();
             if (_health.IsDie())
             {
                 DestroySchild();
             }
         }
     }
 }
コード例 #10
0
ファイル: Character.cs プロジェクト: walnor/MazeField
    public void Init(GameObject owner, GameObject img, int GID = 0, Skill_Mode SM = null, DamageAble DA = null, DisplayAttackLog log = null)
    {
        gameObject  = owner;
        m_CharImage = img;

        m_Destination = gameObject.transform.position;
        previousPos   = gameObject.transform.position;

        GroupId = GID;

        m_Mode = SM;
        if (m_Mode != null)
        {
            m_Mode.Init(this);
        }

        if (DA != null)
        {
            m_damage = DA;
        }
        else
        {
            m_damage = gameObject.GetComponent <DamageAble>();
        }

        if (m_damage)
        {
            m_damage.Init(m_Stats);
        }

        if (log != null)
        {
            m_attLog = log;
        }
        else
        {
            m_attLog = gameObject.GetComponent <DisplayAttackLog>();
        }
    }
コード例 #11
0
    //---- Needs to be replaced to antoher place ---- //

    private void Start()
    {
        //initialize card deck
        cardDeck       = GetComponentInChildren <PlayerCardDeckBehaviour>();
        damageAble     = GetComponent <DamageAble>();;
        PV             = GetComponent <PhotonView>();
        spriteRenderer = GetComponent <SpriteRenderer>();

        playerMana = playerBeginMana;

        manaUI.InitSlider(playerMaxMana, playerMana);
        hpUI.InitSlider(damageAble.StartHealth, damageAble.StartHealth);

        if (!DebugMode)
        {
            spriteRenderer.enabled = false;
        }

        if (cardDeck)
        {
            cardDeck.GiveCardSet(this);
        }
    }
コード例 #12
0
ファイル: Module.cs プロジェクト: tvl20/MyProjectTm
 void Awake()
 {
     ParentShip = GetComponentInParent <Ship>();
     DamageAble = GetComponent <DamageAble>();
 }
コード例 #13
0
 void Start()
 {
     DamageAble = GetComponent <DamageAble>();
     DamageAble.OnDamageTaken.AddListener(damageTaken);
 }
コード例 #14
0
 private void Awake()
 {
     healthScript = GetComponent <DamageAble>();
 }