diff options
| -rw-r--r-- | LevelDesign/dungeon_ v1.0/traps_.png | bin | 3996 -> 16842 bytes | |||
| -rw-r--r-- | LevelDesign/tiled_files/split.tmx | 89 | ||||
| -rw-r--r-- | assets/split-overhang.png | bin | 0 -> 6491 bytes | |||
| -rw-r--r-- | assets/split.png | bin | 0 -> 20601 bytes | |||
| -rw-r--r-- | assets/text1.png | bin | 0 -> 4190 bytes | |||
| -rw-r--r-- | assets/text2.png | bin | 0 -> 4059 bytes | |||
| -rw-r--r-- | src/levels.rb | 111 |
7 files changed, 195 insertions, 5 deletions
diff --git a/LevelDesign/dungeon_ v1.0/traps_.png b/LevelDesign/dungeon_ v1.0/traps_.png Binary files differindex c3c0028..7b4bf2c 100644 --- a/LevelDesign/dungeon_ v1.0/traps_.png +++ b/LevelDesign/dungeon_ v1.0/traps_.png diff --git a/LevelDesign/tiled_files/split.tmx b/LevelDesign/tiled_files/split.tmx index 97fa2ad..aec7e6f 100644 --- a/LevelDesign/tiled_files/split.tmx +++ b/LevelDesign/tiled_files/split.tmx @@ -1,19 +1,20 @@ <?xml version="1.0" encoding="UTF-8"?> -<map version="1.5" tiledversion="1.7.2" orientation="orthogonal" renderorder="right-down" width="29" height="22" tilewidth="16" tileheight="16" infinite="0" nextlayerid="4" nextobjectid="1"> +<map version="1.5" tiledversion="1.7.2" orientation="orthogonal" renderorder="right-down" width="29" height="22" tilewidth="16" tileheight="16" infinite="0" nextlayerid="7" nextobjectid="1"> <tileset firstgid="1" source="dungeon_.tsx"/> <tileset firstgid="281" source="traps_.tsx"/> <tileset firstgid="411" source="dungeonDecoration_1.tsx"/> <tileset firstgid="859" source="dungeonDecoration_0.tsx"/> <tileset firstgid="1028" source="waterLavaAcid_.tsx"/> + <tileset firstgid="1427" source="acid_.tsx"/> <layer id="1" name="Tile Layer 1" width="29" height="22"> <data encoding="csv"> 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,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,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,0,0,0,0,0,0,0,0,0, -0,146,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,148,0, -0,160,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,162,0, -0,160,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,162,0, -0,160,161,1089,1087,1087,1087,1087,1087,1087,1087,1087,1087,1087,1087,1087,1087,1087,1087,1087,1087,1087,1090,161,161,161,213,162,0, +0,146,147,147,147,148,146,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,148,0, +0,160,213,213,213,173,177,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,162,0, +0,160,213,213,213,213,213,213,1089,1090,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,162,0, +0,160,161,1089,1087,1087,1087,1087,1088,1086,1087,1087,1087,1087,1087,1087,1087,1087,1087,1087,1087,1087,1090,161,161,161,213,162,0, 0,160,161,1069,1070,1070,1070,1070,1070,1070,1070,1070,1070,1070,1070,1070,1070,1070,1070,1070,1070,1070,1067,394,161,161,394,162,0, 0,160,161,1069,1070,1070,1070,1070,1070,1070,1070,1070,1070,1070,1070,1070,1070,1070,1070,1070,1070,1070,1067,161,161,161,161,162,0, 0,160,161,1108,1049,1049,1049,1049,1049,1049,1049,1050,1070,1070,1070,1070,1048,1049,1049,1049,1050,1070,1067,161,161,161,161,162,0, @@ -31,6 +32,32 @@ 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,0,0,0 </data> </layer> + <layer id="5" name="Tile Layer 5" width="29" height="22"> + <data encoding="csv"> +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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +</data> + </layer> <layer id="3" name="Carpet" width="29" height="22"> <data encoding="csv"> 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,0,0,0, @@ -83,4 +110,56 @@ 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,0,0,0 </data> </layer> + <layer id="4" name="Tile Layer 4" width="29" height="22"> + <data encoding="csv"> +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,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,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,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,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,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,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,384,0,0,384,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,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,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,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,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,0,0,0,0,0,0,0,0,0,0,0,0,384,384,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,0,384,384,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,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,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,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,375,0,0,0,375,0,0,0,0,0,375,335,337,337,0,0,0,0,0, +0,0,0,0,0,0,0,0,375,0,0,0,375,0,0,0,375,0,0,335,335,335,375,335,335,335,335,335,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,335,335,335,335,335,335,335,335,335,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,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,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,0,0,0,0,0,0,0,0,0,0 +</data> + </layer> + <layer id="6" name="Tile Layer 6" width="29" height="22"> + <data encoding="csv"> +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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,0,0,0,0,0,0,364,0,0,0,364,0,0,0,0,0,364,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,364,0,374,0,364,0,374,0,364,0,0,0,374,0,364,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,374,0,0,0,374,0,0,0,374,0,0,0,0,0,374,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,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,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +</data> + </layer> </map> diff --git a/assets/split-overhang.png b/assets/split-overhang.png Binary files differnew file mode 100644 index 0000000..3e102f4 --- /dev/null +++ b/assets/split-overhang.png diff --git a/assets/split.png b/assets/split.png Binary files differnew file mode 100644 index 0000000..bd97057 --- /dev/null +++ b/assets/split.png diff --git a/assets/text1.png b/assets/text1.png Binary files differnew file mode 100644 index 0000000..587468e --- /dev/null +++ b/assets/text1.png diff --git a/assets/text2.png b/assets/text2.png Binary files differnew file mode 100644 index 0000000..6a5cb14 --- /dev/null +++ b/assets/text2.png diff --git a/src/levels.rb b/src/levels.rb index 7f84302..89205a3 100644 --- a/src/levels.rb +++ b/src/levels.rb @@ -383,6 +383,116 @@ mazelevel= { ] } +splitlevel = { + map_texture: { + path: './assets/split.png', + source_rec: Rl::Rectangle.new(0,0,450,337), + dest_rec: Rl::Rectangle.new(-16,0,450*2,337*2) + }, + overhang_texture: { + path: './assets/split-overhang.png', + source_rec: Rl::Rectangle.new(0,0,450,337), + dest_rec: Rl::Rectangle.new(-16,0,450*2,337*2) + }, + player_spawn: Rl::Vector2.new(434,140), + scissor_size: Path.new( + lambda do |time| + [150+(728*(-(Math.cos(Math::PI*time)-1)/2)), + 150] + end, + lambda do |time| + [878, + 150-(10*(-(Math.cos(Math::PI*time)-1)/2))] + end, + lambda do |time| + [878-(693*(-(Math.cos(Math::PI*time)-1)/2)), + 140] + end, + lambda do |time| + [185, + 140+(45*(-(Math.cos(Math::PI*time)-1)/2))] + end, + ), + scissor_path: Path.new( + lambda do |time| + #[Math.interpolate(389,25,time), + [373-(364*(-(Math.cos(Math::PI*time)-1)/2)), + 85] + end, + lambda do |time| + [9, + 85+(417*(-(Math.cos(Math::PI*time)-1)/2))] + #Math.interpolate(85,502,time)] + end, + lambda do |time| + [9+(474*(-(Math.cos(Math::PI*time)-1)/2)), + 502] + #[Math.interpolate(25,499,time), + # Math.interpolate(502,274,time)] + end, + lambda do |time| + [483, + 502-(228*(-(Math.cos(Math::PI*time)-1)/2))] + #[Math.interpolate(25,499,time), + # Math.interpolate(502,274,time)] + end, + ), + scissor_speed: [1.0/2.0, 1.0/6.0, 1.0/6.0, 1.0/4.0], + timed_render: [ + { + path: './assets/text1.png', + time_start: 0, + time_end: 1.45, + source_rec: Rl::Rectangle.new(284,255,442,66), + dest_rec: Rl::Rectangle.new(284,255,442,66), + }, + { + path: './assets/text2.png', + time_start: 1.45, + time_end: -1, + source_rec: Rl::Rectangle.new(284,255,442,66), + dest_rec: Rl::Rectangle.new(284,255,442,66), + }, + ], + end_goal: [560,352,32,32], + walls: [ + [26,598,844,24], + [26,374,130,152], + [156,374,128,56], + [-12,76,40,546], + [28,76,840,34], + [164,110,24,32], + [258,180,28,32], + [98,212,604,88], + [508,404,46,34], + [598,404,46,34], + [642,300,60,138], + [610,438,92,86], + [354,438,188,86], + [226,468,128,56], + [354,300,156,138], + [868,76,39,546], + [762,314,44,28], + [822,500,46,34], + [698,500,48,34], + ], + damage_areas: [ + #[10, 0,0, 100,100], + ], + damage_walls: [ + [1,756,380,56,64], + [1,724,220,24,32], + [1,820,220,24,32], + [1,244,556,24,32], + [1,372,556,24,32], + [1,500,556,24,32], + [1,692,556,24,32], + [1,628,524,24,32], + [1,436,524,24,32], + [1,308,524,24,32], + ] +} + lastlevel = { map_texture: { path: './assets/Ending/ending.png', @@ -467,6 +577,7 @@ lastlevel = { Levels.push(level0) Levels.push(level1) Levels.push(mazelevel) +Levels.push(splitlevel) Levels.push(lastlevel) FECS::Sys.new('ConstructLevel') do |
