Skip to content

Commit

Permalink
smexy map editor
Browse files Browse the repository at this point in the history
  • Loading branch information
hameelas committed Feb 28, 2013
1 parent baf9ca4 commit 7bf400f
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 1 deletion.
6 changes: 6 additions & 0 deletions src/javachallenge/graphics/MapEditor.java
Original file line number Diff line number Diff line change
Expand Up @@ -141,6 +141,12 @@ public void onControlClick(int x, int y) {
map.getFlagLocations().add(new Point(x, y));
mapEditor.getMapPanel().addToContainer(flag, 2);
}
@Override
public void onControlEnter(int x, int y) {
int type = (mapEditor.getMapPanel().getMap().getBlockType(new Point (x, y)).ordinal() + 1) % blockTypes;
mapEditor.getMapPanel().setBlock(x, y, type);
mapEditor.getMapPanel().getMap().setBlockType(new Point (x, y), BlockType.values()[type]);
}
});
scanner.close();
}
Expand Down
8 changes: 7 additions & 1 deletion src/javachallenge/graphics/components/MapPanel.java
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,10 @@ public void mouseMoved(MouseEvent e) {
if (position.equals(lastPosition)) return;
lastPosition = position;
if (insideMap(position))
onEnter(position.getX(), position.getY());
if (e.isControlDown())
onControlEnter(position.getX(), position.getY());
else
onEnter(position.getX(), position.getY());
}
public void mouseDragged(MouseEvent e) {}
});
Expand Down Expand Up @@ -133,6 +136,9 @@ public void onEnter(int x, int y) {
public void onControlClick(int x, int y) {
onClick(x, y);
}
public void onControlEnter(int x, int y) {
onEnter(x, y);
}

public boolean insideMap (Position position) {
return position.getX() >= 0 && position.getY() >= 0 &&
Expand Down

0 comments on commit 7bf400f

Please sign in to comment.