master
rascul 2 years ago
commit cfc743c1db

1
.gitignore vendored

@ -0,0 +1 @@
/target

87
Cargo.lock generated

@ -0,0 +1,87 @@
# This file is automatically @generated by Cargo.
# It is not intended for manual editing.
version = 3
[[package]]
name = "itoa"
version = "1.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1aab8fc367588b89dcee83ab0fd66b72b50b72fa1904d7095045ace2b0c81c35"
[[package]]
name = "mapconv"
version = "0.1.0"
dependencies = [
"serde",
"serde_derive",
"serde_json",
]
[[package]]
name = "proc-macro2"
version = "1.0.36"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c7342d5883fbccae1cc37a2353b09c87c9b0f3afd73f5fb9bba687a1f733b029"
dependencies = [
"unicode-xid",
]
[[package]]
name = "quote"
version = "1.0.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "864d3e96a899863136fc6e99f3d7cae289dafe43bf2c5ac19b70df7210c0a145"
dependencies = [
"proc-macro2",
]
[[package]]
name = "ryu"
version = "1.0.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "73b4b750c782965c211b42f022f59af1fbceabdd026623714f104152f1ec149f"
[[package]]
name = "serde"
version = "1.0.136"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ce31e24b01e1e524df96f1c2fdd054405f8d7376249a5110886fb4b658484789"
[[package]]
name = "serde_derive"
version = "1.0.136"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "08597e7152fcd306f41838ed3e37be9eaeed2b61c42e2117266a554fab4662f9"
dependencies = [
"proc-macro2",
"quote",
"syn",
]
[[package]]
name = "serde_json"
version = "1.0.79"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8e8d9fa5c3b304765ce1fd9c4c8a3de2c8db365a5b91be52f186efc675681d95"
dependencies = [
"itoa",
"ryu",
"serde",
]
[[package]]
name = "syn"
version = "1.0.86"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8a65b3f4ffa0092e9887669db0eae07941f023991ab58ea44da8fe8e2d511c6b"
dependencies = [
"proc-macro2",
"quote",
"unicode-xid",
]
[[package]]
name = "unicode-xid"
version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3"

@ -0,0 +1,11 @@
[package]
name = "mapconv"
version = "0.1.0"
edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
serde = "1.0"
serde_derive = "1.0"
serde_json = "1.0"

@ -0,0 +1,11 @@
mapconv
to convert mudlet json map to tintin++ map
read the json from stdin and write tintin++ map to stdout
not a complete map yet
lots of work to do

File diff suppressed because it is too large Load Diff

@ -0,0 +1,377 @@
R {95} {0} {} {Road to the Inner City} { } {This paved road extends north from Caemlyn's main boulevard. The road extends through the wide marble arch of the Origan Gate and into the Inner City. You stand on the outskirts of the Inner City, and from here you can see the difference between the amazing feats of Ogier craftsmanship and the sprawling mess and chaos of the Outer City.} {Outer Caemlyn} {} {} {} {1} {}
E {92} {n} {n} {1} {0} {} {1} {} {0}
E {96} {s} {s} {4} {0} {} {1} {} {0}
R {96} {0} {} {Middle of a Wide Boulevard} { } {This is the middle of a wide boulevard that runs east and west across Caemlyn. The boulevard is bisected by a strip of grass and a row of trees which run its length. The sheer noise of crowded Caemlyn is overwhelming, almost a dull roar. To the north is a paved road which leads into the Inner City. To the south is an open square and a cluster of shops.} {Outer Caemlyn} {} {} {} {1} {}
E {95} {n} {n} {1} {0} {} {1} {} {0}
E {101} {e} {e} {2} {0} {} {1} {} {0}
E {141} {w} {w} {8} {0} {} {1} {} {0}
E {97} {s} {s} {4} {0} {} {1} {} {0}
R {97} {0} {} {Caemlyn Central Square} { } {You are in a large stone square, right in the middle of Caemlyn's outer city. You see a wide boulevard to the north, and the path to the inner city. There are a number of shops around you. The density of the population is really quite incredible. It's almost impossible to relax as you are being constantly bumped and jostled. From here you can really get a good view of the outer city, and this just makes you appreciate the older inner city all the more. A large banner hangs nearby, depicting a map of Caemlyn's outer city.} {Outer Caemlyn} {} {} {} {1} {}
E {96} {n} {n} {1} {0} {} {1} {} {0}
E {98} {e} {e} {2} {0} {} {1} {} {0}
E {100} {w} {w} {8} {0} {} {1} {} {0}
E {99} {s} {s} {4} {0} {} {1} {} {0}
E {4793} {d} {d} {32} {0} {} {1} {} {0}
R {98} {0} {} {First National Bank of Andor} { } {A large and beautiful marble lobby form the heart of the main building of the Andor Bank. Stone white pillars rise all too frequently from the ground, ostensibly to support the ceiling, but more likely just for sheer effect. You can see a vault in the background. Several booths are here where you can make whatever financial arrangements you need. Don't even think about credit. A small sign lies behind a teller's booth.} {Outer Caemlyn} {} {} {} {1} {}
E {97} {w} {w} {8} {0} {} {1} {} {0}
R {99} {0} {} {A Traveller's Shop} { } {This small shop offers a wide array of items that would be useful to the frequent traveler. Apparently not the most lucrative of businesses, but they do sell some fairly important stuff. There is an odd array of junk on display and the owner apparently has no illusions as to the value of his product.} {Outer Caemlyn} {} {} {} {1} {}
E {97} {n} {n} {1} {0} {} {1} {} {0}
R {100} {0} {} {Asaf's Steak House} { } {You have entered a restaurant frequented by the Caemlyn gourmands. Elegant tables offer seating both indoors and outside under little umbrellas. The food is rumored to be excellent and well worth the fairly exorbitant prices. The fine aromas wafting from the kitchen certainly lend credence to rumor. A small sign hangs from a wall near the kitchen.} {Outer Caemlyn} {} {} {} {1} {}
E {97} {e} {e} {2} {0} {} {1} {} {0}
R {101} {0} {} {A Wide Boulevard} { } {You are on a wide boulevard that stretches all the way across Caemlyn. The extremely wide road is cut in the middle by a strip of grass with trees evenly placed along the street. You see people scurrying about in a mad rush. A stairway leads up here onto a skywalk that runs over the entire Inner City.} {Outer Caemlyn} {} {} {} {1} {}
E {102} {e} {e} {2} {0} {} {1} {} {0}
E {96} {w} {w} {8} {0} {} {1} {} {0}
E {170} {u} {u} {16} {0} {} {1} {} {0}
R {102} {0} {} {A Wide Boulevard} { } {This wide boulevard stretches east and west across Caemlyn. Not far off to the east you can see the East Gate of Caemlyn. The boulevard is bisected by a row of carefully groomed trees. A small store of cracked stone lies to the south. A sign hangs over the door.} {Outer Caemlyn} {} {} {} {1} {}
E {104} {e} {e} {2} {0} {} {1} {} {0}
E {101} {w} {w} {8} {0} {} {1} {} {0}
E {103} {s} {s} {4} {0} {} {1} {} {0}
R {103} {0} {} {The Tarnished Shield Armory} { } {You hesitantly push your way into this small armory, uncertain whether it is in fact still in business. Armor and basic accoutrements are strewn somewhat haphazardly about. Few, if any, of the items on sale here look like they are in good condition. You think you have disturbed the armorer's slumber, and he looks surprised to see any potential customers in his store. A small sign hangs next to the doorway.} {Outer Caemlyn} {} {} {} {1} {}
E {102} {n} {n} {1} {0} {} {1} {} {0}
R {104} {0} {} {Eastern End of a Wide Boulevard} { } {You are on the eastern end of a wide boulevard that stretches east and west across the entire city. A strip of grass cuts the extremely wide street in two, and trees and flowers are placed throughout the boulevard. A square, unpleasant looking building lies south. To the east is one on Caemlyn's four main gates.} {Outer Caemlyn} {} {} {} {1} {}
E {105} {e} {e} {2} {0} {} {1} {} {0}
E {102} {w} {w} {8} {0} {} {1} {} {0}
R {105} {0} {} {Inside the Eastern Gate of Caemlyn} { } {You are just inside the East Gate of Caemlyn. The city is larger than you could have dreamed possible. Towering spires rise everywhere, and you are completely overwhelmed by the sheer size and sound of crowded Caemlyn. Deep in the city's heart you can see the Inner City and royal palace. An outer road leads north and south along the city walls, and a wide boulevard leads west into the city's center.} {Outer Caemlyn} {} {} {} {1} {}
E {106} {n} {n} {1} {0} {} {1} {} {0}
E {226} {e} {e} {2} {0} {} {1} {} {0}
E {104} {w} {w} {8} {0} {} {1} {} {0}
E {168} {s} {s} {4} {0} {} {1} {} {0}
R {106} {0} {} {An Outer Road} { } {You are standing on an outer road which runs around the entire city. Just to the south is the East Gate of Caemlyn, one of four entrances to the city. The city wall rises high to the east.} {Outer Caemlyn} {} {} {} {1} {}
E {107} {n} {n} {1} {0} {} {1} {} {0}
E {105} {s} {s} {4} {0} {} {1} {} {0}
R {107} {0} {} {An Outer Road} { } {You are on the eastern side of Caemlyn's outer road. The city wall rises high above you. You can follow the road either north or south, or enter a small park through a branch arch to the west.} {Outer Caemlyn} {} {} {} {1} {}
E {112} {n} {n} {1} {0} {} {1} {} {0}
E {108} {w} {w} {8} {0} {} {1} {} {0}
E {106} {s} {s} {4} {0} {} {1} {} {0}
R {108} {0} {} {Caemlyn Park} { } {You have entered a small grassy park just off the outer road. Trees and flowers are abundant, and it's just a damn relaxing place to be. To the south the park continues, and you can see a small stone well. To the north you see a small cottage, presumably that of the park's caretaker.} {Outer Caemlyn} {} {} {} {1} {}
E {109} {n} {n} {1} {0} {} {1} {} {0}
E {107} {e} {e} {2} {0} {} {1} {} {0}
E {110} {s} {s} {4} {0} {} {1} {} {0}
R {109} {0} {} {The Caretaker's Cottage} { } {This humble little cottage is the home of the park's caretaker, one Vatrin Al'Jarvis. He lives a life of little creature comfort, and there isn't much more than a bed here. A few personal items of no interest lie scattered about. A sign hangs on the wall.} {Outer Caemlyn} {} {} {} {1} {}
E {108} {s} {s} {4} {0} {} {1} {} {0}
R {110} {0} {} {A Well in Caemlyn Park} { } {The park ends here, and the surrounding wall allows you only to go back to the north. There are several large trees here, providing shade. All in all, it's a rather ideal spot to take a breather from the hustle and bustle of crowded Caemlyn. You're surprised there aren't more people around.} {Outer Caemlyn} {} {} {} {1} {}
E {108} {n} {n} {1} {0} {} {1} {} {0}
E {111} {d} {d} {32} {0} {} {1} {} {0}
R {111} {0} {} {Under the Well} { } {This hidden area is damp and soggy from the proximity of the well, which is held off only by a shallow earthen ceiling.} {Outer Caemlyn} {} {} {} {1} {}
E {110} {u} {u} {16} {0} {} {1} {} {0}
R {112} {0} {} {An Outer Road} { } {The outer road stretches off to the south here, and curves out of sight to the north. Also to the north, you can see a tall stone tower.} {Outer Caemlyn} {} {} {} {1} {}
E {113} {n} {n} {1} {0} {} {1} {} {0}
E {107} {s} {s} {4} {0} {} {1} {} {0}
R {113} {0} {} {Bend in the Outer Road} { } {The road winds west to south here, curving around the city. A large watch-tower rises to the north allowing a view of the surrounding lands.} {Outer Caemlyn} {} {} {} {1} {}
E {114} {n} {n} {1} {0} {} {1} {} {0}
E {116} {w} {w} {8} {0} {} {1} {} {0}
E {112} {s} {s} {4} {0} {} {1} {} {0}
R {114} {0} {} {North-East Watchtower} { } {This stone tower is apparently used by the guards to watch the neighboring countryside. The top of the tower must afford an incredible view, and no opposing force could ever sneak up on Caemlyn unaware. A stair circles the tower base and provides entry to the tower's small roof. A curious stone, smoothed with age appears to have been embedded into the tower floor.} {Outer Caemlyn} {} {} {} {1} {}
E {113} {s} {s} {4} {0} {} {1} {} {0}
E {115} {u} {u} {16} {0} {} {1} {} {0}
R {115} {0} {} {On the Tower} { } {You climb the stairs to the top of the tower. You peer over the tower's edge and realize it is quite a drop to the city below. You can see for several leagues from up here, and the surrounding Andor countryside is quite pleasant. Turning, you can see the entirety of Caemlyn. The inner city, quite large in itself, is set right in the heart of the outer city. Caemlyn is a huge expanse of curved buildings and you can see the sprawl of people swarming over the entire city. You can watch out over the north and east approaches from this high vantage point through crenellated openings in the wall.} {Outer Caemlyn} {} {} {} {1} {}
E {114} {d} {d} {32} {0} {} {1} {} {0}
R {116} {0} {} {The Northern Road} { } {You are on the northern side of the road which circles the outer city. The road stretches off to the west, and curves out around a bend to the east. You can see a large tower set in the corner of Caemlyn's outer wall. An entrance is just to the east.} {Outer Caemlyn} {} {} {} {1} {}
E {113} {e} {e} {2} {0} {} {1} {} {0}
E {117} {w} {w} {8} {0} {} {1} {} {0}
R {117} {0} {} {The Northern Road} { } {This road seems to circle the entire outer city. You can see the North Gate of Caemlyn off to the west, and to the east a tower rises above the walls.} {Outer Caemlyn} {} {} {} {1} {}
E {116} {e} {e} {2} {0} {} {1} {} {0}
E {118} {w} {w} {8} {0} {} {1} {} {0}
R {118} {0} {} {The Northern Road} { } {You are on the northern side of the road which circles the outer city. The North Gate lies off the your west and the entrance to a skywalk running over the inner city begins here.} {Outer Caemlyn} {} {} {} {1} {}
E {117} {e} {e} {2} {0} {} {1} {} {0}
E {119} {w} {w} {8} {0} {} {1} {} {0}
E {172} {u} {u} {16} {0} {} {1} {} {0}
R {119} {0} {} {Inside the Northern Gate of Caemlyn} { } {You are just inside the Northern Gate of Caemlyn. You stop for a moment to appreciate the vast and beautiful sprawl of Caemlyn. The city is swarming with people, there can't possibly be room here for all of them. Caemlyn is built on a series of hills, and you can see the spires of the inner city and the palace rising above the heights of the outer city. A northern road follows the perimeter of the city both east and west here.} {Outer Caemlyn} {} {} {} {1} {}
E {237} {n} {n} {1} {0} {} {1} {} {0}
E {118} {e} {e} {2} {0} {} {1} {} {0}
E {120} {w} {w} {8} {0} {} {1} {} {0}
R {120} {0} {} {The Northern Road} { } {The city walls rise to the north, bordering this road. The old street continues east and west, and you can see a number of houses to the south. Caemlyn's North Gate is just to the east.} {Outer Caemlyn} {} {} {} {1} {}
E {119} {e} {e} {2} {0} {} {1} {} {0}
E {121} {w} {w} {8} {0} {} {1} {} {0}
R {121} {0} {} {The Northern Road} { } {You are just within the main city walls along the northern section of Caemlyn's outer road. The street stretches off to the east and west, and a large stout- looking building lies to the south. A large banner hangs over the oak door.} {Outer Caemlyn} {} {} {} {1} {}
E {120} {e} {e} {2} {0} {} {1} {} {0}
E {123} {w} {w} {8} {0} {} {1} {} {0}
E {122} {s} {s} {4} {0} {} {1} {} {0}
R {122} {0} {} {Caemlyn Cityguard Station} { } {This large square building houses Caemlyn's cityguards. The main room consists of large tables and desks, with papers and notes cluttering the room. The Caemlyn guards appear to be extremely well organized. A solid oak door leads north onto a broad city street.} {Outer Caemlyn} {} {} {} {1} {}
E {121} {n} {n} {1} {0} {} {1} {} {0}
R {123} {0} {} {The Northern Road} { } {The outer road runs along the wall to the east, and to the west curves south along the western wall of the city. A large stone tower rises at the point of the wall.} {Outer Caemlyn} {} {} {} {1} {}
E {121} {e} {e} {2} {0} {} {1} {} {0}
E {124} {w} {w} {8} {0} {} {1} {} {0}
R {124} {0} {} {Bend in the Outer Road} { } {This road circles the entire city, bordered on the outside by the protective walls. The road continues off to the south and east, and a tower rises at the corner of the wall to the north.} {Outer Caemlyn} {} {} {} {1} {}
E {125} {n} {n} {1} {0} {} {1} {} {0}
E {123} {e} {e} {2} {0} {} {1} {} {0}
E {127} {s} {s} {4} {0} {} {1} {} {0}
R {125} {0} {} {North-West Watchtower} { } {This is one of the four largest towers in Caemlyn. Placed on the corner of the outer wall, the watchtower allows the guards to see for miles in any direction. A spiraling stair leads up along the inside of the tower.} {Outer Caemlyn} {} {} {} {1} {}
E {124} {s} {s} {4} {0} {} {1} {} {0}
E {126} {u} {u} {16} {0} {} {1} {} {0}
R {126} {0} {} {On the Tower} { } {You climb the stairs to the top of the tower. Standing here on the small tower roof you are privileged to an astounding view of the surrounding lands. Looking in to the city allows you to see the breadth and scope of crowded Caemlyn. High in the center of the city you can make out the inner city and the spiraling towers of the royal palace of Andor. You can watch out over the north and west approaches to the city.} {Outer Caemlyn} {} {} {} {1} {}
E {125} {d} {d} {32} {0} {} {1} {} {0}
R {127} {0} {} {An Outer Road} { } {This road follows the perimeter of the outer city, just inside the great walls of Caemlyn. The road continues both north and south, and to the east you can see a long stretch of warehouses.} {Outer Caemlyn} {} {} {} {1} {}
E {124} {n} {n} {1} {0} {} {1} {} {0}
E {128} {s} {s} {4} {0} {} {1} {} {0}
R {128} {0} {} {An Outer Road} { } {The road passes along the western wall of Caemlyn here, passing along the side of a large gray stone building to the east. It looks as though the building could be entered to either the north or south.} {Outer Caemlyn} {} {} {} {1} {}
E {127} {n} {n} {1} {0} {} {1} {} {0}
E {129} {s} {s} {4} {0} {} {1} {} {0}
R {129} {0} {} {An Outer Road} { } {The outer road of the city has just started its circumference of the western half of Caemlyn here. A large gray stone building rises to the east, proclaimed to be a warehouse by a nearby sign. The road continues to the north, and to the south it passes by one of the main gates of the city.} {Outer Caemlyn} {} {} {} {1} {}
E {128} {n} {n} {1} {0} {} {1} {} {0}
E {130} {e} {e} {2} {0} {} {1} {} {0}
E {131} {s} {s} {4} {0} {} {1} {} {0}
R {130} {0} {} {A Large Smithy} { } {A warehouse space has been hastily but well converted into a smithy, with several forges and barrels set up as work stations. There is the large forge, for heavy metal working, and smaller forges for the finer and smaller work. Two anvils are set towards the center of the smithy, with containers of water and oil nearby for quenching the hot metal as it is worked. Everything looks neatly in its place, obviously there is great pride of workmanship.} {Outer Caemlyn} {} {} {} {1} {}
E {129} {w} {w} {8} {0} {} {1} {} {0}
R {131} {0} {} {Inside the Western Gate of Caemlyn} { } {You are just inside the West Gate of Caemlyn. You stop and stare at the sheer magnitude of the city. Caemlyn could swallow several other cities whole without much of a ripple. People are streaming through the gates and the city looks crowded beyond belief. You can see high in the center of Caemlyn the Inner City and the royal Palace. An outer road leads north and south along the city walls, and a wide boulevard leads east into the city's heart.} {Outer Caemlyn} {} {} {} {1} {}
E {129} {n} {n} {1} {0} {} {1} {} {0}
E {132} {e} {e} {2} {0} {} {1} {} {0}
E {178} {w} {w} {8} {0} {} {1} {} {0}
E {142} {s} {s} {4} {0} {} {1} {} {0}
R {132} {0} {} {Western End of a Wide Boulevard} { } {You are on the western end of a wide boulevard that stretches across the city. The street is cut in two by a wide strip of grass with a row of trees that runs the length of the boulevard. Caemlyn's West Gate is just a few steps away, and you can see a small pet store to the south.} {Outer Caemlyn} {} {} {} {1} {}
E {134} {e} {e} {2} {0} {} {1} {} {0}
E {131} {w} {w} {8} {0} {} {1} {} {0}
E {133} {s} {s} {4} {0} {} {1} {} {0}
R {133} {0} {} {Pet Store} { } {This small store is overcrowded with animals, both small and large. The odor of the place is phenomenal, and you wonder how anyone could bear to work here. A small doorway leads north onto a wide city street.} {Outer Caemlyn} {} {} {} {1} {}
E {132} {n} {n} {1} {0} {} {1} {} {0}
R {134} {0} {} {A Wide Boulevard} { } {You are on a wide boulevard that stretches all the way across Caemlyn. The extremely wide road is cut in the middle by a strip of grass with trees placed evenly all along the boulevard. Off to the west you can make out one of Caemlyn's four gates. To the south you see a small brick inn. A sign is posted above the door.} {Outer Caemlyn} {} {} {} {1} {}
E {135} {n} {n} {1} {0} {} {1} {} {0}
E {141} {e} {e} {2} {0} {} {1} {} {0}
E {132} {w} {w} {8} {0} {} {1} {} {0}
E {136} {s} {s} {4} {0} {} {1} {} {0}
R {135} {0} {} {The Master Blacksmith of Caemlyn} { } {This smithy is a very simple arrangement with only a forge, anvil and a work bench, somewhat cluttered with various pieces of iron and steel strewn over it, all ready to be reshaped into the finest weapons. The various precious metals in wooden crates round the walls indicate this smithy is a place for quality weapons only. The blackened forge in the centre of the smithy has a fire in a hearth fueled by scorching charcoal, which is raised off the ground in a shallow clay bowl at waist height.} {Outer Caemlyn} {} {} {} {1} {}
E {134} {s} {s} {4} {0} {} {1} {} {0}
R {136} {0} {} {The Queen's Blessing} { } {You step into this respectable looking inn. The common room is busy, although not overcrowded. The bar patrons look well entertained by the combination of pleasant music and strong ale. There seems to be some room by the bar and you are tempted to sit for a few hours and enjoy some relaxing company. The inn is much larger than it appeared from the outside. You can see a door to the kitchen as well as a stairway to the guest rooms, and there is a room to the east which has various bargames.} {Outer Caemlyn} {} {} {} {1} {}
E {134} {n} {n} {1} {0} {} {1} {} {0}
E {137} {e} {e} {2} {0} {} {1} {} {0}
E {138} {s} {s} {4} {0} {} {1} {} {0}
E {139} {u} {u} {16} {0} {} {1} {} {0}
R {137} {0} {} {The Queen's Blessing} { } {This backroom of the Queen's Blessing contains a variety of little games to keep the more drunken patrons amused. There is little furniture here, the walls are just bare brick and the floor is covered with a light coating of sawdust which is swept away to keep the place somewhat clean and tidy. There is a range of some sort at the far side of the room, with marks near the lines denoting the distance to the mark on the floor.} {Outer Caemlyn} {} {} {} {1} {}
E {136} {w} {w} {8} {0} {} {1} {} {0}
R {138} {0} {} {The Kitchen} { } {A basic kitchen. A few stoves are in constant use, and cooking utensils lie strewn about. You can hear the sounds of merriment from the common room, and the cooking staff is generally running madly about to keep up with the incoming orders. A sign hangs next to the oven.} {Outer Caemlyn} {} {} {} {1} {}
E {136} {n} {n} {1} {0} {} {1} {} {0}
R {139} {0} {} {Reception of the Queen's Blessing} { } {The upstairs of the Queen's Blessing is as charming as the common room. A thin rug leads through the length of the hallway, and a small window in the wall lets you look down on the bustling streets of Caemlyn. You appear to be fortunate in finding an empty room to rent, no easy feat in this crowded city! A wooden board is affixed to the wall, covered with notices of current information for newcomers to the city. A ledger lies on a small stand.} {Outer Caemlyn} {} {} {} {1} {}
E {140} {s} {s} {4} {0} {} {1} {} {0}
E {136} {d} {d} {32} {0} {} {1} {} {0}
R {140} {0} {} {The Library} { } {It's not every inn which offers you the use of a library, particularly one as well stocked as this one. There are maps, novels, and bizarre texts of all sorts. A comfy sofa and a few reading chairs are the only furniture of the room other than the rows upon rows of books.} {Outer Caemlyn} {} {} {} {1} {}
E {139} {n} {n} {1} {0} {} {1} {} {0}
R {141} {0} {} {A Wide Boulevard} { } {This wide boulevard bisects Caemlyn and extends to both the east and west. The road is set with a median of grass and trees. This is one of the busiest areas in Caemlyn, and the street is usually crawling with people. A small winding road threads some buildings, and leads off to the south.} {Outer Caemlyn} {} {} {} {1} {}
E {20000} {n} {n} {1} {0} {} {1} {} {0}
E {96} {e} {e} {2} {0} {} {1} {} {0}
E {134} {w} {w} {8} {0} {} {1} {} {0}
E {155} {s} {s} {4} {0} {} {1} {} {0}
R {142} {0} {} {An Outer Road} { } {You are on a wide perimeter road which rings the Outer City. The road runs straight north and south here, and you can see some houses to the east. The massive walls of the city rise alongside the road to the west, and you can see the West Gate of the city to the north.} {Outer Caemlyn} {} {} {} {1} {}
E {131} {n} {n} {1} {0} {} {1} {} {0}
E {143} {s} {s} {4} {0} {} {1} {} {0}
R {143} {0} {} {An Outer Road} { } {The outer road runs north and south here, allowing the guard to easily move between points in the wall if needs be. The West Gate lies off to the north, and an immense tower stretches to the sky to the south.} {Outer Caemlyn} {} {} {} {1} {}
E {142} {n} {n} {1} {0} {} {1} {} {0}
E {144} {s} {s} {4} {0} {} {1} {} {0}
R {144} {0} {} {An Outer Road} { } {You are on a perimeter road which circles the entire Outer City of Caemlyn. The road runs off towards the eastern gate to the north and towards a watch-tower to the south at a junction.} {Outer Caemlyn} {} {} {} {1} {}
E {143} {n} {n} {1} {0} {} {1} {} {0}
E {145} {s} {s} {4} {0} {} {1} {} {0}
R {145} {0} {} {Bend in the Outer Road} { } {This road circles the entire city. To one side you see the outer parts of the city, and to the other you see the protective walls. The road continues both north and east. A large tower rises to your south.} {Outer Caemlyn} {} {} {} {1} {}
E {144} {n} {n} {1} {0} {} {1} {} {0}
E {148} {e} {e} {2} {0} {} {1} {} {0}
E {146} {s} {s} {4} {0} {} {1} {} {0}
R {146} {0} {} {South-West Watchtower} { } {This is an enormous tower set in the corner of Caemlyn's Outer City. A curving stairwell leads up along the tower's base, onto a small roof. This tower would probably afford the city's guards a view of several miles in all directions.} {Outer Caemlyn} {} {} {} {1} {}
E {145} {n} {n} {1} {0} {} {1} {} {0}
E {147} {u} {u} {16} {0} {} {1} {} {0}
R {147} {0} {} {On the Tower} { } {You climb the stairs to the top of the tower. You are on a small stone roof and the wind is strong and loud. You can see a great deal of the Andor countryside, as well as getting a superb view of the interior of Caemlyn. You can watch out over the west and south approaches to the city. Crenellated openings along the walls afford the views, and one of them is large enough to squeeze through.} {Outer Caemlyn} {} {} {} {1} {}
E {146} {d} {d} {32} {0} {} {1} {} {0}
R {148} {0} {} {The Southern Road} { } {You are on the southern side of the outer road which rings the Outer City. The perimeter wall lies to the south, rising far above your head and to the east lies the Southern Gate of Caemlyn. A dimly lit tavern lies to the north, and to the west a large tower rises above the city.} {Outer Caemlyn} {} {} {} {1} {}
E {149} {n} {n} {1} {0} {} {1} {} {0}
E {151} {e} {e} {2} {0} {} {1} {} {0}
E {145} {w} {w} {8} {0} {} {1} {} {0}
R {149} {0} {} {The Black Fox Tavern} { } {You ease your way into this dark and cool tavern. There were several conversations going when you entered, but every single person in the room has now turned and looks appraisingly at you. You don't feel at all welcome. The barkeep seems in no particular hurry to take your order, and it's certainly not because he hasn't seen you. A small sign hangs by the doorway.} {Outer Caemlyn} {} {} {} {1} {}
E {148} {s} {s} {4} {0} {} {1} {} {0}
E {150} {d} {d} {32} {0} {} {1} {} {0}
R {150} {0} {} {Basement of the Tavern} { } {This small chamber under the tavern appears to be the center of some smuggling operation. There are boxes here which you are sure belong in the main warehouse. There are a few maps pasted against a bulletin board, detailing some future crime spree. A sign hangs on the wall.} {Outer Caemlyn} {} {} {} {1} {}
E {149} {u} {u} {16} {0} {} {1} {} {0}
R {151} {0} {} {The Southern Road} { } {You are on the southern stretch of the outer road which circles the entire city. The city walls tower over you to the south, and you can see a small weapon store to the north.} {Outer Caemlyn} {} {} {} {1} {}
E {152} {n} {n} {1} {0} {} {1} {} {0}
E {153} {e} {e} {2} {0} {} {1} {} {0}
E {148} {w} {w} {8} {0} {} {1} {} {0}
R {152} {0} {} {The Rusty Blade Weapon Store} { } {This appears to be another second hand shop. Most of the more successful merchants run their businesses from the Inner City. However, if you're looking for some cheap buys you probably came to the right place. Eyeing the quality of the weapons on display though makes you wonder if you've made a mistake coming in here. A small sign hangs from the wall.} {Outer Caemlyn} {} {} {} {1} {}
E {151} {s} {s} {4} {0} {} {1} {} {0}
R {153} {0} {} {The Southern Road} { } {You are on the southern side of the outer road which circles the Outer City. You are just inside the perimeter wall of the city, and can see a gate just to the east. A small side street winds through the Outer City to the north.} {Outer Caemlyn} {} {} {} {1} {}
E {154} {n} {n} {1} {0} {} {1} {} {0}
E {156} {e} {e} {2} {0} {} {1} {} {0}
E {151} {w} {w} {8} {0} {} {1} {} {0}
R {154} {0} {} {Path Through the Outer City} { } {This short and extremely narrow side street squeezes between several buildings as it twists its way through the southern region of the Outer City. You can see the outer road to the south.} {Outer Caemlyn} {} {} {} {1} {}
E {155} {n} {n} {1} {0} {} {1} {} {0}
E {153} {s} {s} {4} {0} {} {1} {} {0}
R {155} {0} {} {Winding Path Through the City} { } {This short and extremely narrow side street squeezes between several buildings as it twists its way through the southern region of the Outer City.} {Outer Caemlyn} {} {} {} {1} {}
E {141} {n} {n} {1} {0} {} {1} {} {0}
E {154} {s} {s} {4} {0} {} {1} {} {0}
R {156} {0} {} {Inside the Southern Gate of Caemlyn} { } {You are just inside the Southern Gate of Caemlyn. The city is a vast chaotic sprawl of people and buildings. Caemlyn could probably swallow a smaller city entirely, and not look at all larger. You stare for a moment at the impossible number of buildings and people filling crowded Caemlyn. At the city's center you can make out the inner city and the royal palace. A southern road follows the perimeter of the city both east and west here.} {Outer Caemlyn} {} {} {} {1} {}
E {157} {e} {e} {2} {0} {} {1} {} {0}
E {153} {w} {w} {8} {0} {} {1} {} {0}
E {206} {s} {s} {4} {0} {} {1} {} {0}
R {157} {0} {} {The Southern Road} { } {You are on the southern side of the outer road which circles the Outer City. The perimeter wall is to the south, and the South Gate of Caemlyn is to the west. You see a large refuse yard to the north.} {Outer Caemlyn} {} {} {} {1} {}
E {158} {n} {n} {1} {0} {} {1} {} {0}
E {159} {e} {e} {2} {0} {} {1} {} {0}
E {156} {w} {w} {8} {0} {} {1} {} {0}
R {158} {0} {} {The Junk Yard} { } {A large and messy junk yard apparently serves most of the outer city. You see discarded furniture, as well as sundry items of little use. Perhaps this would be a good spot to get rid of any of your unneeded items?} {Outer Caemlyn} {} {} {} {1} {}
E {157} {s} {s} {4} {0} {} {1} {} {0}
R {159} {0} {} {The Southern Road} { } {You are on the southern side of the outside road which circles the Outer City. You are just inside the city's perimeter wall, and you can see the South Gate off to the west and a tower to the east.} {Outer Caemlyn} {} {} {} {1} {}
E {160} {n} {n} {1} {0} {} {1} {} {0}
E {161} {e} {e} {2} {0} {} {1} {} {0}
E {157} {w} {w} {8} {0} {} {1} {} {0}
R {160} {0} {} {Caemlyn Stables} { } {This place stinks like horses. You had almost forgotten how bad horses smell. Maybe this would be a good place to leave yours? A BIG SIGN YOU CANNOT POSSIBLY MISS is on the wall.} {Outer Caemlyn} {} {} {} {1} {}
E {159} {s} {s} {4} {0} {} {1} {} {0}
R {161} {0} {} {The Southern Road} { } {You are on the southern side of the perimeter road which circles Caemlyn's Outer City. The road stretches off to the west and bends out of sight to the east. A large tower can also be entered to the east.} {Outer Caemlyn} {} {} {} {1} {}
E {162} {e} {e} {2} {0} {} {1} {} {0}
E {159} {w} {w} {8} {0} {} {1} {} {0}
R {162} {0} {} {Bend in the Outer Road} { } {A tall tower rises above the city to the south, dominating this intersection of the perimeter road. The street curves away to the north and west towards the main gates to the city.} {Outer Caemlyn} {} {} {} {1} {}
E {165} {n} {n} {1} {0} {} {1} {} {0}
E {161} {w} {w} {8} {0} {} {1} {} {0}
E {163} {s} {s} {4} {0} {} {1} {} {0}
R {163} {0} {} {South-East Watchtower} { } {This narrow stone tower rises high above the rooftops of Caemlyn. It has to be at least five stories high. A stairway curves its way up along the tower base, and allows access to a small roof. You can see the outer road to your north.} {Outer Caemlyn} {} {} {} {1} {}
E {162} {n} {n} {1} {0} {} {1} {} {0}
E {164} {u} {u} {16} {0} {} {1} {} {0}
R {164} {0} {} {On the Tower} { } {You climb the stairs to the top of the tower and arrive on a small roof overlooking the surrounding countryside of Andor. You can see green fields and a number of small villages and towns. Roads stream away from Caemlyn in all four directions. The tower also affords a stunning view of Caemlyn itself. You can see the inner city and the royal palace, set high on a hilltop in the city's center. You can watch out over the east and south approaches to the city.} {Outer Caemlyn} {} {} {} {1} {}
E {163} {d} {d} {32} {0} {} {1} {} {0}
R {165} {0} {} {An Outer Road} { } {This is the perimeter road which circles the entire outer city of Caemlyn. The road leads both north and south. There are some houses to the west and the perimeter wall towers overhead to the east. A tall stone guard tower looms to the south, casting deep shadows like a sundial. An ornately worked door sits in the freshly painted facade of a building to the west.} {Outer Caemlyn} {} {} {} {1} {}
E {166} {n} {n} {1} {0} {} {1} {} {0}
E {4811} {w} {w} {8} {0} {} {1} {} {0}
E {162} {s} {s} {4} {0} {} {1} {} {0}
R {166} {0} {} {An Outer Road} { } {You are on a perimeter road which circles the entire outer city of Caemlyn. The road runs north and south here, and there are some houses to the west. You can make out the East Gate to the north, and there is a narrow but extremely tall tower to the south.} {Outer Caemlyn} {} {} {} {1} {}
E {168} {n} {n} {1} {0} {} {1} {} {0}
E {167} {w} {w} {8} {0} {} {1} {} {0}
E {165} {s} {s} {4} {0} {} {1} {} {0}
R {167} {0} {} {A Deserted House} { } {This old house has had its windows kicked in by some delinquents. The door flaps on broken hinges and the odor is not at all pleasant. You wonder why you came in here at all.} {Outer Caemlyn} {} {} {} {1} {}
E {166} {e} {e} {2} {0} {} {1} {} {0}
E {177} {d} {d} {32} {0} {} {1} {} {0}
R {168} {0} {} {An Outer Road} { } {You are just south of Caemlyn's East Gate. The outer road continues to the south, and a small shop lies to the west. The street is well worn from many travelers and city dwellers, and the noise of the crowded city can be heard at all times of the day.} {Outer Caemlyn} {} {} {} {1} {}
E {105} {n} {n} {1} {0} {} {1} {} {0}
E {169} {w} {w} {8} {0} {} {1} {} {0}
E {166} {s} {s} {4} {0} {} {1} {} {0}
R {169} {0} {} {Tailor of Caemlyn} { } {Fine apparel hangs from ornate hooks lining the walls of this shop. An oak counter divides the shop from the work area in the back. While the shop itself is meticulously tidy and well organized, the work area is strewn with fabric remnants and discarded threads.} {Outer Caemlyn} {} {} {} {1} {}
E {168} {e} {e} {2} {0} {} {1} {} {0}
R {170} {0} {} {Skywalk over the Inner City} { } {You are at the southern end of a long marble skywalk that runs over the Inner City of Caemlyn. A spiraling stairwell leads down into the heart of the Outer City. You can see a great deal of Caemlyn from this vantage point, and the view is simply spectacular. The number of people that populate this huge city is beyond all belief. The walkway continues to the north.} {Outer Caemlyn} {} {} {} {1} {}
E {171} {n} {n} {1} {0} {} {1} {} {0}
E {101} {d} {d} {32} {0} {} {1} {} {0}
R {171} {0} {} {Skywalk over the Inner City} { } {You are on the middle of a marble skywalk which runs the breadth of the Inner City. You are afforded a marvelous view of the entirety of Caemlyn from here. The throngs of people below you are staggering in their sheer noise and volume. The walkway continues to the north and south.} {Outer Caemlyn} {} {} {} {1} {}
E {172} {n} {n} {1} {0} {} {1} {} {0}
E {170} {s} {s} {4} {0} {} {1} {} {0}
R {172} {0} {} {Skywalk over the Inner City} { } {You are at the northern end of a marble skywalk which rises high over the Inner City. From your lofty perch you can see all the marvel and splendor of Caemlyn. You can see the North Gate not far away, and if you squint you can make out the South Gate in the distance as well. Below you you can see the breath-taking beauty of the inner city, and you marvel at the wonders of Ogier architecture.} {Outer Caemlyn} {} {} {} {1} {}
E {171} {s} {s} {4} {0} {} {1} {} {0}
E {118} {d} {d} {32} {0} {} {1} {} {0}
R {173} {0} {} {End of a Tunnel} { } {The underground tunnel heads off into the darkness to the east. There is a slight breeze from somewhere, and the air is slightly fresher. The walls are extremely smooth, and there is no escaping the conclusion that this is not a natural tunnel.} {Outer Caemlyn} {} {} {} {1} {}
E {174} {e} {e} {2} {0} {} {1} {} {0}
E {60} {u} {u} {16} {0} {} {1} {} {0}
R {174} {0} {} {An Underground Tunnel} { } {The tunnel is nearly pitch black here, and no exit is immediately evident. It is almost impossible to make out any shape, even a hand waved before your eyes.} {Outer Caemlyn} {} {} {} {1} {}
E {175} {e} {e} {2} {0} {} {1} {} {0}
E {173} {w} {w} {8} {0} {} {1} {} {0}
R {175} {0} {} {An Underground Tunnel} { } {The tunnel bends here, a fact you discover by bumping suddenly into a wall. Eyeing what you can of the corner, you realize it is almost a perfect ninety degree turn. The tunnel extends to the north and west.} {Outer Caemlyn} {} {} {} {1} {}
E {176} {n} {n} {1} {0} {} {1} {} {0}
E {174} {w} {w} {8} {0} {} {1} {} {0}
R {176} {0} {} {An Underground Tunnel} { } {The air here is rather stale, and there is no sound whatsoever. The tunnel wall is extremely smooth and well molded. It is almost impossible to see where you are going, but the tunnel seems to go on to the south and west.} {Outer Caemlyn} {} {} {} {1} {}
E {177} {w} {w} {8} {0} {} {1} {} {0}
E {175} {s} {s} {4} {0} {} {1} {} {0}
R {177} {0} {} {An Underground Tunnel} { } {You are in an underground tunnel. It is obviously man-made, as the walls are much too smooth to be natural. It is difficult to see, but you can see an opening above you. The tunnel heads off into the darkness to the east.} {Outer Caemlyn} {} {} {} {1} {}
E {176} {e} {e} {2} {0} {} {1} {} {0}
E {167} {u} {u} {16} {0} {} {1} {} {0}
R {4793} {0} {} {Drainage Pipe} { } {All the water from the fountain, as well as rain runoff, and the unspeakable liquid waste of the city passes through this room. What a good place for mad men, insane male channelers, and zombies to rise up and attempt to bring an end to the world!} {} {} {} {} {1} {}
E {97} {u} {u} {16} {0} {} {1} {} {0}
R {4811} {0} {} {The Royal Clothier} { } {A well polished mahogany counter worked with shiny brass has been erected at the back of the shop. Luxurious plush chairs have been placed across the shop, allowing customers to rest as the proprietor of the shop and their assistance prepare the various garments for fitting.} {Outer Caemlyn} {} {} {} {1} {}
E {165} {e} {e} {2} {0} {} {1} {} {0}
R {20000} {0} {} {A Prison Cell} { } {Small, dank and dark, the barred opening on the door to this cell is the only source of light available to those inside. Rats, crows and ravens appear to be regular visitors here according to the mess left on the floor. The only exit is through the door to the south, onto one of Caemlyn's busiest streets, facing the Queen's Blessing.} {Outer Caemlyn} {} {} {} {1} {}
E {141} {s} {s} {4} {0} {} {1} {} {0}
R {20631} {0} {} {A Cozy Entrance Hall} { } {The peacefulness of the park outside carries over into the entranceway of this small manor. Pleasant smells drift in from the nearby kitchen, tempting visitors to abandon their wait to be received. Aged cherry paneling covers the lower half of the stone walls, which have been engraved with scenes from Andor's history. A large, earthen colored rug lies on the floor in front of the door, and a banner hangs proudly on the wall. Large glass doors to the west permit a view of a lush courtyard.} {} {} {} {} {1} {}
E {20633} {n} {n} {1} {0} {} {1} {} {0}
E {108} {e} {e} {2} {0} {} {1} {} {0}
E {20635} {w} {w} {8} {0} {} {1} {} {0}
E {20632} {s} {s} {4} {0} {} {1} {} {0}
R {20632} {0} {} {A Warm and Fragrant Kitchen} { } {Judging by the utensils and cookware lying haphazardly about on the tables, this kitchen might be one of the more frequented rooms in the house. An oven along the back wall emanates a pleasant warmth, its smell hinting at a tasty treat soon to be ready. Windows line the outer walls, letting in natural light that gives the room a comforting glow. A small garden, providing food for the occupants of the estate, is visible through them in the courtyard to the west. The cook can easily spot when creatures from the park might wander in to try and plunder it.} {} {} {} {} {1} {}
E {20631} {n} {n} {1} {0} {} {1} {} {0}
R {20633} {0} {} {A Quiet Study} { } {The furnishings and silent atmosphere of this room gives it a sense of purpose that belies the coziness of the rest of the house. Maps pinned to the wood paneled walls seem to cover various parts of the known world, and a particularly large one stands out among them. Windows to the east look out across the park and let in the morning light for whenever the lord of the manor wishes to rise early and work.} {} {} {} {} {1} {}
E {20634} {w} {w} {8} {0} {} {1} {} {0}
E {20631} {s} {s} {4} {0} {} {1} {} {0}
R {20634} {0} {} {The Bedroom of Lord Adael Le'Ada} { } {Lit by a gleaming crystal chandelier, this room is decorated for both comfort and purpose. Plain wooden shutters are open and soft blue curtains are pulled back, revealing a large window overlooking the courtyard to the south. Rays of light can shine in through the brilliantly clear panes, marred only by an etched symbol of House Le'Ada in the center. A large, comfortable looking bed sits in the far corner. An intricately carved maple door leads back out to the study.} {} {} {} {} {1} {}
E {20633} {e} {e} {2} {0} {} {1} {} {0}
E {20635} {s} {s} {4} {0} {} {1} {} {0}
R {20635} {0} {} {A Peaceful, Flourishing Courtyard} { } {Much like how the park this manor lies in is removed from the city, this courtyard is itself an escape from the manor surrounding it. A veranda protects both the patio outside the entrance and the small circle of chairs on it. Tall and exotic plants hide portions of the courtyard from view, but the gleaming white walls of the Inner City are easily seen on top the hills to the west. A cobblestone path makes its way out of the surrounding park to encircle a central pond before disappearing among the trees yet again to the west. A window to the north flashes oddly in the light.} {} {} {} {} {1} {}
E {20634} {n} {n} {1} {0} {} {1} {} {0}
E {20631} {e} {e} {2} {0} {} {1} {} {0}

@ -0,0 +1,207 @@
use std::collections::{BTreeMap, HashMap};
use std::error::Error;
use std::io;
use std::io::Read;
use serde_derive::Deserialize;
use serde_json::Value;
#[derive(Debug, Deserialize)]
struct MudletMap {
/// area id
id: i64,
/// area name
name: String,
/// rooms
rooms: Vec<MudletRoom>,
#[serde(flatten)]
_extra: HashMap<String, Value>,
}
#[derive(Debug, Deserialize)]
struct MudletRoom {
/// exits
exits: Vec<MudletExit>,
/// room number
id: i64,
/// room name
name: String,
/// user data
userData: MudletUserData,
#[serde(flatten)]
_extra: HashMap<String, Value>,
}
#[derive(Debug, Deserialize)]
struct MudletExit {
/// connected room
exitId: i64,
/// direction
name: String,
#[serde(flatten)]
_extra: HashMap<String, Value>,
}
#[derive(Debug, Deserialize)]
struct MudletUserData {
/// room description
description: String,
/// zone name
zone: String,
#[serde(flatten)]
_extra: HashMap<String, Value>,
}
#[derive(Debug)]
struct TinTinRoom {
/// room number
vnum: i64,
/// flags
flags: i64,
/// color
color: String,
/// room name
name: String,
/// room symbol
symbol: char,
/// room description
desc: String,
/// area that room is in
area: String,
/// notes
note: String,
/// type of terrain
terrain: String,
/// extra data
data: String,
/// movement cost
weight: f64,
/// room id
id: String,
/// exits
exits: Vec<TinTinExit>,
}
#[derive(Debug)]
struct TinTinExit {
/// vnum
vnum: i64,
/// exit name
name: String,
/// command to use the exit
cmd: String,
/// exit direction
dir: i8,
/// exit flags
flags: i64,
/// extra data
data: String,
/// movement cost?
weight: f64,
/// exit color
color: String,
/// decay?
decay: f64,
}
fn main() -> Result<(), Box<dyn Error>> {
let mut buffer = String::new();
let mut stdin = io::stdin();
stdin.read_to_string(&mut buffer)?;
let mudlet_map: MudletMap = serde_json::from_str(&buffer)?;
let mut tintin_rooms: BTreeMap<i64, TinTinRoom> = BTreeMap::new();
for mudlet_room in mudlet_map.rooms {
let mut tintin_exits: Vec<TinTinExit> = Vec::new();
for mudlet_exit in mudlet_room.exits {
let (dir_num, dir_short) = match mudlet_exit.name.as_str() {
"north" => (1, 'n'),
"east" => (2, 'e'),
"south" => (4, 's'),
"west" => (8, 'w'),
"up" => (16, 'u'),
"down" => (32, 'd'),
_ => panic!("Unknown exit: {}", mudlet_exit.name),
};
let tintin_exit = TinTinExit {
vnum: mudlet_exit.exitId,
name: dir_short.into(),
cmd: dir_short.into(),
dir: dir_num,
flags: 0,
data: String::new(),
weight: 1.0,
color: String::new(),
decay: 0.0,
};
tintin_exits.push(tintin_exit);
}
let tintin_room = TinTinRoom {
vnum: mudlet_room.id,
flags: 0,
color: String::new(),
name: mudlet_room.name,
symbol: ' ',
desc: mudlet_room.userData.description.replace("\n", " ").replace (" ", " "),
area: mudlet_room.userData.zone,
note: String::new(),
terrain: String::new(),
data: String::new(),
weight: 1.0,
id: String::new(),
exits: tintin_exits,
};
tintin_rooms.insert(tintin_room.vnum, tintin_room);
}
for (vnum, room) in tintin_rooms {
println!("R {{{}}} {{{}}} {{{}}} {{{}}} {{{}}} {{{}}} {{{}}} {{{}}} {{{}}} {{{}}} {{{}}} {{{}}}", vnum, room.flags, room.color, room.name, room.symbol, room.desc, room.area, room.note, room.terrain, room.data, room.weight, room.id);
for exit in room.exits {
println!("E {{{}}} {{{}}} {{{}}} {{{}}} {{{}}} {{{}}} {{{}}} {{{}}} {{{}}}", exit.vnum, exit.name, exit.cmd, exit.dir, exit.flags, exit.data, exit.weight, exit.color, exit.decay);
}
println!();
}
Ok(())
}
Loading…
Cancel
Save