summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--LevelDesign/dungeon_ v1.0/traps_.pngbin3996 -> 16842 bytes
-rw-r--r--LevelDesign/tiled_files/split.tmx89
-rw-r--r--assets/split-overhang.pngbin0 -> 6491 bytes
-rw-r--r--assets/split.pngbin0 -> 20601 bytes
-rw-r--r--assets/text1.pngbin0 -> 4190 bytes
-rw-r--r--assets/text2.pngbin0 -> 4059 bytes
-rw-r--r--src/levels.rb111
7 files changed, 195 insertions, 5 deletions
diff --git a/LevelDesign/dungeon_ v1.0/traps_.png b/LevelDesign/dungeon_ v1.0/traps_.png
index c3c0028..7b4bf2c 100644
--- a/LevelDesign/dungeon_ v1.0/traps_.png
+++ b/LevelDesign/dungeon_ v1.0/traps_.png
Binary files differ
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
new file mode 100644
index 0000000..3e102f4
--- /dev/null
+++ b/assets/split-overhang.png
Binary files differ
diff --git a/assets/split.png b/assets/split.png
new file mode 100644
index 0000000..bd97057
--- /dev/null
+++ b/assets/split.png
Binary files differ
diff --git a/assets/text1.png b/assets/text1.png
new file mode 100644
index 0000000..587468e
--- /dev/null
+++ b/assets/text1.png
Binary files differ
diff --git a/assets/text2.png b/assets/text2.png
new file mode 100644
index 0000000..6a5cb14
--- /dev/null
+++ b/assets/text2.png
Binary files differ
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