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,33 @@
[gd_scene load_steps=6 format=3 uid="uid://1mb8s4w2e6f5"]
[ext_resource type="PackedScene" uid="uid://cujx1a8vwxsj8" path="res://Objects/world_object.tscn" id="1_w0cdh"]
[ext_resource type="Texture2D" uid="uid://dy3f26r67ky30" path="res://Objects/Faire/Balloons/Balloons1.png" id="2_4l8ci"]
[ext_resource type="Texture2D" uid="uid://behcrmiv7gdkt" path="res://Objects/Faire/Balloons/Balloons2.png" id="3_tmirj"]
[ext_resource type="Script" path="res://Utils/PlayOnReady.gd" id="4_k8w5t"]
[sub_resource type="SpriteFrames" id="SpriteFrames_51q0n"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_4l8ci")
}, {
"duration": 1.0,
"texture": ExtResource("3_tmirj")
}],
"loop": true,
"name": &"default",
"speed": 1.0
}]
[node name="Balloons" instance=ExtResource("1_w0cdh")]
[node name="AnimatedSprite2D" parent="." index="0"]
position = Vector2(2, -79)
sprite_frames = SubResource("SpriteFrames_51q0n")
frame_progress = 0.839138
script = ExtResource("4_k8w5t")
[node name="CollisionPolygon2D" parent="StaticBody2D" index="0"]
visible = false
polygon = PackedVector2Array(-6, 72, 2, 75, 2, 79, -5, 81)
disabled = true

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dy3f26r67ky30"
path="res://.godot/imported/Balloons1.png-936641269a7613792b8f1af8d3ed6d36.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/Balloons/Balloons1.png"
dest_files=["res://.godot/imported/Balloons1.png-936641269a7613792b8f1af8d3ed6d36.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: 1.3 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://behcrmiv7gdkt"
path="res://.godot/imported/Balloons2.png-2a612f0911bc0574b2779bcc820a9554.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/Balloons/Balloons2.png"
dest_files=["res://.godot/imported/Balloons2.png-2a612f0911bc0574b2779bcc820a9554.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: 2.7 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bx3wiudgf6s42"
path="res://.godot/imported/CottonCandyTree.png-d756f52ad4ceca84bae763d12aad7ed3.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/CottonCandyTree/CottonCandyTree.png"
dest_files=["res://.godot/imported/CottonCandyTree.png-d756f52ad4ceca84bae763d12aad7ed3.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,34 @@
[gd_scene load_steps=7 format=3 uid="uid://blgg4t7spcxek"]
[ext_resource type="PackedScene" uid="uid://xdiytyukup38" path="res://Objects/Scavengeable/scavenge_item.tscn" id="1_b5qi5"]
[ext_resource type="Texture2D" uid="uid://bx3wiudgf6s42" path="res://Objects/Faire/CottonCandyTree/CottonCandyTree.png" id="2_o163j"]
[ext_resource type="Script" path="res://Items/Foods/Snack/CottonCandy.gd" id="3_mq163"]
[ext_resource type="Script" path="res://Items/Plants/Leaf.gd" id="4_0yhfp"]
[ext_resource type="Script" path="res://Items/Plants/Stick.gd" id="5_t8lc0"]
[sub_resource type="SpriteFrames" id="SpriteFrames_fsjn4"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_o163j")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[node name="CottonCandyTree" instance=ExtResource("1_b5qi5")]
[node name="AnimatedSprite2D" parent="." index="0"]
sprite_frames = SubResource("SpriteFrames_fsjn4")
[node name="Scavengeable" parent="." index="3"]
scavengeDifficulty = 10
dropItemClasses = Array[Resource]([ExtResource("3_mq163"), ExtResource("4_0yhfp"), ExtResource("5_t8lc0")])
dropItemProbabilities = Array[int]([2, 4, 4])
xpRewards = Array[int]([18, 2, 3])
dropItemLocationOffsets = Array[Vector2]([Vector2(-75, 6), Vector2(37, 10), Vector2(-37, 10), Vector2(75, 6), Vector2(0, 15)])
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]
[editable path="Scavengeable"]

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cus61kri1oq4h"
path="res://.godot/imported/Fence.png-dfe0475c18962924f345c3abe959fd02.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/Fence/Fence.png"
dest_files=["res://.godot/imported/Fence.png-dfe0475c18962924f345c3abe959fd02.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,25 @@
extends "res://Objects/Faire/FerrisWheel/Bucket.gd"
var popped_up = false
func _ready():
MessageManager.messageSent.connect(messageSpoken)
func messageSpoken(message:String):
if !popped_up and get_parent().get_parent().boardedBucket == self:
message = message.to_lower().strip_edges()
if message.contains("yippee!") or message.contains("yippee") or message.contains("yipee") or message.contains("yippe") or message.contains("jippee!") or message.contains("jippee") or message.contains("jipee") or message.contains("jippe"):
jonald_popup()
popped_up = true
func jonald_popup():
get_parent().get_parent().droppedOff.connect(hide_jonald)
get_tree().get_root().get_node("MainGame/PuzzleCompleteAudio").play()
$Jonald.visible = true
func hide_jonald():
get_parent().get_parent().jonaldDroppedOff.emit()
$Jonald.visible = false
func _process(delta):
super._process(delta)

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bhkdg6f3h6jd"
path="res://.godot/imported/BeeBucket.png-27e7c831843725a7d36821e2e28fec2c.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/FerrisWheel/BeeBucket.png"
dest_files=["res://.godot/imported/BeeBucket.png-27e7c831843725a7d36821e2e28fec2c.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,4 @@
extends Sprite2D
func _process(delta):
rotation = get_parent().rotation * -1

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bop05t8uct35c"
path="res://.godot/imported/Bucket.png-826a5e0b7b7ee01c66d9fd1c85475e26.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/FerrisWheel/Bucket.png"
dest_files=["res://.godot/imported/Bucket.png-826a5e0b7b7ee01c66d9fd1c85475e26.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,73 @@
extends Node2D
signal droppedOff
signal jonaldDroppedOff
var status = "waiting"
var fullSpin = false
var boardedBucket = null
var spinSpeed = 0.3
var cameraLimitTop
var ticketItem = load("res://Items/Paper/FaireTicket.gd")
func _process(delta):
$Supports.rotation += spinSpeed*delta
if status == "boarding":
var result = check_for_bucket()
if result != null:
status = "riding"
boardedBucket = result
if status == "riding":
GameVariables.player.global_position = boardedBucket.global_position
var relativePos = boardedBucket.global_position - $Supports.global_position
if relativePos.y < -100:
fullSpin = true
if fullSpin and relativePos.y > 0 and relativePos.x < 10:
status = "waiting"
LevelManager.get_skill("appreciating").experience_event("Ferris Wheel", "rode", 200)
GameVariables.player.global_position += Vector2(0, 180)
GameVariables.player.change_state("Idle")
GameVariables.camera.limit_top = cameraLimitTop
droppedOff.emit()
func ride():
if InventoryManager.spend_item(ticketItem.new()):
status = "boarding"
fullSpin = false
cameraLimitTop = GameVariables.camera.limit_top
GameVariables.camera.limit_top = -10000
else:
MessageManager.addMessage("You need one faire ticket to ride the ferris wheel.", null, "System", Color.MIDNIGHT_BLUE,
true, false)
GameVariables.player.change_state("Idle")
func check_for_bucket():
var lowest = get_lowest_bucket()
var relativePos = lowest.global_position - $Supports.global_position
if relativePos.x < -40 or relativePos.x > 40:
return null
else:
return lowest
func get_lowest_bucket():
var lowest = null
var lowestY = 1000
var buckets = $Supports.get_children()
for bucket in buckets:
var relativePos = bucket.global_position - $Supports.global_position
if relativePos.y > lowestY or lowest == null:
lowestY = relativePos.y
lowest = bucket
return lowest

View file

@ -0,0 +1,162 @@
[gd_scene load_steps=25 format=3 uid="uid://b1iuxtghkrcec"]
[ext_resource type="PackedScene" uid="uid://cujx1a8vwxsj8" path="res://Objects/world_object.tscn" id="1_3oqn4"]
[ext_resource type="Texture2D" uid="uid://bgl8xlgp6c2vf" path="res://Objects/Faire/FerrisWheel/FerrisWheelSupports.png" id="2_540gt"]
[ext_resource type="Script" path="res://Objects/Faire/FerrisWheel/FerrisWheel.gd" id="2_yyb4g"]
[ext_resource type="Texture2D" uid="uid://bubp02dmeytlt" path="res://Objects/Faire/FerrisWheel/FerrisWheelLegs.png" id="3_aem4f"]
[ext_resource type="Texture2D" uid="uid://bop05t8uct35c" path="res://Objects/Faire/FerrisWheel/Bucket.png" id="4_d7cxu"]
[ext_resource type="Texture2D" uid="uid://fr52f5vchrdv" path="res://Objects/Faire/FerrisWheel/FerrisWheelCenter.png" id="5_5tknc"]
[ext_resource type="Script" path="res://Objects/Faire/FerrisWheel/Bucket.gd" id="5_h63k2"]
[ext_resource type="Texture2D" uid="uid://ctsjtwxtjlc0g" path="res://Objects/Faire/FerrisWheel/TransBucket.png" id="5_q3it8"]
[ext_resource type="Texture2D" uid="uid://b8wl6rl23dn61" path="res://Objects/Faire/FerrisWheel/RainbowBucket.png" id="6_n0lfy"]
[ext_resource type="Texture2D" uid="uid://dpjdimo68vqpl" path="res://Objects/Faire/FerrisWheel/JonaldBucket.png" id="7_f5h5n"]
[ext_resource type="Texture2D" uid="uid://b5sdyxmg0vlnb" path="res://Objects/Faire/FerrisWheel/PretzelBucket.png" id="10_xmwky"]
[ext_resource type="Texture2D" uid="uid://bl8jh4t2ldusa" path="res://Objects/Faire/FerrisWheel/PumpkinBucket.png" id="11_x7kvv"]
[ext_resource type="Texture2D" uid="uid://dpjocfr3eed3q" path="res://Objects/Faire/FerrisWheel/LesbianBucket.png" id="12_aqdd6"]
[ext_resource type="Texture2D" uid="uid://bhkdg6f3h6jd" path="res://Objects/Faire/FerrisWheel/BeeBucket.png" id="13_x81ae"]
[ext_resource type="Script" path="res://Objects/Faire/FerrisWheel/BeeBucket.gd" id="14_ud4u4"]
[ext_resource type="PackedScene" uid="uid://bqibe7ha6r5ls" path="res://Interactions/Interactable/interactable.tscn" id="15_0fbaq"]
[ext_resource type="Texture2D" uid="uid://nevhel5mtr64" path="res://NPCs/Jonald/Jonald.png" id="15_e1fpb"]
[ext_resource type="PackedScene" uid="uid://0adfy6rcgp1q" path="res://Interactions/Rideable/Rideable.tscn" id="16_j2de1"]
[ext_resource type="Texture2D" uid="uid://mio4e4u8os8k" path="res://Objects/Faire/FerrisWheel/boardingMat.png" id="17_8bc2b"]
[ext_resource type="Texture2D" uid="uid://c10hifo474aex" path="res://Objects/Faire/FerrisWheel/costSign.png" id="18_ddgpw"]
[sub_resource type="SpriteFrames" id="SpriteFrames_pvifl"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("3_aem4f")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="SpriteFrames" id="SpriteFrames_lls5w"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_540gt")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="SpriteFrames" id="SpriteFrames_goo0o"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("5_5tknc")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="CircleShape2D" id="CircleShape2D_w2od7"]
radius = 73.7564
[node name="FerrisWheel" instance=ExtResource("1_3oqn4")]
script = ExtResource("2_yyb4g")
[node name="AnimatedSprite2D" parent="." index="0"]
z_index = -1
position = Vector2(-1, -457)
sprite_frames = SubResource("SpriteFrames_pvifl")
[node name="Supports" type="AnimatedSprite2D" parent="." index="1"]
z_index = -1
position = Vector2(-1, -455)
sprite_frames = SubResource("SpriteFrames_lls5w")
[node name="TransBucket" type="Sprite2D" parent="Supports" index="0"]
z_as_relative = false
position = Vector2(-381, -1)
texture = ExtResource("5_q3it8")
script = ExtResource("5_h63k2")
[node name="RainbowBucket" type="Sprite2D" parent="Supports" index="1"]
z_as_relative = false
position = Vector2(-290, -260)
texture = ExtResource("6_n0lfy")
script = ExtResource("5_h63k2")
[node name="Bucket" type="Sprite2D" parent="Supports" index="2"]
z_as_relative = false
position = Vector2(0, 376)
texture = ExtResource("4_d7cxu")
script = ExtResource("5_h63k2")
[node name="JonaldBucket" type="Sprite2D" parent="Supports" index="3"]
z_as_relative = false
position = Vector2(-282, 253)
texture = ExtResource("7_f5h5n")
script = ExtResource("5_h63k2")
[node name="PretzelBucket" type="Sprite2D" parent="Supports" index="4"]
z_as_relative = false
position = Vector2(2, -378)
texture = ExtResource("10_xmwky")
script = ExtResource("5_h63k2")
[node name="PumpkinBucket" type="Sprite2D" parent="Supports" index="5"]
z_as_relative = false
position = Vector2(305.5, 257.5)
texture = ExtResource("11_x7kvv")
script = ExtResource("5_h63k2")
[node name="LesbianBucket" type="Sprite2D" parent="Supports" index="6"]
z_as_relative = false
position = Vector2(283.5, -255.5)
texture = ExtResource("12_aqdd6")
script = ExtResource("5_h63k2")
[node name="BeeBucket" type="Sprite2D" parent="Supports" index="7"]
z_as_relative = false
position = Vector2(399.5, -0.5)
texture = ExtResource("13_x81ae")
script = ExtResource("14_ud4u4")
[node name="Jonald" type="Sprite2D" parent="Supports/BeeBucket" index="0"]
visible = false
show_behind_parent = true
position = Vector2(-17.5, -47.5)
rotation = -0.50118
texture = ExtResource("15_e1fpb")
flip_h = true
[node name="Center" type="AnimatedSprite2D" parent="." index="2"]
position = Vector2(-1, -455)
sprite_frames = SubResource("SpriteFrames_goo0o")
[node name="CollisionPolygon2D" parent="StaticBody2D" index="0"]
polygon = PackedVector2Array(230, -213, 416, -213, 320, 5, 203.204, 3.66522, 145, 3, 141, 61, 88, 60, 87, 1, -94, 4, -322, 1, -398, -218, -243, -218)
[node name="Interactable" parent="." index="4" instance=ExtResource("15_0fbaq")]
[node name="Panel" parent="Interactable" index="1"]
offset_left = -58.0
offset_top = -116.0
offset_right = 63.0
offset_bottom = 76.0
[node name="Rideable" parent="." index="5" instance=ExtResource("16_j2de1")]
[node name="CollisionShape2D" parent="Rideable/InteractionArea" index="0"]
position = Vector2(2, -76)
shape = SubResource("CircleShape2D_w2od7")
[node name="BoardingMat" type="Sprite2D" parent="." index="6"]
z_index = -1
position = Vector2(2, 49)
texture = ExtResource("17_8bc2b")
[node name="CostSign" type="Sprite2D" parent="." index="7"]
z_index = -1
position = Vector2(119, 27)
texture = ExtResource("18_ddgpw")
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]
[editable path="Rideable"]

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://fr52f5vchrdv"
path="res://.godot/imported/FerrisWheelCenter.png-b46d10f63e14862d4127246ce45a8363.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/FerrisWheel/FerrisWheelCenter.png"
dest_files=["res://.godot/imported/FerrisWheelCenter.png-b46d10f63e14862d4127246ce45a8363.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://bubp02dmeytlt"
path="res://.godot/imported/FerrisWheelLegs.png-31cd30db32fc13e382ca712e83c205d8.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/FerrisWheel/FerrisWheelLegs.png"
dest_files=["res://.godot/imported/FerrisWheelLegs.png-31cd30db32fc13e382ca712e83c205d8.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: 15 KiB

View file

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

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bltlvad5kdk1y"
path="res://.godot/imported/Horizon.png-22fe02b74882489d7b77aed1d9629c7b.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/FerrisWheel/Horizon.png"
dest_files=["res://.godot/imported/Horizon.png-22fe02b74882489d7b77aed1d9629c7b.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: 1.3 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dpjdimo68vqpl"
path="res://.godot/imported/JonaldBucket.png-fffcb16fa7b1f656673355b2f3a5aba9.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/FerrisWheel/JonaldBucket.png"
dest_files=["res://.godot/imported/JonaldBucket.png-fffcb16fa7b1f656673355b2f3a5aba9.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: 611 B

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dpjocfr3eed3q"
path="res://.godot/imported/LesbianBucket.png-b6f3944616cc6e891c24c63452f29d34.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/FerrisWheel/LesbianBucket.png"
dest_files=["res://.godot/imported/LesbianBucket.png-b6f3944616cc6e891c24c63452f29d34.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: 1.4 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b5sdyxmg0vlnb"
path="res://.godot/imported/PretzelBucket.png-27f48f7234c9a1baa0adf3e82586d9ca.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/FerrisWheel/PretzelBucket.png"
dest_files=["res://.godot/imported/PretzelBucket.png-27f48f7234c9a1baa0adf3e82586d9ca.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: 1.1 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bl8jh4t2ldusa"
path="res://.godot/imported/PumpkinBucket.png-a8923c5d0e8575eeb5423fbb28178669.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/FerrisWheel/PumpkinBucket.png"
dest_files=["res://.godot/imported/PumpkinBucket.png-a8923c5d0e8575eeb5423fbb28178669.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: 1.3 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b8wl6rl23dn61"
path="res://.godot/imported/RainbowBucket.png-e1b71efd1b83b2a2df572bf6cba5b3d5.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/FerrisWheel/RainbowBucket.png"
dest_files=["res://.godot/imported/RainbowBucket.png-e1b71efd1b83b2a2df572bf6cba5b3d5.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: 590 B

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://ctsjtwxtjlc0g"
path="res://.godot/imported/TransBucket.png-b15957272b07e9207ef549b7292ea63c.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/FerrisWheel/TransBucket.png"
dest_files=["res://.godot/imported/TransBucket.png-b15957272b07e9207ef549b7292ea63c.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: 289 B

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://mio4e4u8os8k"
path="res://.godot/imported/boardingMat.png-a2ce9f82b4d4fd61831f525b983ef2b2.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/FerrisWheel/boardingMat.png"
dest_files=["res://.godot/imported/boardingMat.png-a2ce9f82b4d4fd61831f525b983ef2b2.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: 701 B

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c10hifo474aex"
path="res://.godot/imported/costSign.png-991ba24b32c00c8e8e50948dca404ecc.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/FerrisWheel/costSign.png"
dest_files=["res://.godot/imported/costSign.png-991ba24b32c00c8e8e50948dca404ecc.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: 5.1 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c0y6b5qweau3"
path="res://.godot/imported/Funnel.png-faf0b78fc26f1f5cb588d41c4b3a0f92.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/Funnel/Funnel.png"
dest_files=["res://.godot/imported/Funnel.png-faf0b78fc26f1f5cb588d41c4b3a0f92.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,65 @@
[gd_scene load_steps=6 format=3 uid="uid://dsie414tpjaet"]
[ext_resource type="PackedScene" uid="uid://cujx1a8vwxsj8" path="res://Objects/world_object.tscn" id="1_l2gus"]
[ext_resource type="Texture2D" uid="uid://c0y6b5qweau3" path="res://Objects/Faire/Funnel/Funnel.png" id="2_v4twt"]
[ext_resource type="PackedScene" uid="uid://vmfybebq5yw8" path="res://Objects/Faire/Funnel/FunnelEntrance.tscn" id="3_vjdew"]
[sub_resource type="SpriteFrames" id="SpriteFrames_n8qco"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_v4twt")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="CircleShape2D" id="CircleShape2D_bbsdh"]
radius = 8.94427
[node name="Funnel" instance=ExtResource("1_l2gus")]
[node name="AnimatedSprite2D" parent="." index="0"]
position = Vector2(0, -40)
sprite_frames = SubResource("SpriteFrames_n8qco")
[node name="CollisionPolygon2D" parent="StaticBody2D" index="0"]
polygon = PackedVector2Array(-455, -1, 454, -3, 458, 69, 343, 68, 254, 60, 179, 71, 108, 61, -39, 64, -129, 67, -261, 62, -300, 72, -407, 70, -451, 72, -452, 30)
[node name="FunnelEntrance" parent="." index="2" instance=ExtResource("3_vjdew")]
position = Vector2(-351, 68)
exitPos = Vector2(400, 75)
[node name="Panel" parent="FunnelEntrance/Interactable" index="1"]
offset_left = -57.0
offset_top = -121.0
offset_right = 55.0
offset_bottom = 4.0
[node name="CollisionShape2D" parent="FunnelEntrance/Rideable/InteractionArea" index="0"]
position = Vector2(23, -50)
shape = SubResource("CircleShape2D_bbsdh")
[node name="FunnelEntrance2" parent="." index="3" instance=ExtResource("3_vjdew")]
position = Vector2(388, 66)
exitPos = Vector2(-400, 75)
[node name="Panel" parent="FunnelEntrance2/Interactable" index="1"]
offset_left = -57.0
offset_top = -121.0
offset_right = 55.0
offset_bottom = 4.0
[node name="CollisionShape2D" parent="FunnelEntrance2/Rideable/InteractionArea" index="0"]
position = Vector2(-21, -47)
shape = SubResource("CircleShape2D_bbsdh")
[editable path="FunnelEntrance"]
[editable path="FunnelEntrance/Interactable"]
[editable path="FunnelEntrance/Interactable/ActionMenu"]
[editable path="FunnelEntrance/Rideable"]
[editable path="FunnelEntrance2"]
[editable path="FunnelEntrance2/Interactable"]
[editable path="FunnelEntrance2/Interactable/ActionMenu"]
[editable path="FunnelEntrance2/Rideable"]

View file

@ -0,0 +1,47 @@
extends Node2D
@export var exitPos:Vector2
var riding = false
var waitTime = 4
var waitTimer = 4
var rideDelay = 0.5
var ticketItem = load("res://Items/Paper/FaireTicket.gd")
func _process(delta):
if riding:
waitTimer -= delta
if waitTimer <= 0:
leave()
if rideDelay >= 0:
rideDelay -= delta
func ride():
if riding or rideDelay > 0:
GameVariables.player.change_state("Idle")
return
if InventoryManager.spend_item(ticketItem.new()):
riding = true
GameVariables.player.visible = false
waitTimer = waitTime
else:
MessageManager.addMessage("YOU REQUIRE ONE (1) FAIRE TICKET TO ENJOY THE FUNNEL (FUN TUNNEL).", null, "System", Color.MIDNIGHT_BLUE,
true, false)
GameVariables.player.change_state("Idle")
func leave():
GameVariables.player.change_state("Idle")
GameVariables.player.visible = true
GameVariables.player.global_position = exitPos + get_parent().global_position
GameVariables.player.set_target_position(GameVariables.player.global_position)
LevelManager.get_skill("appreciating").experience_event("The Funnel", "rode", 300)
rideDelay = 0.5
riding = false
var timesRidden = SaveManager.get_value_from_section("rode", "The Funnel", 0)
if timesRidden >= 100:
AchievementManager.complete_achievement("Never Gets Old")

View file

@ -0,0 +1,12 @@
[gd_scene load_steps=4 format=3 uid="uid://vmfybebq5yw8"]
[ext_resource type="PackedScene" uid="uid://bqibe7ha6r5ls" path="res://Interactions/Interactable/interactable.tscn" id="1_4hcqt"]
[ext_resource type="Script" path="res://Objects/Faire/Funnel/FunnelEntrance.gd" id="1_rguhh"]
[ext_resource type="PackedScene" uid="uid://0adfy6rcgp1q" path="res://Interactions/Rideable/Rideable.tscn" id="2_c6ofh"]
[node name="FunnelEntrance" type="Node2D"]
script = ExtResource("1_rguhh")
[node name="Interactable" parent="." instance=ExtResource("1_4hcqt")]
[node name="Rideable" parent="." instance=ExtResource("2_c6ofh")]

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b3e3jyu6nyxpt"
path="res://.godot/imported/CowBoard.png-58172e9753847a75d1b6d6638b0f36a3.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/HorseBoard/CowBoard.png"
dest_files=["res://.godot/imported/CowBoard.png-58172e9753847a75d1b6d6638b0f36a3.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: 4.6 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bf8d1iljchgsh"
path="res://.godot/imported/GiraffeBoard.png-59b4dd7685b2a2b1467b9d48f4e04fd6.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/HorseBoard/GiraffeBoard.png"
dest_files=["res://.godot/imported/GiraffeBoard.png-59b4dd7685b2a2b1467b9d48f4e04fd6.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: 1.7 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b12tebgrwuwfg"
path="res://.godot/imported/HorseBoard.png-531e5f3e48afc97fe3cd42739c87e07c.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/HorseBoard/HorseBoard.png"
dest_files=["res://.godot/imported/HorseBoard.png-531e5f3e48afc97fe3cd42739c87e07c.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: 1.9 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dyystug6j3m3q"
path="res://.godot/imported/TurtleBoard.png-46472c9601eee146a94e6f8041efe592.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/HorseBoard/TurtleBoard.png"
dest_files=["res://.godot/imported/TurtleBoard.png-46472c9601eee146a94e6f8041efe592.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,12 @@
extends "res://Interactions/Shopping/ShopHaver.gd"
func instantiate_shop_inventory():
var onionRing = load("res://Items/Foods/Snack/OnionRing.gd").new()
var onion = load("res://Items/Foods/Veggie/Onion.gd").new()
shopInventory = []
shopInventory.append(onionRing)
shopInventory.append(onion)
super.instantiate_shop_inventory()

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dco108vd77gsg"
path="res://.godot/imported/OnyanStand.png-f48746709d91507edda2d234c0933d19.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/OnyanStand/OnyanStand.png"
dest_files=["res://.godot/imported/OnyanStand.png-f48746709d91507edda2d234c0933d19.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,58 @@
[gd_scene load_steps=10 format=3 uid="uid://cf08dyn8ive8t"]
[ext_resource type="PackedScene" uid="uid://cujx1a8vwxsj8" path="res://Objects/world_object.tscn" id="1_ltrrw"]
[ext_resource type="PackedScene" uid="uid://m2krhoy4a3g1" path="res://NPCs/Faire/OnyanCat/onyan_cat.tscn" id="2_sckdo"]
[ext_resource type="Texture2D" uid="uid://dco108vd77gsg" path="res://Objects/Faire/OnyanStand/OnyanStand.png" id="2_wty0v"]
[ext_resource type="Texture2D" uid="uid://ce6vsieckjffh" path="res://NPCs/Faire/OnyanCat/OnyanCatPaws.png" id="4_2gtck"]
[ext_resource type="PackedScene" uid="uid://bqibe7ha6r5ls" path="res://Interactions/Interactable/interactable.tscn" id="5_k7hx0"]
[ext_resource type="PackedScene" uid="uid://dkcbmgfe3yk6y" path="res://Interactions/Shopping/ShopHaver.tscn" id="6_ycoud"]
[ext_resource type="Script" path="res://Objects/Faire/OnyanStand/OnyanShop.gd" id="7_dox8a"]
[sub_resource type="SpriteFrames" id="SpriteFrames_n24vl"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_wty0v")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="CircleShape2D" id="CircleShape2D_mvo3a"]
radius = 97.0206
[node name="OnyanStand" instance=ExtResource("1_ltrrw")]
[node name="OnyanCat" parent="." index="0" instance=ExtResource("2_sckdo")]
position = Vector2(100, -44)
[node name="AnimatedSprite2D" parent="." index="1"]
position = Vector2(1, -145)
sprite_frames = SubResource("SpriteFrames_n24vl")
[node name="CollisionPolygon2D" parent="StaticBody2D" index="0"]
polygon = PackedVector2Array(-179, -6, 189, -8, 190, 8, -179, 7)
[node name="OnyanCatPaws" type="Sprite2D" parent="." index="3"]
position = Vector2(96, -43)
texture = ExtResource("4_2gtck")
[node name="Interactable" parent="." index="4" instance=ExtResource("5_k7hx0")]
[node name="Panel" parent="Interactable" index="1"]
offset_left = -128.0
offset_top = -96.0
offset_right = -38.0
offset_bottom = -62.0
[node name="ShopHaver" parent="." index="5" instance=ExtResource("6_ycoud")]
script = ExtResource("7_dox8a")
[node name="CollisionShape2D" parent="ShopHaver/InteractionArea" index="0"]
position = Vector2(-39, -75)
shape = SubResource("CircleShape2D_mvo3a")
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]
[editable path="ShopHaver"]

View file

@ -0,0 +1,10 @@
extends "res://Interactions/Shopping/ShopHaver.gd"
func instantiate_shop_inventory():
var popcorn = load("res://Items/Foods/Snack/Popcorn.gd").new()
shopInventory = []
shopInventory.append(popcorn)
super.instantiate_shop_inventory()

View file

@ -0,0 +1,54 @@
[gd_scene load_steps=9 format=3 uid="uid://cnha6c4hoiibo"]
[ext_resource type="PackedScene" uid="uid://cujx1a8vwxsj8" path="res://Objects/world_object.tscn" id="1_rs772"]
[ext_resource type="Texture2D" uid="uid://cnl0d5knyvsm8" path="res://Objects/Faire/PopcornStand/popcornstand.png" id="2_ynudo"]
[ext_resource type="PackedScene" uid="uid://b87ebkvssxjsg" path="res://NPCs/Faire/PopcornBird/PopcornBird.tscn" id="3_13iqv"]
[ext_resource type="PackedScene" uid="uid://bqibe7ha6r5ls" path="res://Interactions/Interactable/interactable.tscn" id="4_4moue"]
[ext_resource type="PackedScene" uid="uid://dkcbmgfe3yk6y" path="res://Interactions/Shopping/ShopHaver.tscn" id="5_gbilt"]
[ext_resource type="Script" path="res://Objects/Faire/PopcornStand/PopcornShop.gd" id="6_dmry0"]
[sub_resource type="SpriteFrames" id="SpriteFrames_6f106"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_ynudo")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="CircleShape2D" id="CircleShape2D_cwg0w"]
radius = 43.1045
[node name="PopcornStand" instance=ExtResource("1_rs772")]
[node name="AnimatedSprite2D" parent="." index="0"]
position = Vector2(-1, -35)
sprite_frames = SubResource("SpriteFrames_6f106")
[node name="CollisionPolygon2D" parent="StaticBody2D" index="0"]
position = Vector2(1, 7)
polygon = PackedVector2Array(-31, -17, 31, -17, 31, 13, -29, 14)
[node name="PopcornBird" parent="." index="2" instance=ExtResource("3_13iqv")]
position = Vector2(-52, -52)
[node name="Interactable" parent="." index="3" instance=ExtResource("4_4moue")]
[node name="Panel" parent="Interactable" index="1"]
offset_left = -33.0
offset_top = -89.0
offset_right = 29.0
offset_bottom = 21.0
[node name="ShopHaver" parent="." index="4" instance=ExtResource("5_gbilt")]
script = ExtResource("6_dmry0")
[node name="CollisionShape2D" parent="ShopHaver/InteractionArea" index="0"]
position = Vector2(2, -21)
shape = SubResource("CircleShape2D_cwg0w")
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]
[editable path="ShopHaver"]

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cnl0d5knyvsm8"
path="res://.godot/imported/popcornstand.png-a6e3377c430bcc340411d929a3b0db9a.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/PopcornStand/popcornstand.png"
dest_files=["res://.godot/imported/popcornstand.png-a6e3377c430bcc340411d929a3b0db9a.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,22 @@
extends Interaction
var nestedGameInstance
# Called when the node enters the scene tree for the first time.
func _ready():
add_action("Play", play_game)
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta):
pass
func play_game():
get_node("/root/MainGame/CanvasLayer/MessageZone").visible = false
get_node("/root/MainGame/CanvasLayer/MenuBar").visible = false
get_node("/root/MainGame/CanvasLayer/MinimizeMessageZoneButton").visible = false
var nestedGameScene = preload("res://MiniGames/RingToss/ringtoss_scene.tscn")
nestedGameInstance = nestedGameScene.instantiate()
find_parent("MainGame").add_child(nestedGameInstance)
nestedGameInstance.get_node("RTcam").make_current()
get_tree().paused = true

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dvoprbysuapm2"
path="res://.godot/imported/RTStand.png-b957cf0ebce3b1aeab5f453df90ca26c.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/RingToss/RTStand.png"
dest_files=["res://.godot/imported/RTStand.png-b957cf0ebce3b1aeab5f453df90ca26c.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,80 @@
[gd_scene load_steps=6 format=3 uid="uid://b4r7oeopwgj1u"]
[ext_resource type="Texture2D" uid="uid://dvoprbysuapm2" path="res://Objects/Faire/RingToss/RTStand.png" id="1_x17rm"]
[ext_resource type="PackedScene" uid="uid://bqibe7ha6r5ls" path="res://Interactions/Interactable/interactable.tscn" id="2_282py"]
[ext_resource type="PackedScene" uid="uid://c5ded8kcouyci" path="res://Interactions/Interactable/interaction.tscn" id="3_7meh2"]
[ext_resource type="Script" path="res://Objects/Faire/RingToss/RTInteract.gd" id="3_dvb2l"]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_02ak2"]
size = Vector2(169, 84)
[node name="RingTossStand" type="Node2D"]
[node name="Sprite2D" type="Sprite2D" parent="."]
texture = ExtResource("1_x17rm")
[node name="StaticBody2D" type="StaticBody2D" parent="."]
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="StaticBody2D"]
polygon = PackedVector2Array(71, -70, 107, 65, -1, 70, -107, 65, -69, -70, 1, -73)
[node name="Interactable" parent="." instance=ExtResource("2_282py")]
[node name="138591" type="MarginContainer" parent="Interactable/ActionMenu/PopupMenu" index="3"]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
[node name="138592" type="ScrollContainer" parent="Interactable/ActionMenu/PopupMenu/138591"]
layout_mode = 2
[node name="138593" type="Control" parent="Interactable/ActionMenu/PopupMenu/138591/138592"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="138594" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="4"]
wait_time = 0.3
one_shot = true
[node name="138595" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="5"]
wait_time = 0.3
one_shot = true
[node name="121937" type="MarginContainer" parent="Interactable/ActionMenu/PopupMenu" index="6"]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
[node name="121938" type="ScrollContainer" parent="Interactable/ActionMenu/PopupMenu/121937"]
layout_mode = 2
[node name="121939" type="Control" parent="Interactable/ActionMenu/PopupMenu/121937/121938"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="121940" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="7"]
wait_time = 0.3
one_shot = true
[node name="121941" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="8"]
wait_time = 0.3
one_shot = true
[node name="Panel" parent="Interactable" index="1"]
offset_left = -65.0
offset_top = -74.0
offset_right = 72.0
offset_bottom = 76.0
[node name="Interaction" parent="." instance=ExtResource("3_7meh2")]
script = ExtResource("3_dvb2l")
[node name="CollisionShape2D" parent="Interaction/InteractionArea" index="0"]
position = Vector2(-2, 49)
shape = SubResource("RectangleShape2D_02ak2")
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]
[editable path="Interaction"]

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://3uvk1dnvqebp"
path="res://.godot/imported/SnacksStand.png-b8a6c1cfa57a49b9a8c604a71efc039c.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/SnacksStand/SnacksStand.png"
dest_files=["res://.godot/imported/SnacksStand.png-b8a6c1cfa57a49b9a8c604a71efc039c.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,53 @@
[gd_scene load_steps=9 format=3 uid="uid://ckiksd5rv4xe6"]
[ext_resource type="PackedScene" uid="uid://cujx1a8vwxsj8" path="res://Objects/world_object.tscn" id="1_ojyrs"]
[ext_resource type="Texture2D" uid="uid://3uvk1dnvqebp" path="res://Objects/Faire/SnacksStand/SnacksStand.png" id="2_buwyg"]
[ext_resource type="Script" path="res://NPCs/Faire/SnacksGecko/SnacksShop.gd" id="5_rcl6m"]
[ext_resource type="PackedScene" uid="uid://bqibe7ha6r5ls" path="res://Interactions/Interactable/interactable.tscn" id="5_s8jsq"]
[ext_resource type="PackedScene" uid="uid://dkcbmgfe3yk6y" path="res://Interactions/Shopping/ShopHaver.tscn" id="6_76bql"]
[ext_resource type="PackedScene" uid="uid://htt14aincihu" path="res://NPCs/Faire/SnacksGecko/SnacksGecko.tscn" id="6_jdaqh"]
[sub_resource type="SpriteFrames" id="SpriteFrames_t3k5k"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_buwyg")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="CircleShape2D" id="CircleShape2D_gpih5"]
radius = 106.019
[node name="SnacksStand" instance=ExtResource("1_ojyrs")]
[node name="AnimatedSprite2D" parent="." index="0"]
position = Vector2(3, -106)
sprite_frames = SubResource("SpriteFrames_t3k5k")
[node name="CollisionPolygon2D" parent="StaticBody2D" index="0"]
polygon = PackedVector2Array(-191, -4, 195, -8, 190, 14, -186, 14)
[node name="Interactable" parent="." index="2" instance=ExtResource("5_s8jsq")]
[node name="Panel" parent="Interactable" index="1"]
offset_left = -144.0
offset_top = -134.0
offset_right = -52.0
offset_bottom = -94.0
[node name="ShopHaver" parent="." index="3" instance=ExtResource("6_76bql")]
script = ExtResource("5_rcl6m")
[node name="CollisionShape2D" parent="ShopHaver/InteractionArea" index="0"]
position = Vector2(-69, -77)
shape = SubResource("CircleShape2D_gpih5")
[node name="SnacksGecko" parent="." index="4" instance=ExtResource("6_jdaqh")]
position = Vector2(103, -68)
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]
[editable path="ShopHaver"]

Binary file not shown.

After

Width:  |  Height:  |  Size: 1 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://krqtpo3dyd1u"
path="res://.godot/imported/MoneyBox.png-a8dc62e8f35eb0961140ad09c85be20e.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/SupplyBoxes/MoneyBox.png"
dest_files=["res://.godot/imported/MoneyBox.png-a8dc62e8f35eb0961140ad09c85be20e.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: 1.2 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://8pnoey3km8hj"
path="res://.godot/imported/SnacksBox.png-e29bc7445283effb8d427b2da2c4d673.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/SupplyBoxes/SnacksBox.png"
dest_files=["res://.godot/imported/SnacksBox.png-e29bc7445283effb8d427b2da2c4d673.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,43 @@
[gd_scene load_steps=5 format=3 uid="uid://ci7bpnflmv8d6"]
[ext_resource type="PackedScene" uid="uid://xdiytyukup38" path="res://Objects/Scavengeable/scavenge_item.tscn" id="1_ccjrb"]
[ext_resource type="Texture2D" uid="uid://krqtpo3dyd1u" path="res://Objects/Faire/SupplyBoxes/MoneyBox.png" id="2_6c6nq"]
[ext_resource type="Script" path="res://Items/Paper/FaireTicket.gd" id="3_f0d8q"]
[sub_resource type="SpriteFrames" id="SpriteFrames_tmb64"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_6c6nq")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[node name="MoneyBox" instance=ExtResource("1_ccjrb")]
y_sort_enabled = true
[node name="AnimatedSprite2D" parent="." index="0"]
position = Vector2(-1, 0)
sprite_frames = SubResource("SpriteFrames_tmb64")
[node name="CollisionPolygon2D" parent="StaticBody2D" index="0"]
polygon = PackedVector2Array(-33.5, 82.5, 37.5, 83.5, 42.5, 93.5, 25.5, 132.5, -33.5, 133.5)
[node name="Panel" parent="Interactable" index="1"]
offset_left = -33.0
offset_top = 58.0
offset_right = 24.0
offset_bottom = 133.0
[node name="Scavengeable" parent="." index="3"]
scavengeDifficulty = 20
dropItemClasses = Array[Resource]([ExtResource("3_f0d8q")])
dropItemProbabilities = Array[int]([1])
xpRewards = Array[int]([25])
dropItemLocationOffsets = Array[Vector2]([Vector2(-40, 45), Vector2(0, 45), Vector2(30, 30)])
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]
[editable path="Scavengeable"]

View file

@ -0,0 +1,45 @@
[gd_scene load_steps=7 format=3 uid="uid://dmy8ko88t3r1m"]
[ext_resource type="PackedScene" uid="uid://xdiytyukup38" path="res://Objects/Scavengeable/scavenge_item.tscn" id="1_i5fee"]
[ext_resource type="Texture2D" uid="uid://8pnoey3km8hj" path="res://Objects/Faire/SupplyBoxes/SnacksBox.png" id="2_afj4j"]
[ext_resource type="Script" path="res://Items/Foods/Snack/OnionRing.gd" id="3_h052a"]
[ext_resource type="Script" path="res://Items/Foods/Snack/Churro.gd" id="4_s2c2r"]
[ext_resource type="Script" path="res://Items/Foods/Snack/Lollipop.gd" id="5_cw6sq"]
[sub_resource type="SpriteFrames" id="SpriteFrames_o5trx"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_afj4j")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[node name="MoneyBox" instance=ExtResource("1_i5fee")]
y_sort_enabled = true
[node name="AnimatedSprite2D" parent="." index="0"]
position = Vector2(-1, 0)
sprite_frames = SubResource("SpriteFrames_o5trx")
[node name="CollisionPolygon2D" parent="StaticBody2D" index="0"]
polygon = PackedVector2Array(-33.5, 82.5, 37.5, 83.5, 42.5, 93.5, 25.5, 132.5, -33.5, 133.5)
[node name="Panel" parent="Interactable" index="1"]
offset_left = -33.0
offset_top = 58.0
offset_right = 24.0
offset_bottom = 133.0
[node name="Scavengeable" parent="." index="3"]
scavengeDifficulty = 12
dropItemClasses = Array[Resource]([ExtResource("3_h052a"), ExtResource("4_s2c2r"), ExtResource("5_cw6sq")])
dropItemProbabilities = Array[int]([1, 1, 1])
xpRewards = Array[int]([7, 8, 7])
dropItemLocationOffsets = Array[Vector2]([Vector2(-40, 45), Vector2(0, 45), Vector2(30, 30)])
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]
[editable path="Scavengeable"]

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dbcrgma4thm4v"
path="res://.godot/imported/TicketBooth.png-9d20913dd3b3aa3feb1a7e79a24567c8.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/TicketBooth/TicketBooth.png"
dest_files=["res://.godot/imported/TicketBooth.png-9d20913dd3b3aa3feb1a7e79a24567c8.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,62 @@
[gd_scene load_steps=11 format=3 uid="uid://cos4proxemc8"]
[ext_resource type="PackedScene" uid="uid://cujx1a8vwxsj8" path="res://Objects/world_object.tscn" id="1_vhnih"]
[ext_resource type="Texture2D" uid="uid://dbcrgma4thm4v" path="res://Objects/Faire/TicketBooth/TicketBooth.png" id="2_npue7"]
[ext_resource type="Texture2D" uid="uid://brynf2b53anax" path="res://Objects/Faire/TicketBooth/TicketBoothBG.png" id="2_tjekb"]
[ext_resource type="PackedScene" uid="uid://d2wf582p6us4f" path="res://NPCs/Faire/TicketPig/TicketPig.tscn" id="3_uc5rx"]
[ext_resource type="Texture2D" uid="uid://bbf8md0ownhev" path="res://Objects/Faire/TicketBooth/TicketPigArms.png" id="4_r2k2m"]
[ext_resource type="PackedScene" uid="uid://dkcbmgfe3yk6y" path="res://Interactions/Shopping/ShopHaver.tscn" id="6_wytdv"]
[ext_resource type="PackedScene" uid="uid://bqibe7ha6r5ls" path="res://Interactions/Interactable/interactable.tscn" id="7_my5nl"]
[ext_resource type="Script" path="res://Objects/Faire/TicketBooth/TicketShop.gd" id="7_plvj6"]
[sub_resource type="SpriteFrames" id="SpriteFrames_1qjln"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_npue7")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="CircleShape2D" id="CircleShape2D_xeeos"]
radius = 72.1734
[node name="TicketBooth" instance=ExtResource("1_vhnih")]
[node name="TicketBoothBg" type="Sprite2D" parent="." index="0"]
position = Vector2(0, -82)
texture = ExtResource("2_tjekb")
[node name="TicketPig" parent="." index="1" instance=ExtResource("3_uc5rx")]
position = Vector2(-37, -72)
[node name="AnimatedSprite2D" parent="." index="2"]
position = Vector2(0, -82)
sprite_frames = SubResource("SpriteFrames_1qjln")
[node name="CollisionPolygon2D" parent="StaticBody2D" index="0"]
polygon = PackedVector2Array(-149, -7, 144, -3, 144, 36, -151, 36)
[node name="TicketPigArms" type="Sprite2D" parent="." index="4"]
position = Vector2(-40, -67)
texture = ExtResource("4_r2k2m")
[node name="Interactable" parent="." index="5" instance=ExtResource("7_my5nl")]
[node name="Panel" parent="Interactable" index="1"]
offset_left = 2.0
offset_right = 54.0
offset_bottom = -75.0
[node name="ShopHaver" parent="." index="6" instance=ExtResource("6_wytdv")]
script = ExtResource("7_plvj6")
[node name="CollisionShape2D" parent="ShopHaver/InteractionArea" index="0"]
position = Vector2(31, -43)
shape = SubResource("CircleShape2D_xeeos")
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]
[editable path="ShopHaver"]

View file

@ -0,0 +1,57 @@
[gd_scene load_steps=10 format=3 uid="uid://dcuwosah661bs"]
[ext_resource type="PackedScene" uid="uid://cujx1a8vwxsj8" path="res://Objects/world_object.tscn" id="1_nyxqr"]
[ext_resource type="Texture2D" uid="uid://brynf2b53anax" path="res://Objects/Faire/TicketBooth/TicketBoothBG.png" id="2_wwl8q"]
[ext_resource type="PackedScene" uid="uid://c0tplejfk64gg" path="res://NPCs/Faire/TicketDuck/TicketDuck.tscn" id="3_nhbbi"]
[ext_resource type="Texture2D" uid="uid://dbcrgma4thm4v" path="res://Objects/Faire/TicketBooth/TicketBooth.png" id="4_t71da"]
[ext_resource type="PackedScene" uid="uid://bqibe7ha6r5ls" path="res://Interactions/Interactable/interactable.tscn" id="6_12dwl"]
[ext_resource type="PackedScene" uid="uid://dkcbmgfe3yk6y" path="res://Interactions/Shopping/ShopHaver.tscn" id="7_e4r7i"]
[ext_resource type="Script" path="res://Objects/Faire/TicketBooth/TicketShop.gd" id="8_7h5fo"]
[sub_resource type="SpriteFrames" id="SpriteFrames_1qjln"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("4_t71da")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="CircleShape2D" id="CircleShape2D_xeeos"]
radius = 72.1734
[node name="TicketBooth2" instance=ExtResource("1_nyxqr")]
[node name="TicketBoothBg" type="Sprite2D" parent="." index="0"]
position = Vector2(0, -82)
texture = ExtResource("2_wwl8q")
[node name="TicketDuck" parent="." index="1" instance=ExtResource("3_nhbbi")]
position = Vector2(-35, -81)
[node name="AnimatedSprite2D" parent="." index="2"]
position = Vector2(0, -82)
sprite_frames = SubResource("SpriteFrames_1qjln")
[node name="CollisionPolygon2D" parent="StaticBody2D" index="0"]
polygon = PackedVector2Array(-149, -7, 144, -3, 144, 36, -151, 36)
[node name="Interactable" parent="." index="4" instance=ExtResource("6_12dwl")]
[node name="Panel" parent="Interactable" index="1"]
offset_left = 2.0
offset_right = 54.0
offset_bottom = -75.0
[node name="ShopHaver" parent="." index="5" instance=ExtResource("7_e4r7i")]
script = ExtResource("8_7h5fo")
[node name="CollisionShape2D" parent="ShopHaver/InteractionArea" index="0"]
position = Vector2(31, -43)
shape = SubResource("CircleShape2D_xeeos")
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]
[editable path="ShopHaver"]

Binary file not shown.

After

Width:  |  Height:  |  Size: 945 B

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://brynf2b53anax"
path="res://.godot/imported/TicketBoothBG.png-f309525ab221e2d06640371e1a811748.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/TicketBooth/TicketBoothBG.png"
dest_files=["res://.godot/imported/TicketBoothBG.png-f309525ab221e2d06640371e1a811748.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: 199 B

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bbf8md0ownhev"
path="res://.godot/imported/TicketPigArms.png-e21189639bda90fd6ad8e8ef49243cbb.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/TicketBooth/TicketPigArms.png"
dest_files=["res://.godot/imported/TicketPigArms.png-e21189639bda90fd6ad8e8ef49243cbb.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,10 @@
extends "res://Interactions/Shopping/ShopHaver.gd"
func instantiate_shop_inventory():
var ticket = load("res://Items/Paper/FaireTicket.gd").new()
shopInventory = []
shopInventory.append(ticket)
super.instantiate_shop_inventory()

Binary file not shown.

After

Width:  |  Height:  |  Size: 701 B

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://ccgyl8bwl67de"
path="res://.godot/imported/TicketCostDisplay.png-e5629ace1df4f4d5aa27cb55aa46731a.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/TicketCostDisplay/TicketCostDisplay.png"
dest_files=["res://.godot/imported/TicketCostDisplay.png-e5629ace1df4f4d5aa27cb55aa46731a.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: 777 B

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c4el0ixctsn8x"
path="res://.godot/imported/TicketCostDisplay2.png-d246219be160732513a2e11f5a2677fa.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/TicketCostDisplay/TicketCostDisplay2.png"
dest_files=["res://.godot/imported/TicketCostDisplay2.png-d246219be160732513a2e11f5a2677fa.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,34 @@
[gd_scene load_steps=5 format=3 uid="uid://i531yl5c7sja"]
[ext_resource type="PackedScene" uid="uid://cujx1a8vwxsj8" path="res://Objects/world_object.tscn" id="1_4le0j"]
[ext_resource type="Texture2D" uid="uid://ccgyl8bwl67de" path="res://Objects/Faire/TicketCostDisplay/TicketCostDisplay.png" id="2_drcuk"]
[ext_resource type="Texture2D" uid="uid://c4el0ixctsn8x" path="res://Objects/Faire/TicketCostDisplay/TicketCostDisplay2.png" id="3_16eog"]
[sub_resource type="SpriteFrames" id="SpriteFrames_rjbyv"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_drcuk")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}, {
"frames": [{
"duration": 1.0,
"texture": ExtResource("3_16eog")
}],
"loop": true,
"name": &"new_animation",
"speed": 5.0
}]
[node name="TicketCostDisplay1" instance=ExtResource("1_4le0j")]
[node name="AnimatedSprite2D" parent="." index="0"]
position = Vector2(3, -22)
sprite_frames = SubResource("SpriteFrames_rjbyv")
animation = &"new_animation"
[node name="CollisionPolygon2D" parent="StaticBody2D" index="0"]
polygon = PackedVector2Array(-30, -1, 30, -2, 30, 11, -30, 11)

Binary file not shown.

After

Width:  |  Height:  |  Size: 540 B

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b2fb28jycsca2"
path="res://.godot/imported/Arrow.png-98d76b648a05494f8f337c720f5a78d9.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/Wheel/Arrow.png"
dest_files=["res://.godot/imported/Arrow.png-98d76b648a05494f8f337c720f5a78d9.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,65 @@
extends Node2D
var spinning = false
var maxLaunchSpeed = 1300
var minLaunchSpeed = 600
var spinSpeed = 0
var acceleration = -100
var rng = RandomNumberGenerator.new()
var prizes = []
var ticketItem = load("res://Items/Paper/FaireTicket.gd")
func _ready():
initialize_prizes()
func _process(delta):
if spinning:
%SpinningWheel.rotation_degrees += spinSpeed * delta
spinSpeed += acceleration * delta
while %SpinningWheel.rotation_degrees >= 360:
%SpinningWheel.rotation_degrees -= 360
if spinSpeed <= 0:
spinning = false
give_prize()
func give_prize():
var prize = prizes[floor(%SpinningWheel.rotation_degrees/30)]
if prize != null:
var newPrize = prize.new()
InventoryManager.add_item_to_inventory(newPrize)
LevelManager.add_XP("gaming", newPrize.get_value())
MessageManager.item_popup(prize.new())
func spin():
if !spinning:
if InventoryManager.spend_item(ticketItem.new(), 2):
spinning = true
spinSpeed = rng.randf_range(minLaunchSpeed, maxLaunchSpeed)
LevelManager.add_XP("gaming", 5)
else:
MessageManager.addMessage("You need two faire tickets to spin the wheel.", null, "System", Color.MIDNIGHT_BLUE,
true, false)
func initialize_prizes():
prizes.append(load("res://Items/Foods/Fruits/Watermelon.gd"))
prizes.append(load("res://Items/Foods/Snack/Lollipop.gd"))
prizes.append(null)
prizes.append(load("res://Items/Toys/Instruments/Trumpet.gd"))
prizes.append(null)
prizes.append(load("res://Items/Paper/FaireTicket.gd"))
prizes.append(load("res://Items/Toys/Puppets/MarlowPuppet.gd"))
prizes.append(null)
prizes.append(load("res://Items/Foods/Snack/OnionRing.gd"))
prizes.append(load("res://Items/Foods/Meal/Burrito.gd"))
prizes.append(null)
prizes.append(load("res://Items/Foods/Snack/Churro.gd"))

View file

@ -0,0 +1,74 @@
[gd_scene load_steps=10 format=3 uid="uid://bg43t2vpwifyp"]
[ext_resource type="PackedScene" uid="uid://cujx1a8vwxsj8" path="res://Objects/world_object.tscn" id="1_vyqj2"]
[ext_resource type="Script" path="res://Objects/Faire/Wheel/Wheel.gd" id="2_b80ij"]
[ext_resource type="Texture2D" uid="uid://cey4tpqb2upc" path="res://Objects/Faire/Wheel/wheel.png" id="2_lveek"]
[ext_resource type="Texture2D" uid="uid://l4kxqeqiba10" path="res://Objects/Faire/Wheel/wheelBase.png" id="3_nnqgb"]
[ext_resource type="Texture2D" uid="uid://b2fb28jycsca2" path="res://Objects/Faire/Wheel/Arrow.png" id="4_jumjg"]
[ext_resource type="PackedScene" uid="uid://1syjvoev4qjn" path="res://Interactions/Spinable/Spinable.tscn" id="5_vkay4"]
[ext_resource type="PackedScene" uid="uid://bqibe7ha6r5ls" path="res://Interactions/Interactable/interactable.tscn" id="6_nm03e"]
[sub_resource type="SpriteFrames" id="SpriteFrames_3whw7"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_lveek")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="CircleShape2D" id="CircleShape2D_tdnm8"]
radius = 61.0
[node name="Wheel" instance=ExtResource("1_vyqj2")]
y_sort_enabled = true
script = ExtResource("2_b80ij")
[node name="AnimatedSprite2D" parent="." index="0"]
visible = false
sprite_frames = SubResource("SpriteFrames_3whw7")
offset = Vector2(0, -100)
[node name="StaticBody2D2" type="StaticBody2D" parent="." index="1"]
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="StaticBody2D2" index="0"]
position = Vector2(152, 3)
polygon = PackedVector2Array(24, 52, 25, 58, 11, 57, 10, 52)
[node name="CollisionPolygon2D" parent="StaticBody2D" index="0"]
polygon = PackedVector2Array(-79, 29, -110, 0, 111, 0, 78, 31, 88, 48, 115, 56, 114, 63, -111, 63, -108, 54, -84, 46)
[node name="WheelBase" type="Sprite2D" parent="." index="3"]
position = Vector2(2, 46)
texture = ExtResource("3_nnqgb")
[node name="Wheel" type="Node2D" parent="." index="4"]
[node name="SpinningWheel" type="Sprite2D" parent="Wheel" index="0"]
unique_name_in_owner = true
position = Vector2(0, -100)
texture = ExtResource("2_lveek")
[node name="Arrow" type="Sprite2D" parent="." index="5"]
position = Vector2(159, 56)
texture = ExtResource("4_jumjg")
offset = Vector2(0, -85)
[node name="Spinable" parent="." index="6" instance=ExtResource("5_vkay4")]
[node name="CollisionShape2D" parent="Spinable/InteractionArea" index="0"]
shape = SubResource("CircleShape2D_tdnm8")
[node name="Interactable" parent="." index="7" instance=ExtResource("6_nm03e")]
[node name="Panel" parent="Interactable" index="1"]
offset_left = -113.0
offset_top = -167.0
offset_right = 111.0
offset_bottom = 63.0
[editable path="Spinable"]
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cey4tpqb2upc"
path="res://.godot/imported/wheel.png-2a68513f036384404c26f687750e403d.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/Wheel/wheel.png"
dest_files=["res://.godot/imported/wheel.png-2a68513f036384404c26f687750e403d.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: 500 B

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://l4kxqeqiba10"
path="res://.godot/imported/wheelBase.png-151b11eb2bcdbbce8da16287ce73ebbe.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Faire/Wheel/wheelBase.png"
dest_files=["res://.godot/imported/wheelBase.png-151b11eb2bcdbbce8da16287ce73ebbe.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: 704 B

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