66 lines
1.1 KiB
Plaintext
66 lines
1.1 KiB
Plaintext
|
note
|
||
|
description: "[
|
||
|
Describes this particular port
|
||
|
]"
|
||
|
author: "Jimmy J. Johnson"
|
||
|
|
||
|
class
|
||
|
SAMOA
|
||
|
|
||
|
inherit
|
||
|
|
||
|
REPAIR_PORT
|
||
|
undefine
|
||
|
distance_to
|
||
|
redefine
|
||
|
make
|
||
|
end
|
||
|
|
||
|
RED_PORT
|
||
|
redefine
|
||
|
make
|
||
|
end
|
||
|
|
||
|
create
|
||
|
make
|
||
|
|
||
|
feature {NONE} -- Initialization
|
||
|
|
||
|
make (a_game: like game)
|
||
|
-- Set up Current
|
||
|
do
|
||
|
Precursor {REPAIR_PORT} (a_game)
|
||
|
Precursor {RED_PORT} (a_game)
|
||
|
nationality := {NATIONALITY_CONSTANTS}.us
|
||
|
defining_position := [590, 510]
|
||
|
end
|
||
|
|
||
|
feature -- Access
|
||
|
|
||
|
name: STRING_8 = "Samoa"
|
||
|
-- This name of this item.
|
||
|
|
||
|
defining_position: TUPLE [x, y: INTEGER_32]
|
||
|
-- The x- and y-coordinate (in millimeters) of Current's
|
||
|
-- position relative to the top-left corner of the board.
|
||
|
|
||
|
repair_points: INTEGER
|
||
|
-- Number of repair points for the player
|
||
|
do
|
||
|
if is_allied and game.pearl_harbor.is_japanese then
|
||
|
Result := ((game.sequence_of_play.turn - 1) * 3).min (15)
|
||
|
end
|
||
|
end
|
||
|
|
||
|
adjacent_sea_areas: LINEAR [SEA_AREA]
|
||
|
-- A list of all sea areas that touch this location
|
||
|
local
|
||
|
s: LINKED_SET [SEA_AREA]
|
||
|
once
|
||
|
create s.make
|
||
|
s.extend (game.us_mandate)
|
||
|
Result := s.linear_representation
|
||
|
end
|
||
|
|
||
|
end
|