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

View file

@ -0,0 +1,69 @@
extends NPC
var rng = RandomNumberGenerator.new()
var hopSpeed = -400
var minX = 0
var maxX = 0
var waitTimer = 0
var hopping = false
var flipChance = false
func _ready():
characterName = "Kid"
pronouns = "she/her"
minX = position.x
maxX = position.x + 500
func _process(delta):
waitTimer -= delta
if waitTimer <= 0:
if $Sprite.animation != "default":
wait_between_actions()
else:
pick_next_action()
if hopping:
if $Sprite.frame >= 1:
position.x += hopSpeed*delta
flipChance = true
else:
if flipChance:
flipChance = false
if rng.randi_range(0, 1) == 1:
hopSpeed = hopSpeed*-1
$Sprite.flip_h = !$Sprite.flip_h
if position.x <= minX and hopSpeed < 0:
hopSpeed = hopSpeed*-1
$Sprite.flip_h = true
elif position.x >= maxX and hopSpeed > 0:
hopSpeed = hopSpeed*-1
$Sprite.flip_h = false
func wait_between_actions():
hopping = false
waitTimer = rng.randf_range(0.5, 1)
$Sprite.play("default")
func pick_next_action():
hopping = false
var nextActionResult = rng.randi_range(0, 4)
if nextActionResult <= 2:
hop()
elif nextActionResult <= 3:
yoyo()
elif nextActionResult <= 4:
wait_between_actions()
func yoyo():
$Sprite.play("Yoyo")
waitTimer = rng.randi_range(3, 12)
func hop():
$Sprite.play("Prance")
waitTimer = rng.randi_range(2, 4)
hopping = true

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 642 B

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bryd41gd7qeda"
path="res://.godot/imported/goatKid1Prance.png-cc623dae1373caccb0743ff095378137.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Arcade/GoatKid1/PranceAnim/goatKid1Prance.png"
dest_files=["res://.godot/imported/goatKid1Prance.png-cc623dae1373caccb0743ff095378137.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: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 631 B

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://d3elfbxqrdla0"
path="res://.godot/imported/goat1yoyo1.png-e723645ad91609b0cd1d910ba16889cb.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Arcade/GoatKid1/YoyoAnim/goat1yoyo1.png"
dest_files=["res://.godot/imported/goat1yoyo1.png-e723645ad91609b0cd1d910ba16889cb.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: 636 B

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bfr1pycwgr4l4"
path="res://.godot/imported/goat1yoyo2.png-fff38f98bc5a6f1d470069c33fe0e6de.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Arcade/GoatKid1/YoyoAnim/goat1yoyo2.png"
dest_files=["res://.godot/imported/goat1yoyo2.png-fff38f98bc5a6f1d470069c33fe0e6de.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: 641 B

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cecuoy48savco"
path="res://.godot/imported/goat1yoyo3.png-1ba875a35cc896a934e2ddfa24a145c6.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Arcade/GoatKid1/YoyoAnim/goat1yoyo3.png"
dest_files=["res://.godot/imported/goat1yoyo3.png-1ba875a35cc896a934e2ddfa24a145c6.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: 596 B

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://pc5ng2mwgkxe"
path="res://.godot/imported/goatKid1Idle.png-ec05512ef2eef01e1183c4d12d21ba2a.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Arcade/GoatKid1/goatKid1Idle.png"
dest_files=["res://.godot/imported/goatKid1Idle.png-ec05512ef2eef01e1183c4d12d21ba2a.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,82 @@
[gd_scene load_steps=12 format=3 uid="uid://dyatj06jpchgo"]
[ext_resource type="PackedScene" uid="uid://doqfsp7yxools" path="res://NPCs/NPC.tscn" id="1_ksl6a"]
[ext_resource type="Script" path="res://NPCs/Arcade/GoatKid1/GoatKid1.gd" id="2_5njyi"]
[ext_resource type="Texture2D" uid="uid://pc5ng2mwgkxe" path="res://NPCs/Arcade/GoatKid1/goatKid1Idle.png" id="2_xhghv"]
[ext_resource type="Resource" uid="uid://cq8ckonbneirp" path="res://NPCs/Arcade/GoatKid.dialogue" id="3_dgbls"]
[ext_resource type="Texture2D" uid="uid://bryd41gd7qeda" path="res://NPCs/Arcade/GoatKid1/PranceAnim/goatKid1Prance.png" id="4_2057f"]
[ext_resource type="Texture2D" uid="uid://d3elfbxqrdla0" path="res://NPCs/Arcade/GoatKid1/YoyoAnim/goat1yoyo1.png" id="5_7kju2"]
[ext_resource type="Texture2D" uid="uid://bfr1pycwgr4l4" path="res://NPCs/Arcade/GoatKid1/YoyoAnim/goat1yoyo2.png" id="6_t1str"]
[ext_resource type="Texture2D" uid="uid://cecuoy48savco" path="res://NPCs/Arcade/GoatKid1/YoyoAnim/goat1yoyo3.png" id="7_h1edl"]
[sub_resource type="SpriteFrames" id="SpriteFrames_s45os"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_xhghv")
}, {
"duration": 1.0,
"texture": ExtResource("4_2057f")
}],
"loop": true,
"name": &"Prance",
"speed": 6.0
}, {
"frames": [{
"duration": 5.0,
"texture": ExtResource("5_7kju2")
}, {
"duration": 1.0,
"texture": ExtResource("6_t1str")
}, {
"duration": 2.0,
"texture": ExtResource("7_h1edl")
}, {
"duration": 1.0,
"texture": ExtResource("6_t1str")
}],
"loop": true,
"name": &"Yoyo",
"speed": 10.0
}, {
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_xhghv")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="CircleShape2D" id="CircleShape2D_im52w"]
radius = 31.4006
[sub_resource type="RectangleShape2D" id="RectangleShape2D_pgnks"]
size = Vector2(60, 7)
[node name="GoatKid1" instance=ExtResource("1_ksl6a")]
script = ExtResource("2_5njyi")
dialogueResource = ExtResource("3_dgbls")
[node name="Sprite" parent="." index="0"]
position = Vector2(0, -37)
sprite_frames = SubResource("SpriteFrames_s45os")
frame_progress = 0.92854
[node name="Panel" parent="Interactable" index="1"]
offset_left = -41.0
offset_top = -70.0
offset_right = 44.0
offset_bottom = 1.0
[node name="CollisionShape2D" parent="Talkable/InteractionArea" index="0"]
position = Vector2(7, -30)
shape = SubResource("CircleShape2D_im52w")
[node name="CollisionShape2D" parent="." index="3"]
position = Vector2(10, -2.5)
shape = SubResource("RectangleShape2D_pgnks")
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]
[editable path="Talkable"]