Artemis.Modules.Games.CounterStrike.CounterStrikeModel.Update C# (CSharp) Method

Update() public method

public Update ( ) : void
return void
        public override void Update()
        {
            if (DataModel == null)
                return;

            var dm = (CounterStrikeDataModel) DataModel;
            if (dm.player != null)
            {
                // Detect active weapon
                if (dm.player.weapons.weapon_0?.state == "active")
                    dm.player.weapons.active_weapon = dm.player.weapons.weapon_0;
                else if (dm.player.weapons.weapon_1?.state == "active")
                    dm.player.weapons.active_weapon = dm.player.weapons.weapon_1;
                else if (dm.player.weapons.weapon_2?.state == "active")
                    dm.player.weapons.active_weapon = dm.player.weapons.weapon_2;

                // Detect a kill
                if (dm.player.state.round_kills > _lastKills)
                {
                    dm.player.state.made_kill = true;
                    _lastKill = DateTime.Now;
                }
                else if (dm.player.state.made_kill && (DateTime.Now - _lastKill > TimeSpan.FromMilliseconds(500)))
                    dm.player.state.made_kill = false;
                _lastKills = dm.player.state.round_kills;

                // Detect a headshot
                if (dm.player.state.round_killhs > _lastHeadshots)
                {
                    dm.player.state.made_headshot = true;
                    _lastHeadshot = DateTime.Now;
                }
                else if (dm.player.state.made_headshot && (DateTime.Now - _lastHeadshot > TimeSpan.FromMilliseconds(500)))
                    dm.player.state.made_headshot = false;
                _lastHeadshots = dm.player.state.round_killhs;

                // Detect a round win

                // Detect a round loss
            }

            DataModel = dm;
        }