๐Ÿ“ฆ sleepyfran / duets

๐Ÿ“„ Jamaica.NewYork.fs ยท 71 lines
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71module rec Duets.Data.World.Cities.NewYork.Jamaica

open Duets.Data.World.Cities
open Duets.Entities
open Duets.Entities.Calendar

let private vanWyckExpressway (zone: Zone) =
    let street =
        World.Street.create Ids.Street.vanWyckExpressway StreetType.OneWay

    let carDealers =
        [ ("Queens Auto Mall",
           70<quality>,
           zone.Id,
           { Dealer =
               (Character.from
                   "Ray Johnson"
                   Male
                   (Shorthands.Autumn 22<days> 1975<years>))
             PriceRange = CarPriceRange.Budget }) ]
        |> List.map (PlaceCreators.createCarDealer street.Id)

    let casinos =
        [ ("Resorts World Casino", 89<quality>, zone.Id) ]
        |> List.map (PlaceCreators.createCasino street.Id)

    let airports =
        [ ("John F. Kennedy International Airport", 95<quality>, zone.Id) ]
        |> List.map (PlaceCreators.createAirport street.Id)

    let metroStation =
        ("JFK Airport AirTrain", zone.Id) |> PlaceCreators.createMetro street.Id

    let street =
        street
        |> World.Street.addPlaces carDealers
        |> World.Street.addPlaces casinos
        |> World.Street.addPlaces airports
        |> World.Street.addPlace metroStation
        |> World.Street.attachContext
            """
        The Van Wyck Expressway is a major highway corridor leading to JFK
        International Airport, dominated by the roar of traffic and jet engines overhead.
        Aircraft follow flight paths directly above, their landing gear visible
        as they descend toward the runways. The expressway cuts through Queens with
        elevated sections offering views of surrounding neighborhoods and distant Manhattan skyline.
        Concrete barriers, overhead signs directing to terminals, and the AirTrain's elevated
        tracks characterize the infrastructure-heavy landscape. Airport hotels, gas stations,
        and car rental facilities line the service roads. The area pulses with the
        constant movement of taxis, buses, and travelers with luggage, creating
        a transitional zone between city and sky.
"""

    street, metroStation

let zone =
    let jamaicaZone = World.Zone.create Ids.Zone.jamaica

    let vanWyckExpressway, jfkMetro = vanWyckExpressway jamaicaZone

    let jfkMetroStation =
        { Lines = [ Blue ]
          LeavesToStreet = vanWyckExpressway.Id
          PlaceId = jfkMetro.Id }

    jamaicaZone
    |> World.Zone.addStreet (
        World.Node.create vanWyckExpressway.Id vanWyckExpressway
    )
    |> World.Zone.addMetroStation jfkMetroStation