81 lines
1.4 KiB
Plaintext
81 lines
1.4 KiB
Plaintext
note
|
|
description: "[
|
|
Describes this particular port
|
|
]"
|
|
author: "Jimmy J. Johnson"
|
|
|
|
class
|
|
AUSTRALIA
|
|
|
|
inherit
|
|
|
|
REPAIR_PORT
|
|
undefine
|
|
distance_to
|
|
redefine
|
|
make
|
|
end
|
|
|
|
RED_PORT
|
|
redefine
|
|
make,
|
|
distance_to
|
|
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 := [300, 470]
|
|
end
|
|
|
|
feature -- Access
|
|
|
|
name: STRING_8 = "Australia"
|
|
-- 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
|
|
do
|
|
if is_allied then
|
|
Result := 1
|
|
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.coral_sea)
|
|
s.extend (game.indian_ocean)
|
|
Result := s.linear_representation
|
|
end
|
|
|
|
distance_to (other: LOCATION): INTEGER
|
|
-- The distance between Current and `other'
|
|
do
|
|
io.put_string (generating_type.name + ".distance_to: fix me %N")
|
|
-- if game.phase = game.movement_phase then
|
|
-- if other = game.indian_ocean or other = game.coral_sea then
|
|
-- Result := 1
|
|
-- end
|
|
-- else
|
|
-- Result := Precursor {RED_PORT} (other)
|
|
-- end
|
|
end
|
|
|
|
end
|