private void move() { if (mouse.Equals(selection)) { unselect(); } else if (!mouse.containsKey("Unit")) { if (path.Length > 0) { waiting = true; HexPosition.clearSelection(); selection = mouse; selection.select("Selection"); CmdMoveUnit(HexPosition.pathToIntString(path)); } } else { object enemy = null; if (mouse.tryGetValue("Unit", out enemy)) { if (isAttackable(selection.getUnit(), (Unit)enemy)) { actuallyAttack(); } } } }
private void move() { if (mouse.Equals(selection)) { unselect(); } else if (!mouse.containsKey("Unit")) { if (path.Length > 0) { Unit myUnit = ((Unit)selection.getValue("Unit")); myUnit.move(path); HexPosition.clearSelection(); selection = mouse; selection.select("Selection"); if (selectAttackable(myUnit)) { turn = Turn.ATTACK; } else { myUnit.Status = Unit.State.WAIT; unselect(); endTurn(); } } } else { object enemy = null; if (mouse.tryGetValue("Unit", out enemy)) { Unit myUnit = ((Unit)selection.getValue("Unit")); if (isAttackable(myUnit, (Unit)enemy)) { actuallyAttack(); } } } }