note
	description: "[
		Represents the corresponding ship in game.
		]"
	author: "Jimmy J. Johnson"

class
	VICTORIOUS

inherit

	BRITISH_SHIP
		redefine
			reinforceable_ports,
			arrival_location,
			arrival_port
		end

create
	make

feature -- Access

	name: STRING_8 = "Victorious"
			-- The name of this unit.

	arrival_turn: INTEGER = 	5
			-- Turn on which this unit enters the game.

	airstrike_factor: INTEGER = 2
			-- The initial number of dice the unit rolls when attacking
			-- during a "day action".

	gunnery_factor: INTEGER = 0
			-- The initial value for the number of dice the unit rolls
			-- when attacking during a "night action".

	defense_factor: INTEGER = 2
			-- The number of damage points a unit can have without sinking.
			-- (This is doubled when the unit is in port.)

	speed_factor: INTEGER = 7
			-- The initial "speed" of the unit.

	attack_bonus: BOOLEAN = False
			-- The initial setting saying if a unit can add one to each die roll.
			-- If the unit is a carrier this applies only to the airstrike factor.

	reinforceable_ports: LINKED_SET [PORT]
			-- A list containing each {PORT} to which Current
			-- can be moved during the reinforcement step.
		do
			create Result.make
			if game.sequence_of_play.is_allied_player then
				if game.hawaiian_islands.is_allied then
					Result.extend (game.pearl_harbor)
				end
			end
		end

	arrival_location: LOCATION
			-- The port or sea area at which this unit may enter the game
		do
			Result := arrival_port
		end

	arrival_port: like home_port
			-- The port to which Current is assigned when it comes into
			-- the game during a reinforcement action.
		do
			if game.pearl_harbor.nationality = game.us then
				Result := game.pearl_harbor
			elseif game.samoa.nationality = game.us then
				Result := game.samoa
			else
				Result := game.default_port
			end
		end

end
