Index

A B C D E F G H I K L M N O P Q R S T U V W X Y 
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form

A

addEntity(Entity) - Method in class org.progettoedids.rooms.Room
Adds an Entity to the Room.
addEntity(Position, Entity) - Method in class org.progettoedids.labyrinth.Labyrinth
Adds an Entity to the Labyrinth at the specified Position
addEntity(Position, Entity) - Method in class org.progettoedids.labyrinth.Labyrinth.Builder
Adds an Entity to the Room located at the supplied Position
addItem(Item) - Method in class org.progettoedids.util.Inventory
Adds the specified Item to the Inventory, if its addition doesn't exceed maximum capacity.
addLabyrinth(Labyrinth.Builder) - Method in class org.progettoedids.repositories.LabyrinthRepository
Adds a Labyrinth.Builder to the repository.
addRoom(Position, Room) - Method in class org.progettoedids.labyrinth.Labyrinth.Builder
Adds a Room to the Room matrix at the specified Position
Alice - Class in org.progettoedids.entities.npcs.humans
 
Alice() - Constructor for class org.progettoedids.entities.npcs.humans.Alice
 
Apple - Class in org.progettoedids.entities.items.food
 
Apple() - Constructor for class org.progettoedids.entities.items.food.Apple
 
Armin - Class in org.progettoedids.entities.players
 
Armin() - Constructor for class org.progettoedids.entities.players.Armin
 

B

BackCommand - Class in org.progettoedids.usercommands
 
BackCommand(CommandLogger) - Constructor for class org.progettoedids.usercommands.BackCommand
 
BlockedRoom - Class in org.progettoedids.rooms
A subtype of Room that is always locked and that can't be unlocked.
BlockedRoom() - Constructor for class org.progettoedids.rooms.BlockedRoom
 
Bootstrap - Class in org.progettoedids
 
Bootstrap() - Constructor for class org.progettoedids.Bootstrap
 
BrokenFountain - Class in org.progettoedids.entities.items
 
BrokenFountain() - Constructor for class org.progettoedids.entities.items.BrokenFountain
 
BrokenSword - Class in org.progettoedids.entities.items.weapons
 
BrokenSword() - Constructor for class org.progettoedids.entities.items.weapons.BrokenSword
 
build() - Method in class org.progettoedids.labyrinth.Labyrinth.Builder
Builds and returns the Labyrinth based on the state set by calling the set-/add- method families of the Builder.
Builder() - Constructor for class org.progettoedids.labyrinth.Labyrinth.Builder
 

C

canAdd(Item) - Method in class org.progettoedids.util.Inventory
Checks whether it's possible to add an Item based on the current weight held in the Inventory and the weight of the Item specified.
canBeCollected() - Method in class org.progettoedids.entities.items.BrokenFountain
 
canBeCollected() - Method in class org.progettoedids.entities.items.food.Apple
 
canBeCollected() - Method in class org.progettoedids.entities.items.food.Pear
 
canBeCollected() - Method in class org.progettoedids.entities.items.Item
Returns whether this item is supposed to be collected from a Room of the Labyrinth
canBeCollected() - Method in class org.progettoedids.entities.items.Key
 
canBeCollected() - Method in class org.progettoedids.entities.items.weapons.Weapon
Returns whether the Weapon can be collected from a Room of the Labyrinth
canMoveByOne(UUID, Direction) - Method in class org.progettoedids.labyrinth.Labyrinth
Checks whether a move by one of a specific Entity in a certain Direction is allowed.
canPlayerGoBack() - Method in class org.progettoedids.labyrinth.Labyrinth
Checks whether the Player can go back to its previous Position.
canShow(Labyrinth) - Method in class org.progettoedids.usercommands.BackCommand
 
canShow(Labyrinth) - Method in class org.progettoedids.usercommands.DropCommand
 
canShow(Labyrinth) - Method in class org.progettoedids.usercommands.EastChangeRoomCommand
 
canShow(Labyrinth) - Method in class org.progettoedids.usercommands.HelpCommand
 
canShow(Labyrinth) - Method in class org.progettoedids.usercommands.LookCommand
 
canShow(Labyrinth) - Method in class org.progettoedids.usercommands.NorthChangeRoomCommand
 
canShow(Labyrinth) - Method in class org.progettoedids.usercommands.OpenInventoryCommand
 
canShow(Labyrinth) - Method in class org.progettoedids.usercommands.QuitCommand
 
canShow(Labyrinth) - Method in class org.progettoedids.usercommands.SaveCommand
 
canShow(Labyrinth) - Method in class org.progettoedids.usercommands.SouthChangeRoomCommand
 
canShow(Labyrinth) - Method in class org.progettoedids.usercommands.TakeCommand
 
canShow(Labyrinth) - Method in class org.progettoedids.usercommands.UseCommand
 
canShow(Labyrinth) - Method in class org.progettoedids.usercommands.UseInRoomCommand
 
canShow(Labyrinth) - Method in class org.progettoedids.usercommands.UserCommand
 
canShow(Labyrinth) - Method in class org.progettoedids.usercommands.WestChangeRoomCommand
 
CHAR_SYMBOL - Static variable in class org.progettoedids.rooms.BlockedRoom
 
CHAR_SYMBOL - Static variable in class org.progettoedids.rooms.DoorlessRoom
 
CHAR_SYMBOL - Static variable in class org.progettoedids.rooms.RoomWithDoors
 
CHAR_SYMBOL - Static variable in class org.progettoedids.rooms.TeleportRoom
 
CHAR_SYMBOL - Static variable in class org.progettoedids.rooms.VictoryRoom
 
COMMAND - Static variable in class org.progettoedids.usercommands.BackCommand
 
COMMAND - Static variable in class org.progettoedids.usercommands.DropCommand
 
COMMAND - Static variable in class org.progettoedids.usercommands.EastChangeRoomCommand
 
COMMAND - Static variable in class org.progettoedids.usercommands.HelpCommand
 
COMMAND - Static variable in class org.progettoedids.usercommands.LookCommand
 
COMMAND - Static variable in class org.progettoedids.usercommands.NorthChangeRoomCommand
 
COMMAND - Static variable in class org.progettoedids.usercommands.OpenInventoryCommand
 
COMMAND - Static variable in class org.progettoedids.usercommands.QuitCommand
 
COMMAND - Static variable in class org.progettoedids.usercommands.SaveCommand
 
COMMAND - Static variable in class org.progettoedids.usercommands.SouthChangeRoomCommand
 
COMMAND - Static variable in class org.progettoedids.usercommands.TakeCommand
 
COMMAND - Static variable in class org.progettoedids.usercommands.UseCommand
 
COMMAND - Static variable in class org.progettoedids.usercommands.UseInRoomCommand
 
COMMAND - Static variable in class org.progettoedids.usercommands.UserCommand
 
COMMAND - Static variable in class org.progettoedids.usercommands.WestChangeRoomCommand
 
commandHandle(Labyrinth, String) - Method in class org.progettoedids.usercommands.BackCommand
 
commandHandle(Labyrinth, String) - Method in class org.progettoedids.usercommands.DropCommand
 
commandHandle(Labyrinth, String) - Method in class org.progettoedids.usercommands.EastChangeRoomCommand
 
commandHandle(Labyrinth, String) - Method in class org.progettoedids.usercommands.HelpCommand
 
commandHandle(Labyrinth, String) - Method in class org.progettoedids.usercommands.LookCommand
 
commandHandle(Labyrinth, String) - Method in class org.progettoedids.usercommands.NorthChangeRoomCommand
 
commandHandle(Labyrinth, String) - Method in class org.progettoedids.usercommands.OpenInventoryCommand
 
commandHandle(Labyrinth, String) - Method in class org.progettoedids.usercommands.QuitCommand
 
commandHandle(Labyrinth, String) - Method in class org.progettoedids.usercommands.SaveCommand
 
commandHandle(Labyrinth, String) - Method in class org.progettoedids.usercommands.SouthChangeRoomCommand
 
commandHandle(Labyrinth, String) - Method in class org.progettoedids.usercommands.TakeCommand
 
commandHandle(Labyrinth, String) - Method in class org.progettoedids.usercommands.UseCommand
 
commandHandle(Labyrinth, String) - Method in class org.progettoedids.usercommands.UseInRoomCommand
 
commandHandle(Labyrinth, String) - Method in class org.progettoedids.usercommands.UserCommand
 
commandHandle(Labyrinth, String) - Method in class org.progettoedids.usercommands.WestChangeRoomCommand
 
commandLogger - Variable in class org.progettoedids.usercommands.UserCommand
 
CommandLogger - Class in org.progettoedids.util
This class is used to record commands executed by the user.
CommandLogger() - Constructor for class org.progettoedids.util.CommandLogger
 

D

damage - Variable in class org.progettoedids.entities.items.weapons.Weapon
 
DAMAGE - Static variable in class org.progettoedids.entities.items.weapons.BrokenSword
 
DAMAGE - Static variable in class org.progettoedids.entities.items.weapons.FancySword
 
DAMAGE - Static variable in class org.progettoedids.entities.items.weapons.Rock
 
DeathException - Exception Class in org.progettoedids.exceptions
This is a generic checked exception to indicate the death of something.
DeathException(String) - Constructor for exception class org.progettoedids.exceptions.DeathException
 
decreaseHealth(int) - Method in class org.progettoedids.entities.npcs.monsters.Monster
Decreases the health of the Monster by a specified amount.
decreaseHealth(int) - Method in class org.progettoedids.entities.players.Player
Decreases the health of the Player by a certain amount.
decreaseUsabilityLevel() - Method in class org.progettoedids.entities.items.weapons.Weapon
Decreases the usability level of the weapon by one.
Difficulty - Enum Class in org.progettoedids.util
 
Dimensions - Class in org.progettoedids.util
 
Dimensions(int, int) - Constructor for class org.progettoedids.util.Dimensions
 
Direction - Enum Class in org.progettoedids.util
 
DoorlessRoom - Class in org.progettoedids.rooms
A subtype of Room that is always unlocked.
DoorlessRoom() - Constructor for class org.progettoedids.rooms.DoorlessRoom
 
download(URI) - Method in interface org.progettoedids.util.filehandlers.FileDownloader
Retrieves a file from the location specified in the URI and returns it as a String.
download(URI) - Method in class org.progettoedids.util.filehandlers.LocalFilesystem
 
download(URI) - Method in class org.progettoedids.util.filehandlers.S3Protocol
 
DropCommand - Class in org.progettoedids.usercommands
 
DropCommand(CommandLogger) - Constructor for class org.progettoedids.usercommands.DropCommand
 

E

EAST - Enum constant in enum class org.progettoedids.util.Direction
 
EastChangeRoomCommand - Class in org.progettoedids.usercommands
 
EastChangeRoomCommand(CommandLogger) - Constructor for class org.progettoedids.usercommands.EastChangeRoomCommand
 
easy - Enum constant in enum class org.progettoedids.util.Difficulty
 
Entity - Class in org.progettoedids.entities
An Entity is the superclass of all the finer types of entities of the game.
Entity(String, String) - Constructor for class org.progettoedids.entities.Entity
Initializes an Entity.
equals(Object) - Method in record class org.progettoedids.util.Pair
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in class org.progettoedids.util.Position
 
exchange(Item, UUID) - Method in class org.progettoedids.util.Inventory
 
ExhaustedUsabilityException - Exception Class in org.progettoedids.exceptions
This is a generic checked exception to indicate that something has worn out.
ExhaustedUsabilityException(String) - Constructor for exception class org.progettoedids.exceptions.ExhaustedUsabilityException
 

F

FancySword - Class in org.progettoedids.entities.items.weapons
 
FancySword() - Constructor for class org.progettoedids.entities.items.weapons.FancySword
 
FileDownloader - Interface in org.progettoedids.util.filehandlers
An interface for classes capable of loading a file located at a certain URI and return it as a String.
FileHandlerRepository - Class in org.progettoedids.repositories
FileHandlerRepository holds factory methods that produce objects implementing the FileDownloader or FileUploader interface.
FileHandlerRepository() - Constructor for class org.progettoedids.repositories.FileHandlerRepository
 
FileUploader - Interface in org.progettoedids.util.filehandlers
An interface for classes capable of uploading a String to a file in a location specified by a URI.
Food - Class in org.progettoedids.entities.items.food
An instance of Food is an Item that restores a certain amount of health to the Player.
Food(String, String, int, int) - Constructor for class org.progettoedids.entities.items.food.Food
Initializes Food.
FullInventoryException - Exception Class in org.progettoedids.util
This exception is used to indicate that an operation couldn't be performed because an Inventory would have reached its maximum capacity.
FullInventoryException(String) - Constructor for exception class org.progettoedids.util.FullInventoryException
 

G

Game - Class in org.progettoedids
This class holds the main loop of the Game and the Labyrinth.
Game(Labyrinth) - Constructor for class org.progettoedids.Game
 
GameOverException - Exception Class in org.progettoedids.exceptions
This is a checked expression to indicate that the user lost to Game.
GameOverException(String) - Constructor for exception class org.progettoedids.exceptions.GameOverException
 
getAccessiblePositionsFromPosition(Labyrinth, Position) - Static method in class org.progettoedids.util.RoomLookup
 
getCharSymbol() - Method in class org.progettoedids.rooms.Room
Returns the character symbol characterizing the type of this instance of Room.
getCommandLog() - Method in class org.progettoedids.util.CommandLogger
Returns a copy of the command log as an array
getCommandString() - Method in class org.progettoedids.usercommands.BackCommand
 
getCommandString() - Method in class org.progettoedids.usercommands.DropCommand
 
getCommandString() - Method in class org.progettoedids.usercommands.EastChangeRoomCommand
 
getCommandString() - Method in class org.progettoedids.usercommands.HelpCommand
 
getCommandString() - Method in class org.progettoedids.usercommands.LookCommand
 
getCommandString() - Method in class org.progettoedids.usercommands.NorthChangeRoomCommand
 
getCommandString() - Method in class org.progettoedids.usercommands.OpenInventoryCommand
 
getCommandString() - Method in class org.progettoedids.usercommands.QuitCommand
 
getCommandString() - Method in class org.progettoedids.usercommands.SaveCommand
 
getCommandString() - Method in class org.progettoedids.usercommands.SouthChangeRoomCommand
 
getCommandString() - Method in class org.progettoedids.usercommands.TakeCommand
 
getCommandString() - Method in class org.progettoedids.usercommands.UseCommand
 
getCommandString() - Method in class org.progettoedids.usercommands.UseInRoomCommand
 
getCommandString() - Method in class org.progettoedids.usercommands.UserCommand
 
getCommandString() - Method in class org.progettoedids.usercommands.WestChangeRoomCommand
 
getDamage() - Method in class org.progettoedids.entities.items.weapons.Weapon
Returns the amount of damage the Weapon deals on each attack
getDifficulty() - Method in class org.progettoedids.labyrinth.Labyrinth.Builder
 
getDifficulty() - Method in class org.progettoedids.labyrinth.Labyrinth
Returns the Difficulty of the Labyrinth
getDimensions() - Method in class org.progettoedids.labyrinth.Labyrinth.Builder
 
getEntities() - Method in class org.progettoedids.rooms.Room
Returns all the Entity(ies) held in the Room
getEntities(Class<T>) - Method in class org.progettoedids.rooms.Room
 
getEntitiesInRoomWithPlayer(Class<T>) - Method in class org.progettoedids.labyrinth.Labyrinth
Returns certain subtypes of Entity(ies) in Room with the Player.
getEntity(UUID) - Method in class org.progettoedids.labyrinth.Labyrinth
Returns the Entity associated with the specified UUID
getEntity(UUID) - Method in class org.progettoedids.rooms.Room
Returns an Entity matching the supplied UUID held in the Room.
getEntityPosition(UUID) - Method in class org.progettoedids.labyrinth.Labyrinth
Returns the Position of the Entity with the specified UUID
getFileDownloader(String) - Static method in class org.progettoedids.repositories.FileHandlerRepository
Returns an object implementing the FileDownloader interface based on a scheme.
getFileUploader(String) - Static method in class org.progettoedids.repositories.FileHandlerRepository
Returns an object implementing the FileUploader interface based on a scheme.
getHealth() - Method in class org.progettoedids.entities.npcs.monsters.Monster
Returns the current health of the Monster.
getHealth() - Method in class org.progettoedids.entities.players.Player
Returns the health of the Player.
getHeight() - Method in class org.progettoedids.util.Dimensions
 
getInstance() - Static method in class org.progettoedids.repositories.LabyrinthRepository
 
getInventory() - Method in class org.progettoedids.entities.players.Player
Returns the inventory of the Player.
getItem(String) - Static method in class org.progettoedids.repositories.ItemRepository
Creates a specific Item subtype based on its system name and returns it as an Item
getItem(UUID) - Method in class org.progettoedids.util.Inventory
Returns the Item matching the specified UUID
getItemByName(String) - Method in class org.progettoedids.util.Inventory
 
getItems() - Method in class org.progettoedids.util.Inventory
Returns an array of Item(s) held in the Inventory
getItems(Class<T>) - Method in class org.progettoedids.util.Inventory
 
getLabyrinth(String) - Method in class org.progettoedids.repositories.LabyrinthRepository
Returns a newly built instance of a Labyrinth with the specified name and a random seed.
getLabyrinth(String, long) - Method in class org.progettoedids.repositories.LabyrinthRepository
Returns a newly built instance of a Labyrinth with the specified name and seed.
getLabyrinthName(String) - Method in class org.progettoedids.util.savestrings.SaveStringJSON
 
getLabyrinthName(String) - Method in interface org.progettoedids.util.savestrings.SaveStringReader
Returns the name of the Labyrinth as codified in the save string.
getLastLog() - Method in class org.progettoedids.util.CommandLogger
Returns the last recorded command in the command log.
getMainUserCommands(CommandLogger) - Static method in class org.progettoedids.repositories.UserCommandRepository
 
getMatrixString() - Method in class org.progettoedids.labyrinth.Labyrinth
Returns a matrix representation of all the rooms and the current position of the Player.
getMaxWeight() - Method in class org.progettoedids.util.Inventory
 
getName() - Method in class org.progettoedids.entities.Entity
Returns the name of an Entity.
getName() - Method in interface org.progettoedids.entities.items.InteractiveItem
 
getName() - Method in class org.progettoedids.labyrinth.Labyrinth.Builder
 
getName() - Method in class org.progettoedids.labyrinth.Labyrinth
Returns the name of the Labyrinth
getNames() - Method in class org.progettoedids.repositories.LabyrinthRepository
Returns all the names of the Labyrinth(s) held in this repository.
getNames(Difficulty) - Method in class org.progettoedids.repositories.LabyrinthRepository
Returns the names of all the Labyrinth(s) with the specified Difficulty.
getNPC(String) - Static method in class org.progettoedids.repositories.NPCRepository
Creates a specific NPC subtype based on its system name and returns it as a NPC
getPlayer() - Method in class org.progettoedids.labyrinth.Labyrinth
Returns the Player instance held by the Labyrinth
getPlayer(String) - Static method in class org.progettoedids.repositories.PlayerRepository
Creates a specific Player subtype based on its system name and returns it as a Player
getPlayerPosition() - Method in class org.progettoedids.labyrinth.Labyrinth
Returns the Position of the Player in the Labyrinth
getPlayerRoom() - Method in class org.progettoedids.labyrinth.Labyrinth
Returns the Room instance where the Player is located
getProduceSaveString(String) - Static method in class org.progettoedids.repositories.SaveStringRepository
Returns an object implementing the SaveStringProducer interface based on a format.
getRandomGenerator() - Method in class org.progettoedids.labyrinth.Labyrinth
Returns the Random generator to use for random numbers.
getRandomGeneratorSeed() - Method in class org.progettoedids.labyrinth.Labyrinth.Builder
 
getRandomGeneratorSeed() - Method in class org.progettoedids.labyrinth.Labyrinth
 
getRandomNumberGeneratorSeed(String) - Method in class org.progettoedids.util.savestrings.SaveStringJSON
 
getRandomNumberGeneratorSeed(String) - Method in interface org.progettoedids.util.savestrings.SaveStringReader
Returns the RNG seed of the Labyrinth as codified in the save string.
getReadSaveString(String) - Static method in class org.progettoedids.repositories.SaveStringRepository
Returns an object implementing the SaveStringReader interface based on a format.
getRestoredHealth() - Method in class org.progettoedids.entities.items.food.Food
Returns the amount of health this food Instance can restore
getRoom(Position) - Method in class org.progettoedids.labyrinth.Labyrinth
Returns the Room instance associated with the Position supplied
getRoomFromSymbol(char) - Static method in class org.progettoedids.repositories.RoomRepository
Creates a specific Room subtype based on its char symbol and returns it as a Room
getSystemName() - Method in class org.progettoedids.entities.Entity
Returns the system name of an Entity.
getUsabilityLevel() - Method in class org.progettoedids.entities.items.weapons.Weapon
Returns the current usability level of the Weapon.
getUserCommands(String) - Method in class org.progettoedids.util.savestrings.SaveStringJSON
 
getUserCommands(String) - Method in interface org.progettoedids.util.savestrings.SaveStringReader
Returns an array of user commands as codified in the save string.
getUUID() - Method in class org.progettoedids.entities.Entity
Returns the unique UUID of an Entity.
getWeight() - Method in class org.progettoedids.entities.items.Item
Returns the weight of an Item as defined in a subclass.
getWeightOfAllItems() - Method in class org.progettoedids.util.Inventory
Returns the sum of the weight of all the Item(s) held in the Inventory
getWidth() - Method in class org.progettoedids.util.Dimensions
 
go() - Method in class org.progettoedids.Game
Starts the main loop of the Game.

H

hard - Enum constant in enum class org.progettoedids.util.Difficulty
 
hashCode() - Method in record class org.progettoedids.util.Pair
Returns a hash code value for this object.
hashCode() - Method in class org.progettoedids.util.Position
 
hasItem(UUID) - Method in class org.progettoedids.util.Inventory
Check whether the Item with the specified UUID is present in the Inventory
health - Variable in class org.progettoedids.entities.npcs.monsters.Monster
 
HEALTH - Static variable in class org.progettoedids.entities.npcs.monsters.Lilith
 
HEALTH - Static variable in class org.progettoedids.entities.npcs.monsters.Marvin
 
HEALTH - Static variable in class org.progettoedids.entities.players.Armin
 
HEALTH - Static variable in class org.progettoedids.entities.players.Lisa
 
HelpCommand - Class in org.progettoedids.usercommands
 
HelpCommand(CommandLogger) - Constructor for class org.progettoedids.usercommands.HelpCommand
 
Human - Class in org.progettoedids.entities.npcs.humans
A Human is an NPC which is characterized by a certain Item.
Human(String, String, Item) - Constructor for class org.progettoedids.entities.npcs.humans.Human
Initializes a Human.

I

increaseHealth(int) - Method in class org.progettoedids.entities.players.Player
Increases the health of the Player by a certain amount.
inputStream() - Static method in class org.progettoedids.util.IOManager
 
InteractiveItem - Interface in org.progettoedids.entities.items
The InteractiveItem interface is supposed to be implemented by an Item if it is supposed to be used at request by the user.
InteractiveOnTurnEnd - Interface in org.progettoedids.entities
 
InteractiveOnTurnStart - Interface in org.progettoedids.entities
This interface is supposed to be implemented by classes which are supposed to be "interactive" at the beginning of a new turn.
interactOnTurnEnd(CommandLogger, Labyrinth) - Method in interface org.progettoedids.entities.InteractiveOnTurnEnd
 
interactOnTurnStart(CommandLogger, Labyrinth) - Method in interface org.progettoedids.entities.InteractiveOnTurnStart
Method called in order to get the implementing class to perform its specific actions.
interactOnTurnStart(CommandLogger, Labyrinth) - Method in class org.progettoedids.entities.npcs.humans.Human
Interacts with the user.
interactOnTurnStart(CommandLogger, Labyrinth) - Method in class org.progettoedids.entities.npcs.monsters.Monster
Interacts with the user.
interactOnTurnStart(CommandLogger, Labyrinth) - Method in class org.progettoedids.rooms.TeleportRoom
Teleports the Player to another Room reachable from the Teleport room.
interactOnTurnStart(CommandLogger, Labyrinth) - Method in class org.progettoedids.rooms.VictoryRoom
Interacts with the user and send an exception to Game that the game was won.
interactWithItem(CommandLogger, Labyrinth, String) - Method in class org.progettoedids.entities.items.BrokenFountain
 
interactWithItem(CommandLogger, Labyrinth, String) - Method in class org.progettoedids.entities.items.food.Food
Interacts with the user and add a certain amount of health to the Player.
interactWithItem(CommandLogger, Labyrinth, String) - Method in interface org.progettoedids.entities.items.InteractiveItem
This method is called whenever it has been requested to the implementing Item to perform its actions.
interactWithItem(CommandLogger, Labyrinth, String) - Method in class org.progettoedids.entities.items.Key
 
inventory - Variable in class org.progettoedids.entities.players.Player
 
Inventory - Class in org.progettoedids.util
The Inventory class is essentially a container of Item(s) with a maximum capacity.
Inventory(int) - Constructor for class org.progettoedids.util.Inventory
Initializes an Inventory.
IOManager - Class in org.progettoedids.util
This is a generic class to hold an InputStream and a PrintStream.
IOManager() - Constructor for class org.progettoedids.util.IOManager
 
isEmpty() - Method in class org.progettoedids.util.CommandLogger
Checks whether the command log is empty.
isEmpty() - Method in class org.progettoedids.util.Inventory
 
isLocked() - Method in class org.progettoedids.rooms.BlockedRoom
 
isLocked() - Method in class org.progettoedids.rooms.DoorlessRoom
 
isLocked() - Method in class org.progettoedids.rooms.Room
Returns whether the Room is locked or not.
isLocked() - Method in class org.progettoedids.rooms.RoomWithDoors
 
isLocked() - Method in class org.progettoedids.rooms.TeleportRoom
 
isLocked() - Method in class org.progettoedids.rooms.VictoryRoom
 
isValidPosition(Position) - Method in class org.progettoedids.labyrinth.Labyrinth
Checks whether a Position is within the dimensions of the Room matrix
item - Variable in class org.progettoedids.entities.npcs.humans.Human
 
Item - Class in org.progettoedids.entities.items
An Item is a subclass of an Entity which is additionally characterized by a certain weight.
Item(String, String, int) - Constructor for class org.progettoedids.entities.items.Item
Initializes an Item.
ItemRepository - Class in org.progettoedids.repositories
ItemRepository holds a factory method that produces various subtypes of Items(s)
ItemRepository() - Constructor for class org.progettoedids.repositories.ItemRepository
 

K

key() - Method in record class org.progettoedids.util.Pair
Returns the value of the key record component.
Key - Class in org.progettoedids.entities.items
 
Key() - Constructor for class org.progettoedids.entities.items.Key
 

L

labyRepo - Static variable in class org.progettoedids.repositories.LabyrinthRepository
 
Labyrinth - Class in org.progettoedids.labyrinth
The Labyrinth class holds the state of the game's environment and supplies handy methods to access and make changes to the various components that make up the state.
Labyrinth() - Constructor for class org.progettoedids.labyrinth.Labyrinth
 
Labyrinth.Builder - Class in org.progettoedids.labyrinth
It's the class responsible for Building a fully configured Labyrinth in a valid state.
LabyrinthJSONLoader - Class in org.progettoedids.labyrinth.loaders
 
LabyrinthJSONLoader(File) - Constructor for class org.progettoedids.labyrinth.loaders.LabyrinthJSONLoader
 
LabyrinthJSONLoader(InputStream) - Constructor for class org.progettoedids.labyrinth.loaders.LabyrinthJSONLoader
 
LabyrinthJSONLoader(String) - Constructor for class org.progettoedids.labyrinth.loaders.LabyrinthJSONLoader
 
LabyrinthLoader - Interface in org.progettoedids.labyrinth.loaders
Interface used by LabyrinthRepository to load Labyrinth.Builder(s) into itself, independently of the specific implementation of the loader.
LabyrinthRepository - Class in org.progettoedids.repositories
This class holds a map composed of Labyrinth names and associated Labyrinth.Builder(s).
LabyrinthRepository() - Constructor for class org.progettoedids.repositories.LabyrinthRepository
 
LABYRINTHS_BASE_RESOURCE_PATH - Static variable in class org.progettoedids.Bootstrap
 
LABYRINTHS_RESOURCE_PATH - Static variable in class org.progettoedids.Bootstrap
 
Lilith - Class in org.progettoedids.entities.npcs.monsters
 
Lilith() - Constructor for class org.progettoedids.entities.npcs.monsters.Lilith
 
Lisa - Class in org.progettoedids.entities.players
 
Lisa() - Constructor for class org.progettoedids.entities.players.Lisa
 
loadLabyrinths() - Method in class org.progettoedids.labyrinth.loaders.LabyrinthJSONLoader
 
loadLabyrinths() - Method in interface org.progettoedids.labyrinth.loaders.LabyrinthLoader
 
loadLabyrinths(LabyrinthLoader) - Method in class org.progettoedids.repositories.LabyrinthRepository
Loads all the Labyrinth.Builder supplied by a specialized loader.
LocalFilesystem - Class in org.progettoedids.util.filehandlers
 
LocalFilesystem() - Constructor for class org.progettoedids.util.filehandlers.LocalFilesystem
 
log(String) - Method in class org.progettoedids.util.CommandLogger
Logs a command to the command list.
logCommand(String) - Method in class org.progettoedids.usercommands.UserCommand
 
LookCommand - Class in org.progettoedids.usercommands
 
LookCommand(CommandLogger) - Constructor for class org.progettoedids.usercommands.LookCommand
 

M

main(String[]) - Static method in class org.progettoedids.Bootstrap
 
Martin - Class in org.progettoedids.entities.npcs.humans
 
Martin() - Constructor for class org.progettoedids.entities.npcs.humans.Martin
 
Marvin - Class in org.progettoedids.entities.npcs.monsters
 
Marvin() - Constructor for class org.progettoedids.entities.npcs.monsters.Marvin
 
medium - Enum constant in enum class org.progettoedids.util.Difficulty
 
Monster - Class in org.progettoedids.entities.npcs.monsters
A Monster is an NPC which is characterized by a certain health and a certain Weapon.
Monster(String, String, int, Weapon) - Constructor for class org.progettoedids.entities.npcs.monsters.Monster
Initializes a Monster.
monsterAttacksPlayer(Player) - Method in class org.progettoedids.entities.npcs.monsters.Monster
 
moveEntityByOne(UUID, Direction) - Method in class org.progettoedids.labyrinth.Labyrinth
Moves the Entity by one Room in a certain Direction.

N

NAME - Static variable in class org.progettoedids.entities.items.BrokenFountain
 
NAME - Static variable in class org.progettoedids.entities.items.food.Apple
 
NAME - Static variable in class org.progettoedids.entities.items.food.Pear
 
NAME - Static variable in class org.progettoedids.entities.items.Key
 
NAME - Static variable in class org.progettoedids.entities.items.weapons.BrokenSword
 
NAME - Static variable in class org.progettoedids.entities.items.weapons.FancySword
 
NAME - Static variable in class org.progettoedids.entities.items.weapons.Rock
 
NAME - Static variable in class org.progettoedids.entities.npcs.humans.Alice
 
NAME - Static variable in class org.progettoedids.entities.npcs.humans.Martin
 
NAME - Static variable in class org.progettoedids.entities.npcs.monsters.Lilith
 
NAME - Static variable in class org.progettoedids.entities.npcs.monsters.Marvin
 
NAME - Static variable in class org.progettoedids.entities.players.Armin
 
NAME - Static variable in class org.progettoedids.entities.players.Lisa
 
newBuilder() - Static method in class org.progettoedids.labyrinth.Labyrinth
Returns an instance of Builder which is needed to build a Labyrinth.
nextPositionInDirection(Direction) - Method in class org.progettoedids.util.Position
Returns the adjacent Position in a certain Direction
NORTH - Enum constant in enum class org.progettoedids.util.Direction
 
NorthChangeRoomCommand - Class in org.progettoedids.usercommands
 
NorthChangeRoomCommand(CommandLogger) - Constructor for class org.progettoedids.usercommands.NorthChangeRoomCommand
 
NPC - Class in org.progettoedids.entities.npcs
An NPC is an Entity which implements some interactive behaviour at the beginning of a turn.
NPC(String, String) - Constructor for class org.progettoedids.entities.npcs.NPC
Initializes an NPC.
NPCRepository - Class in org.progettoedids.repositories
NPCRepository holds a factory method that produces various subtypes of NPC(s)
NPCRepository() - Constructor for class org.progettoedids.repositories.NPCRepository
 

O

OpenInventoryCommand - Class in org.progettoedids.usercommands
 
OpenInventoryCommand(CommandLogger) - Constructor for class org.progettoedids.usercommands.OpenInventoryCommand
 
org.progettoedids - package org.progettoedids
 
org.progettoedids.entities - package org.progettoedids.entities
A package that holds the base Entity class, the subtypes of Entity and interfaces related to the Entity(ies).
org.progettoedids.entities.items - package org.progettoedids.entities.items
A package that holds the base Item class, the subtypes of Item and interfaces related to the Item(s).
org.progettoedids.entities.items.food - package org.progettoedids.entities.items.food
A package for the abstract Food subtype of Item and its concrete final subclasses.
org.progettoedids.entities.items.weapons - package org.progettoedids.entities.items.weapons
A package for the abstract Weapon subtype of Item and its concrete final subclasses.
org.progettoedids.entities.npcs - package org.progettoedids.entities.npcs
A package for the abstract NPC class and its subtypes.
org.progettoedids.entities.npcs.humans - package org.progettoedids.entities.npcs.humans
A package for the abstract Human subtype of NPC and its concrete final subclasses.
org.progettoedids.entities.npcs.monsters - package org.progettoedids.entities.npcs.monsters
A package for the abstract Monster subtype of NPC and its concrete final subclasses.
org.progettoedids.entities.players - package org.progettoedids.entities.players
A package for the abstract Player class and its concrete final subclasses.
org.progettoedids.exceptions - package org.progettoedids.exceptions
A package that acts as a collection point of general-purpose exceptions.
org.progettoedids.labyrinth - package org.progettoedids.labyrinth
This package holds the Labyrinth class and its loaders.
org.progettoedids.labyrinth.loaders - package org.progettoedids.labyrinth.loaders
A package that holds the LabyrinthLoader interface and its implementing classes.
org.progettoedids.repositories - package org.progettoedids.repositories
A package that holds classes with simple factory methods.
org.progettoedids.rooms - package org.progettoedids.rooms
A package that holds the base Room class and its subtypes.
org.progettoedids.usercommands - package org.progettoedids.usercommands
A package that holds the base UserCommand class and its subtypes.
org.progettoedids.util - package org.progettoedids.util
This package holds miscellaneous general-purpose utilities to use by other classes.
org.progettoedids.util.filehandlers - package org.progettoedids.util.filehandlers
A package for the FileDownloader and FileUploader interfaces and implementing classes.
org.progettoedids.util.savestrings - package org.progettoedids.util.savestrings
A package for the SaveStringReader and SaveStringProducer interfaces and implementing classes.

P

Pair<K,V> - Record Class in org.progettoedids.util
 
Pair(K, V) - Constructor for record class org.progettoedids.util.Pair
Creates an instance of a Pair record class.
Pear - Class in org.progettoedids.entities.items.food
 
Pear() - Constructor for class org.progettoedids.entities.items.food.Pear
 
Player - Class in org.progettoedids.entities.players
A Player is an Entity which is characterized by a certain health and an Inventory.
Player(String, String, int, Inventory) - Constructor for class org.progettoedids.entities.players.Player
Initializes Player.
playerAttacksMonster(CommandLogger, Player, Weapon) - Method in class org.progettoedids.entities.npcs.monsters.Monster
 
playerChooseWeaponFromInventory(CommandLogger, Player) - Method in class org.progettoedids.entities.npcs.monsters.Monster
 
playerGoBack() - Method in class org.progettoedids.labyrinth.Labyrinth
Moves the Player back to its previous Position.
PlayerRepository - Class in org.progettoedids.repositories
PlayerRepository holds a factory method that produces various subtypes of Player(s)
PlayerRepository() - Constructor for class org.progettoedids.repositories.PlayerRepository
 
Position - Class in org.progettoedids.util
This is a generic class to hold a pair of integers which represent a 2D position with coordinates x and y.
Position(int, int) - Constructor for class org.progettoedids.util.Position
 
printInventory() - Method in class org.progettoedids.util.Inventory
 
printInventory(Class<T>) - Method in class org.progettoedids.util.Inventory
 
printStream() - Static method in class org.progettoedids.util.IOManager
 
produceSaveString(CommandLogger, Labyrinth) - Method in class org.progettoedids.util.savestrings.SaveStringJSON
 
produceSaveString(CommandLogger, Labyrinth) - Method in interface org.progettoedids.util.savestrings.SaveStringProducer
Produces a String containing the required save data in a certain format, as chosen by the implementer.

Q

QuitCommand - Class in org.progettoedids.usercommands
 
QuitCommand(CommandLogger) - Constructor for class org.progettoedids.usercommands.QuitCommand
 

R

removeEntity(UUID) - Method in class org.progettoedids.rooms.Room
Removes the Entity matching the specified UUID.
removeItem(UUID) - Method in class org.progettoedids.util.Inventory
Removes an Item from the Inventory
removeLabyrinth(String) - Method in class org.progettoedids.repositories.LabyrinthRepository
Removes a Labyrinth.Builder with the given name from the Labyrinth.
removeLastLog() - Method in class org.progettoedids.util.CommandLogger
Removes the last recorded command from the command log and returns it.
RESTORED_HEALTH - Static variable in class org.progettoedids.entities.items.food.Apple
 
RESTORED_HEALTH - Static variable in class org.progettoedids.entities.items.food.Pear
 
restoredHealth - Variable in class org.progettoedids.entities.items.food.Food
 
Rock - Class in org.progettoedids.entities.items.weapons
 
Rock() - Constructor for class org.progettoedids.entities.items.weapons.Rock
 
Room - Class in org.progettoedids.rooms
A Room a container of Entity(ies) that is characterized by a character symbol.
Room(char) - Constructor for class org.progettoedids.rooms.Room
 
RoomLookup - Class in org.progettoedids.util
 
RoomLookup() - Constructor for class org.progettoedids.util.RoomLookup
 
RoomRepository - Class in org.progettoedids.repositories
RoomRepository holds a factory method that produces various subtypes of Room(s)
RoomRepository() - Constructor for class org.progettoedids.repositories.RoomRepository
 
RoomWithDoors - Class in org.progettoedids.rooms
A subtype of Room that is locked at creation time until it's unlocked with a Key.
RoomWithDoors() - Constructor for class org.progettoedids.rooms.RoomWithDoors
 

S

S3Protocol - Class in org.progettoedids.util.filehandlers
 
S3Protocol() - Constructor for class org.progettoedids.util.filehandlers.S3Protocol
 
SaveCommand - Class in org.progettoedids.usercommands
 
SaveCommand(CommandLogger) - Constructor for class org.progettoedids.usercommands.SaveCommand
 
SaveStringJSON - Class in org.progettoedids.util.savestrings
 
SaveStringJSON() - Constructor for class org.progettoedids.util.savestrings.SaveStringJSON
 
SaveStringProducer - Interface in org.progettoedids.util.savestrings
An interface for classes that produce a save string from the CommandLogger and the Labyrinth.
SaveStringReader - Interface in org.progettoedids.util.savestrings
An interface for classes that interpret the format of a save string and return the save parameters.
SaveStringRepository - Class in org.progettoedids.repositories
SaveStringRepository holds factory methods that produce objects implementing the SaveStringProducer or SaveStringReader interface.
SaveStringRepository() - Constructor for class org.progettoedids.repositories.SaveStringRepository
 
scanner() - Static method in class org.progettoedids.util.IOManager
 
setDifficulty(Difficulty) - Method in class org.progettoedids.labyrinth.Labyrinth.Builder
Sets the Difficulty enumerator of the Labyrinth If the Difficulty was already set it's overwritten with the new one.
setDimensions(Dimensions) - Method in class org.progettoedids.labyrinth.Labyrinth.Builder
Sets the Dimensions of the Labyrinth If the Dimensions object was already set it's overwritten with the new one.
setEntityPosition(UUID, Position) - Method in class org.progettoedids.labyrinth.Labyrinth
Sets the Position of an Entity.
setHealth(int) - Method in class org.progettoedids.entities.players.Player
Sets the health of the Player.
setInputStream(InputStream) - Static method in class org.progettoedids.util.IOManager
 
setName(String) - Method in class org.progettoedids.entities.Entity
Sets the name of an Entity
setName(String) - Method in class org.progettoedids.labyrinth.Labyrinth.Builder
Sets the name of the Labyrinth.
setPrintStream(PrintStream) - Static method in class org.progettoedids.util.IOManager
 
setRandomGeneratorSeed(long) - Method in class org.progettoedids.labyrinth.Labyrinth.Builder
 
SOUTH - Enum constant in enum class org.progettoedids.util.Direction
 
SouthChangeRoomCommand - Class in org.progettoedids.usercommands
 
SouthChangeRoomCommand(CommandLogger) - Constructor for class org.progettoedids.usercommands.SouthChangeRoomCommand
 
stringToDifficulty(String) - Static method in enum class org.progettoedids.util.Difficulty
 
SYSTEM_NAME - Static variable in class org.progettoedids.entities.items.BrokenFountain
 
SYSTEM_NAME - Static variable in class org.progettoedids.entities.items.food.Apple
 
SYSTEM_NAME - Static variable in class org.progettoedids.entities.items.food.Pear
 
SYSTEM_NAME - Static variable in class org.progettoedids.entities.items.Key
 
SYSTEM_NAME - Static variable in class org.progettoedids.entities.items.weapons.BrokenSword
 
SYSTEM_NAME - Static variable in class org.progettoedids.entities.items.weapons.FancySword
 
SYSTEM_NAME - Static variable in class org.progettoedids.entities.items.weapons.Rock
 
SYSTEM_NAME - Static variable in class org.progettoedids.entities.npcs.humans.Alice
 
SYSTEM_NAME - Static variable in class org.progettoedids.entities.npcs.humans.Martin
 
SYSTEM_NAME - Static variable in class org.progettoedids.entities.npcs.monsters.Lilith
 
SYSTEM_NAME - Static variable in class org.progettoedids.entities.npcs.monsters.Marvin
 
SYSTEM_NAME - Static variable in class org.progettoedids.entities.players.Armin
 
SYSTEM_NAME - Static variable in class org.progettoedids.entities.players.Lisa
 

T

TakeCommand - Class in org.progettoedids.usercommands
 
TakeCommand(CommandLogger) - Constructor for class org.progettoedids.usercommands.TakeCommand
 
TeleportRoom - Class in org.progettoedids.rooms
A subtype of Room that is always unlocked and that teleports the Player that comes into it in another Room.
TeleportRoom() - Constructor for class org.progettoedids.rooms.TeleportRoom
 
toString() - Method in class org.progettoedids.entities.Entity
 
toString() - Method in class org.progettoedids.entities.items.food.Food
 
toString() - Method in class org.progettoedids.entities.items.Item
 
toString() - Method in class org.progettoedids.entities.items.weapons.Weapon
 
toString() - Method in class org.progettoedids.entities.npcs.humans.Human
 
toString() - Method in class org.progettoedids.entities.npcs.monsters.Monster
 
toString() - Method in class org.progettoedids.entities.players.Player
 
toString() - Method in record class org.progettoedids.util.Pair
Returns a string representation of this record class.

U

unlock(Key) - Method in class org.progettoedids.rooms.RoomWithDoors
Unlocks the RoomWithDoors if a Key is provided.
unlock(Labyrinth) - Method in class org.progettoedids.rooms.RoomWithDoors
 
unlock(Labyrinth) - Method in interface org.progettoedids.rooms.UnlockableRoom
 
UnlockableRoom - Interface in org.progettoedids.rooms
 
upload(URI, String) - Method in interface org.progettoedids.util.filehandlers.FileUploader
Uploads a String to file at a location specified by the URI.
upload(URI, String) - Method in class org.progettoedids.util.filehandlers.LocalFilesystem
 
upload(URI, String) - Method in class org.progettoedids.util.filehandlers.S3Protocol
 
USABILITY_LEVEL - Static variable in class org.progettoedids.entities.items.weapons.BrokenSword
 
USABILITY_LEVEL - Static variable in class org.progettoedids.entities.items.weapons.FancySword
 
USABILITY_LEVEL - Static variable in class org.progettoedids.entities.items.weapons.Rock
 
usabilityLevel - Variable in class org.progettoedids.entities.items.weapons.Weapon
 
UseCommand - Class in org.progettoedids.usercommands
 
UseCommand(CommandLogger) - Constructor for class org.progettoedids.usercommands.UseCommand
 
UseInRoomCommand - Class in org.progettoedids.usercommands
 
UseInRoomCommand(CommandLogger) - Constructor for class org.progettoedids.usercommands.UseInRoomCommand
 
UserCommand - Class in org.progettoedids.usercommands
 
UserCommand(CommandLogger) - Constructor for class org.progettoedids.usercommands.UserCommand
 
UserCommandRepository - Class in org.progettoedids.repositories
UserCommandRepository holds a factory method that produces various subtypes of UserCommand(s)
UserCommandRepository() - Constructor for class org.progettoedids.repositories.UserCommandRepository
 

V

value() - Method in record class org.progettoedids.util.Pair
Returns the value of the value record component.
valueOf(String) - Static method in enum class org.progettoedids.util.Difficulty
Returns the enum constant of this class with the specified name.
valueOf(String) - Static method in enum class org.progettoedids.util.Direction
Returns the enum constant of this class with the specified name.
values() - Static method in enum class org.progettoedids.util.Difficulty
Returns an array containing the constants of this enum class, in the order they are declared.
values() - Static method in enum class org.progettoedids.util.Direction
Returns an array containing the constants of this enum class, in the order they are declared.
VictoryException - Exception Class in org.progettoedids.exceptions
This is a checked exception to indicate a winning condition to Game.
VictoryException(String) - Constructor for exception class org.progettoedids.exceptions.VictoryException
 
VictoryRoom - Class in org.progettoedids.rooms
A subtype of Room that is always unlocked and that makes the Player win the game when it gets into it.
VictoryRoom() - Constructor for class org.progettoedids.rooms.VictoryRoom
 

W

weapon - Variable in class org.progettoedids.entities.npcs.monsters.Monster
 
Weapon - Class in org.progettoedids.entities.items.weapons
A Weapon is an instance of an Item additionally characterized by the damage the Weapon can deal and its usability level which represents the maximum amount of times the Weapon can be used.
Weapon(String, String, int, int, int) - Constructor for class org.progettoedids.entities.items.weapons.Weapon
Initializes a Weapon.
weight - Variable in class org.progettoedids.entities.items.Item
 
WEIGHT - Static variable in class org.progettoedids.entities.items.BrokenFountain
 
WEIGHT - Static variable in class org.progettoedids.entities.items.food.Apple
 
WEIGHT - Static variable in class org.progettoedids.entities.items.food.Pear
 
WEIGHT - Static variable in class org.progettoedids.entities.items.Key
 
WEIGHT - Static variable in class org.progettoedids.entities.items.weapons.BrokenSword
 
WEIGHT - Static variable in class org.progettoedids.entities.items.weapons.FancySword
 
WEIGHT - Static variable in class org.progettoedids.entities.items.weapons.Rock
 
WEST - Enum constant in enum class org.progettoedids.util.Direction
 
WestChangeRoomCommand - Class in org.progettoedids.usercommands
 
WestChangeRoomCommand(CommandLogger) - Constructor for class org.progettoedids.usercommands.WestChangeRoomCommand
 

X

x - Variable in class org.progettoedids.util.Position
 

Y

y - Variable in class org.progettoedids.util.Position
 
A B C D E F G H I K L M N O P Q R S T U V W X Y 
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form