public static Vec2 MapToWidget(this IMiniMap miniMap, Vec2 p) { var config = BattleMiniMapConfig.Get(); var scale = (float)config.WidgetWidth / miniMap.BitmapWidth; return(new Vec2((p.X * scale), (p.Y * scale))); }
public static Vec2 WidgetToMap(this IMiniMap miniMap, Vec2 p) { var config = BattleMiniMapConfig.Get(); var scale = (float)config.WidgetWidth / miniMap.BitmapWidth; return(new Vec2(p.X / scale, p.Y / scale)); }
public static float MapFToWidget(this IMiniMap miniMap, float f) { var config = BattleMiniMapConfig.Get(); var scale = (float)config.WidgetWidth / miniMap.BitmapWidth; return(f * scale); }
protected override void OnUpdate(float dt) { base.OnUpdate(dt); if (MiniMap.Instance != null) { var width = BattleMiniMapConfig.Get().WidgetWidth; SuggestedWidth = Math.Max(width * 0.1f, 1); SuggestedHeight = Math.Max(width * 0.1f, 1); IsEnabled = MiniMap.Instance.IsValid; } else { IsEnabled = false; } }
protected override void OnUpdate(float dt) { base.OnUpdate(dt); if (MiniMap.Instance != null) { var width = MiniMap.Instance.BitmapWidth; var height = MiniMap.Instance.BitmapHeight; var config = BattleMiniMapConfig.Get(); SuggestedWidth = config.WidgetWidth; SuggestedHeight = height / (float)width * SuggestedWidth; //var size = Utility.WorldToMapF(10, MiniMap.Instance.Resolution, 0); //_agentMarkerSize = Math.Max(MiniMap.Instance.MapFToWidget(size) * config.AgentMarkerScale, 1); var size = Widgets.Utility.GetSize(this); _agentMarkerSize = Math.Max(size.x * 0.01f * config.AgentMarkerScale, 1); } }
protected override void OnUpdate(float dt) { base.OnUpdate(dt); if (MiniMap.Instance != null) { var width = MiniMap.Instance.BitmapWidth; var height = MiniMap.Instance.BitmapHeight; SuggestedWidth = BattleMiniMapConfig.Get().WidgetWidth; SuggestedHeight = height / (float)width * SuggestedWidth; IsEnabled = MiniMap.Instance.IsValid; } else { IsEnabled = false; } }
private void UpdateMarker() { AgentMarkerType = _agent.GetAgentMarkerType(); if (AgentMarkerType == AgentMarkerType.Inactive) { MakeDead(); return; } var miniMap = MiniMap.Instance; if (!miniMap.IsValid && !BattleMiniMapConfig.Get().ShowMap) { return; } PositionInMap = miniMap.WorldToMapF(_agent.Position.AsVec2); PositionInWidget = miniMap.MapToWidget(PositionInMap); }
public void UpdateMapSize(Mission mission, bool updateMap = false) { Resolution = BattleMiniMapConfig.Get().Resolution; if (Resolution == 0) { Resolution = 1; } var mapWidth = (int)Math.Abs((MapBoundMax.y - MapBoundMin.y) / Resolution) + 1; var mapHeight = (int)Math.Abs((MapBoundMax.x - MapBoundMin.x) / Resolution) + 1; BitmapWidth = mapWidth; BitmapHeight = mapHeight; if (updateMap) { UpdateMapImage(mission); } }
protected override void OnUpdate(float dt) { base.OnUpdate(dt); if (MiniMap.Instance != null) { var width = MiniMap.Instance.BitmapWidth; var height = MiniMap.Instance.BitmapHeight; var config = BattleMiniMapConfig.Get(); SuggestedWidth = config.WidgetWidth; SuggestedHeight = height / (float)width * SuggestedWidth; IsEnabled = MiniMap.Instance.IsValid; HorizontalAlignment = config.HorizontalAlignment; VerticalAlignment = config.VerticalAlignment; if (HorizontalAlignment == HorizontalAlignment.Left || HorizontalAlignment == HorizontalAlignment.Center) { MarginLeft = config.PositionX; MarginRight = 0; } else { MarginLeft = 0; MarginRight = config.PositionX; } if (VerticalAlignment == VerticalAlignment.Top || VerticalAlignment == VerticalAlignment.Center) { MarginTop = config.PositionY; MarginBottom = 0; } else { MarginTop = 0; MarginBottom = config.PositionY; } } else { IsEnabled = false; } }
public override void OnMissionScreenTick(float dt) { base.OnMissionScreenTick(dt); if (_boundaryChanged) { _boundaryChanged = false; if (!MiniMap.Instance.IsValid) { MiniMap.Instance.InitializeMapRange(Mission.Current, true); } } bool toggleMapKeyDown = false; var toggleMapLongPressKey = BattleMiniMapGameKeyCategory.GetKey(GameKeyEnum.ToggleMapLongPress); var toggleMapKey = BattleMiniMapGameKeyCategory.GetKey(GameKeyEnum.ToggleMap); if (BattleMiniMapConfig.Get().EnableToggleMapLongPressKey&& toggleMapLongPressKey.IsKeyDown(Input)) { toggleMapKeyDown = true; } else if (toggleMapKey.IsKeyPressed(Input)) { BattleMiniMapConfig.Get().ShowMap = !BattleMiniMapConfig.Get().ShowMap; } _dataSource.UpdateEnabled(dt, MiniMap.Instance.IsValid && ((BattleMiniMapConfig.Get().ShowMap ^ toggleMapKeyDown) || _isOrderViewOpened && BattleMiniMapConfig.Get().ShowMapWhenCommanding)); _dataSource.UpdateCamera(); if (_timer.Check(true)) { _dataSource.UpdateData(); } }