Ejemplo n.º 1
0
        void Main_DragOver(object sender, DragEventArgs e)
        {
            Point          tile = ScreenToTile(SharplikeView.PointToClient(new Point(e.X, e.Y)));
            AbstractSquare sq   = Map.GetSafeSquare(new Vector3(tile.X + Map.View.X, tile.Y + Map.View.Y, Map.View.Z));

            if (sq != null && sq.IsPassable(Direction.Here))
            {
                e.Effect = DragDropEffects.Copy;
            }
            else
            {
                e.Effect = DragDropEffects.None;
            }
        }
Ejemplo n.º 2
0
        void Main_DragDrop(object sender, DragEventArgs e)
        {
            Point tile = ScreenToTile(SharplikeView.PointToClient(new Point(e.X, e.Y)));

            Vector3        maploc = new Vector3(tile.X + Map.View.X, tile.Y + Map.View.Y, Map.View.Z);
            AbstractSquare sq     = Map.GetSafeSquare(maploc);

            if (sq != null && sq.IsPassable(Direction.Here))
            {
                EditorExtensionNode node = e.Data.GetData(typeof(EditorExtensionNode)) as EditorExtensionNode;
                AbstractEntity      ent  = node.CreateInstance() as AbstractEntity;

                ent.Location = maploc;
                ent.Map      = Map;
            }
        }