junglejourney
changeset 98:16f63ddcbbe2
Completed the list of seeds for official levels.
Added a final exit for the final level, and later levels.
Finished defining the tiles used for the levels.
| author | David Boddie <david@boddie.org.uk> |
|---|---|
| date | Sat Sep 03 00:29:43 2011 +0200 |
| parents | af1b34c228a9 |
| children | 68552fbfded8 |
| files | TODO.txt images/flowers3.xpm images/leaf5.xpm mapcode.oph tools/makesprites.py |
| diffstat | 5 files changed, 104 insertions(+), 37 deletions(-) [+] |
line diff
1.1 --- a/TODO.txt Fri Sep 02 20:14:14 2011 +0200 1.2 +++ b/TODO.txt Sat Sep 03 00:29:43 2011 +0200 1.3 @@ -1,6 +1,8 @@ 1.4 To Do 1.5 1.6 -Ensure that the player can exit, even when not lined up with the open exit tile. 1.7 -Ensure that the tile sets for each level look good and that the exit sprites 1.8 -used are always the same. 1.9 +Fix drawing of the player's strength when it increases. 1.10 +Handle the case where the two pieces are destroyed in quick succession, 1.11 +leaving an explosion sprite plotted for the first piece. 1.12 Add a screen to show between levels. 1.13 +Add sounds. 1.14 +Nice to have: make projectiles start next to the player, not on top of him.
2.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 2.2 +++ b/images/flowers3.xpm Sat Sep 03 00:29:43 2011 +0200 2.3 @@ -0,0 +1,32 @@ 2.4 +/* XPM */ 2.5 +static char * flowers3_xpm[] = { 2.6 +"16 24 5 1", 2.7 +" c None", 2.8 +". c #000000", 2.9 +"+ c #008000", 2.10 +"@ c #FF0000", 2.11 +"# c #FFFF00", 2.12 +"........+.......", 2.13 +".@..@...........", 2.14 +"...@@@......@...", 2.15 +"....@......@@@..", 2.16 +"....+...@...@...", 2.17 +"...++.+....++...", 2.18 +"+...++......+...", 2.19 +"....+.......+...", 2.20 +"...............+", 2.21 +".......#........", 2.22 +"..@...+...#.....", 2.23 +".@@@.........@..", 2.24 +"..@.........@@@.", 2.25 +".++.....@....@..", 2.26 +"..++...@@@...+..", 2.27 +"..+.....@...+++.", 2.28 +".+.....++....+..", 2.29 +"....@...++...+..", 2.30 +"...@@@..+.......", 2.31 +"....@...........", 2.32 +"....+.......#...", 2.33 +"....+.......+...", 2.34 +".......@........", 2.35 +"................"};
3.1 --- a/images/leaf5.xpm Fri Sep 02 20:14:14 2011 +0200 3.2 +++ b/images/leaf5.xpm Sat Sep 03 00:29:43 2011 +0200 3.3 @@ -6,26 +6,26 @@ 3.4 "+ c #008000", 3.5 "@ c #FFFF00", 3.6 "..+++..++...@@@.", 3.7 -".+++++.+..+@@@..", 3.8 -"++++++...++@@@+.", 3.9 -"++..+++.++++@@@+", 3.10 -"+....++.+++...@@", 3.11 -"+.....+.+++.....", 3.12 -"......++.+......", 3.13 -"..+++.++++....++", 3.14 -".++++++++.+..+..", 3.15 -".++++.+++..++...", 3.16 -"++++..+++.......", 3.17 -"+++...+++++++...", 3.18 -"+......+++......", 3.19 -"....++.++...+++.", 3.20 -"...++++++..+++++", 3.21 -"..++..+++.++++.+", 3.22 -"+......++++++...", 3.23 -"++.....++++.....", 3.24 -".++.++.+++..++..", 3.25 -"..++++.+++.@@+++", 3.26 -"+++++..+++@@@@+.", 3.27 -"+..+...+++@+.@@.", 3.28 -"...+...+++.+..@.", 3.29 -"...++..++++...@."}; 3.30 +"...++.....+@@@..", 3.31 +"...+++...++@@@..", 3.32 +"....++..++++@@@.", 3.33 +"@@...++.+++...@@", 3.34 +".@@@....+++.....", 3.35 +"..@@@@...+......", 3.36 +"..@@@@@@.+......", 3.37 +"...@@@@@@.++....", 3.38 +".+...@@@@...++++", 3.39 +"++++....@@....+.", 3.40 +"++++.....@....+.", 3.41 +".++++@@..@@@.+..", 3.42 +"..+++.@@.@..@...", 3.43 +"....++..@...+@..", 3.44 +".....+..@..+.@..", 3.45 +"...+++..@..+..@.", 3.46 +"..+...+.@.+...@.", 3.47 +".+.....+++.....@", 3.48 +"@......@.+.@@...", 3.49 +".@...@@.+.@@@@.+", 3.50 +"+.@@@...+.@..@@.", 3.51 +".+.....++.....@.", 3.52 +"..+..++..+....@."};
4.1 --- a/mapcode.oph Fri Sep 02 20:14:14 2011 +0200 4.2 +++ b/mapcode.oph Sat Sep 03 00:29:43 2011 +0200 4.3 @@ -16,17 +16,17 @@ 4.4 .org $1f00 4.5 jmp main 4.6 4.7 -seeds: .byte 100, 239, 183 ; $ef, $b7, $90, $d6, $89 4.8 -start_rooms_x: .byte 5, 3, 5 4.9 -start_rooms_y: .byte 5, 8, 1 4.10 -exit_rooms_x: .byte 7, 9, 3 4.11 -exit_rooms_y: .byte 0, 0, 9 4.12 +seeds: .byte 100, 239, 183, 144 ; $ef, $b7, $90, $d6, $89 4.13 +start_rooms_x: .byte 5, 3, 5, 10 4.14 +start_rooms_y: .byte 5, 8, 1, 8 4.15 +exit_rooms_x: .byte 7, 9, 3, 3 4.16 +exit_rooms_y: .byte 0, 0, 9, 4 4.17 4.18 ; These values need to be kept in sync - the room numbers must match their 4.19 ; positions in the room array. 4.20 -key_rooms_x: .byte 1, 5, 10 4.21 -key_rooms_y: .byte 0, 2, 6 4.22 -key_rooms: .byte 1, 27, 76 ; ky*11 + kx 4.23 +key_rooms_x: .byte 1, 5, 10, 3 4.24 +key_rooms_y: .byte 0, 2, 6, 5 4.25 +key_rooms: .byte 1, 27, 76, 58 ; ky*11 + kx 4.26 4.27 treasure_table: .byte 6, 5, 7, 1, 1, 5, 2, 7, 6, 2, 1, 7, 1, 7, 8, 7 4.28 treasure_table_: .byte 0, 7, 6, 7, 7, 7, 5, 0, 6, 3, 7, 7, 5, 7, 5, 0 4.29 @@ -316,6 +316,28 @@ 4.30 do_bottom_exit: 4.31 jsr draw_bottom_line 4.32 4.33 + ; Add the final exit. 4.34 + 4.35 + lda $3dfa 4.36 + cmp #3 4.37 + bmi make_room_no_final_exit 4.38 + 4.39 + lda $78 4.40 + cmp #0 4.41 + bne make_room_no_final_exit 4.42 + 4.43 + lda $79 4.44 + cmp #2 4.45 + bne make_room_no_final_exit 4.46 + 4.47 + lda #6 4.48 + sta $57a0 4.49 + lda #7 4.50 + sta $57a1 4.51 + rts 4.52 + 4.53 + make_room_no_final_exit: 4.54 + 4.55 ; Make sure that the starting, exit, key rooms are empty. 4.56 4.57 ldx $3dfa ; level number 4.58 @@ -705,8 +727,19 @@ 4.59 lda $3dfa 4.60 and #3 ; change the tile set for later levels 4.61 tax 4.62 + 4.63 plot_not_blank_add_loop: 4.64 + 4.65 + cpx #2 4.66 + bne plot_not_blank_not_2 4.67 + dex 4.68 + jmp plot_not_blank_not_0 4.69 + 4.70 + plot_not_blank_not_2: 4.71 + beq plot_not_blank_add_loop 4.72 cpx #0 4.73 + 4.74 + plot_not_blank_not_0: 4.75 beq plot_not_blank_after_add_loop 4.76 clc 4.77 lda $70
5.1 --- a/tools/makesprites.py Fri Sep 02 20:14:14 2011 +0200 5.2 +++ b/tools/makesprites.py Sat Sep 03 00:29:43 2011 +0200 5.3 @@ -48,9 +48,9 @@ 5.4 read_xpm("images/flowers2.xpm", [(".", "0"), ("#", "1"), ("+", "2"), ("@", "3")]), 5.5 read_xpm("images/leaf6.xpm", [(".", "0"), ("+", "2")]), 5.6 read_xpm("images/leaf4.xpm", [(".", "0"), ("#", "1"), ("+", "2"), ("@", "3")]), 5.7 - read_xpm("images/bricks.xpm", [(".", "0"), ("#", "1"), ("+", "2"), ("@", "3")]), 5.8 - read_xpm("images/wall1.xpm"), 5.9 - read_xpm("images/wall2.xpm")] 5.10 + read_xpm("images/flowers3.xpm", [(".", "0"), ("@", "1"), ("+", "2"), ("#", "3")]), 5.11 + read_xpm("images/leaf5.xpm"), 5.12 + read_xpm("images/leaf3.xpm")] 5.13 5.14 chars = [read_xpm("images/left1.xpm"), 5.15 read_xpm("images/left2.xpm"),
