GetWallPosition() public method

public GetWallPosition ( TilePosition tilePosition, DungeonMasterEngine.DungeonContent.Tiles.Tile currentTile ) : Vector3
tilePosition TilePosition
currentTile DungeonMasterEngine.DungeonContent.Tiles.Tile
return Vector3
 private void SetupTags(TileData wall, Point textTagTilePosition)
 {
     foreach (var textTag in wall.TextTags.Where(x => !x.Processed && x.GetParentPosition(textTagTilePosition) == CurrentTile.GridPosition))
     {
         textTag.Processed = true;
         var tag = new TextTag(builder.GetWallPosition(textTag.TilePosition, CurrentTile), textTag.IsVisible,
                               textTag.TilePosition == TilePosition.East_TopRight || textTag.TilePosition == TilePosition.West_BottomRight, textTag.Text.Replace("|", Environment.NewLine))
         {
             AcceptMessages = textTag.HasTargetingActuator
         };
         CurrentTile.SubItems.Add(tag);
     }
 }
Exemplo n.º 2
0
        public void CreateSetupActuators(Tile currentTile)
        {
            var actuators = builder.CurrentMap.GetTileData(currentTile.GridPosition).Actuators;

            if (actuators.Any())
            {
                var factory = parser.TryMatchFactory(actuators, false);
                if (factory != null)
                {
                    currentTile.SubItems.Add(factory.CreateItem(builder, currentTile, actuators));
                }
                else
                {
                    if (actuators.All(x => x.ActuatorType != 5 && x.ActuatorType != 6))
                    {
                        foreach (var i in actuators)
                        {
                            Point?absolutePosition = null;
                            if (i.ActionLocation is RemoteTarget)
                            {
                                absolutePosition = ((RemoteTarget)i.ActionLocation).Position.Position.ToAbsolutePosition(builder.CurrentMap);
                            }

                            currentTile.SubItems.Add(new Actuator(builder.GetWallPosition(i.TilePosition, currentTile), $"{absolutePosition} {i.DumpString()}"));
                        }
                    }
                    else
                    {
                    }
                }
            }
        }