Example #1
0
    public static void SendHpChg(Character sender, int chgHPGID, int hp, HPChgType chgType)
    {
        if (sender.Type != CharacterType.Player)
        {
            return;
        }
        Player      player = sender as Player;
        NotifyHPChg msg    = new NotifyHPChg();

        msg.hp      = hp;
        msg.chgType = chgType;
        msg.uid     = chgHPGID;
        NetWork.NotifyMessage <NotifyHPChg>(player.UserID, STC.STC_HPChg, msg);
    }
Example #2
0
    static void OnChgHp(byte[] data)
    {
        Scene scn = SceneSystem.Instance.mCurrentScene;

        if (scn == null)
        {
            return;
        }
        NotifyHPChg msg = ProtoBufUtils.Deserialize <NotifyHPChg>(data);
        Character   cha = scn.GetCharacter(msg.uid);

        if (cha == null)
        {
            return;
        }
        HPChgType hurtType = (HPChgType)msg.chgType;

        cha.headBar.CreateHeadText(hurtType, msg.hp);
    }
Example #3
0
    public void CreateHeadText(HPChgType hurtType, int hurt)
    {
        Transform t = UIRoot.mHeadTextPool.Spawn(UIRoot.headTextTransform);

        t.parent        = transform;
        t.localPosition = Vector3.zero;
        t.localRotation = Quaternion.identity;
        t.localScale    = new Vector3(0.3f, 0.3f, 0.3f);

        TweenBase tween = t.GetComponent <TweenBase>();

        tween.PlayForward();
        if (tween.onFinished == null)
        {
            tween.onFinished = new UnityEngine.Events.UnityEvent();
        }
        HeadTextTweenCB cb = new HeadTextTweenCB();

        cb.tween  = tween;
        cb.uiRoot = UIRoot;
        tween.onFinished.AddListener(cb.OnTweenFinish);

        Text text = t.GetComponent <Text>();

        if (hurtType == HPChgType.PhyDamage)
        {
            text.color = Color.red;
        }
        else if (hurtType == HPChgType.MagDamage)
        {
            text.color = new Color(0.8f, 0.0f, 1.0f);
        }
        else if (hurtType == HPChgType.Cure)
        {
            text.color = Color.green;
        }
        text.text = string.Format("{0}", hurt);
    }