public clsViewInfo(clsMap Map, MapViewControl MapViewControl) { this.Map = Map; this.MapViewControl = MapViewControl; ViewPos = new sXYZ_int(0, 3072, 0); FOV_Multiplier_Set(SettingsManager.Settings.FOVDefault); ViewAngleSetToDefault(); LookAtPos(new sXY_int((int)(Map.Terrain.TileSize.X * App.TerrainGridSpacing / 2.0D), (int)(Map.Terrain.TileSize.Y * App.TerrainGridSpacing / 2.0D))); }
private frmCompile(clsMap Map) { InitializeComponent(); Icon = App.ProgramIcon; this.Map = Map; Map.CompileScreen = this; UpdateControls(); }
public static frmCompile Create(clsMap Map) { if ( Map == null ) { Debugger.Break(); return null; } if ( Map.CompileScreen != null ) { Debugger.Break(); return null; } return new frmCompile(Map); }
public void Deallocate() { Map = null; }
public clsMapTileChanges(clsMap Map, sXY_int PointSize) : base(PointSize) { this.Map = Map; Terrain = Map.Terrain; }
public clsSectorChanges(clsMap Map) : base(Map, Map.SectorCount) { }
public clsAutoTextureChanges(clsMap Map) : base(Map, Map.Terrain.TileSize) { }
//private clsScriptPosition() //{ //_ParentMapLink = new ConnectedListLink<clsScriptPosition, clsMap>(this); //} public static clsScriptPosition Create(clsMap Map) { clsScriptPosition Result = new clsScriptPosition(); Result._Label = Map.GetDefaultScriptLabel("Position"); Result._ParentMapLink.Connect(Map.ScriptPositions); return Result; }
//protected clsScriptArea() //{ //_ParentMapLink = new ConnectedListLink<clsScriptArea, clsMap>(this); //} public static clsScriptArea Create(clsMap Map) { clsScriptArea Result = new clsScriptArea(); Result._Label = Map.GetDefaultScriptLabel("Area"); Result._ParentMapLink.Connect(Map.ScriptAreas); return Result; }
private void PerformAction(clsMap.clsAction Action, sPosNum PosNum, sXY_int LastValidNum) { int XNum = 0; int X = 0; int Y = 0; sXY_int Centre = new sXY_int(); if ( Action.Map == null ) { Debugger.Break(); return; } Centre = GetPosNum(PosNum); Action.Effect = 1.0D; for ( Y = MathUtil.Clamp_int(Tiles.YMin + Centre.Y, 0, LastValidNum.Y) - Centre.Y; Y <= MathUtil.Clamp_int(Tiles.YMax + Centre.Y, 0, LastValidNum.Y) - Centre.Y; Y++ ) { Action.PosNum.Y = Centre.Y + Y; XNum = Y - Tiles.YMin; for ( X = MathUtil.Clamp_int(Tiles.XMin[XNum] + Centre.X, 0, LastValidNum.X) - Centre.X; X <= MathUtil.Clamp_int(Convert.ToInt32(Tiles.XMax[XNum] + Centre.X), 0, LastValidNum.X) - Centre.X; X++ ) { Action.PosNum.X = Centre.X + X; if ( Action.UseEffect ) { if ( Tiles.ResultRadius > 0.0D ) { switch ( _Shape ) { case enumShape.Circle: if ( _Alignment ) { Action.Effect = Convert.ToDouble(1.0D - (new Position.XY_dbl(Action.PosNum.X, Action.PosNum.Y) - new Position.XY_dbl(Centre.X - 0.5D, Centre.Y - 0.5D)).GetMagnitude() / (Tiles.ResultRadius + 0.5D)); } else { Action.Effect = Convert.ToDouble(1.0D - (Centre - Action.PosNum).ToDoubles().GetMagnitude() / (Tiles.ResultRadius + 0.5D)); } break; case enumShape.Square: if ( _Alignment ) { Action.Effect = 1.0D - Math.Max(Math.Abs(Action.PosNum.X - (Centre.X - 0.5D)), Math.Abs(Action.PosNum.Y - (Centre.Y - 0.5D))) / (Tiles.ResultRadius + 0.5D); } else { Action.Effect = 1.0D - Math.Max(Math.Abs(Action.PosNum.X - Centre.X), Math.Abs(Action.PosNum.Y - Centre.Y)) / (Tiles.ResultRadius + 0.5D); } break; } } } Action.ActionPerform(); } } }
public void PerformActionMapVertices(clsMap.clsAction Tool, sPosNum Centre) { PerformAction(Tool, Centre, Tool.Map.Terrain.TileSize); }
public void PerformActionMapTiles(clsMap.clsAction Tool, sPosNum Centre) { PerformAction(Tool, Centre, new sXY_int(Tool.Map.Terrain.TileSize.X - 1, Tool.Map.Terrain.TileSize.Y - 1)); }
public void PerformActionMapSectors(clsMap.clsAction Tool, sPosNum Centre) { PerformAction(Tool, Centre, new sXY_int(Tool.Map.SectorCount.X - 1, Tool.Map.SectorCount.Y - 1)); }
public void frmCompile_FormClosed(object sender, FormClosedEventArgs e) { Map.CompileScreen = null; Map = null; }