Compare commits

...

11 commits

Author SHA1 Message Date
435e8af090 bug fix 2024-12-07 14:44:25 -07:00
196a40c18d bug fix 2024-12-07 14:42:42 -07:00
9aec85a16c new release 2024-12-07 13:00:53 -07:00
edf58fb467 jump 2024-12-07 10:48:09 -07:00
fd7ac12be7 new release 2024-12-02 12:49:07 -07:00
eaad1e7e64 Touch Controls 2024-12-01 18:45:44 -07:00
a064871ba5 touch controls (WIP) 2024-12-01 18:07:54 -07:00
03fcea9d15 I'm not Bethesda 2024-11-19 13:07:39 -07:00
253fab1175 she's a maniac 2024-11-18 12:58:50 -07:00
832561a573 gamepad disconnect warning 2024-11-14 15:25:32 -07:00
6440bf4737 ltc 2024-11-11 10:39:03 -07:00
160 changed files with 2092 additions and 207 deletions

2
.gitignore vendored
View file

@ -10,4 +10,6 @@ Midori in the Magic School.x86_64
Midori in the Magic School.arm64
Midori in the Magic School.apk.idsig
Midori in the Magic School.pck
Midori in the Magic School.aab
android/
export_presets.cfg

View file

@ -0,0 +1,3 @@
source_md5="b81b83f88b284d2ac3904c2d9f000f2f"
dest_md5="06917c681e66c081dbe52d1879f9bc8e"

Binary file not shown.

View file

@ -0,0 +1,3 @@
source_md5="a93832c16470eb8a7d20c66559e0db69"
dest_md5="7a14c6bff8406eea080859febebc1981"

Binary file not shown.

View file

@ -0,0 +1,3 @@
source_md5="59f89dc2ba8febbbd8c99234ba106910"
dest_md5="a60a39c3a5165f55d372d435461b6a50"

Binary file not shown.

View file

@ -0,0 +1,3 @@
source_md5="5b70f7a1e69f6fa81950ba92caf63767"
dest_md5="78c1b6deae3b3d26eb4a9d93d737e388"

Binary file not shown.

View file

@ -0,0 +1,3 @@
source_md5="5fee50d843aebe284d53b111ab34cb92"
dest_md5="3e01e0121cac8ed217ee2f1905b41b2f"

Binary file not shown.

View file

@ -0,0 +1,3 @@
source_md5="117d889c7d58b5469d5384e09be273af"
dest_md5="3852ad7263f8cd7b84ce862cac2e2313"

Binary file not shown.

View file

@ -0,0 +1,3 @@
source_md5="48dee5d4902b329be638748d9a4c960d"
dest_md5="f0c41f362a6a458037b4254de0429459"

View file

@ -0,0 +1,3 @@
source_md5="a07f4e70ad311e9d34b3f32d14e4f962"
dest_md5="4499725abb6f5d93f23826e4850c25b1"

View file

@ -0,0 +1,3 @@
source_md5="d77681e580d648ff01b9852f6aef491e"
dest_md5="d500a199b468b13157d828ff7e572f24"

View file

@ -0,0 +1,3 @@
source_md5="2de566f0b97ccabf3582c9496bd6a615"
dest_md5="2f30e5e81cb254c91596e95ccf88fbf7"

Binary file not shown.

View file

@ -0,0 +1,3 @@
source_md5="27af6f7c9a3d5c10be14eba5a78a3fe0"
dest_md5="e12b9e9ffacbc4f3b7117f32b7315c88"

Binary file not shown.

View file

@ -0,0 +1,3 @@
source_md5="7f3cd3f6ec7bded1321f3e47d4541d48"
dest_md5="a6d693279230dceff3674d7a8a98587a"

View file

@ -0,0 +1,3 @@
source_md5="32ab532c0877cb17ed9f5d4d3aaaf808"
dest_md5="b931dae8a54c3f5727cf34ee6ca8e6bb"

View file

@ -0,0 +1,3 @@
source_md5="d3351662cae34486db843b537be1fcf0"
dest_md5="9d478f4a7abdeffe750d005e36b8afcd"

View file

@ -0,0 +1,3 @@
source_md5="45505e278b02ef51e5885d4d06faaf85"
dest_md5="7403908dcadc6881ffc6398e744a14c7"

Binary file not shown.

View file

@ -0,0 +1,3 @@
source_md5="8404faa5f89d5f83a365d496ccb73d6c"
dest_md5="6f5be76d493b07877ff6960445317bf4"

Binary file not shown.

View file

@ -0,0 +1,3 @@
source_md5="b61af5439a256768bd68504d3344d2fb"
dest_md5="9a0d0549358dda0132a401761745ab8b"

Binary file not shown.

View file

@ -0,0 +1,3 @@
source_md5="81e19ea7fca28f432ca125a292baee52"
dest_md5="99b4aa2f99323306eb0f709b1b397cc9"

View file

@ -1,3 +1,3 @@
source_md5="3b62c139863db33dff26c7c6a431912a"
dest_md5="725173346b1d0638eda0eb3bb8a29992"
source_md5="160714ba8643abe227ecf09d0fa81a1c"
dest_md5="5db3a22b6dbdf6ef4a4b271d1e0e294d"

View file

@ -1,3 +1,3 @@
source_md5="41845decf08dcab95d58052126552087"
dest_md5="4ab96230486a269295260db949c0b788"
source_md5="3f4e188fe254373550ef049601712759"
dest_md5="2fb2eadef8e4e2a7cc7e7883c6bccf40"

View file

@ -1,3 +1,3 @@
source_md5="28322b78b5e7286d4c34ebe12cbfc6c7"
dest_md5="4b5ffcf65f041f1dad3e8353217e6dd9"
source_md5="5678a510b5e55c6eec91c67aa249c0af"
dest_md5="10cd696fd62c7d4dd732fde966fa1309"

View file

@ -1,3 +1,3 @@
source_md5="408400fef05a72ba01a349330387a973"
dest_md5="276cbd3b4ca76f457019247b1398a39f"
source_md5="62c13c865528180852250cf36e4bddd9"
dest_md5="e679c4ef4193a850df9be5bd52f871ae"

View file

@ -1,3 +1,3 @@
source_md5="69a918c8f87c7dc71b5dc6e856b09275"
dest_md5="cd6868a1081d86518587459b5e95f579"
source_md5="faf676853249058ee6b2c97f6421af4d"
dest_md5="1974fee5096133bc34f9d6c918d4c432"

View file

@ -1,3 +1,3 @@
source_md5="d4b01ea5759bbc49a04bd76e39dcb281"
dest_md5="9b9f93e0be14a4c61cc09b25cde8e051"
source_md5="b7317c9325e7dd541ad347bede0ed6c6"
dest_md5="8beb11d3b2c0d25031b1f57838164563"

View file

@ -1,3 +1,3 @@
source_md5="dc0024fcdc792040e22907ff17a13f7f"
dest_md5="631fe4922a179d5882c2ff4cf294b533"
source_md5="d40b723f3bd26405035ae4176a6d5960"
dest_md5="f0615d51475a269bdb13f12b82919d04"

View file

@ -1,3 +1,3 @@
source_md5="9d5246483521ed2339154334f5b22299"
dest_md5="ae083abbfc52fa816334094ee9b133a5"
source_md5="bb285d5de2b24424cf8ed1be6faea58b"
dest_md5="09d78de5d4d4443ed1f34bd01fc6bd77"

View file

@ -1,3 +1,3 @@
source_md5="730d70ca0db1394b3e6d0cd0f7274a85"
dest_md5="3b4c00f57a428b4fa5d0f9f8718481c5"
source_md5="2d935fa5d1d456a3f00a0e14b4bbc357"
dest_md5="7ab40893d5ed7b615b9dca0635771d14"

View file

@ -0,0 +1,3 @@
source_md5="a13e4260feeab3371c98799d370bf5d2"
dest_md5="1cc669a26f577dd388d470ea78bfaa23"

Binary file not shown.

After

Width:  |  Height:  |  Size: 256 KiB

View file

@ -0,0 +1,35 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/Lety Hashimoto clasista.jpg-de196f6fdf3365392822ebeea9a00433.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://backgounds/Lety Hashimoto clasista.jpg"
dest_files=[ "res://.import/Lety Hashimoto clasista.jpg-de196f6fdf3365392822ebeea9a00433.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
process/normal_map_invert_y=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

Binary file not shown.

After

Width:  |  Height:  |  Size: 328 KiB

View file

@ -0,0 +1,35 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/Lety Hashimoto split.jpg-fe501e28f1a6afc6ae02d16c8a5fa2ee.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://backgounds/Lety Hashimoto split.jpg"
dest_files=[ "res://.import/Lety Hashimoto split.jpg-fe501e28f1a6afc6ae02d16c8a5fa2ee.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
process/normal_map_invert_y=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

Binary file not shown.

After

Width:  |  Height:  |  Size: 244 KiB

View file

@ -0,0 +1,35 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/Midori Asgardius split.jpg-acf8aea71a22e8d655c5b5cba0ffed75.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://backgounds/Midori Asgardius split.jpg"
dest_files=[ "res://.import/Midori Asgardius split.jpg-acf8aea71a22e8d655c5b5cba0ffed75.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
process/normal_map_invert_y=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View file

@ -27,7 +27,7 @@ func _input(event):
gamepadtest.new(event)
updatehud()
# Mouse in viewport coordinates.
if Input.is_action_just_pressed("ui_accept"):
if Input.is_action_just_pressed("ui_accept") || Input.is_action_just_pressed("mclick"):
#print("Mouse Click/Unclick at: ", event.position)
get_tree().change_scene("res://title.tscn")
#_title()

View file

@ -15,5 +15,5 @@ func _process(delta: float) -> void:
pass
func _input(event):
if Input.is_action_just_pressed("ui_accept"):
if Input.is_action_just_pressed("ui_accept") || Input.is_action_just_pressed("mclick"):
get_tree().change_scene("res://title.tscn")

View file

@ -32,7 +32,7 @@ func _process(delta):
func _input(event):
updatehud()
# Mouse in viewport coordinates.
if Input.is_action_just_pressed("ui_accept"):
if Input.is_action_just_pressed("ui_accept") || Input.is_action_just_pressed("mclick"):
#print("Mouse Click/Unclick at: ", event.position)
_title()
@ -42,7 +42,7 @@ func _title():
if Global.debug:
get_tree().change_scene("res://levels/ui/scene.tscn")
else:
if Global.cplace == [1, 1, 17]:
if Global.cplace == [1, 2, 17]:
Global.cplace = [0, 0, 0]
get_tree().change_scene("res://backgounds/wip.tscn")
else:

View file

@ -24,7 +24,7 @@ func _process(delta):
func _input(event):
updatehud()
# Mouse in viewport coordinates.
if Input.is_action_just_pressed("ui_accept"):
if Input.is_action_just_pressed("ui_accept") || Input.is_action_just_pressed("mclick"):
#print("Mouse Click/Unclick at: ", event.position)
_title()

View file

@ -1,24 +0,0 @@
[preset.0]
name="Linux/X11"
platform="Linux/X11"
runnable=true
custom_features=""
export_filter="all_resources"
include_filter=""
exclude_filter=""
export_path="./Midori in the Magic School.x86_64"
script_export_mode=1
script_encryption_key=""
[preset.0.options]
custom_template/debug=""
custom_template/release=""
binary_format/architecture="x86_64"
binary_format/embed_pck=false
texture_format/bptc=false
texture_format/s3tc=true
texture_format/etc=false
texture_format/etc2=false
texture_format/no_bptc_fallbacks=true

View file

@ -12,18 +12,19 @@ var bossready = false
var playerx
var playery
var ccutscene = null
const cutscenes = [["res://levels/Cutscenes/opening/aboutkaizo.tscn", "res://levels/Cutscenes/opening/midorihello.tscn", 18, false], ["res://levels/Cutscenes/opening/midorihello.tscn", "res://levels/Cutscenes/opening/fearlessmidori.tscn", 18, false], ["res://levels/Cutscenes/opening/fearlessmidori.tscn", "res://levels/Cutscenes/opening/midoriwaterfall.tscn", 0, false], ["res://levels/Cutscenes/opening/midoriwaterfall.tscn", "res://levels/Cutscenes/opening/midorireading.tscn", 0, false], ["res://levels/Cutscenes/opening/midorireading.tscn", "res://levels/Cutscenes/opening/boomboomtorofi.tscn", 0, false], ["res://levels/Cutscenes/opening/boomboomtorofi.tscn", "res://levels/ui/gameplay.tscn", 0, true], ["res://levels/Cutscenes/unfunaversary/punishment.tscn", "res://levels/Cutscenes/unfunaversary/sadness.tscn", 1, false], ["res://levels/Cutscenes/unfunaversary/sadness.tscn", "res://levels/Cutscenes/unfunaversary/r3.tscn", 1, false], ["res://levels/Cutscenes/unfunaversary/r3.tscn", "res://levels/Cutscenes/unfunaversary/firstclass.tscn", 1, false], ["res://levels/Cutscenes/unfunaversary/firstclass.tscn", "res://backgounds/result.tscn", 5, true], ["res://levels/Cutscenes/Honker Railway/forest.tscn", "res://levels/Cutscenes/Honker Railway/lordlytrashcan.tscn", 19, false], ["res://levels/Cutscenes/Honker Railway/lordlytrashcan.tscn", "res://levels/Cutscenes/Honker Railway/railway.tscn", 19, false], ["res://levels/Cutscenes/Honker Railway/railway.tscn", "res://levels/ui/gameplay.tscn", 19, true], ["res://levels/Cutscenes/Troublemaker/buildings.tscn", "res://levels/Cutscenes/Troublemaker/pamela.tscn", 18, false], ["res://levels/Cutscenes/Troublemaker/pamela.tscn", "res://levels/Cutscenes/Troublemaker/kungfu.tscn", 18, false], ["res://levels/Cutscenes/Troublemaker/kungfu.tscn", "res://levels/ui/gameplay.tscn", 6, true]]
var difdamage = 0
const cutscenes = [["res://levels/Cutscenes/opening/aboutkaizo.tscn", "res://levels/Cutscenes/opening/midorihello.tscn", 18, false], ["res://levels/Cutscenes/opening/midorihello.tscn", "res://levels/Cutscenes/opening/fearlessmidori.tscn", 18, false], ["res://levels/Cutscenes/opening/fearlessmidori.tscn", "res://levels/Cutscenes/opening/midoriwaterfall.tscn", 0, false], ["res://levels/Cutscenes/opening/midoriwaterfall.tscn", "res://levels/Cutscenes/opening/midorireading.tscn", 0, false], ["res://levels/Cutscenes/opening/midorireading.tscn", "res://levels/Cutscenes/opening/boomboomtorofi.tscn", 0, false], ["res://levels/Cutscenes/opening/boomboomtorofi.tscn", "res://levels/ui/gameplay.tscn", 0, true], ["res://levels/Cutscenes/unfunaversary/punishment.tscn", "res://levels/Cutscenes/unfunaversary/sadness.tscn", 1, false], ["res://levels/Cutscenes/unfunaversary/sadness.tscn", "res://levels/Cutscenes/unfunaversary/r3.tscn", 1, false], ["res://levels/Cutscenes/unfunaversary/r3.tscn", "res://levels/Cutscenes/unfunaversary/firstclass.tscn", 1, false], ["res://levels/Cutscenes/unfunaversary/firstclass.tscn", "res://backgounds/result.tscn", 5, true], ["res://levels/Cutscenes/Honker Railway/forest.tscn", "res://levels/Cutscenes/Honker Railway/lordlytrashcan.tscn", 19, false], ["res://levels/Cutscenes/Honker Railway/lordlytrashcan.tscn", "res://levels/Cutscenes/Honker Railway/railway.tscn", 19, false], ["res://levels/Cutscenes/Honker Railway/railway.tscn", "res://levels/ui/gameplay.tscn", 19, true], ["res://levels/Cutscenes/Troublemaker/buildings.tscn", "res://levels/Cutscenes/Troublemaker/pamela.tscn", 18, false], ["res://levels/Cutscenes/Troublemaker/pamela.tscn", "res://levels/Cutscenes/Troublemaker/kungfu.tscn", 18, false], ["res://levels/Cutscenes/Troublemaker/kungfu.tscn", "res://levels/ui/gameplay.tscn", 6, true], ["res://levels/Cutscenes/Troublemakerp2/Lety.tscn", "res://levels/Cutscenes/Troublemakerp2/Fall.tscn", 18, false], ["res://levels/Cutscenes/Troublemakerp2/Fall.tscn", "res://levels/Cutscenes/Troublemakerp2/midori.tscn", 6, false], ["res://levels/Cutscenes/Troublemakerp2/midori.tscn", "res://levels/ui/gameplay.tscn", 6, true]]
const pcnames = ["Midori Asgardius", "Diana Asgardius", null, "Kimberly Arch", null, null, null, "Pamela Hashimoto", "Lety Hashimoto", "Natasha Dostoyevsky"]
const npcnames = ["Lily", null, null, "Kimberly Arch", null, null, null, null, null, "Natasha Dostoyevsky"]
const npcnames = ["Lily", "Railway Girl", null, "Kimberly Arch", null, null, null, null, null, "Natasha Dostoyevsky"]
const pcfaces = [["res://sprites/common/midori/face.png"], ["res://sprites/common/tuna/face.png"], [null], ["res://sprites/common/kimberly/face.png"], [null], [null], [null], ["res://sprites/ceres/pamela/face.png"], ["res://sprites/ceres/lety/face.png"], ["res://sprites/common/natasha/face.png"]]
const hudfaces = [["res://sprites/common/midori/facehud.png"], ["res://sprites/common/tuna/facehud.png"], [null], ["res://sprites/common/kimberly/facehud.png"], [null], [null], [null], ["res://sprites/ceres/pamela/facehud.png"], ["res://sprites/ceres/lety/facehud.png"], ["res://sprites/common/natasha/facehud.png"]]
const npcfaces = ["res://sprites/common/midori/face.png",null, null, "res://sprites/common/kimberly/face.png", null, null, null, null, null, "res://sprites/common/natasha/face.png"]
const npcfaces = ["res://sprites/common/midori/face.png","res://sprites/ceres/railway/face.png", null, "res://sprites/common/kimberly/face.png", null, null, null, null, null, "res://sprites/common/natasha/face.png"]
const basestats = [[800, 200, 52, 12, 136, 25, 800], [1094, 200, 54, 7, 106, 48, 600], [null], [1143, 200, 59, 5, 117, 18, 650], [null], [null], [null], [null], [null], [1026, 200, 87, 7, 105, 49, 115]]
var cstats = [[800, 200, 52, 12, 136, 25, 800], [1094, 200, 54, 7, 106, 48, 600], [null], [1143, 200, 59, 5, 117, 18, 650], [null], [null], [null], [null], [null], [1026, 200, 87, 7, 105, 49, 115]]
var dstats = [[800, 200, 52, 12, 136, 25, 800], [1094, 200, 54, 7, 106, 48, 600], [null], [1143, 200, 59, 5, 117, 18, 650], [null], [null], [null], [null], [null], [1026, 200, 87, 7, 105, 49, 115]]
var mstats = [[null, null, null, null, null, null, null], [null, null, null, null, null, null, null], [null, null, null, null, null, null, null], [null, null, null, null, null, null, null], [null, null, null, null, null, null, null], [null, null, null, null, null, null, null], [null, null, null, null, null, null, null], [null, null, null, null, null, null, null], [null, null, null, null, null, null, null], [null, null, null, null, null, null, null]]
var cdialog = []
const places = [[[["res://levels/Ceres/map.tscn", 5, false], [null, null, false]], [["res://levels/Testrooms/bullethell.tscn", 11, true], ["res://levels/Testrooms/lilytest.tscn", 6, false]], [["res://levels/Testrooms/dialogtest.tscn", 19, false], ["res://levels/Testrooms/testspawn.tscn", 2 ,false]]], [null, [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, ["res://levels/Ceres/troublemakers.tscn", 6, true]], null, null, null, null, null, null, [null, null, null, null, null, null, null, null, null, null, null, ["res://levels/Ceres/honkerrailway.tscn", 19, false]], null, null, [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, ["res://levels/Ceres/L20.tscn", 3, true]]]]
const places = [[[["res://levels/Ceres/map.tscn", 5, false], [null, null, false]], [["res://levels/Testrooms/bullethell.tscn", 11, true], ["res://levels/Testrooms/lilytest.tscn", 6, false]], [["res://levels/Testrooms/dialogtest.tscn", 19, false], ["res://levels/Testrooms/testspawn.tscn", 2 ,false]]], [null, [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, ["res://levels/Ceres/troublemakers.tscn", 6, true]], [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, ["res://levels/Ceres/troublemakersp2.tscn", 6, true]], null, null, null, null, null, [null, null, null, null, null, null, null, null, null, null, null, ["res://levels/Ceres/honkerrailway.tscn", 19, false]], null, null, [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, ["res://levels/Ceres/L20.tscn", 3, true]]]]
var cplace = [0,2,1]
var dplace = [null, null, null]
const pbbullets = ["res://sprites/common/bullet/fireball.tscn", "res://sprites/common/bullet/aero.tscn", null, "res://sprites/common/bullet/arrow.tscn", null, null, null, null, null, "res://sprites/common/bullet/snowflake.tscn"]
@ -48,10 +49,11 @@ var owlocation = [[null, null], [null, null]]
const musictracks = ["res://music/midorinoyume.ogg", "res://music/seahorse.ogg", "res://music/chinesegoat.ogg", "res://music/doyoufeelold.ogg", "res://music/doyiuneedahealer.ogg", "res://music/adayatceres.ogg", "res://music/twintroublemakers.ogg", "res://music/easyquiz.ogg", "res://music/neowave.ogg", "res://music/multivectorsubmarines.ogg", "res://music/halfgeniegirls.ogg", "res://music/rusianmaverickfairy.ogg", "res://music/blacksmithofdestruction.ogg", "res://music/shininglikefireworks.ogg", "res://music/sadtrashcan.ogg", "res://music/akikonotegami.ogg", "res://music/asadcat.ogg", "res://music/lilydesire.ogg", "res://music/scholartrip.ogg", "res://music/quantumice.ogg", "res://music/unreeeal.ogg", "res://music/alsa.ogg", "res://music/silverblue.ogg"]
const sfxtracks = ["res://sfx/braindamage.wav", "res://sfx/gaugefill.wav", "res://sfx/boomboombakudan.wav"]
var debug = false
const release = "R0.3.0-beta"
const release = "R0.3.3-beta"
var sk = false
var gamepad = 0
var quest = [0, 0, 0, 0, 0, 0]
var isresume = false
# Called when the node enters the scene tree for the first time.
func _ready():
pass # Replace with function body.

View file

@ -1,6 +1,6 @@
extends Node2D
var talk
# Called when the node enters the scene tree for the first time.
func _ready():
if !Global.debug:
@ -15,8 +15,36 @@ func _ready():
func _process(delta):
pass
func _input(event):
if Input.is_action_just_pressed("ui_accept") && Global.cdialog != []:
if Global.live == 1:
Global.live = 0
talk = load("res://levels/ui/talk.tscn").instance()
call_deferred("_talk")
func _statrebase():
for i in 4:
if Global.party[i][0] != null:
for j in 7:
Global.cstats[Global.party[i][0]][j] = Global.basestats[Global.party[i][0]][j] * Global.level[Global.dparty[i][0]]
func _on_Ltctalk_body_entered(body):
if body.is_in_group("players"):
Global.cdialog = [[tr("DIALOG_HKR_0"), true, 0, 0]]
func _on_Ltctalk_body_exited(body):
Global.cdialog = []
func _on_Rgtalk_body_entered(body):
if body.is_in_group("players"):
Global.cdialog = [[tr("DIALOG_HKR_1"), false, 1]]
func _on_Rgtalk_body_exited(body):
Global.cdialog = []
func _talk():
get_tree().root.add_child(talk)

View file

@ -1,4 +1,4 @@
[gd_scene load_steps=20 format=2]
[gd_scene load_steps=22 format=2]
[ext_resource path="res://sprites/ceres/railway/sprite.png" type="Texture" id=1]
[ext_resource path="res://sprites/ceres/items/hkr.png" type="Texture" id=2]
@ -33,7 +33,7 @@ tracks/0/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 1,
"values": [ 8 ]
"values": [ 0 ]
}
[sub_resource type="Animation" id=7]
@ -170,6 +170,12 @@ tracks/0/keys = {
"values": [ 13, 12, 14 ]
}
[sub_resource type="RectangleShape2D" id=15]
extents = Vector2( 43, 91 )
[sub_resource type="RectangleShape2D" id=16]
extents = Vector2( 48.5, 146 )
[node name="Honkerrailway" type="Node2D"]
script = ExtResource( 5 )
@ -244,5 +250,24 @@ anims/swalk = SubResource( 12 )
anims/widle = SubResource( 13 )
anims/wwalk = SubResource( 14 )
[node name="Ltctalk" type="Area2D" parent="."]
position = Vector2( 384, 186 )
[node name="CollisionShape2D" type="CollisionShape2D" parent="Ltctalk"]
position = Vector2( -8, 1 )
shape = SubResource( 15 )
[node name="Rgtalk" type="Area2D" parent="."]
position = Vector2( 473, 133 )
[node name="CollisionShape2D" type="CollisionShape2D" parent="Rgtalk"]
position = Vector2( 2.5, 16 )
shape = SubResource( 16 )
[node name="Player" parent="." instance=ExtResource( 3 )]
position = Vector2( 635, 586 )
[connection signal="body_entered" from="Ltctalk" to="." method="_on_Ltctalk_body_entered"]
[connection signal="body_exited" from="Ltctalk" to="." method="_on_Ltctalk_body_exited"]
[connection signal="body_entered" from="Rgtalk" to="." method="_on_Rgtalk_body_entered"]
[connection signal="body_exited" from="Rgtalk" to="." method="_on_Rgtalk_body_exited"]

View file

@ -23,7 +23,7 @@ func _process(delta):
pass
func _input(event):
if Input.is_action_just_pressed("ui_accept") && travel != null:
if Input.is_action_just_pressed("ui_accept") && travel != null && Global.live == 1:
if Global.ccutscene == null:
if Global.debug:
Global.dplace = travel

View file

@ -23,10 +23,10 @@ tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0 ),
"times": PoolRealArray( 0.001 ),
"transitions": PoolRealArray( 1 ),
"update": 1,
"values": [ 8 ]
"values": [ 0 ]
}
[sub_resource type="Animation" id=5]
@ -175,7 +175,7 @@ tracks/0/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 1,
"values": [ 8 ]
"values": [ 0 ]
}
[sub_resource type="Animation" id=14]
@ -353,7 +353,6 @@ position = Vector2( 615, -444 )
texture = ExtResource( 1 )
hframes = 4
vframes = 4
frame = 8
[node name="CollisionShape2D" type="CollisionShape2D" parent="Railwaygirl"]
shape = SubResource( 3 )
@ -376,7 +375,6 @@ position = Vector2( -651, 133 )
texture = ExtResource( 2 )
hframes = 4
vframes = 4
frame = 8
[node name="CollisionShape2D" type="CollisionShape2D" parent="Pamela"]
shape = SubResource( 3 )

View file

@ -28,11 +28,9 @@ func _input(event):
func _winner():
Global.result[0] = 1
Global.quest[2] = 3
Global.cdialog = [[tr("DIALOG_TROUBLEMAKER_3"), true, 0, 0], [tr("DIALOG_TROUBLEMAKER_4"), true, 7, 0], [tr("DIALOG_TROUBLEMAKER_5"), true, 0, 0]]
Global.live = 3
#Global.ccutscene = 6
Global.ccutscene = null
Global.ccutscene = 16
#talk.queue_free()
talk = load("res://levels/ui/talk.tscn").instance()
call_deferred("_talk")

View file

@ -0,0 +1,54 @@
extends Node2D
var talk = load("res://levels/ui/talk.tscn").instance()
var boss
var player
# Called when the node enters the scene tree for the first time.
func _ready():
boss = $Lety
player = $Player
boss.add_to_group("boss")
Global.cdialog = [[tr("DIALOG_TROUBLEMAKER_6"), true, 0, 0], ["...", true, 8, 0], ["...", true, 0, 0]]
Global.live = 0
call_deferred("_talk")
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta):
pass
func _physics_process(delta):
pass
func _input(event):
if Global.cboss[1] <= 0 && Global.live == 1:
_winner()
if Global.cdialog.size() != 0 && Global.live == 1:
get_tree().root.remove_child(talk)
Global.cdialog = []
func _winner():
Global.result[0] = 1
Global.quest[2] = 3
Global.quest[3] = 1
Global.cdialog = [[tr("DIALOG_TROUBLEMAKER_7"), true, 0, 0], ["...", true, 8, 0], ["...", true, 0, 0]]
Global.live = 3
#Global.ccutscene = 6
Global.ccutscene = null
#talk.queue_free()
talk = load("res://levels/ui/talk.tscn").instance()
call_deferred("_talk")
func _statrebase():
if Global.debug:
for i in 4:
if Global.dparty[i][0] != null:
for j in 7:
Global.mstats[Global.dparty[i][0]][j] = Global.basestats[Global.dparty[i][0]][j] * Global.dlevel[Global.dparty[i][0]]
else:
for i in 4:
if Global.party[i][0] != null:
for j in 7:
Global.mstats[Global.party[i][0]][j] = Global.basestats[Global.party[i][0]][j] * Global.level[Global.dparty[i][0]]
func _talk():
get_tree().root.add_child(talk)

View file

@ -0,0 +1,49 @@
[gd_scene load_steps=6 format=2]
[ext_resource path="res://levels/Ceres/troublemakersp2.gd" type="Script" id=1]
[ext_resource path="res://sprites/ceres/lety/lety.tscn" type="PackedScene" id=2]
[ext_resource path="res://sprites/common/player/player.tscn" type="PackedScene" id=3]
[sub_resource type="RectangleShape2D" id=1]
extents = Vector2( 18.5, 446.5 )
[sub_resource type="RectangleShape2D" id=2]
extents = Vector2( 676, 20.5 )
[node name="Troublemakers Part 2" type="Node2D"]
script = ExtResource( 1 )
[node name="ColorRect" type="ColorRect" parent="."]
margin_right = 1280.0
margin_bottom = 720.0
color = Color( 0, 0.619608, 0.270588, 1 )
[node name="StaticBody2D" type="StaticBody2D" parent="."]
[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D"]
position = Vector2( -18, 373.5 )
shape = SubResource( 1 )
[node name="StaticBody2D2" type="StaticBody2D" parent="."]
[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D2"]
position = Vector2( 1299, 376 )
shape = SubResource( 1 )
[node name="StaticBody2D3" type="StaticBody2D" parent="."]
[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D3"]
position = Vector2( 641, -21 )
shape = SubResource( 2 )
[node name="StaticBody2D4" type="StaticBody2D" parent="."]
[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D4"]
position = Vector2( 640, 741 )
shape = SubResource( 2 )
[node name="Lety" parent="." instance=ExtResource( 2 )]
position = Vector2( 644, 133 )
[node name="Player" parent="." instance=ExtResource( 3 )]
position = Vector2( 635, 586 )

View file

@ -0,0 +1,24 @@
[gd_scene load_steps=4 format=2]
[ext_resource path="res://backgounds/Lety Hashimoto split.jpg" type="Texture" id=1]
[ext_resource path="res://fonts/start.tres" type="DynamicFont" id=2]
[ext_resource path="res://levels/bottomhud.tscn" type="PackedScene" id=3]
[node name="Pamela" type="Node2D"]
[node name="TextureRect" type="TextureRect" parent="."]
margin_right = 40.0
margin_bottom = 40.0
texture = ExtResource( 1 )
[node name="Label" type="Label" parent="."]
margin_left = 16.0
margin_top = 598.0
margin_right = 1263.0
margin_bottom = 703.0
custom_colors/font_color = Color( 0, 0, 0, 1 )
custom_fonts/font = ExtResource( 2 )
text = "CUTSCENE_4_1"
align = 1
[node name="Bottomhud" parent="." instance=ExtResource( 3 )]

View file

@ -0,0 +1,23 @@
[gd_scene load_steps=4 format=2]
[ext_resource path="res://backgounds/Lety Hashimoto clasista.jpg" type="Texture" id=1]
[ext_resource path="res://fonts/start.tres" type="DynamicFont" id=2]
[ext_resource path="res://levels/bottomhud.tscn" type="PackedScene" id=3]
[node name="Buildings" type="Node2D"]
[node name="TextureRect" type="TextureRect" parent="."]
margin_right = 40.0
margin_bottom = 40.0
texture = ExtResource( 1 )
[node name="Label" type="Label" parent="."]
margin_left = 16.0
margin_top = 598.0
margin_right = 1263.0
margin_bottom = 703.0
custom_fonts/font = ExtResource( 2 )
text = "CUTSCENE_4_0"
align = 1
[node name="Bottomhud" parent="." instance=ExtResource( 3 )]

View file

@ -0,0 +1,12 @@
extends Node2D
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
if !Global.debug:
Global.cplace = [1, 2, 17]
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void:
pass

View file

@ -0,0 +1,26 @@
[gd_scene load_steps=5 format=2]
[ext_resource path="res://backgounds/Midori Asgardius split.jpg" type="Texture" id=1]
[ext_resource path="res://levels/bottomhud.tscn" type="PackedScene" id=2]
[ext_resource path="res://fonts/start.tres" type="DynamicFont" id=3]
[ext_resource path="res://levels/Cutscenes/Troublemakerp2/midori.gd" type="Script" id=4]
[node name="Midori" type="Node2D"]
script = ExtResource( 4 )
[node name="TextureRect" type="TextureRect" parent="."]
margin_right = 40.0
margin_bottom = 40.0
texture = ExtResource( 1 )
[node name="Label" type="Label" parent="."]
margin_left = 16.0
margin_top = 598.0
margin_right = 1263.0
margin_bottom = 703.0
custom_colors/font_color = Color( 0, 0, 0, 1 )
custom_fonts/font = ExtResource( 3 )
text = "CUTSCENE_4_2"
align = 1
[node name="Bottomhud" parent="." instance=ExtResource( 2 )]

View file

@ -1,11 +1,58 @@
extends Node2D
var hkr
var troublemaker
var travel = null
# Called when the node enters the scene tree for the first time.
func _ready():
pass # Replace with function body.
hkr = $Railwaygirl
troublemaker = $Pamela
if !Global.debug:
_statrebase()
Global.live = 1
if Global.quest[1] == 0:
hkr.queue_free()
if Global.quest[2] == 0:
troublemaker.queue_free()
#pass # Replace with function body.
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta):
pass
func _input(event):
if Input.is_action_just_pressed("ui_accept") && travel != null:
if Global.ccutscene == null:
if Global.debug:
Global.dplace = travel
else:
Global.cplace = travel
Global.live = 5
else:
Global.live = 8
func _statrebase():
for i in 4:
if Global.party[i][0] != null:
for j in 7:
Global.cstats[Global.party[i][0]][j] = Global.basestats[Global.party[i][0]][j] * Global.level[Global.dparty[i][0]]
func _on_railwaygirl_body_entered(body: Node2D) -> void:
Global.ccutscene = 10
travel = [1, 8, 11]
func _on_railwaygirl_body_exited(body: Node2D) -> void:
travel = null
func _on_pamela_body_entered(body: Node2D) -> void:
Global.ccutscene = 13
travel = [1, 1, 17]
func _on_pamela_body_exited(body: Node2D) -> void:
travel = null

View file

@ -1,46 +1,399 @@
[gd_scene load_steps=6 format=3 uid="uid://bqthmqpx51x01"]
[gd_scene load_steps=26 format=2]
[ext_resource type="Script" path="res://levels/Testrooms/testspawn.gd" id="1_82nl8"]
[ext_resource type="Texture2D" uid="uid://kxvipok4tnuw" path="res://backgounds/wip.jpg" id="2_nugl5"]
[ext_resource type="PackedScene" uid="uid://cehe6sm8ly06u" path="res://sprites/common/player/player.tscn" id="3_0rw86"]
[ext_resource path="res://sprites/ceres/railway/sprite.png" type="Texture" id=1]
[ext_resource path="res://sprites/ceres/pamela/sprite.png" type="Texture" id=2]
[ext_resource path="res://sprites/common/player/player.tscn" type="PackedScene" id=3]
[ext_resource path="res://levels/Earth/map.gd" type="Script" id=4]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_nytv7"]
size = Vector2(20, 761)
[sub_resource type="RectangleShape2D" id=1]
extents = Vector2( 18.5, 721 )
[sub_resource type="RectangleShape2D" id="RectangleShape2D_wkumn"]
size = Vector2(1283, 20)
[sub_resource type="RectangleShape2D" id=2]
extents = Vector2( 1167.5, 20.5 )
[node name="Testspawn" type="Node2D"]
script = ExtResource("1_82nl8")
[sub_resource type="RectangleShape2D" id=3]
extents = Vector2( 45, 128 )
[node name="WIP" type="TextureRect" parent="."]
offset_right = 40.0
offset_bottom = 40.0
texture = ExtResource("2_nugl5")
[sub_resource type="Animation" id=4]
length = 0.001
tracks/0/type = "value"
tracks/0/path = NodePath("Sprite:frame")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0.001 ),
"transitions": PoolRealArray( 1 ),
"update": 1,
"values": [ 0 ]
}
[sub_resource type="Animation" id=5]
resource_name = "eidle"
loop = true
tracks/0/type = "value"
tracks/0/path = NodePath("Sprite:frame")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 1,
"values": [ 8 ]
}
[sub_resource type="Animation" id=6]
resource_name = "ewalk"
length = 0.3
loop = true
step = 0.033
tracks/0/type = "value"
tracks/0/path = NodePath("Sprite:frame")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 0.099, 0.198 ),
"transitions": PoolRealArray( 1, 1, 1 ),
"update": 1,
"values": [ 9, 8, 10 ]
}
[sub_resource type="Animation" id=7]
resource_name = "nidle"
loop = true
tracks/0/type = "value"
tracks/0/path = NodePath("Sprite:frame")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0.1 ),
"transitions": PoolRealArray( 1 ),
"update": 1,
"values": [ 4 ]
}
[sub_resource type="Animation" id=8]
resource_name = "nwalk"
length = 0.3
loop = true
tracks/0/type = "value"
tracks/0/path = NodePath("Sprite:frame")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 0.1, 0.2 ),
"transitions": PoolRealArray( 1, 1, 1 ),
"update": 1,
"values": [ 5, 4, 6 ]
}
[sub_resource type="Animation" id=9]
resource_name = "sidle"
loop = true
tracks/0/type = "value"
tracks/0/path = NodePath("Sprite:frame")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0.5 ),
"transitions": PoolRealArray( 1 ),
"update": 1,
"values": [ 0 ]
}
[sub_resource type="Animation" id=10]
resource_name = "swalk"
length = 0.3
loop = true
tracks/0/type = "value"
tracks/0/path = NodePath("Sprite:frame")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 0.1, 0.2 ),
"transitions": PoolRealArray( 1, 1, 1 ),
"update": 1,
"values": [ 1, 0, 2 ]
}
[sub_resource type="Animation" id=11]
resource_name = "widle"
length = 0.3
loop = true
tracks/0/type = "value"
tracks/0/path = NodePath("Sprite:frame")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 1,
"values": [ 12 ]
}
[sub_resource type="Animation" id=12]
resource_name = "wwalk"
length = 0.3
loop = true
tracks/0/type = "value"
tracks/0/path = NodePath("Sprite:frame")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 0.1, 0.2 ),
"transitions": PoolRealArray( 1, 1, 1 ),
"update": 1,
"values": [ 13, 12, 14 ]
}
[sub_resource type="Animation" id=13]
length = 0.001
tracks/0/type = "value"
tracks/0/path = NodePath("Sprite:frame")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 1,
"values": [ 0 ]
}
[sub_resource type="Animation" id=14]
resource_name = "eidle"
loop = true
tracks/0/type = "value"
tracks/0/path = NodePath("Sprite:frame")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 1,
"values": [ 8 ]
}
[sub_resource type="Animation" id=15]
resource_name = "ewalk"
length = 0.3
loop = true
step = 0.033
tracks/0/type = "value"
tracks/0/path = NodePath("Sprite:frame")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 0.099, 0.198 ),
"transitions": PoolRealArray( 1, 1, 1 ),
"update": 1,
"values": [ 9, 8, 10 ]
}
[sub_resource type="Animation" id=16]
resource_name = "nidle"
loop = true
tracks/0/type = "value"
tracks/0/path = NodePath("Sprite:frame")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0.1 ),
"transitions": PoolRealArray( 1 ),
"update": 1,
"values": [ 4 ]
}
[sub_resource type="Animation" id=17]
resource_name = "nwalk"
length = 0.3
loop = true
tracks/0/type = "value"
tracks/0/path = NodePath("Sprite:frame")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 0.1, 0.2 ),
"transitions": PoolRealArray( 1, 1, 1 ),
"update": 1,
"values": [ 5, 4, 6 ]
}
[sub_resource type="Animation" id=18]
resource_name = "sidle"
loop = true
tracks/0/type = "value"
tracks/0/path = NodePath("Sprite:frame")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0.5 ),
"transitions": PoolRealArray( 1 ),
"update": 1,
"values": [ 0 ]
}
[sub_resource type="Animation" id=19]
resource_name = "swalk"
length = 0.3
loop = true
tracks/0/type = "value"
tracks/0/path = NodePath("Sprite:frame")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 0.1, 0.2 ),
"transitions": PoolRealArray( 1, 1, 1 ),
"update": 1,
"values": [ 1, 0, 2 ]
}
[sub_resource type="Animation" id=20]
resource_name = "widle"
length = 0.3
loop = true
tracks/0/type = "value"
tracks/0/path = NodePath("Sprite:frame")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 1,
"values": [ 12 ]
}
[sub_resource type="Animation" id=21]
resource_name = "wwalk"
length = 0.3
loop = true
tracks/0/type = "value"
tracks/0/path = NodePath("Sprite:frame")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 0.1, 0.2 ),
"transitions": PoolRealArray( 1, 1, 1 ),
"update": 1,
"values": [ 13, 12, 14 ]
}
[node name="Map" type="Node2D"]
script = ExtResource( 4 )
[node name="ColorRect" type="ColorRect" parent="."]
margin_left = -939.0
margin_top = -613.0
margin_right = 1282.0
margin_bottom = 715.0
color = Color( 0.211765, 0.552941, 0.376471, 1 )
[node name="StaticBody2D" type="StaticBody2D" parent="."]
[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D"]
position = Vector2(-11, 361.5)
shape = SubResource("RectangleShape2D_nytv7")
position = Vector2( -958, 58 )
shape = SubResource( 1 )
[node name="StaticBody2D2" type="StaticBody2D" parent="."]
[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D2"]
position = Vector2(1293, 358)
shape = SubResource("RectangleShape2D_nytv7")
position = Vector2( 1299, 77.75 )
shape = SubResource( 1 )
[node name="StaticBody2D3" type="StaticBody2D" parent="."]
[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D3"]
position = Vector2(641.5, -9)
shape = SubResource("RectangleShape2D_wkumn")
position = Vector2( 186.5, -634 )
shape = SubResource( 2 )
[node name="StaticBody2D4" type="StaticBody2D" parent="."]
[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D4"]
position = Vector2(644, 731)
shape = SubResource("RectangleShape2D_wkumn")
position = Vector2( 159, 736 )
shape = SubResource( 2 )
[node name="Player" parent="." instance=ExtResource("3_0rw86")]
position = Vector2(633, 590)
[node name="Railwaygirl" type="Area2D" parent="."]
position = Vector2( 615, -444 )
[node name="Sprite" type="Sprite" parent="Railwaygirl"]
texture = ExtResource( 1 )
hframes = 4
vframes = 4
[node name="CollisionShape2D" type="CollisionShape2D" parent="Railwaygirl"]
shape = SubResource( 3 )
[node name="AnimationPlayer" type="AnimationPlayer" parent="Railwaygirl"]
anims/RESET = SubResource( 4 )
anims/eidle = SubResource( 5 )
anims/ewalk = SubResource( 6 )
anims/nidle = SubResource( 7 )
anims/nwalk = SubResource( 8 )
anims/sidle = SubResource( 9 )
anims/swalk = SubResource( 10 )
anims/widle = SubResource( 11 )
anims/wwalk = SubResource( 12 )
[node name="Pamela" type="Area2D" parent="."]
position = Vector2( -651, 133 )
[node name="Sprite" type="Sprite" parent="Pamela"]
texture = ExtResource( 2 )
hframes = 4
vframes = 4
[node name="CollisionShape2D" type="CollisionShape2D" parent="Pamela"]
shape = SubResource( 3 )
[node name="AnimationPlayer" type="AnimationPlayer" parent="Pamela"]
anims/RESET = SubResource( 13 )
anims/eidle = SubResource( 14 )
anims/ewalk = SubResource( 15 )
anims/nidle = SubResource( 16 )
anims/nwalk = SubResource( 17 )
anims/sidle = SubResource( 18 )
anims/swalk = SubResource( 19 )
anims/widle = SubResource( 20 )
anims/wwalk = SubResource( 21 )
[node name="Player" parent="." instance=ExtResource( 3 )]
position = Vector2( 635, 586 )
[connection signal="body_entered" from="Railwaygirl" to="." method="_on_railwaygirl_body_entered"]
[connection signal="body_exited" from="Railwaygirl" to="." method="_on_railwaygirl_body_exited"]
[connection signal="body_entered" from="Pamela" to="." method="_on_pamela_body_entered"]
[connection signal="body_exited" from="Pamela" to="." method="_on_pamela_body_exited"]

View file

@ -6,6 +6,7 @@ var bgsound := AudioStreamPlayer.new()
var sfx1 := AudioStreamPlayer.new()
var musictrack
var isboss
var press = false
var bhud = load("res://levels/bottomhud.tscn").instance()
var ishud = true
@ -47,17 +48,9 @@ func _ready():
#velocity = (Vector2.RIGHT.rotated(rotation) * -100 * Global.xm * delta)-Vector2.UP.rotated(rotation) * -100 * Global.ym * delta
func _input(event):
if (Input.is_key_pressed(KEY_ESCAPE) || Input.is_joy_button_pressed(0,JOY_SELECT)) && Global.debug:
Global.live = 0
Global.bossready = false
get_tree().root.remove_child(bhud)
#get_tree().root.remove_child(player)
get_tree().root.remove_child(level)
if Global.debug:
get_tree().change_scene("res://levels/ui/scene.tscn")
else:
get_tree().change_scene("res://title.tscn")
if Input.is_action_just_pressed("ui_accept"):
if (Input.is_action_just_pressed("ui_accept") || Input.is_action_just_pressed("mclick")) && !press:
press = true
if (Input.is_action_just_released("ui_accept") || Input.is_action_just_released("mclick")) && press:
if Global.cutscenes[Global.ccutscene][3]:
var ccutscene = Global.ccutscene
Global.ccutscene = null
@ -79,6 +72,7 @@ func _input(event):
bgsound.stream = music
bgsound.play(0)
call_deferred("_level")
press = false
#if (Global.live == 1 && (Input.is_key_pressed(KEY_V) && Input.is_key_pressed(KEY_UP)) ||(Input.is_joy_button_pressed(0,JOY_BUTTON_RIGHT_SHOULDER) && Input.is_joy_button_pressed(0,JOY_BUTTON_DPAD_UP))):
# if Global.debug:
# if Global.dparty[0][0] != null:

View file

@ -30,7 +30,7 @@ func _ready() -> void:
func _input(event):
gamepadtest.new(event)
# Mouse in viewport coordinates.
if Input.is_action_just_pressed("ui_cancel"):
if Input.is_action_just_pressed("ui_cancel") || Input.is_action_just_pressed("mclick"):
get_tree().change_scene("res://levels/ui/soundtest.tscn")
elif Input.is_action_pressed("ui_left") && Input.is_action_pressed("ui_up"):
fl.play(0)

View file

@ -70,3 +70,9 @@ func _on_bullethell_pressed() -> void:
Global.dplace = [1, 1, 17]
Global.live = 1
get_tree().change_scene("res://levels/ui/gameplay.tscn")
func _on_Credits_pressed():
Global.dplace = [1, 2, 17]
Global.live = 1
get_tree().change_scene("res://levels/ui/gameplay.tscn")

View file

@ -78,7 +78,7 @@ margin_right = 1017.0
margin_bottom = 286.0
custom_fonts/font = ExtResource( 2 )
custom_styles/focus = SubResource( 4 )
text = "BUTTON_PLACEHOLDER"
text = "TWIN_TROUBLEMAKERS_P2"
[node name="WIP" type="Button" parent="VBoxContainer"]
margin_top = 290.0
@ -100,4 +100,5 @@ text = "BUTTON_RETURN"
[connection signal="pressed" from="VBoxContainer/Lilytest" to="." method="_on_lilytest_pressed"]
[connection signal="pressed" from="VBoxContainer/Dialogtest" to="." method="_on_dialogtest_pressed"]
[connection signal="pressed" from="VBoxContainer/Bullethell" to="." method="_on_bullethell_pressed"]
[connection signal="pressed" from="VBoxContainer/Credits" to="." method="_on_Credits_pressed"]
[connection signal="pressed" from="VBoxContainer/Back" to="." method="_on_back_pressed"]

View file

@ -56,6 +56,6 @@ func _complete():
func _input(event):
# Mouse in viewport coordinates.
if Input.is_action_just_pressed("ui_accept"):
if Input.is_action_just_pressed("ui_accept") || Input.is_action_just_pressed("mclick"):
#print("Mouse Click/Unclick at: ", event.position)
_complete()

View file

@ -79,3 +79,8 @@ func _on_ceres_pressed():
#get_tree().change_scene("res://levels/ui/ceres.tscn")
Global.ccutscene = 10
get_tree().change_scene("res://levels/ui/Cutscenes.tscn")
func _on_Credits_pressed():
Global.ccutscene = 16
get_tree().change_scene("res://levels/ui/Cutscenes.tscn")

View file

@ -75,7 +75,7 @@ margin_right = 1017.0
margin_bottom = 286.0
custom_fonts/font = ExtResource( 2 )
custom_styles/focus = SubResource( 1 )
text = "BUTTON_PLACEHOLDER"
text = "TWIN_TROUBLEMAKERS_P2"
[node name="WIP" type="Button" parent="VBoxContainer"]
margin_top = 290.0
@ -105,7 +105,7 @@ text = "BUTTON_RETURN"
[connection signal="pressed" from="VBoxContainer/Testrooms" to="." method="_on_testrooms_pressed"]
[connection signal="pressed" from="VBoxContainer/Ceres" to="." method="_on_ceres_pressed"]
[connection signal="pressed" from="VBoxContainer/Results" to="." method="_on_results_pressed"]
[connection signal="pressed" from="VBoxContainer/Credits" to="." method="_on_credits_pressed"]
[connection signal="pressed" from="VBoxContainer/Credits" to="." method="_on_Credits_pressed"]
[connection signal="pressed" from="VBoxContainer/WIP" to="." method="_on_wip_pressed"]
[connection signal="pressed" from="VBoxContainer/Cutscene" to="." method="_on_cutscene_pressed"]
[connection signal="pressed" from="VBoxContainer/Back" to="." method="_on_back_pressed"]

View file

@ -55,6 +55,7 @@ func _on_ram_pressed() -> void:
Global.cplace = [1, 11, 19]
Global.live = 0
Global.cpchar = 0
Global.difdamage = 0
Global.party = [[0,0], [null,null], [null,null], [null,null]]
Global.ccutscene = 0
_on_back_pressed()

View file

@ -55,7 +55,7 @@ func _process(delta):
pass
func _input(event):
if Input.is_key_pressed(KEY_ESCAPE) || (Input.is_joy_button_pressed(0,JOY_XBOX_A) && (Input.is_joy_button_pressed(0,JOY_XBOX_B))):
if Input.is_key_pressed(KEY_ESCAPE) || Input.is_action_just_pressed("mclick") || (Input.is_joy_button_pressed(0,JOY_XBOX_A) && (Input.is_joy_button_pressed(0,JOY_XBOX_B))):
get_tree().change_scene("res://levels/ui/debug.tscn")
gamepadtest.new(event)
if Global.gamepad == 1:

View file

@ -9,11 +9,37 @@ var musictrack
var bhud = load("res://levels/bottomhud.tscn").instance()
var thud = load("res://levels/ui/tophud.tscn").instance()
var pmenu = load("res://levels/ui/pause.tscn").instance()
var mgamepad = load("res://levels/ui/missinggamepad.tscn").instance()
var tcontrol = load("res://levels/ui/touchcontrols.tscn").instance()
var ismgamepad = false
var ispaused = false
var ishud = true
# Called when the node enters the scene tree for the first time.
func _ready():
if Global.dificulty == 1:
if Global.difdamage != 0:
print("Script Kiddie")
Global.difdamage = Global.dparty/0
elif Global.dificulty == 2 || Global.dificulty == 0:
if Global.difdamage == 0 || Global.difdamage == 1:
Global.difdamage = 1
else:
print("Script Kiddie")
Global.difdamage = Global.dparty/0
elif Global.dificulty == 3:
if Global.difdamage == 0 || Global.difdamage == 3:
Global.difdamage = 3
else:
print("Script Kiddie")
Global.difdamage = Global.dparty/0
elif Global.dificulty == 4:
if Global.difdamage == 0 || Global.difdamage == 6:
Global.difdamage = 6
else:
print("Script Kiddie")
Global.difdamage = Global.dparty/0
Input.connect("joy_connection_changed",self,"_on_joy_connection_changed")
_statrebase()
add_child(bgsound)
add_child(sfx1)
@ -40,6 +66,7 @@ func _ready():
call_deferred("_level")
call_deferred("_bhud")
call_deferred("_thud")
call_deferred("_tcontrol")
#get_tree().root.add_child.call_deferred(player)
bgsound.stream = music
bgsound.bus = "Music"
@ -54,14 +81,30 @@ func _ready():
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta):
if Global.live != 1 && ishud:
get_tree().root.remove_child(thud)
get_tree().root.remove_child(tcontrol)
ishud = false
elif Global.live == 1 && !ishud:
call_deferred("_thud")
call_deferred("_tcontrol")
ishud = true
if Global.isresume:
Global.isresume = false
_pausemenu()
var velocity = Vector2.ZERO
if (Global.live > 4 && Global.live < 9) || Global.live == 2:
_exit()
#velocity = (Vector2.RIGHT.rotated(rotation) * -100 * Global.xm * delta)-Vector2.UP.rotated(rotation) * -100 * Global.ym * delta
func _input(event):
if ismgamepad && (event is InputEventJoypadButton || Input.is_key_pressed(KEY_ENTER) || Input.is_action_just_pressed("mclick")):
ismgamepad = false
get_tree().root.remove_child(mgamepad)
Global.live = 1
gamepadtest.new(event)
if Input.is_action_just_pressed("Pause") && Global.cdialog == []:
if Input.is_action_just_pressed("Pause") && (Global.live == 1 || Global.live == 4):
_pausemenu()
#Global.exitgame = true
if Global.live == 1 && Input.is_action_pressed("schar") && Input.is_action_just_pressed("ui_up"):
@ -97,12 +140,6 @@ func _input(event):
sfx1.stream = load(Global.sfxtracks[1])
sfx1.play(0)
bgsound.play(0)
if Global.live != 1 && ishud:
get_tree().root.remove_child(thud)
ishud = false
elif Global.live == 1 && !ishud:
call_deferred("_thud")
ishud = true
func _statrebase():
if Global.debug:
for i in 4:
@ -135,6 +172,7 @@ func _exit():
Global.bossready = false
Global.cboss = [null, null, null]
#if Global.live == 4:
get_tree().root.remove_child(tcontrol)
get_tree().root.remove_child(pmenu)
#else:
# get_tree().root.remove_child(thud)
@ -163,6 +201,12 @@ func _exit():
Global.live = 0
get_tree().change_scene("res://title.tscn")
func _on_joy_connection_changed(device_id, connected):
if !ismgamepad && !connected && Global.gamepad != 0 && Global.live == 1:
ismgamepad = true
Global.live = 4
call_deferred("_mgamepad")
func _level():
get_tree().root.add_child(level)
@ -174,3 +218,9 @@ func _bhud():
func _pmenu():
get_tree().root.add_child(pmenu)
func _mgamepad():
get_tree().root.add_child(mgamepad)
func _tcontrol():
get_tree().root.add_child(tcontrol)

View file

@ -4,17 +4,19 @@
[node name="Missinggamepad" type="Node2D"]
[node name="ColorRect" type="ColorRect" parent="."]
[node name="CanvasLayer" type="CanvasLayer" parent="."]
[node name="ColorRect" type="ColorRect" parent="CanvasLayer"]
margin_left = 90.0
margin_top = 211.0
margin_right = 1177.0
margin_right = 1197.0
margin_bottom = 511.0
color = Color( 0, 0, 0, 1 )
[node name="Label" type="Label" parent="."]
[node name="Label" type="Label" parent="CanvasLayer"]
margin_left = 90.0
margin_top = 211.0
margin_right = 1177.0
margin_right = 1197.0
margin_bottom = 511.0
rect_min_size = Vector2( 1072, 300 )
custom_fonts/font = ExtResource( 1 )

View file

@ -49,11 +49,17 @@ func _on_thisfirst_pressed():
func _on_challenge_pressed():
pass # Replace with function body.
_statrebase()
Global.dificulty = 3
_reset()
get_tree().change_scene("res://levels/ui/Cutscenes.tscn")
func _on_maniac_pressed():
pass # Replace with function body.
_statrebase()
Global.dificulty = 4
_reset()
get_tree().change_scene("res://levels/ui/Cutscenes.tscn")
func _statrebase():

View file

@ -58,3 +58,7 @@ func _on_warp_pressed() -> void:
else:
Global.cplace = [0, 0, 0]
Global.live = 5
func _on_Resume_pressed():
Global.isresume = true

View file

@ -172,5 +172,14 @@ custom_fonts/font = ExtResource( 2 )
custom_styles/focus = SubResource( 5 )
text = "MENU_EXIT"
[node name="Resume" type="Button" parent="CanvasLayer"]
margin_left = 314.0
margin_top = 150.0
margin_right = 487.0
margin_bottom = 204.0
custom_fonts/font = ExtResource( 2 )
text = "Resume"
[connection signal="pressed" from="CanvasLayer/HBoxContainer2/VBoxContainer/Warp" to="." method="_on_warp_pressed"]
[connection signal="pressed" from="CanvasLayer/HBoxContainer2/VBoxContainer2/Exit" to="." method="_on_exit_pressed"]
[connection signal="pressed" from="CanvasLayer/Resume" to="." method="_on_Resume_pressed"]

View file

@ -24,9 +24,9 @@ func _process(delta):
pass
func _input(event):
if Input.is_action_just_pressed("ui_accept") && !press:
if (Input.is_action_just_pressed("ui_accept") || Input.is_action_just_pressed("mclick")) && !press:
press = true
if Input.is_action_just_released("ui_accept") && press:
if (Input.is_action_just_released("ui_accept") || Input.is_action_just_released("mclick")) && press:
dindex += 1
if dindex < Global.cdialog.size():
if Global.cdialog[dindex][1]:

View file

@ -113,11 +113,6 @@ func _ready():
bossbg = $CanvasLayer/Bossbg
topleft.visible = false
topleftbg.visible = false
if Global.mangohud:
topleft.position.y = 244
topleftbg.position.y = 244
topmini.position.y = 601
topminibg.position.y = 601
if Global.cboss == [null, null, null]:
bossbg.visible = false
boss.visible = false

View file

@ -0,0 +1,96 @@
extends Node2D
# Declare member variables here. Examples:
# var a = 2
# var b = "text"
# Called when the node enters the scene tree for the first time.
func _ready():
pass # Replace with function body.
# Called every frame. 'delta' is the elapsed time since the previous frame.
#func _process(delta):
# pass
func _on_A_pressed():
Input.action_press("shoot")
func _on_A_released():
Input.action_release("shoot")
func _on_Up_pressed():
Input.action_press("ui_up")
func _on_Up_released():
Input.action_release("ui_up")
func _on_Down_pressed():
Input.action_press("ui_down")
func _on_Down_released():
Input.action_release("ui_down")
func _on_Left_pressed():
Input.action_press("ui_left")
func _on_Left_released():
Input.action_release("ui_left")
func _on_Right_pressed():
Input.action_press("ui_right")
func _on_Right_released():
Input.action_release("ui_right")
func _on_Select_pressed():
Input.action_press("Pause")
func _on_Select_released():
Input.action_release("Pause")
func _on_R2_pressed():
Input.action_press("run")
func _on_R2_released():
Input.action_release("run")
func _on_R1_pressed():
Input.action_press("schar")
func _on_R1_released():
Input.action_release("schar")
func _on_B_pressed():
Input.action_press("ui_accept")
func _on_B_released():
Input.action_release("ui_accept")
func _on_Y_pressed():
Input.action_press("jump")
func _on_Y_released():
Input.action_release("jump")

View file

@ -0,0 +1,97 @@
[gd_scene load_steps=14 format=2]
[ext_resource path="res://levels/ui/touchcontrols.gd" type="Script" id=1]
[ext_resource path="res://sprites/buttons/B.png" type="Texture" id=2]
[ext_resource path="res://sprites/buttons/A.png" type="Texture" id=3]
[ext_resource path="res://sprites/buttons/Y.png" type="Texture" id=4]
[ext_resource path="res://sprites/buttons/LT.png" type="Texture" id=5]
[ext_resource path="res://sprites/buttons/LB.png" type="Texture" id=6]
[ext_resource path="res://sprites/buttons/X.png" type="Texture" id=7]
[ext_resource path="res://sprites/buttons/RB.png" type="Texture" id=8]
[ext_resource path="res://sprites/buttons/RT.png" type="Texture" id=9]
[ext_resource path="res://sprites/buttons/Select.png" type="Texture" id=10]
[ext_resource path="res://sprites/buttons/Start.png" type="Texture" id=11]
[ext_resource path="res://sprites/buttons/varrow.png" type="Texture" id=12]
[ext_resource path="res://sprites/buttons/harrow.png" type="Texture" id=13]
[node name="Touchcontrols" type="Node2D"]
script = ExtResource( 1 )
[node name="CanvasLayer" type="CanvasLayer" parent="."]
[node name="B" type="TouchScreenButton" parent="CanvasLayer"]
position = Vector2( 1142, 586 )
normal = ExtResource( 2 )
[node name="A" type="TouchScreenButton" parent="CanvasLayer"]
position = Vector2( 1007, 586 )
normal = ExtResource( 3 )
[node name="Y" type="TouchScreenButton" parent="CanvasLayer"]
position = Vector2( 1142, 479 )
normal = ExtResource( 4 )
[node name="X" type="TouchScreenButton" parent="CanvasLayer"]
position = Vector2( 1007, 479 )
normal = ExtResource( 7 )
[node name="R1" type="TouchScreenButton" parent="CanvasLayer"]
position = Vector2( 872, 610 )
normal = ExtResource( 8 )
[node name="R2" type="TouchScreenButton" parent="CanvasLayer"]
position = Vector2( 917, 479 )
normal = ExtResource( 9 )
[node name="L1" type="TouchScreenButton" parent="CanvasLayer"]
position = Vector2( 740, 610 )
normal = ExtResource( 6 )
[node name="L2" type="TouchScreenButton" parent="CanvasLayer"]
position = Vector2( 787, 479 )
normal = ExtResource( 5 )
[node name="Up" type="TouchScreenButton" parent="CanvasLayer"]
position = Vector2( 116, 438 )
normal = ExtResource( 12 )
[node name="Down" type="TouchScreenButton" parent="CanvasLayer"]
position = Vector2( 116, 582 )
normal = ExtResource( 12 )
[node name="Left" type="TouchScreenButton" parent="CanvasLayer"]
position = Vector2( 20, 534 )
normal = ExtResource( 13 )
[node name="Right" type="TouchScreenButton" parent="CanvasLayer"]
position = Vector2( 164, 534 )
normal = ExtResource( 13 )
[node name="Select" type="TouchScreenButton" parent="CanvasLayer"]
position = Vector2( 431, 526 )
normal = ExtResource( 10 )
[node name="Start" type="TouchScreenButton" parent="CanvasLayer"]
position = Vector2( 639, 526 )
normal = ExtResource( 11 )
[connection signal="pressed" from="CanvasLayer/B" to="." method="_on_B_pressed"]
[connection signal="released" from="CanvasLayer/B" to="." method="_on_B_released"]
[connection signal="pressed" from="CanvasLayer/A" to="." method="_on_A_pressed"]
[connection signal="released" from="CanvasLayer/A" to="." method="_on_A_released"]
[connection signal="pressed" from="CanvasLayer/Y" to="." method="_on_Y_pressed"]
[connection signal="released" from="CanvasLayer/Y" to="." method="_on_Y_released"]
[connection signal="pressed" from="CanvasLayer/R1" to="." method="_on_R1_pressed"]
[connection signal="released" from="CanvasLayer/R1" to="." method="_on_R1_released"]
[connection signal="pressed" from="CanvasLayer/R2" to="." method="_on_R2_pressed"]
[connection signal="released" from="CanvasLayer/R2" to="." method="_on_R2_released"]
[connection signal="pressed" from="CanvasLayer/Up" to="." method="_on_Up_pressed"]
[connection signal="released" from="CanvasLayer/Up" to="." method="_on_Up_released"]
[connection signal="pressed" from="CanvasLayer/Down" to="." method="_on_Down_pressed"]
[connection signal="released" from="CanvasLayer/Down" to="." method="_on_Down_released"]
[connection signal="pressed" from="CanvasLayer/Left" to="." method="_on_Left_pressed"]
[connection signal="released" from="CanvasLayer/Left" to="." method="_on_Left_released"]
[connection signal="pressed" from="CanvasLayer/Right" to="." method="_on_Right_pressed"]
[connection signal="released" from="CanvasLayer/Right" to="." method="_on_Right_released"]
[connection signal="pressed" from="CanvasLayer/Select" to="." method="_on_Select_pressed"]
[connection signal="released" from="CanvasLayer/Select" to="." method="_on_Select_released"]

View file

@ -30,7 +30,7 @@ func _input(event):
updatehud()
# Mouse in viewport coordinates.
if !Global.sk && Input.is_action_just_pressed("ui_accept"):
if !Global.sk && Input.is_action_just_pressed("ui_accept") || Input.is_action_just_pressed("mclick"):
#print("Mouse Click/Unclick at: ", event.position)
_title()

Some files were not shown because too many files have changed in this diff Show more