From a3bcdbc7b8b178666a16fa8e43b720c8d38fbf88 Mon Sep 17 00:00:00 2001 From: Page Asgardius Date: Sun, 31 Mar 2024 11:39:39 -0700 Subject: [PATCH] Kimberly Arch --- cursor.png | Bin 0 -> 567 bytes cursor.png.import | 34 +++++++++++++++++ global.gd | 22 +++++------ sprites/common/bullet/X11.gd | 3 +- sprites/common/bullet/arrow.gd | 49 +++++++++++++++++++++++++ sprites/common/bullet/arrow.png | Bin 0 -> 6545 bytes sprites/common/bullet/arrow.png.import | 34 +++++++++++++++++ sprites/common/bullet/arrow.tscn | 25 +++++++++++++ 8 files changed, 155 insertions(+), 12 deletions(-) create mode 100644 cursor.png create mode 100644 cursor.png.import create mode 100644 sprites/common/bullet/arrow.gd create mode 100644 sprites/common/bullet/arrow.png create mode 100644 sprites/common/bullet/arrow.png.import create mode 100644 sprites/common/bullet/arrow.tscn diff --git a/cursor.png b/cursor.png new file mode 100644 index 0000000000000000000000000000000000000000..74decdcc7fe71b5ba103989abffca7668e4d05c4 GIT binary patch literal 567 zcmV-70?7S|P)EX>4Tx04R}tkv&MmKpe$iTcsiu5j%(qW~fefQ4!s06^c+H)C#RSm|Xe=O&XFE z7e~Rh;NZt%)xpJCR|i)?5c~jfc5qU3krMxx6k5c1aNLh~_a1le0DryARI?)nsG4P@ z5^*7uT@`|_2w((#n8lF9Onpuilkgm0_we!cF3PjK&;2=il$^-`pFkXAx?vG-5KnJf zI_G`jFe^$5@j3ChK^G)`x%k-#FBAVPqQDoQBBLX=jG6cZ`hk9+tB9luB}nOr3> zax9<%6_Voz|AXJ%n)%5IHz^bcI$v!2V-yJP0*#t&e;?a+;{*si16NwhU#SB#pQP7X zTI2}m-3BhMTbjHFTnGy0}1(0>bbuerT7_i_3Fq^Yaq4RCM> zj1?$*-Q(R|?Y;ebrrF;Q?;dj4iuuC@00006VoOIv0RI600RN!9r;`8x010qNS#tmY zE+YT{E+YYWr9XB6000McNliru=mQ@SItHjWyj=hQ02y>eSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{000k3L_t(2&tqU11*3pE0006^00E)|5>NmD002ovPDHLk FV1l5%;ZXnp literal 0 HcmV?d00001 diff --git a/cursor.png.import b/cursor.png.import new file mode 100644 index 0000000..86d1bd7 --- /dev/null +++ b/cursor.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://d4ala24fewn5t" +path="res://.godot/imported/cursor.png-9207886fa5a62b74129e260ee150454e.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://cursor.png" +dest_files=["res://.godot/imported/cursor.png-9207886fa5a62b74129e260ee150454e.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/global.gd b/global.gd index 1b2205f..c980a1d 100644 --- a/global.gd +++ b/global.gd @@ -7,25 +7,25 @@ var mousepos var timelimit = 15000 var wait var bossready = false -const pcnames = ["Midori Asgardius", "Diana Asgardius", null, null, null, null, null, null, null, "Natasha Dostoyevsky"] +const pcnames = ["Midori Asgardius", "Diana Asgardius", null, "Kimberly Arch", null, null, null, null, null, "Natasha Dostoyevsky"] const npcnames = ["Lily", null, null, null, null, null, null, null, null, "Natasha Dostoyevsky"] -const pcfaces = [["res://sprites/common/midori/face.png"], ["res://sprites/common/tuna/face.png"], [null], [null], [null], [null], [null], [null], [null], ["res://sprites/common/natasha/face.png"]] -const hudfaces = [["res://sprites/common/midori/facehud.png"], ["res://sprites/common/tuna/facehud.png"], [null], [null], [null], [null], [null], [null], [null], ["res://sprites/common/natasha/facehud.png"]] +const pcfaces = [["res://sprites/common/midori/face.png"], ["res://sprites/common/tuna/face.png"], [null], ["res://sprites/common/kimberly/face.png"], [null], [null], [null], [null], [null], ["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], [null], [null], ["res://sprites/common/natasha/facehud.png"]] const npcfaces = ["res://sprites/common/midori/face.png",null, null, null, null, null, null, null, null, "res://sprites/common/natasha/face.png"] -const basestats = [[100, 100, 2, 2, 100, 2, 500], [100, 100, 2, 2, 100, 2, 500], [null], [null], [null], [null], [null], [null], [null], [100, 100, 2, 2, 100, 2, 500]] -var cstats = [[100, 100, null, null, 100, null, null], [100, 100, null, null, 100, null, null], [null], [null], [null], [null], [null], [null], [null], [100, 100, null, null, 100, null, null]] -var dstats = [[100, 100, null, null, 100, null, null], [100, 100, null, null, 100, null, null], [null], [null], [null], [null], [null], [null], [null], [100, 100, null, null, 100, null, null]] +const basestats = [[100, 100, 2, 2, 100, 2, 500], [100, 100, 2, 2, 100, 2, 500], [null], [100, 100, 2, 2, 100, 2, 500], [null], [null], [null], [null], [null], [100, 100, 2, 2, 100, 2, 500]] +var cstats = [[100, 100, null, null, 100, null, null], [100, 100, null, null, 100, null, null], [null], [100, 100, null, null, 100, null, null], [null], [null], [null], [null], [null], [100, 100, null, null, 100, null, null]] +var dstats = [[100, 100, null, null, 100, null, null], [100, 100, null, null, 100, null, null], [null], [100, 100, null, null, 100, null, null], [null], [null], [null], [null], [null], [100, 100, null, null, 100, null, null]] var cdialog = [] const places = [[[[null, null, 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]]]] var cplace = [0,2,1] var dplace = [null, null, null] -const pbbullets = ["res://sprites/common/bullet/fireball.tscn", "res://sprites/common/bullet/X11.tscn", null, null, null, null, null, null, null, "res://sprites/common/bullet/snowflake.tscn"] -const pcspecialities = [1, 2, null, null, null, null, null, null, null, 0] -const pchars = [["res://sprites/common/midori/sprite.png"], ["res://sprites/common/tuna/sprite.png"], [null], [null], [null], [null], [null], [null], [null], ["res://sprites/common/natasha/sprite.png"]] +const pbbullets = ["res://sprites/common/bullet/fireball.tscn", "res://sprites/common/bullet/X11.tscn", null, "res://sprites/common/bullet/arrow.tscn", null, null, null, null, null, "res://sprites/common/bullet/snowflake.tscn"] +const pcspecialities = [1, 2, null, 3, null, null, null, null, null, 0] +const pchars = [["res://sprites/common/midori/sprite.png"], ["res://sprites/common/tuna/sprite.png"], [null], ["res://sprites/common/kimberly/sprite.png"], [null], [null], [null], [null], [null], ["res://sprites/common/natasha/sprite.png"]] const npchars = ["res://sprites/common/midori/sprite.png", null, null, null, null, null, null, null, null, "res://sprites/common/natasha/sprite.png"] -var party = [[0,0], [1,0], [9,0], [null,null]] +var party = [[0,0], [1,0], [9,0], [3,0]] const specialities = [2, 0, 3, 1, 5, 4] -var dparty = [[0,0], [1,0], [9,0], [null,null]] +var dparty = [[0,0], [1,0], [9,0], [3,0]] var cpchar = 0 var dcpchar = 0 var mangohud = false diff --git a/sprites/common/bullet/X11.gd b/sprites/common/bullet/X11.gd index c643bde..820b1a2 100644 --- a/sprites/common/bullet/X11.gd +++ b/sprites/common/bullet/X11.gd @@ -5,7 +5,8 @@ var speciality var btype # Called when the node enters the scene tree for the first time. func _ready(): - speciality = Global.pcspecialities[Global.dparty[Global.dcpchar][0]] + if is_in_group("players"): + speciality = Global.pcspecialities[Global.dparty[Global.dcpchar][0]] add_to_group(btype) #pass # Replace with function body. diff --git a/sprites/common/bullet/arrow.gd b/sprites/common/bullet/arrow.gd new file mode 100644 index 0000000..2d35f7e --- /dev/null +++ b/sprites/common/bullet/arrow.gd @@ -0,0 +1,49 @@ +extends Area2D +var velocity: Vector2 = Vector2() +var direction +var speciality +var speed = 100 +var btype +var isvisible +# Called when the node enters the scene tree for the first time. +func _ready(): + if is_in_group("players"): + speciality = Global.pcspecialities[Global.dparty[Global.dcpchar][0]] + isvisible = $VisibleOnScreenNotifier2D + add_to_group(btype) + rotation = velocity.angle() + #pass # Replace with function body. + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +func _process(delta): + pass + +func _physics_process(delta): + if isvisible.is_on_screen(): + if direction == null: + position += velocity * delta + else: + position += speed * delta * direction + + +func _on_body_entered(body): + if !body.is_in_group(btype): + if body.is_in_group("players") || body.is_in_group("boss") || body.is_in_group("enemies"): + if body.weakness == speciality: + print("weakness") + #if body.is_in_group("players"): + # Global.live = 2 + #elif body.is_in_group("enemies"): + # Global.live = 3 + #elif body.is_in_group("boss"): + # Global.live = 3 + queue_free() + + + + +func _on_area_entered(area): + if !area.is_in_group(btype): + queue_free() + #pass # Replace with function body. diff --git a/sprites/common/bullet/arrow.png b/sprites/common/bullet/arrow.png new file mode 100644 index 0000000000000000000000000000000000000000..b680e3ae817ab8da656eb772556860ad0009a501 GIT binary patch literal 6545 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 Xp77zPkNj}tFCU?QnBPx6i8+4