private void Drawing_OnDraw(EventArgs args) { if (Me == null) { return; } if (!MainMenu.OthersMenu.Item("others").IsActive() || !Game.IsInGame || Me == null || Game.IsPaused || Game.IsWatchingGame) { return; } //TODO:ATTACKRANGE if (MainMenu.OthersMenu.Item("ShowAttakRange").GetValue <bool>()) { Item item = Me.Inventory.Items.FirstOrDefault(x => x != null && x.IsValid && (x.Name.Contains("item_dragon_lance") || x.Name.Contains("item_hurricane_pike"))); if (Me.ClassId == ClassId.CDOTA_Unit_Hero_TrollWarlord && Me.HasModifier("modifier_troll_warlord_berserkers_rage")) { _attackRange = 150 + Me.HullRadius + 24; } else if (Me.ClassId == ClassId.CDOTA_Unit_Hero_TrollWarlord && !Me.HasModifier("modifier_troll_warlord_berserkers_rage")) { _attackRange = Me.GetAttackRange() + Me.HullRadius + 24; } else if (Me.ClassId == ClassId.CDOTA_Unit_Hero_TemplarAssassin) { _attackRange = Me.GetAttackRange() + Me.HullRadius; } else if (Me.ClassId == ClassId.CDOTA_Unit_Hero_DragonKnight && Me.HasModifier("modifier_dragon_knight_dragon_form")) { _attackRange = Me.GetAttackRange() + Me.HullRadius + 24; } else if (item == null && Me.IsRanged) { _attackRange = Me.GetAttackRange() + Me.HullRadius + 24; } else if (item != null && Me.IsRanged) { _attackRange = Me.GetAttackRange() + Me.HullRadius + 24; } else { _attackRange = Me.GetAttackRange() + Me.HullRadius; } if (_rangeDisplay == null) { if (Me.IsAlive) { _rangeDisplay = Me.AddParticleEffect(@"particles\ui_mouseactions\drag_selected_ring.vpcf"); _rangeDisplay.SetControlPoint(1, new Vector3(255, 0, 222)); _rangeDisplay.SetControlPoint(3, new Vector3(5, 0, 0)); _rangeDisplay.SetControlPoint(2, new Vector3(_lastRange, 255, 0)); } } else { if (!Me.IsAlive) { _rangeDisplay.Dispose(); _rangeDisplay = null; } else if (_lastRange.Equals(_attackRange)) { _rangeDisplay.Dispose(); _lastRange = _attackRange; _rangeDisplay = Me.AddParticleEffect(@"particles\ui_mouseactions\drag_selected_ring.vpcf"); _rangeDisplay.SetControlPoint(1, new Vector3(255, 0, 222)); _rangeDisplay.SetControlPoint(3, new Vector3(5, 0, 0)); _rangeDisplay.SetControlPoint(2, new Vector3(_lastRange, 255, 0)); } } } else { if (_rangeDisplay != null) { _rangeDisplay.Dispose(); } _rangeDisplay = null; } //TODO:TARGETMARKER E = Toolset.ClosestToMouse(Me, 10000); if (E != null && E.IsValid && !E.IsIllusion && E.IsAlive && E.IsVisible && MainMenu.OthersMenu.Item("ShowTargetMarker").GetValue <bool>()) { DrawTarget(); } else if (_particleEffect != null) { _particleEffect.Dispose(); _particleEffect = null; } // TY splinterjke.:) }