dialogue functions
This commit is contained in:
parent
8b383bc982
commit
82a7bc0763
|
@ -24,13 +24,13 @@ a library for parsing Bitsy game data.
|
||||||
* exit to
|
* exit to
|
||||||
* ending from
|
* ending from
|
||||||
* ending to
|
* ending to
|
||||||
|
* dialogue from
|
||||||
|
* dialogue to
|
||||||
|
|
||||||
## todo
|
## todo
|
||||||
|
|
||||||
### functions
|
### functions
|
||||||
|
|
||||||
* dialogue from
|
|
||||||
* dialogue to
|
|
||||||
* room from
|
* room from
|
||||||
* room to
|
* room to
|
||||||
* variable from
|
* variable from
|
||||||
|
|
33
src/main.rs
33
src/main.rs
|
@ -640,6 +640,39 @@ fn test_ending_to_string() {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn dialogue_from_string(string: String) -> Dialogue {
|
||||||
|
let lines: Vec<&str> = string.split("\n").collect();
|
||||||
|
let id = lines[0].replace("DLG ", "").to_string();
|
||||||
|
let contents = lines[1..].join("\n");
|
||||||
|
|
||||||
|
Dialogue { id, contents }
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_dialogue_from_string() {
|
||||||
|
assert_eq!(
|
||||||
|
dialogue_from_string("DLG h\nhello\ngoodbye".to_string()),
|
||||||
|
Dialogue { id: "h".to_string(), contents: "hello\ngoodbye".to_string()}
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
fn dialogue_to_string(dialogue: Dialogue) -> String {
|
||||||
|
format!("DLG {}\n{}", dialogue.id, dialogue.contents)
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_dialogue_to_string() {
|
||||||
|
assert_eq!(
|
||||||
|
dialogue_to_string(
|
||||||
|
Dialogue {
|
||||||
|
id: "y".to_string(),
|
||||||
|
contents: "This is a bit of dialogue,\nblah blah\nblah blah".to_string()
|
||||||
|
}
|
||||||
|
),
|
||||||
|
"DLG y\nThis is a bit of dialogue,\nblah blah\nblah blah".to_string()
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
fn room_from_string(string: String) -> Room {
|
fn room_from_string(string: String) -> Room {
|
||||||
// todo handle room_format?
|
// todo handle room_format?
|
||||||
let mut lines: Vec<&str> = string.split("\n").collect();
|
let mut lines: Vec<&str> = string.split("\n").collect();
|
||||||
|
|
Loading…
Reference in New Issue