bitsy_parser/
mock.rs

1use crate::*;
2use crate::game::{RoomType, RoomFormat};
3
4pub mod image {
5    use crate::Image;
6
7    pub fn chequers_1() -> Image {
8        Image {
9            pixels: vec![
10                1, 0, 1, 0, 1, 0, 1, 0,
11                0, 1, 0, 1, 0, 1, 0, 1,
12                1, 0, 1, 0, 1, 0, 1, 0,
13                0, 1, 0, 1, 0, 1, 0, 1,
14                1, 0, 1, 0, 1, 0, 1, 0,
15                0, 1, 0, 1, 0, 1, 0, 1,
16                1, 0, 1, 0, 1, 0, 1, 0,
17                0, 1, 0, 1, 0, 1, 0, 1,
18            ],
19        }
20    }
21
22    pub fn chequers_2() -> Image {
23        Image {
24            pixels: vec![
25                0, 1, 0, 1, 0, 1, 0, 1,
26                1, 0, 1, 0, 1, 0, 1, 0,
27                0, 1, 0, 1, 0, 1, 0, 1,
28                1, 0, 1, 0, 1, 0, 1, 0,
29                0, 1, 0, 1, 0, 1, 0, 1,
30                1, 0, 1, 0, 1, 0, 1, 0,
31                0, 1, 0, 1, 0, 1, 0, 1,
32                1, 0, 1, 0, 1, 0, 1, 0,
33            ],
34        }
35    }
36
37    pub fn asymmetrical() -> Image {
38        Image { pixels: vec![
39            0,0,0,0,0,0,0,0,
40            0,0,0,0,0,0,0,0,
41            0,1,0,0,0,0,0,0,
42            1,0,0,0,0,0,0,0,
43            1,0,0,0,0,0,0,0,
44            0,1,0,0,0,0,0,0,
45            0,0,1,0,0,0,0,0,
46            0,0,0,1,0,0,0,0,
47        ]}
48    }
49
50    pub fn animation_frames() -> Vec<Image> {
51        vec![
52            Image {
53                pixels: vec![
54                    1,0,0,1,1,0,0,1,
55                    0,0,1,1,0,0,1,1,
56                    0,1,1,0,0,1,1,0,
57                    1,1,0,0,1,1,0,0,
58                    1,0,0,1,1,0,0,1,
59                    0,0,1,1,0,0,1,1,
60                    0,1,1,0,0,1,1,0,
61                    1,1,0,0,1,1,0,0,
62                ]
63            },
64            Image {
65                pixels: vec![
66                    1,1,0,0,1,1,0,0,
67                    1,0,0,1,1,0,0,1,
68                    0,0,1,1,0,0,1,1,
69                    0,1,1,0,0,1,1,0,
70                    1,1,0,0,1,1,0,0,
71                    1,0,0,1,1,0,0,1,
72                    0,0,1,1,0,0,1,1,
73                    0,1,1,0,0,1,1,0,
74                ]
75            },
76            Image {
77                pixels: vec![
78                    0,1,1,0,0,1,1,0,
79                    1,1,0,0,1,1,0,0,
80                    1,0,0,1,1,0,0,1,
81                    0,0,1,1,0,0,1,1,
82                    0,1,1,0,0,1,1,0,
83                    1,1,0,0,1,1,0,0,
84                    1,0,0,1,1,0,0,1,
85                    0,0,1,1,0,0,1,1,
86                ]
87            },
88            Image {
89                pixels: vec![
90                    0,0,1,1,0,0,1,1,
91                    0,1,1,0,0,1,1,0,
92                    1,1,0,0,1,1,0,0,
93                    1,0,0,1,1,0,0,1,
94                    0,0,1,1,0,0,1,1,
95                    0,1,1,0,0,1,1,0,
96                    1,1,0,0,1,1,0,0,
97                    1,0,0,1,1,0,0,1,
98                ]
99            },
100        ]
101    }
102}
103
104pub fn avatar() -> Sprite {
105    Sprite {
106        id: "0".to_string(),
107        animation_frames: vec![
108            Image {
109                pixels: vec![
110                    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1,
111                    1, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
112                    1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0,
113                ],
114            },
115            Image {
116                pixels: vec![
117                    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1,
118                    1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 1, 1, 1, 1,
119                    1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0,
120                ],
121            },
122        ],
123        name: None,
124        room_id: Some("0".to_string()),
125        position: Some(Position { x: 2, y: 5 }),
126        colour_id: None,
127        dialogue_id: None,
128        items: vec![]
129    }
130}
131
132pub fn tile_default() -> Tile {
133    Tile {
134        id: "a".to_string(),
135        name: Some("block".to_string()),
136        wall: None,
137        animation_frames: vec![Image {
138            pixels: vec![
139                1, 1, 1, 1, 1, 1, 1, 1,
140                1, 0, 0, 0, 0, 0, 0, 1,
141                1, 0, 0, 0, 0, 0, 0, 1,
142                1, 0, 0, 1, 1, 0, 0, 1,
143                1, 0, 0, 1, 1, 0, 0, 1,
144                1, 0, 0, 0, 0, 0, 0, 1,
145                1, 0, 0, 0, 0, 0, 0, 1,
146                1, 1, 1, 1, 1, 1, 1, 1,
147            ],
148        }],
149        colour_id: None,
150    }
151}
152
153pub fn tile_background() -> Tile {
154    Tile {
155        id: "0".to_string(),
156        name: None,
157        wall: None,
158        animation_frames: vec![Image {pixels: vec![0; 64]}],
159        colour_id: None
160    }
161}
162
163pub fn sprite() -> Sprite {
164    Sprite {
165        id: "a".to_string(),
166        name: Some("hatch".to_string()),
167        animation_frames: vec![Image {
168            pixels: vec![
169                0, 0, 0, 0, 0, 0, 0, 0,
170                0, 1, 1, 1, 1, 0, 0, 0,
171                0, 1, 0, 0, 1, 0, 0, 0,
172                0, 0, 1, 1, 1, 1, 0, 0,
173                0, 0, 1, 1, 1, 1, 0, 0,
174                0, 1, 0, 1, 1, 1, 1, 0,
175                0, 1, 0, 1, 1, 1, 1, 0,
176                0, 1, 1, 0, 1, 1, 1, 1,
177            ],
178        }],
179        dialogue_id: Some("0".to_string()),
180        room_id: Some("4".to_string()),
181        position: Some(Position { x: 9, y: 7 }),
182        colour_id: None,
183        items: vec![]
184    }
185}
186
187pub mod item {
188    use crate::{Image, Item};
189
190    pub fn key() -> Item {
191        Item {
192            id: "1".to_string(),
193            animation_frames: vec![
194                Image { pixels: vec![
195                    0, 0, 0, 0, 0, 0, 0, 0,
196                    0, 0, 1, 1, 1, 1, 0, 0,
197                    0, 0, 1, 0, 0, 1, 0, 0,
198                    0, 0, 1, 1, 1, 1, 0, 0,
199                    0, 0, 0, 1, 0, 0, 0, 0,
200                    0, 0, 0, 1, 1, 0, 0, 0,
201                    0, 0, 0, 1, 0, 0, 0, 0,
202                    0, 0, 0, 1, 1, 0, 0, 0
203                ]}
204            ],
205            name: Some("key".to_string()),
206            dialogue_id: Some("2".to_string()),
207            colour_id: None
208        }
209    }
210}
211
212pub fn item() -> Item {
213    Item {
214        id: "6".to_string(),
215        animation_frames: vec![Image {
216            pixels: vec![
217                0, 1, 0, 0, 0, 0, 0, 0,
218                0, 0, 0, 0, 0, 0, 0, 0,
219                0, 0, 0, 0, 0, 0, 0, 0,
220                0, 0, 0, 0, 0, 1, 0, 0,
221                0, 0, 1, 0, 0, 0, 0, 0,
222                0, 0, 0, 0, 0, 0, 0, 0,
223                0, 0, 0, 0, 0, 0, 0, 0,
224                0, 0, 0, 0, 0, 0, 1, 0,
225            ],
226        }],
227        name: Some("door".to_string()),
228        dialogue_id: Some("2".to_string()),
229        colour_id: None,
230    }
231}
232
233pub fn room() -> Room {
234    Room {
235        id: "a".to_string(),
236        palette_id: Some("9".to_string()),
237        name: Some("cellar 7".to_string()),
238        tiles: vec![
239            "0".to_string(),
240            "0".to_string(),
241            "0".to_string(),
242            "0".to_string(),
243            "0".to_string(),
244            "0".to_string(),
245            "0".to_string(),
246            "0".to_string(),
247            "1l".to_string(),
248            "0".to_string(),
249            "0".to_string(),
250            "0".to_string(),
251            "0".to_string(),
252            "0".to_string(),
253            "0".to_string(),
254            "0".to_string(),
255            "y".to_string(),
256            "x".to_string(),
257            "0".to_string(),
258            "0".to_string(),
259            "1j".to_string(),
260            "0".to_string(),
261            "0".to_string(),
262            "1j".to_string(),
263            "1l".to_string(),
264            "0".to_string(),
265            "1j".to_string(),
266            "0".to_string(),
267            "0".to_string(),
268            "1j".to_string(),
269            "0".to_string(),
270            "0".to_string(),
271            "y".to_string(),
272            "y".to_string(),
273            "x".to_string(),
274            "k".to_string(),
275            "k".to_string(),
276            "1c".to_string(),
277            "1x".to_string(),
278            "1y".to_string(),
279            "1m".to_string(),
280            "0".to_string(),
281            "0".to_string(),
282            "0".to_string(),
283            "0".to_string(),
284            "0".to_string(),
285            "0".to_string(),
286            "0".to_string(),
287            "y".to_string(),
288            "y".to_string(),
289            "y".to_string(),
290            "x".to_string(),
291            "k".to_string(),
292            "s".to_string(),
293            "s".to_string(),
294            "s".to_string(),
295            "k".to_string(),
296            "k".to_string(),
297            "k".to_string(),
298            "k".to_string(),
299            "k".to_string(),
300            "1g".to_string(),
301            "1f".to_string(),
302            "k".to_string(),
303            "k".to_string(),
304            "z".to_string(),
305            "z".to_string(),
306            "z".to_string(),
307            "1i".to_string(),
308            "1u".to_string(),
309            "1u".to_string(),
310            "1u".to_string(),
311            "1v".to_string(),
312            "11".to_string(),
313            "19".to_string(),
314            "1b".to_string(),
315            "1a".to_string(),
316            "1e".to_string(),
317            "10".to_string(),
318            "k".to_string(),
319            "k".to_string(),
320            "z".to_string(),
321            "z".to_string(),
322            "11".to_string(),
323            "12".to_string(),
324            "z".to_string(),
325            "z".to_string(),
326            "z".to_string(),
327            "z".to_string(),
328            "10".to_string(),
329            "17".to_string(),
330            "z".to_string(),
331            "18".to_string(),
332            "1e".to_string(),
333            "12".to_string(),
334            "k".to_string(),
335            "k".to_string(),
336            "z".to_string(),
337            "z".to_string(),
338            "z".to_string(),
339            "z".to_string(),
340            "z".to_string(),
341            "z".to_string(),
342            "z".to_string(),
343            "z".to_string(),
344            "1k".to_string(),
345            "14".to_string(),
346            "15".to_string(),
347            "16".to_string(),
348            "1h".to_string(),
349            "z".to_string(),
350            "k".to_string(),
351            "k".to_string(),
352            "z".to_string(),
353            "z".to_string(),
354            "z".to_string(),
355            "z".to_string(),
356            "z".to_string(),
357            "z".to_string(),
358            "10".to_string(),
359            "1d".to_string(),
360            "1v".to_string(),
361            "1r".to_string(),
362            "1s".to_string(),
363            "1r".to_string(),
364            "1q".to_string(),
365            "1z".to_string(),
366            "k".to_string(),
367            "k".to_string(),
368            "z".to_string(),
369            "z".to_string(),
370            "12".to_string(),
371            "10".to_string(),
372            "z".to_string(),
373            "z".to_string(),
374            "z".to_string(),
375            "1i".to_string(),
376            "1n".to_string(),
377            "1o".to_string(),
378            "1o".to_string(),
379            "1o".to_string(),
380            "1p".to_string(),
381            "z".to_string(),
382            "k".to_string(),
383            "k".to_string(),
384            "z".to_string(),
385            "z".to_string(),
386            "z".to_string(),
387            "z".to_string(),
388            "z".to_string(),
389            "z".to_string(),
390            "z".to_string(),
391            "z".to_string(),
392            "z".to_string(),
393            "z".to_string(),
394            "z".to_string(),
395            "10".to_string(),
396            "z".to_string(),
397            "z".to_string(),
398            "k".to_string(),
399            "k".to_string(),
400            "z".to_string(),
401            "z".to_string(),
402            "z".to_string(),
403            "z".to_string(),
404            "z".to_string(),
405            "11".to_string(),
406            "z".to_string(),
407            "z".to_string(),
408            "z".to_string(),
409            "z".to_string(),
410            "z".to_string(),
411            "z".to_string(),
412            "z".to_string(),
413            "z".to_string(),
414            "k".to_string(),
415            "k".to_string(),
416            "z".to_string(),
417            "z".to_string(),
418            "z".to_string(),
419            "z".to_string(),
420            "z".to_string(),
421            "z".to_string(),
422            "z".to_string(),
423            "z".to_string(),
424            "z".to_string(),
425            "12".to_string(),
426            "z".to_string(),
427            "z".to_string(),
428            "10".to_string(),
429            "12".to_string(),
430            "k".to_string(),
431            "k".to_string(),
432            "k".to_string(),
433            "k".to_string(),
434            "k".to_string(),
435            "k".to_string(),
436            "k".to_string(),
437            "k".to_string(),
438            "k".to_string(),
439            "k".to_string(),
440            "k".to_string(),
441            "k".to_string(),
442            "k".to_string(),
443            "k".to_string(),
444            "k".to_string(),
445            "k".to_string(),
446            "k".to_string(),
447            "0".to_string(),
448            "0".to_string(),
449            "0".to_string(),
450            "0".to_string(),
451            "0".to_string(),
452            "0".to_string(),
453            "0".to_string(),
454            "0".to_string(),
455            "0".to_string(),
456            "0".to_string(),
457            "0".to_string(),
458            "0".to_string(),
459            "0".to_string(),
460            "0".to_string(),
461            "0".to_string(),
462            "0".to_string(),
463            "0".to_string(),
464            "0".to_string(),
465            "0".to_string(),
466            "0".to_string(),
467            "0".to_string(),
468            "0".to_string(),
469            "0".to_string(),
470            "0".to_string(),
471            "0".to_string(),
472            "0".to_string(),
473            "0".to_string(),
474            "0".to_string(),
475            "0".to_string(),
476            "0".to_string(),
477            "0".to_string(),
478            "0".to_string(),
479            "0".to_string(),
480            "0".to_string(),
481            "0".to_string(),
482            "0".to_string(),
483            "0".to_string(),
484            "0".to_string(),
485            "0".to_string(),
486            "0".to_string(),
487            "0".to_string(),
488            "0".to_string(),
489            "0".to_string(),
490            "0".to_string(),
491            "0".to_string(),
492            "0".to_string(),
493            "0".to_string(),
494            "0".to_string(),
495        ],
496        items: vec![
497            Instance {
498                position: Position { x: 11, y: 5 },
499                id: "d".to_string(),
500            },
501            Instance {
502                position: Position { x: 8, y: 3 },
503                id: "e".to_string(),
504            },
505            Instance {
506                position: Position { x: 1, y: 0 },
507                id: "5".to_string(),
508            },
509            Instance {
510                position: Position { x: 2, y: 1 },
511                id: "6".to_string(),
512            },
513            Instance {
514                position: Position { x: 3, y: 2 },
515                id: "6".to_string(),
516            },
517        ],
518        exits: vec![ExitInstance {
519            position: Position { x: 3, y: 3 },
520            exit: Exit {
521                room_id: "3".to_string(),
522                position: Position { x: 10, y: 6 },
523                effect: Transition::None,
524            },
525            transition: None,
526            dialogue_id: None
527        }],
528        endings: vec![Instance {
529            position: Position { x: 8, y: 7 },
530            id: "undefined".to_string(),
531        }],
532        walls: None,
533    }
534}
535
536pub fn game_default() -> Game {
537    Game {
538        name: "Write your game's title here".to_string(),
539        version: Some(Version { major: 7, minor: 10 }),
540        room_format: Some(RoomFormat::CommaSeparated),
541        room_type: RoomType::Room,
542        font: Font::AsciiSmall,
543        custom_font: None,
544        text_direction: TextDirection::LeftToRight,
545        palettes: vec![Palette {
546            id: "0".to_string(),
547            name: Some("blueprint".to_string()),
548            colours: vec![
549                Colour {
550                    red: 0,
551                    green: 82,
552                    blue: 204,
553                },
554                Colour {
555                    red: 128,
556                    green: 159,
557                    blue: 255,
558                },
559                Colour {
560                    red: 255,
561                    green: 255,
562                    blue: 255,
563                },
564            ],
565        }],
566        rooms: vec![Room {
567            id: "0".to_string(),
568            palette_id: Some("0".to_string()),
569            name: Some("example room".to_string()),
570            tiles: vec![
571                "0".to_string(),
572                "0".to_string(),
573                "0".to_string(),
574                "0".to_string(),
575                "0".to_string(),
576                "0".to_string(),
577                "0".to_string(),
578                "0".to_string(),
579                "0".to_string(),
580                "0".to_string(),
581                "0".to_string(),
582                "0".to_string(),
583                "0".to_string(),
584                "0".to_string(),
585                "0".to_string(),
586                "0".to_string(),
587                "0".to_string(),
588                "a".to_string(),
589                "a".to_string(),
590                "a".to_string(),
591                "a".to_string(),
592                "a".to_string(),
593                "a".to_string(),
594                "a".to_string(),
595                "a".to_string(),
596                "a".to_string(),
597                "a".to_string(),
598                "a".to_string(),
599                "a".to_string(),
600                "a".to_string(),
601                "a".to_string(),
602                "0".to_string(),
603                "0".to_string(),
604                "a".to_string(),
605                "0".to_string(),
606                "0".to_string(),
607                "0".to_string(),
608                "0".to_string(),
609                "0".to_string(),
610                "0".to_string(),
611                "0".to_string(),
612                "0".to_string(),
613                "0".to_string(),
614                "0".to_string(),
615                "0".to_string(),
616                "0".to_string(),
617                "a".to_string(),
618                "0".to_string(),
619                "0".to_string(),
620                "a".to_string(),
621                "0".to_string(),
622                "0".to_string(),
623                "0".to_string(),
624                "0".to_string(),
625                "0".to_string(),
626                "0".to_string(),
627                "0".to_string(),
628                "0".to_string(),
629                "0".to_string(),
630                "0".to_string(),
631                "0".to_string(),
632                "0".to_string(),
633                "a".to_string(),
634                "0".to_string(),
635                "0".to_string(),
636                "a".to_string(),
637                "0".to_string(),
638                "0".to_string(),
639                "0".to_string(),
640                "0".to_string(),
641                "0".to_string(),
642                "0".to_string(),
643                "0".to_string(),
644                "0".to_string(),
645                "0".to_string(),
646                "0".to_string(),
647                "0".to_string(),
648                "0".to_string(),
649                "a".to_string(),
650                "0".to_string(),
651                "0".to_string(),
652                "a".to_string(),
653                "0".to_string(),
654                "0".to_string(),
655                "0".to_string(),
656                "0".to_string(),
657                "0".to_string(),
658                "0".to_string(),
659                "0".to_string(),
660                "0".to_string(),
661                "0".to_string(),
662                "0".to_string(),
663                "0".to_string(),
664                "0".to_string(),
665                "a".to_string(),
666                "0".to_string(),
667                "0".to_string(),
668                "a".to_string(),
669                "0".to_string(),
670                "0".to_string(),
671                "0".to_string(),
672                "0".to_string(),
673                "0".to_string(),
674                "0".to_string(),
675                "0".to_string(),
676                "0".to_string(),
677                "0".to_string(),
678                "0".to_string(),
679                "0".to_string(),
680                "0".to_string(),
681                "a".to_string(),
682                "0".to_string(),
683                "0".to_string(),
684                "a".to_string(),
685                "0".to_string(),
686                "0".to_string(),
687                "0".to_string(),
688                "0".to_string(),
689                "0".to_string(),
690                "0".to_string(),
691                "0".to_string(),
692                "0".to_string(),
693                "0".to_string(),
694                "0".to_string(),
695                "0".to_string(),
696                "0".to_string(),
697                "a".to_string(),
698                "0".to_string(),
699                "0".to_string(),
700                "a".to_string(),
701                "0".to_string(),
702                "0".to_string(),
703                "0".to_string(),
704                "0".to_string(),
705                "0".to_string(),
706                "0".to_string(),
707                "0".to_string(),
708                "0".to_string(),
709                "0".to_string(),
710                "0".to_string(),
711                "0".to_string(),
712                "0".to_string(),
713                "a".to_string(),
714                "0".to_string(),
715                "0".to_string(),
716                "a".to_string(),
717                "0".to_string(),
718                "0".to_string(),
719                "0".to_string(),
720                "0".to_string(),
721                "0".to_string(),
722                "0".to_string(),
723                "0".to_string(),
724                "0".to_string(),
725                "0".to_string(),
726                "0".to_string(),
727                "0".to_string(),
728                "0".to_string(),
729                "a".to_string(),
730                "0".to_string(),
731                "0".to_string(),
732                "a".to_string(),
733                "0".to_string(),
734                "0".to_string(),
735                "0".to_string(),
736                "0".to_string(),
737                "0".to_string(),
738                "0".to_string(),
739                "0".to_string(),
740                "0".to_string(),
741                "0".to_string(),
742                "0".to_string(),
743                "0".to_string(),
744                "0".to_string(),
745                "a".to_string(),
746                "0".to_string(),
747                "0".to_string(),
748                "a".to_string(),
749                "0".to_string(),
750                "0".to_string(),
751                "0".to_string(),
752                "0".to_string(),
753                "0".to_string(),
754                "0".to_string(),
755                "0".to_string(),
756                "0".to_string(),
757                "0".to_string(),
758                "0".to_string(),
759                "0".to_string(),
760                "0".to_string(),
761                "a".to_string(),
762                "0".to_string(),
763                "0".to_string(),
764                "a".to_string(),
765                "0".to_string(),
766                "0".to_string(),
767                "0".to_string(),
768                "0".to_string(),
769                "0".to_string(),
770                "0".to_string(),
771                "0".to_string(),
772                "0".to_string(),
773                "0".to_string(),
774                "0".to_string(),
775                "0".to_string(),
776                "0".to_string(),
777                "a".to_string(),
778                "0".to_string(),
779                "0".to_string(),
780                "a".to_string(),
781                "0".to_string(),
782                "0".to_string(),
783                "0".to_string(),
784                "0".to_string(),
785                "0".to_string(),
786                "0".to_string(),
787                "0".to_string(),
788                "0".to_string(),
789                "0".to_string(),
790                "0".to_string(),
791                "0".to_string(),
792                "0".to_string(),
793                "a".to_string(),
794                "0".to_string(),
795                "0".to_string(),
796                "a".to_string(),
797                "a".to_string(),
798                "a".to_string(),
799                "a".to_string(),
800                "a".to_string(),
801                "a".to_string(),
802                "a".to_string(),
803                "a".to_string(),
804                "a".to_string(),
805                "a".to_string(),
806                "a".to_string(),
807                "a".to_string(),
808                "a".to_string(),
809                "a".to_string(),
810                "0".to_string(),
811                "0".to_string(),
812                "0".to_string(),
813                "0".to_string(),
814                "0".to_string(),
815                "0".to_string(),
816                "0".to_string(),
817                "0".to_string(),
818                "0".to_string(),
819                "0".to_string(),
820                "0".to_string(),
821                "0".to_string(),
822                "0".to_string(),
823                "0".to_string(),
824                "0".to_string(),
825                "0".to_string(),
826                "0".to_string(),
827            ],
828            items: vec![],
829            exits: vec![],
830            endings: vec![],
831            walls: None,
832        }],
833        tiles: vec![self::tile_default()],
834        sprites: vec![
835            Sprite {
836                id: "A".to_string(),
837                animation_frames: vec![Image {
838                    pixels: vec![
839                        0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0,
840                        1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 0, 1, 0, 0, 1, 0,
841                        0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0,
842                    ],
843                }],
844                name: None,
845                room_id: Some("0".to_string()),
846                position: Option::from(Position { x: 4, y: 4 }),
847                colour_id: None,
848                dialogue_id: None,
849                items: vec![]
850            },
851            Sprite {
852                id: "a".to_string(),
853                name: Some("cat".to_string()),
854                animation_frames: vec![Image {
855                    pixels: vec![
856                        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 1,
857                        1, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1,
858                        1, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0,
859                    ],
860                }],
861                dialogue_id: Some("0".to_string()),
862                room_id: Some("0".to_string()),
863                position: Some(Position { x: 8, y: 12 }),
864                colour_id: None,
865                items: vec![]
866            },
867        ],
868        items: vec![
869            Item {
870                id: "0".to_string(),
871                animation_frames: vec![Image {
872                    pixels: vec![
873                        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
874                        1, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1,
875                        1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
876                    ],
877                }],
878                name: Some("tea".to_string()),
879                dialogue_id: Some("1".to_string()),
880                colour_id: None,
881            },
882            item::key()
883        ],
884        dialogues: vec![
885            Dialogue {
886                id: "0".to_string(),
887                contents: "I'm a cat".to_string(),
888                name: Some("cat dialog".to_string()),
889            },
890            Dialogue {
891                id: "1".to_string(),
892                contents: "You found a nice warm cup of tea".to_string(),
893                name: Some("tea dialog".to_string()),
894            },
895            Dialogue {
896                id: "2".to_string(),
897                contents: "A key! {wvy}What does it open?{wvy}".to_string(),
898                name: Some("key dialog".to_string())
899            }
900        ],
901        endings: vec![],
902        variables: vec![Variable {
903            id: "a".to_string(),
904            initial_value: "42".to_string(),
905        }],
906        font_data: None,
907        line_endings_crlf: false
908    }
909}