Example #1
0
    // 대미지양 통지 정보 수신 함수.
    public void OnReceiveDamageNotifyPacket(int node, PacketId id, byte[] data)
    {
        DamageNotifyPacket packet = new DamageNotifyPacket(data);
        DamageData         damage = packet.GetPacket();

#if false
        string      avator_name  = "";
        AccountData account_data = AccountManager.get().getAccountData(damage.attacker);
        avator_name = account_data.avator_id;

        string log = "ReceiveDamageNotifyPacket:" + damage.target + "(" + damage.attacker + ") Damage:" + damage.damage;
        Debug.Log(log);
#endif
        chrBehaviorEnemy behavior = findCharacter <chrBehaviorEnemy>(damage.target);
        if (behavior == null)
        {
            return;
        }

        //log = "Cause damage:" + avator_name + " -> " + damage.target + " Damage:" + damage.damage;
        //Debug.Log(log);

        // 캐릭터의 대미지를 반영.
        behavior.control.causeDamage(damage.damage, damage.attacker, false);
    }
Example #2
0
    public void NotifyDamage(string charId, int attacker, float damage)
    {
        if (m_network != null)
        {
            DamageData data = new DamageData();

            data.target   = charId;
            data.attacker = attacker;
            data.damage   = damage;

            DamageNotifyPacket packet = new DamageNotifyPacket(data);
            m_network.SendReliableToAll <DamageData>(packet);
        }
    }
Example #3
0
    // 대미지양 통지 정보 수신 함수.
    public void OnReceiveDamageDataPacket(int node, PacketId id, byte[] data)
    {
        DamageDataPacket packet = new DamageDataPacket(data);
        DamageData       damage = packet.GetPacket();

        //string log = "ReceiveDamageDataPacket:" + damage.target + "(" + damage.attacker + ") Damage:" + damage.damage;
        //Debug.Log(log);

        if (m_network == null || GameRoot.get().isHost() == false)
        {
            // 호스트에 가는 통지 패킷이기에 다른 단말은 무시한다.
            return;
        }

        DamageNotifyPacket sendPacket = new DamageNotifyPacket(damage);

        m_network.SendReliableToAll <DamageData>(sendPacket);
    }