From f4a9bcb10abc408cd60bf51e57ee7adc68b02086 Mon Sep 17 00:00:00 2001 From: Christopher Trom Date: Sat, 28 Oct 2017 11:45:17 -0500 Subject: [PATCH] Add new experimental class structure for players. --- .../entities/players/Doppelganger.java | 18 ++++++++++++++++++ .../werewolf/entities/players/Minion.java | 13 +++++++++++++ .../werewolf/entities/players/Player.java | 6 ++++++ .../games/werewolf/entities/players/Seer.java | 13 +++++++++++++ 4 files changed, 50 insertions(+) create mode 100644 src/main/java/fedor/games/werewolf/entities/players/Doppelganger.java create mode 100644 src/main/java/fedor/games/werewolf/entities/players/Minion.java create mode 100644 src/main/java/fedor/games/werewolf/entities/players/Player.java create mode 100644 src/main/java/fedor/games/werewolf/entities/players/Seer.java diff --git a/src/main/java/fedor/games/werewolf/entities/players/Doppelganger.java b/src/main/java/fedor/games/werewolf/entities/players/Doppelganger.java new file mode 100644 index 0000000..7f6b42b --- /dev/null +++ b/src/main/java/fedor/games/werewolf/entities/players/Doppelganger.java @@ -0,0 +1,18 @@ +package fedor.games.werewolf.entities.players; + +/** + * + */ +public class Doppelganger extends Player { + @Override + void takeTurn() { + // Perform turn actions. + + // Looks at another player's card and becomes that role + + // Ask server for a list of other players + // Select another player and tell the server you want to see who it is + // Server responds with requested data + // ??? It's been too long since I played this game...not sure what happens here. + } +} diff --git a/src/main/java/fedor/games/werewolf/entities/players/Minion.java b/src/main/java/fedor/games/werewolf/entities/players/Minion.java new file mode 100644 index 0000000..20890e0 --- /dev/null +++ b/src/main/java/fedor/games/werewolf/entities/players/Minion.java @@ -0,0 +1,13 @@ +package fedor.games.werewolf.entities.players; + +/** + * + */ +class Minion extends Player { + @Override + void takeTurn() { + // Perform turn actions. + + // Reveal werewolves + } +} diff --git a/src/main/java/fedor/games/werewolf/entities/players/Player.java b/src/main/java/fedor/games/werewolf/entities/players/Player.java new file mode 100644 index 0000000..7e65772 --- /dev/null +++ b/src/main/java/fedor/games/werewolf/entities/players/Player.java @@ -0,0 +1,6 @@ +package fedor.games.werewolf.entities.players; + +// Might be better as an interface. Will have to experiment some. +abstract class Player { + abstract void takeTurn(); +} diff --git a/src/main/java/fedor/games/werewolf/entities/players/Seer.java b/src/main/java/fedor/games/werewolf/entities/players/Seer.java new file mode 100644 index 0000000..51ba2b1 --- /dev/null +++ b/src/main/java/fedor/games/werewolf/entities/players/Seer.java @@ -0,0 +1,13 @@ +package fedor.games.werewolf.entities.players; + +/** + * + */ +class Seer extends Player { + @Override + void takeTurn() { + // Perform turn actions. + + // Reveal player card or two center cards + } +}