It's Cow Game! Version 2.04!

This commit is contained in:
PajamaBee 2024-09-19 23:06:51 -05:00
commit a9e1ed9ddd
3148 changed files with 95332 additions and 0 deletions

BIN
NPCs/Beesly/Beesly.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.3 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b0socrwt15yhb"
path="res://.godot/imported/Beesly.png-c1a7b5ba66403a728f6987c565de4d2a.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Beesly/Beesly.png"
dest_files=["res://.godot/imported/Beesly.png-c1a7b5ba66403a728f6987c565de4d2a.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

87
NPCs/Beesly/Beesly2.tscn Normal file
View file

@ -0,0 +1,87 @@
[gd_scene load_steps=8 format=3 uid="uid://cf3twhkqhgf05"]
[ext_resource type="Script" path="res://NPCs/Beesly/beesly.gd" id="1_ne64y"]
[ext_resource type="SpriteFrames" uid="uid://5cesbs2omj1h" path="res://NPCs/Beesly/beesly.tres" id="2_s5fxi"]
[ext_resource type="PackedScene" uid="uid://bqibe7ha6r5ls" path="res://Interactions/Interactable/interactable.tscn" id="3_swlvo"]
[ext_resource type="PackedScene" uid="uid://c31736waactb2" path="res://Interactions/Talking/Talkable.tscn" id="4_gwwan"]
[ext_resource type="Script" path="res://NPCs/Beesly/BeeslyTalk.gd" id="5_poao7"]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_x8uit"]
size = Vector2(69, 17)
[sub_resource type="CircleShape2D" id="CircleShape2D_866bn"]
radius = 50.0899
[node name="Beesly2" type="StaticBody2D"]
script = ExtResource("1_ne64y")
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
position = Vector2(0.5, -8.5)
shape = SubResource("RectangleShape2D_x8uit")
[node name="Sprite" type="AnimatedSprite2D" parent="."]
unique_name_in_owner = true
position = Vector2(0, -53)
sprite_frames = ExtResource("2_s5fxi")
animation = &"Stand"
[node name="Interactable" parent="." instance=ExtResource("3_swlvo")]
[node name="47255" type="MarginContainer" parent="Interactable/ActionMenu/PopupMenu" index="3"]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
[node name="47256" type="ScrollContainer" parent="Interactable/ActionMenu/PopupMenu/47255"]
layout_mode = 2
[node name="47257" type="Control" parent="Interactable/ActionMenu/PopupMenu/47255/47256"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="47258" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="4"]
wait_time = 0.3
one_shot = true
[node name="47259" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="5"]
wait_time = 0.3
one_shot = true
[node name="19099" type="MarginContainer" parent="Interactable/ActionMenu/PopupMenu" index="6"]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
[node name="19100" type="ScrollContainer" parent="Interactable/ActionMenu/PopupMenu/19099"]
layout_mode = 2
[node name="19101" type="Control" parent="Interactable/ActionMenu/PopupMenu/19099/19100"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="19102" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="7"]
wait_time = 0.3
one_shot = true
[node name="19103" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="8"]
wait_time = 0.3
one_shot = true
[node name="Panel" parent="Interactable" index="1"]
offset_left = -31.0
offset_top = -87.0
offset_right = 44.0
offset_bottom = 5.0
[node name="Talkable" parent="." instance=ExtResource("4_gwwan")]
script = ExtResource("5_poao7")
[node name="CollisionShape2D" parent="Talkable/InteractionArea" index="0"]
position = Vector2(5, -48)
shape = SubResource("CircleShape2D_866bn")
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]
[editable path="Talkable"]

15
NPCs/Beesly/BeeslyTalk.gd Normal file
View file

@ -0,0 +1,15 @@
extends Interaction
func _ready():
add_action("Talk", talk)
func _process(delta):
pass
func talk():
var dialogue = get_parent().get_dialogue()
if dialogue != null:
DialogueBoxManager.set_current_speaker(get_parent())
get_parent().stand_up()
DialogueBoxManager.start_dialogue(dialogue)

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://drmqe1eik6syt"
path="res://.godot/imported/000.png-deb6d17c8a7e5a7a7f0c1839158db919.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Beesly/LimeMorph/000.png"
dest_files=["res://.godot/imported/000.png-deb6d17c8a7e5a7a7f0c1839158db919.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cyaoe3lty8fto"
path="res://.godot/imported/001.png-93468699faf302c025b766b34abff27c.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Beesly/LimeMorph/001.png"
dest_files=["res://.godot/imported/001.png-93468699faf302c025b766b34abff27c.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bhk1tajiaycl7"
path="res://.godot/imported/002.png-b999b08876954b95eca4f9e1c68e124f.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Beesly/LimeMorph/002.png"
dest_files=["res://.godot/imported/002.png-b999b08876954b95eca4f9e1c68e124f.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://s02oc5a4mui6"
path="res://.godot/imported/003.png-a8cd6b70157a2422d92a6105ed2b28bc.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Beesly/LimeMorph/003.png"
dest_files=["res://.godot/imported/003.png-a8cd6b70157a2422d92a6105ed2b28bc.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bk7jhuvdegbcb"
path="res://.godot/imported/004.png-e3017f055c7240092237b0f30e7a446d.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Beesly/LimeMorph/004.png"
dest_files=["res://.godot/imported/004.png-e3017f055c7240092237b0f30e7a446d.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.7 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://hmogoh8noxb6"
path="res://.godot/imported/Beesly_Limemode.png-cc57b0aab8b4b5863b6db932cde2bed3.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Beesly/LimeMorph/Beesly_Limemode.png"
dest_files=["res://.godot/imported/Beesly_Limemode.png-cc57b0aab8b4b5863b6db932cde2bed3.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 841 B

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cbr2k45lyjau7"
path="res://.godot/imported/LimeParticle.png-1a1753ff559dbdfbbe2a9ddf6fd4f79f.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Beesly/LimeParticle.png"
dest_files=["res://.godot/imported/LimeParticle.png-1a1753ff559dbdfbbe2a9ddf6fd4f79f.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://4rjcj76mlmt0"
path="res://.godot/imported/Beesly_walk2.png-1072be38c328c57e1bff3ca067e900fe.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Beesly/Walk/Beesly_walk2.png"
dest_files=["res://.godot/imported/Beesly_walk2.png-1072be38c328c57e1bff3ca067e900fe.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.3 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://crnnd7dbe111s"
path="res://.godot/imported/Beesly_walk3.png-f98745aa3900a5578aeefce206eb7c24.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Beesly/Walk/Beesly_walk3.png"
dest_files=["res://.godot/imported/Beesly_walk3.png-f98745aa3900a5578aeefce206eb7c24.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.4 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b3n4usuut8eil"
path="res://.godot/imported/Beesly_walk4.png-92ee2296b971f1aebe2d811cab2b1950.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Beesly/Walk/Beesly_walk4.png"
dest_files=["res://.godot/imported/Beesly_walk4.png-92ee2296b971f1aebe2d811cab2b1950.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.4 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bd6gt13wg24e0"
path="res://.godot/imported/Beesly_walk5.png-bfb411511f637c09a0a851a6bcd8c3a6.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Beesly/Walk/Beesly_walk5.png"
dest_files=["res://.godot/imported/Beesly_walk5.png-bfb411511f637c09a0a851a6bcd8c3a6.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dg4rlsht4h8t7"
path="res://.godot/imported/Beesly_walk6.png-4a5511d0f10b3b6c359ea280f780c64d.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Beesly/Walk/Beesly_walk6.png"
dest_files=["res://.godot/imported/Beesly_walk6.png-4a5511d0f10b3b6c359ea280f780c64d.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.3 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bk7y8lpab6g1g"
path="res://.godot/imported/Beesly_walk7.png-78f363e8396bb04022a09efc1a74ab0c.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Beesly/Walk/Beesly_walk7.png"
dest_files=["res://.godot/imported/Beesly_walk7.png-78f363e8396bb04022a09efc1a74ab0c.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

View file

@ -0,0 +1,37 @@
~ start
if not get_save_value("BeesleyQuestComplete", false) and get_save_value("BeesleyHasLimed", false) and not get_save_value("BeeslyLimeMode", false)
Beesly: Wow now I'm not a lime
Beesly: Did you do this to me? Thanks!
do set_save_value("BeesleyQuestComplete", true)
do QuestManager.complete_quest("Beesley's Lime Move")
=> END
else if get_save_value("BeesleyHasLimed", false) and not get_save_value("BeeslyLimeMode", false)
Beesly: Do you wanna see me turn into a lime again?
- Sure => LimeTime
- No thanks
elif not get_save_value("BeeslyLimeMode", false)
Beesly: Do you wanna see me turn into a lime?
- Sure => LimeTime
- No thanks
else
Beesly: I forgot that i cant walk in lime mode
Beesly: I forgot how to change back too
Beesly: I don't know if my special juice can be found around Snoutsville
Beesly: hmmmmm... we will need another way
=> END
~ LimeTime
if get_save_value("LimeEnabled", true)
Beesly: Lime mode, ACTIVATE!
if get_save_value("LimeEnabled", true)
do set_save_value("BeesleyHasLimed", true)
do DialogueBoxManager.currentSpeaker.morph()
else
Beesly: Huh I was really feeling the lime but then some higher power blocked me
else
Beesly: Some higher power seems to be blocking my lime powers
Beesly: Unfortunately I cant show you lime mode right now
=> END

View file

@ -0,0 +1,15 @@
[remap]
importer="dialogue_manager_compiler_11"
type="Resource"
uid="uid://byeblwn76voxb"
path="res://.godot/imported/beesly.dialogue-6bcf2d953928e7977f84791e8b03dcaa.tres"
[deps]
source_file="res://NPCs/Beesly/beesly.dialogue"
dest_files=["res://.godot/imported/beesly.dialogue-6bcf2d953928e7977f84791e8b03dcaa.tres"]
[params]
defaults=true

109
NPCs/Beesly/beesly.gd Normal file
View file

@ -0,0 +1,109 @@
extends NPC
var rng = RandomNumberGenerator.new()
var moveSpeed = 140
var moveSpeedCond = 140
var maxx = 100
var minx = -100
var waitTimer = 0
var lime_mode = false
var walking = false
var waited = false
var GameState = null
func _ready():
minx = position.x
maxx = position.x + 100
characterName = "Beesly"
pronouns = "any"
GameState = get_node("/root/GameVariables")
dialogueResource = load("res://NPCs/Beesly/beesly.dialogue")
if SaveManager.get_save_value("BeeslyLimeMode"):
lime_mode = true
$Sprite.play("LimeMode")
if not SaveManager.get_save_value("LimeEnabled", true):
LimeOff()
func _process(delta):
waitTimer -= delta
if waitTimer <= 0:
if !waited:
waited = true
wait_between_actions()
else:
pick_next_action(delta)
if walking and not lime_mode:
var movementVector = Vector2(moveSpeed*delta,0)
var collisions = move_and_collide(movementVector)
if collisions != null:
walking = false
stand_up()
if moveSpeed < 0:
$Sprite.flip_h = true
elif moveSpeed > 0:
$Sprite.flip_h = false
func wait_between_actions():
waitTimer = rng.randf_range(0.5, 3)
func pick_next_action(delta):
if lime_mode: return
else:
var randomDir
if position.x <= minx:
randomDir = 1
elif position.x >= maxx:
randomDir = -1
else:
randomDir = -1 if rng.randi_range(0, 1) == 0 else 1
moveSpeed = moveSpeedCond * randomDir
var nextActionResult = rng.randi_range(0, 4)
if nextActionResult <= 2:
walking = true
walk()
elif nextActionResult <= 3:
walking = false
stand_up()
elif nextActionResult <= 4:
wait_between_actions()
waited = false
func morph():
SaveManager.set_save_value("BeeslyLimeMode", true)
$Sprite.stop()
$Sprite.play("LimeMorph")
$MorphParticle.emitting = true
await $Sprite.animation_finished
lime_mode = true
$MorphParticle.emitting = false
$Sprite.play("LimeMode")
LevelManager.get_skill("appreciating").experience_event("Beesley's Lime Move", "watched", 31)
func stand_up():
if lime_mode: $Sprite.play("LimeMode")
else: $Sprite.play("Stand")
waitTimer = 4
func walk():
$Sprite.play("Walk")
waitTimer = 1
func LimeOff():
SaveManager.set_save_value("BeeslyLimeMode", false)
$Sprite.stop()
$Sprite.play("BeeMorph")
$MorphParticle.emitting = true
await $Sprite.animation_finished
lime_mode = false
$MorphParticle.emitting = false
$Sprite.play("Stand")

135
NPCs/Beesly/beesly.tres Normal file
View file

@ -0,0 +1,135 @@
[gd_resource type="SpriteFrames" load_steps=20 format=3 uid="uid://5cesbs2omj1h"]
[ext_resource type="Texture2D" uid="uid://hmogoh8noxb6" path="res://NPCs/Beesly/LimeMorph/Beesly_Limemode.png" id="1_qndpv"]
[ext_resource type="Texture2D" uid="uid://bk7jhuvdegbcb" path="res://NPCs/Beesly/LimeMorph/004.png" id="2_qxcim"]
[ext_resource type="Texture2D" uid="uid://s02oc5a4mui6" path="res://NPCs/Beesly/LimeMorph/003.png" id="3_nfbs6"]
[ext_resource type="Texture2D" uid="uid://bhk1tajiaycl7" path="res://NPCs/Beesly/LimeMorph/002.png" id="4_y4gyy"]
[ext_resource type="Texture2D" uid="uid://cyaoe3lty8fto" path="res://NPCs/Beesly/LimeMorph/001.png" id="5_34mi8"]
[ext_resource type="Texture2D" uid="uid://drmqe1eik6syt" path="res://NPCs/Beesly/LimeMorph/000.png" id="6_0ldti"]
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_cqco8"]
load_path = "res://.godot/imported/Beesly_Limemode.png-cc57b0aab8b4b5863b6db932cde2bed3.ctex"
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_1yese"]
load_path = "res://.godot/imported/000.png-deb6d17c8a7e5a7a7f0c1839158db919.ctex"
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_0tuyw"]
load_path = "res://.godot/imported/001.png-93468699faf302c025b766b34abff27c.ctex"
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_43cm5"]
load_path = "res://.godot/imported/002.png-b999b08876954b95eca4f9e1c68e124f.ctex"
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_lc8tm"]
load_path = "res://.godot/imported/003.png-a8cd6b70157a2422d92a6105ed2b28bc.ctex"
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_kufk3"]
load_path = "res://.godot/imported/004.png-e3017f055c7240092237b0f30e7a446d.ctex"
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_0d71i"]
load_path = "res://.godot/imported/Beesly.png-c1a7b5ba66403a728f6987c565de4d2a.ctex"
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_rgh0h"]
load_path = "res://.godot/imported/Beesly_walk2.png-1072be38c328c57e1bff3ca067e900fe.ctex"
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_ig847"]
load_path = "res://.godot/imported/Beesly_walk3.png-f98745aa3900a5578aeefce206eb7c24.ctex"
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_m775l"]
load_path = "res://.godot/imported/Beesly_walk4.png-92ee2296b971f1aebe2d811cab2b1950.ctex"
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_v02ly"]
load_path = "res://.godot/imported/Beesly_walk5.png-bfb411511f637c09a0a851a6bcd8c3a6.ctex"
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_ysjwc"]
load_path = "res://.godot/imported/Beesly_walk6.png-4a5511d0f10b3b6c359ea280f780c64d.ctex"
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_q8roe"]
load_path = "res://.godot/imported/Beesly_walk7.png-78f363e8396bb04022a09efc1a74ab0c.ctex"
[resource]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("1_qndpv")
}, {
"duration": 1.0,
"texture": ExtResource("2_qxcim")
}, {
"duration": 1.0,
"texture": ExtResource("3_nfbs6")
}, {
"duration": 1.0,
"texture": ExtResource("4_y4gyy")
}, {
"duration": 1.0,
"texture": ExtResource("5_34mi8")
}, {
"duration": 1.0,
"texture": ExtResource("6_0ldti")
}],
"loop": false,
"name": &"BeeMorph",
"speed": 5.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("CompressedTexture2D_cqco8")
}],
"loop": false,
"name": &"LimeMode",
"speed": 5.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("CompressedTexture2D_1yese")
}, {
"duration": 1.0,
"texture": SubResource("CompressedTexture2D_0tuyw")
}, {
"duration": 1.0,
"texture": SubResource("CompressedTexture2D_43cm5")
}, {
"duration": 1.0,
"texture": SubResource("CompressedTexture2D_lc8tm")
}, {
"duration": 1.0,
"texture": SubResource("CompressedTexture2D_kufk3")
}, {
"duration": 1.0,
"texture": SubResource("CompressedTexture2D_cqco8")
}],
"loop": false,
"name": &"LimeMorph",
"speed": 5.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("CompressedTexture2D_0d71i")
}],
"loop": false,
"name": &"Stand",
"speed": 5.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("CompressedTexture2D_rgh0h")
}, {
"duration": 1.0,
"texture": SubResource("CompressedTexture2D_ig847")
}, {
"duration": 1.0,
"texture": SubResource("CompressedTexture2D_m775l")
}, {
"duration": 1.0,
"texture": SubResource("CompressedTexture2D_v02ly")
}, {
"duration": 1.0,
"texture": SubResource("CompressedTexture2D_ysjwc")
}, {
"duration": 1.0,
"texture": SubResource("CompressedTexture2D_q8roe")
}],
"loop": true,
"name": &"Walk",
"speed": 5.0
}]

64
NPCs/Beesly/beesly.tscn Normal file
View file

@ -0,0 +1,64 @@
[gd_scene load_steps=8 format=3 uid="uid://bgkjbt7rrmrye"]
[ext_resource type="PackedScene" uid="uid://doqfsp7yxools" path="res://NPCs/NPC.tscn" id="1_1rfh1"]
[ext_resource type="Script" path="res://NPCs/Beesly/beesly.gd" id="2_no4pj"]
[ext_resource type="SpriteFrames" uid="uid://5cesbs2omj1h" path="res://NPCs/Beesly/beesly.tres" id="2_umok6"]
[ext_resource type="Script" path="res://NPCs/Beesly/BeeslyTalk.gd" id="4_nf08p"]
[ext_resource type="Texture2D" uid="uid://cbr2k45lyjau7" path="res://NPCs/Beesly/LimeParticle.png" id="5_0uulj"]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_7yluf"]
size = Vector2(98, 7)
[sub_resource type="Gradient" id="Gradient_ped0c"]
offsets = PackedFloat32Array(0, 0.984)
colors = PackedColorArray(0.7, 0, 0, 1, 0.576471, 1, 0, 1)
[node name="Beesly" groups=["Beesly"] instance=ExtResource("1_1rfh1")]
collision_layer = 17
collision_mask = 17
script = ExtResource("2_no4pj")
[node name="Sprite" parent="." index="0"]
unique_name_in_owner = true
position = Vector2(0, -57)
sprite_frames = ExtResource("2_umok6")
animation = &"BeeMorph"
[node name="Panel" parent="Interactable" index="1"]
offset_left = -35.0
offset_top = -90.0
offset_right = 53.0
offset_bottom = -3.0
[node name="Talkable" parent="." index="2"]
script = ExtResource("4_nf08p")
[node name="CollisionShape2D" parent="Talkable/InteractionArea" index="0"]
position = Vector2(-2, -17)
[node name="CollisionShape2D" parent="." index="3"]
unique_name_in_owner = true
position = Vector2(6, -3.5)
shape = SubResource("RectangleShape2D_7yluf")
[node name="MorphParticle" type="CPUParticles2D" parent="." index="4"]
unique_name_in_owner = true
z_index = -1
position = Vector2(5, -48)
emitting = false
amount = 40
lifetime = 0.3
speed_scale = 0.8
texture = ExtResource("5_0uulj")
direction = Vector2(0, -1)
spread = 180.0
gravity = Vector2(0, 100)
initial_velocity_min = 361.11
initial_velocity_max = 472.22
orbit_velocity_min = -2.0
orbit_velocity_max = -2.0
color_ramp = SubResource("Gradient_ped0c")
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]
[editable path="Talkable"]