Exemple #1
0
        public void OnDeath(string eventName, List <Object> data)
        {
            if (eventName != "CEventNetworkEntityDamage")
            {
                return;
            }

            Entity attacker = Entity.FromHandle(int.Parse(data[1].ToString()));

            if (attacker == null || attacker.Handle != Game.PlayerPed.Handle)
            {
                return;
            }

            bool victimDied = int.Parse(data[3].ToString()) == 1;

            if (!victimDied)
            {
                return;
            }

            Entity victim = Entity.FromHandle(int.Parse(data[0].ToString()));

            if (victim == null || !(victim is Ped v) || !v.IsPlayer)
            {
                return;
            }

            var rp = "+20";

            if (v.Bones.LastDamaged == Bone.SKEL_Head)
            {
                rp = "+100";
            }
            var gainedEffect = new GainedEffect(victim.Position, rp, "mp_anim_rp", 1.0f, 25, Game.FPS);

            m_gainedEffects.Add(gainedEffect);
        }
Exemple #2
0
        private void DrawGainedEffect(GainedEffect gainedEffect, Size screenRes)
        {
            var screenY = gainedEffect.Fade;

            SetDrawOrigin(gainedEffect.VictimPosition.X, gainedEffect.VictimPosition.Y, gainedEffect.VictimPosition.Z + 0.95f, 0);
            SetTextFont(4);
            SetTextColour(255, 255, 255, 255);
            SetTextScale(0.45f, 0.45f);
            SetTextDropShadow();
            SetTextOutline();
            BeginTextCommandDisplayText("GAIN_FX");
            AddTextComponentSubstringPlayerName(gainedEffect.Text);
            EndTextCommandDisplayText(25f / screenRes.Width, (-17f - screenY) / screenRes.Height);
            DrawSprite("MPHud", gainedEffect.Type, 0f, -screenY / screenRes.Height, size.Width / screenRes.Width, size.Height / screenRes.Height, 0f, 255, 255, 255, 255);
            ClearDrawOrigin();

            if (gainedEffect.FadeAfter <= 0)
            {
                gainedEffect.Fade = gainedEffect.Fade * 1.15f;
            }

            gainedEffect.Ticks--;
            gainedEffect.FadeAfter--;
        }