diff --git a/src/main/java/de/srsoftware/web4rail/tiles/TurnoutEN.java b/src/main/java/de/srsoftware/web4rail/tiles/TurnoutEN.java index 0f00425..fd606a9 100644 --- a/src/main/java/de/srsoftware/web4rail/tiles/TurnoutEN.java +++ b/src/main/java/de/srsoftware/web4rail/tiles/TurnoutEN.java @@ -1,6 +1,22 @@ package de.srsoftware.web4rail.tiles; -public class TurnoutEN extends Turnout{ +import java.util.List; +import java.util.Vector; + +import de.srsoftware.web4rail.Connector; +import de.srsoftware.web4rail.Plan; +public class TurnoutEN extends Turnout{ + @Override + public List connections(String from) { + switch (from) { + case Plan.EAST: + return List.of(new Connector(x,y-1,Plan.SOUTH),new Connector(x-1, y, Plan.EAST)); + case Plan.NORTH: + case Plan.WEST: + return List.of(new Connector(x+1,y,Plan.WEST)); + } + return new Vector<>(); + } } diff --git a/src/main/java/de/srsoftware/web4rail/tiles/TurnoutES.java b/src/main/java/de/srsoftware/web4rail/tiles/TurnoutES.java index 618c6fb..57299a7 100644 --- a/src/main/java/de/srsoftware/web4rail/tiles/TurnoutES.java +++ b/src/main/java/de/srsoftware/web4rail/tiles/TurnoutES.java @@ -1,5 +1,22 @@ package de.srsoftware.web4rail.tiles; -public class TurnoutES extends Turnout{ +import java.util.List; +import java.util.Vector; + +import de.srsoftware.web4rail.Connector; +import de.srsoftware.web4rail.Plan; +public class TurnoutES extends Turnout{ + + @Override + public List connections(String from) { + switch (from) { + case Plan.EAST: + return List.of(new Connector(x,y+1,Plan.NORTH),new Connector(x-1, y, Plan.EAST)); + case Plan.SOUTH: + case Plan.WEST: + return List.of(new Connector(x+1,y,Plan.WEST)); + } + return new Vector<>(); + } } diff --git a/src/main/java/de/srsoftware/web4rail/tiles/TurnoutNE.java b/src/main/java/de/srsoftware/web4rail/tiles/TurnoutNE.java index 2cd9c8e..79feef5 100644 --- a/src/main/java/de/srsoftware/web4rail/tiles/TurnoutNE.java +++ b/src/main/java/de/srsoftware/web4rail/tiles/TurnoutNE.java @@ -1,6 +1,22 @@ package de.srsoftware.web4rail.tiles; +import java.util.List; +import java.util.Vector; + +import de.srsoftware.web4rail.Connector; +import de.srsoftware.web4rail.Plan; + public class TurnoutNE extends Turnout{ - + @Override + public List connections(String from) { + switch (from) { + case Plan.NORTH: + return List.of(new Connector(x,y+1,Plan.NORTH),new Connector(x+1, y, Plan.WEST)); + case Plan.SOUTH: + case Plan.EAST: + return List.of(new Connector(x,y-1,Plan.SOUTH)); + } + return new Vector<>(); + } } diff --git a/src/main/java/de/srsoftware/web4rail/tiles/TurnoutSE.java b/src/main/java/de/srsoftware/web4rail/tiles/TurnoutSE.java index ee83b32..2dc9c1e 100644 --- a/src/main/java/de/srsoftware/web4rail/tiles/TurnoutSE.java +++ b/src/main/java/de/srsoftware/web4rail/tiles/TurnoutSE.java @@ -1,4 +1,22 @@ package de.srsoftware.web4rail.tiles; +import java.util.List; +import java.util.Vector; + +import de.srsoftware.web4rail.Connector; +import de.srsoftware.web4rail.Plan; + public class TurnoutSE extends Turnout{ + + @Override + public List connections(String from) { + switch (from) { + case Plan.SOUTH: + return List.of(new Connector(x+1,y,Plan.WEST),new Connector(x, y-1, Plan.SOUTH)); + case Plan.EAST: + case Plan.NORTH: + return List.of(new Connector(x,y+1,Plan.NORTH)); + } + return new Vector<>(); + } } diff --git a/src/main/java/de/srsoftware/web4rail/tiles/TurnoutSW.java b/src/main/java/de/srsoftware/web4rail/tiles/TurnoutSW.java index fda194a..f3d91e0 100644 --- a/src/main/java/de/srsoftware/web4rail/tiles/TurnoutSW.java +++ b/src/main/java/de/srsoftware/web4rail/tiles/TurnoutSW.java @@ -1,5 +1,22 @@ package de.srsoftware.web4rail.tiles; +import java.util.List; +import java.util.Vector; + +import de.srsoftware.web4rail.Connector; +import de.srsoftware.web4rail.Plan; + public class TurnoutSW extends Turnout{ + @Override + public List connections(String from) { + switch (from) { + case Plan.SOUTH: + return List.of(new Connector(x-1,y,Plan.EAST),new Connector(x, y-1, Plan.SOUTH)); + case Plan.WEST: + case Plan.NORTH: + return List.of(new Connector(x,y+1,Plan.NORTH)); + } + return new Vector<>(); + } } diff --git a/src/main/java/de/srsoftware/web4rail/tiles/TurnoutWS.java b/src/main/java/de/srsoftware/web4rail/tiles/TurnoutWS.java index 2246d0e..54b0a69 100644 --- a/src/main/java/de/srsoftware/web4rail/tiles/TurnoutWS.java +++ b/src/main/java/de/srsoftware/web4rail/tiles/TurnoutWS.java @@ -1,5 +1,22 @@ package de.srsoftware.web4rail.tiles; +import java.util.List; +import java.util.Vector; + +import de.srsoftware.web4rail.Connector; +import de.srsoftware.web4rail.Plan; + public class TurnoutWS extends Turnout{ + @Override + public List connections(String from) { + switch (from) { + case Plan.WEST: + return List.of(new Connector(x+1,y,Plan.WEST),new Connector(x, y+1, Plan.NORTH)); + case Plan.EAST: + case Plan.SOUTH: + return List.of(new Connector(x-1,y,Plan.EAST)); + } + return new Vector<>(); + } }