.
@ -1,14 +0,0 @@
|
|||||||
extends ColorRect
|
|
||||||
|
|
||||||
@export var choice: Globals.SkinChoices = Globals.SkinChoices.HEAD
|
|
||||||
|
|
||||||
func _on_mouse_entered() -> void:
|
|
||||||
Input.set_custom_mouse_cursor(load("res://assets/spine/out/cursor.png"))
|
|
||||||
func _on_mouse_exited() -> void:
|
|
||||||
Input.set_custom_mouse_cursor(null)
|
|
||||||
|
|
||||||
func _input(event: InputEvent) -> void:
|
|
||||||
if event is InputEventMouseButton and event.pressed:
|
|
||||||
var ec: EvilCoco = Globals.evil_coco
|
|
||||||
$"../AudioStreamPlayer2D2".play()
|
|
||||||
ec.set_skin(self.choice)
|
|
||||||
11
assets/scenes/deleteme.gd
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
extends Area2D
|
||||||
|
|
||||||
|
|
||||||
|
# Called when the node enters the scene tree for the first time.
|
||||||
|
func _ready() -> void:
|
||||||
|
pass # Replace with function body.
|
||||||
|
|
||||||
|
|
||||||
|
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||||
|
func _process(delta: float) -> void:
|
||||||
|
pass
|
||||||
@ -1,102 +0,0 @@
|
|||||||
[gd_scene load_steps=15 format=3 uid="uid://c837kn1e7luak"]
|
|
||||||
|
|
||||||
[ext_resource type="Script" path="res://assets/scenes/main.gd" id="1_pnxqy"]
|
|
||||||
[ext_resource type="Shader" path="res://assets/scenes/bg.gdshader" id="1_ymxgg"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://c6r3b4befr4mp" path="res://assets/bitmaps/bubbles.png" id="2_6jf1e"]
|
|
||||||
[ext_resource type="SpineAtlasResource" uid="uid://dxoeuw18xmsqy" path="res://assets/spine/evilcoco.atlas" id="3_3nlx6"]
|
|
||||||
[ext_resource type="SpineSkeletonFileResource" uid="uid://xmd724lyi37d" path="res://assets/spine/evilcoco.skel" id="4_ajbkn"]
|
|
||||||
[ext_resource type="Script" path="res://assets/scenes/spine_sprite.gd" id="5_ehebj"]
|
|
||||||
[ext_resource type="SpineAtlasResource" uid="uid://co5qu15dmcr67" path="res://assets/spine/nv_hand.atlas" id="6_xg0ck"]
|
|
||||||
[ext_resource type="SpineSkeletonFileResource" uid="uid://bjk0p3k2o0f77" path="res://assets/spine/nv_hand.skel" id="7_ml6hw"]
|
|
||||||
[ext_resource type="Script" path="res://assets/scenes/nv_hand.gd" id="8_8w1py"]
|
|
||||||
|
|
||||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_8mp0w"]
|
|
||||||
shader = ExtResource("1_ymxgg")
|
|
||||||
shader_parameter/bottom_color = Color(0.879308, 0.597089, 3.85046e-07, 1)
|
|
||||||
shader_parameter/top_color = Color(0.960341, 0.442215, 0, 1)
|
|
||||||
shader_parameter/layer_count = 11
|
|
||||||
shader_parameter/time_scale = 0.2
|
|
||||||
shader_parameter/base_intensity = 0.5
|
|
||||||
shader_parameter/size = 1.0
|
|
||||||
shader_parameter/tex = ExtResource("2_6jf1e")
|
|
||||||
|
|
||||||
[sub_resource type="SpineSkeletonDataResource" id="SpineSkeletonDataResource_pkoje"]
|
|
||||||
atlas_res = ExtResource("3_3nlx6")
|
|
||||||
skeleton_file_res = ExtResource("4_ajbkn")
|
|
||||||
|
|
||||||
[sub_resource type="SpineSkeletonDataResource" id="SpineSkeletonDataResource_bi8ad"]
|
|
||||||
atlas_res = ExtResource("6_xg0ck")
|
|
||||||
skeleton_file_res = ExtResource("7_ml6hw")
|
|
||||||
|
|
||||||
[sub_resource type="Environment" id="Environment_71opc"]
|
|
||||||
background_mode = 1
|
|
||||||
background_color = Color(0.842604, 0.404486, 0.626903, 1)
|
|
||||||
|
|
||||||
[sub_resource type="CameraAttributesPractical" id="CameraAttributesPractical_pdmnu"]
|
|
||||||
|
|
||||||
[node name="Main" type="Node"]
|
|
||||||
script = ExtResource("1_pnxqy")
|
|
||||||
|
|
||||||
[node name="Control" type="Control" parent="."]
|
|
||||||
layout_mode = 3
|
|
||||||
anchors_preset = 0
|
|
||||||
offset_right = 40.0
|
|
||||||
offset_bottom = 40.0
|
|
||||||
|
|
||||||
[node name="ColorRect" type="ColorRect" parent="Control"]
|
|
||||||
material = SubResource("ShaderMaterial_8mp0w")
|
|
||||||
layout_mode = 0
|
|
||||||
offset_left = -570.0
|
|
||||||
offset_top = -976.0
|
|
||||||
offset_right = 542.0
|
|
||||||
offset_bottom = 971.0
|
|
||||||
pivot_offset = Vector2(-38, 1462)
|
|
||||||
color = Color(1, 0.34902, 1, 1)
|
|
||||||
|
|
||||||
[node name="AspectRatioContainer" type="AspectRatioContainer" parent="Control"]
|
|
||||||
layout_mode = 2
|
|
||||||
offset_right = 700.0
|
|
||||||
offset_bottom = 615.0
|
|
||||||
|
|
||||||
[node name="EvilCoco1" type="SpineSprite" parent="Control/AspectRatioContainer"]
|
|
||||||
position = Vector2(-929, -911)
|
|
||||||
scale = Vector2(1.13171, 1.13171)
|
|
||||||
skeleton_data_res = SubResource("SpineSkeletonDataResource_pkoje")
|
|
||||||
preview_skin = "Default"
|
|
||||||
preview_animation = "-- Empty --"
|
|
||||||
preview_frame = false
|
|
||||||
preview_time = 0.0
|
|
||||||
script = ExtResource("5_ehebj")
|
|
||||||
|
|
||||||
[node name="CrosshairBone" type="SpineBoneNode" parent="Control/AspectRatioContainer/EvilCoco1"]
|
|
||||||
show_behind_parent = true
|
|
||||||
position = Vector2(368.469, -370.236)
|
|
||||||
rotation = -1.40981
|
|
||||||
bone_name = "crosshair"
|
|
||||||
bone_mode = 1
|
|
||||||
|
|
||||||
[node name="NVHand" type="SpineSprite" parent="Control/AspectRatioContainer"]
|
|
||||||
visible = false
|
|
||||||
position = Vector2(-1852.43, -1694.76)
|
|
||||||
scale = Vector2(1.60198, 1.60198)
|
|
||||||
skeleton_data_res = SubResource("SpineSkeletonDataResource_bi8ad")
|
|
||||||
preview_skin = "Default"
|
|
||||||
preview_animation = "-- Empty --"
|
|
||||||
preview_frame = false
|
|
||||||
preview_time = 0.0
|
|
||||||
script = ExtResource("8_8w1py")
|
|
||||||
|
|
||||||
[node name="ColorRect" type="ColorRect" parent="Control/AspectRatioContainer"]
|
|
||||||
layout_mode = 2
|
|
||||||
size_flags_horizontal = 8
|
|
||||||
|
|
||||||
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
|
|
||||||
environment = SubResource("Environment_71opc")
|
|
||||||
camera_attributes = SubResource("CameraAttributesPractical_pdmnu")
|
|
||||||
|
|
||||||
[node name="Camera2D" type="Camera2D" parent="."]
|
|
||||||
|
|
||||||
[node name="fire_sfx" type="AudioStreamPlayer2D" parent="."]
|
|
||||||
position = Vector2(-954, 161)
|
|
||||||
volume_db = 10.0
|
|
||||||
autoplay = true
|
|
||||||
@ -1,7 +1,154 @@
|
|||||||
extends Node
|
extends Node
|
||||||
|
|
||||||
func _ready() -> void:
|
enum scene {
|
||||||
pass # Replace with function body.
|
INTRO,
|
||||||
|
MAIN,
|
||||||
|
}
|
||||||
|
|
||||||
func _process(delta: float) -> void:
|
@onready var crosshair_bone: SpineBoneNode = %CrosshairBone
|
||||||
pass
|
@onready var evil_coco1: SpineSprite = %EvilCoco1
|
||||||
|
@onready var evil_coco2: SpineSprite = %EvilCoco2
|
||||||
|
@onready var ui: SpineSprite = %UI
|
||||||
|
@onready var ui_bone: SpineBoneNode = %UIBone
|
||||||
|
@onready var nv_hand: SpineSprite = %NVHand
|
||||||
|
@onready var gear_collision: CollisionPolygon2D = %GearCollision
|
||||||
|
@onready var gear_area: Area2D = %GearArea
|
||||||
|
|
||||||
|
var bounceS = GDRx.on_input_as_observable(self)\
|
||||||
|
.filter(is_right_mouse_click)\
|
||||||
|
.subscribe(start)\
|
||||||
|
.dispose_with(self)
|
||||||
|
|
||||||
|
func _ready() -> void:
|
||||||
|
#GDRx.from_signal(gear_enter_area.area_entered)
|
||||||
|
print(gear_area.collision_layer)
|
||||||
|
var gearOnS = GDRx.from_signal(gear_area.mouse_shape_entered)\
|
||||||
|
#.filter(is_right_mouse_click)\
|
||||||
|
.subscribe(show_ui)\
|
||||||
|
.dispose_with(self)
|
||||||
|
var gearOffS = GDRx.from_signal(gear_area.mouse_shape_exited)\
|
||||||
|
#.filter(is_right_mouse_click)\
|
||||||
|
.subscribe(hide_ui)\
|
||||||
|
.dispose_with(self)
|
||||||
|
var crosshairS = GDRx.on_process_as_observable(self)\
|
||||||
|
#.debounce(1)\
|
||||||
|
.subscribe(crosshair)\
|
||||||
|
.dispose_with(self)
|
||||||
|
var uiBoneS = GDRx.on_process_as_observable(self)\
|
||||||
|
#.debounce(1)\
|
||||||
|
.subscribe(ui_crosshair)\
|
||||||
|
.dispose_with(self)
|
||||||
|
#var play_soundsS = GDRx.from_signal(ui.animation_event)\
|
||||||
|
#.subscribe(func(a): print("play sound"); print(a))\
|
||||||
|
#.dispose_with(ui)
|
||||||
|
#var play_idleS = GDRx.from_signal(evil_coco2.animation_event)\
|
||||||
|
#.subscribe(func(a): print("idle"))\
|
||||||
|
#.dispose_with(ui)
|
||||||
|
evil_coco1.show()
|
||||||
|
evil_coco2.hide()
|
||||||
|
nv_hand.hide()
|
||||||
|
ui.hide()
|
||||||
|
evil_coco1.get_animation_state().set_animation("idle", true)
|
||||||
|
|
||||||
|
func ui_crosshair(_delta):
|
||||||
|
gear_area.global_position = ui_bone.global_position
|
||||||
|
|
||||||
|
func test_func(a: Object):
|
||||||
|
print(a.sprite)
|
||||||
|
var thisScript = a.get_script()
|
||||||
|
print('Properties of "%s":' % [ thisScript.resource_path ])
|
||||||
|
for propertyInfo in thisScript.get_script_property_list():
|
||||||
|
var propertyName: String = propertyInfo.name
|
||||||
|
var propertyValue = get(propertyName)
|
||||||
|
print(' %s = %s' % [ propertyName, propertyValue ])
|
||||||
|
|
||||||
|
func start(event: InputEvent) -> void:
|
||||||
|
evil_coco1.hide()
|
||||||
|
evil_coco2.show()
|
||||||
|
evil_coco2.get_animation_state().set_animation("start", false)
|
||||||
|
ui.show()
|
||||||
|
bounceS.dispose()
|
||||||
|
ui.get_animation_state().set_animation("main/closing", false)
|
||||||
|
evil_coco2.animation_event.connect(bounce)
|
||||||
|
ui.animation_event.connect(play_sounds)
|
||||||
|
|
||||||
|
func bounce(sprite: SpineSprite, animation_state: SpineAnimationState, track_entry: SpineTrackEntry, event: SpineEvent):
|
||||||
|
var event_name = event.get_data().get_event_name()
|
||||||
|
if event_name == "ready":
|
||||||
|
evil_coco2.get_animation_state().set_animation("idle", true)
|
||||||
|
|
||||||
|
func credits() -> void:
|
||||||
|
if OS.get_name() == "HTML5":
|
||||||
|
OS.shell_open("https://example.com")
|
||||||
|
|
||||||
|
#func _on_mouse_entered() -> void:
|
||||||
|
#Input.set_custom_mouse_cursor(load("res://assets/spine/out/cursor.png"))
|
||||||
|
#func _on_mouse_exited() -> void:
|
||||||
|
#Input.set_custom_mouse_cursor(null)
|
||||||
|
|
||||||
|
func crosshair(_delta):
|
||||||
|
crosshair_bone.global_position = get_viewport().get_mouse_position()
|
||||||
|
|
||||||
|
func is_right_mouse_click(event: InputEvent):
|
||||||
|
return event is InputEventMouseButton and event.button_index == 1
|
||||||
|
|
||||||
|
func play_sounds(sprite: SpineSprite, animation_state: SpineAnimationState, track_entry: SpineTrackEntry, event: SpineEvent):
|
||||||
|
var event_name = event.get_data().get_event_name()
|
||||||
|
if event_name == "open" and $open_sfx:
|
||||||
|
$open_sfx.play()
|
||||||
|
elif event_name == "close" and $close_sfx:
|
||||||
|
$close_sfx.play()
|
||||||
|
else:
|
||||||
|
return
|
||||||
|
|
||||||
|
#func animate_hand():
|
||||||
|
#var o = GDRx.on_input_as_observable(self)\
|
||||||
|
#.filter(func (e): return e is InputEventKey or e is InputEventMouseButton)\
|
||||||
|
#.subscribe(change_scene)\
|
||||||
|
#.dispose_with(self)
|
||||||
|
|
||||||
|
#func _ready() -> void:
|
||||||
|
#var gear = skeleton.find_slot("bb")
|
||||||
|
#animation_state.set_time_scale(time_scale)
|
||||||
|
#animation_state.set_animation("main/closing", false, 0)
|
||||||
|
#self.animation_event.connect(_on_animation_event)
|
||||||
|
|
||||||
|
func show_ui(_shape_idx: int) -> void:
|
||||||
|
ui.get_animation_state().set_animation("main/onopen", false, 0)
|
||||||
|
#gear_enter_area.hide()
|
||||||
|
#gear_leave_area.show()
|
||||||
|
|
||||||
|
func hide_ui(_shape_idx: int) -> void:
|
||||||
|
ui.get_animation_state().set_animation("main/onclose", false, 0)
|
||||||
|
#gear_enter_area.show()
|
||||||
|
#gear_leave_area.hide()
|
||||||
|
|
||||||
|
func set_skin(skin_choice: Globals.SkinChoices) -> void:
|
||||||
|
#var a = Globals.SkinChoices.find_key(skin_choice)
|
||||||
|
var slot: SpineSlot = evil_coco2.get_skeleton().find_slot("glasses")
|
||||||
|
var attch: SpineAttachment = evil_coco2.get_skeleton().get_attachment_by_slot_name("glasses", "nv_device")
|
||||||
|
slot.set_attachment(attch)
|
||||||
|
#var slots: Array = self.get_skeleton().get_slots()
|
||||||
|
#var skin = self.new_skin("default")
|
||||||
|
##for slot: SpineSlot in slots:
|
||||||
|
##print(slot.get_sequence_index(), " ", slot.get_attachment_state())
|
||||||
|
##var skin: SpineSkin = self.get_skeleton().get_skin()
|
||||||
|
#for key in Globals.current_choices:
|
||||||
|
#var a = skin.find_attachments_for_slot(key)
|
||||||
|
#print(a)
|
||||||
|
#print(skin.find_names_for_slot(slot.get_sequence_index()))
|
||||||
|
|
||||||
|
#func _ready() -> void:
|
||||||
|
#var gear = skeleton.find_slot("bb")
|
||||||
|
#animation_state.set_time_scale(time_scale)
|
||||||
|
#animation_state.set_animation("main/closing", false, 0)
|
||||||
|
#self.animation_event.connect(_on_animation_event)
|
||||||
|
|
||||||
|
#func _on_animation_event(sprite: SpineSprite, animation_state: SpineAnimationState, track_entry: SpineTrackEntry, event: SpineEvent):
|
||||||
|
#var event_name = event.get_data().get_event_name()
|
||||||
|
#if event_name == "open" and audio_stream_player2d:
|
||||||
|
#audio_stream_player2d.play()
|
||||||
|
#elif event_name == "close" and audio_stream_player2d:
|
||||||
|
#audio_stream_player2d.play()
|
||||||
|
#else:
|
||||||
|
#return
|
||||||
|
|||||||
@ -1,33 +1,56 @@
|
|||||||
[gd_scene load_steps=11 format=3 uid="uid://vfi7tx6puk8f"]
|
[gd_scene load_steps=23 format=3 uid="uid://c837kn1e7luak"]
|
||||||
|
|
||||||
[ext_resource type="Shader" path="res://assets/scenes/bg.gdshader" id="1_ixjhk"]
|
[ext_resource type="Script" path="res://assets/scenes/main.gd" id="1_ecrjg"]
|
||||||
|
[ext_resource type="Shader" path="res://assets/shaders/bg.gdshader" id="1_ixjhk"]
|
||||||
[ext_resource type="Texture2D" uid="uid://c6r3b4befr4mp" path="res://assets/bitmaps/bubbles.png" id="2_on0kl"]
|
[ext_resource type="Texture2D" uid="uid://c6r3b4befr4mp" path="res://assets/bitmaps/bubbles.png" id="2_on0kl"]
|
||||||
[ext_resource type="SpineAtlasResource" uid="uid://dy233woujcq5q" path="res://assets/spine/evilcoco_mount.atlas" id="3_rslsa"]
|
[ext_resource type="SpineAtlasResource" uid="uid://dy233woujcq5q" path="res://assets/spine/evilcoco_mount.atlas" id="3_rslsa"]
|
||||||
[ext_resource type="SpineSkeletonFileResource" uid="uid://ct2wsplxafjpe" path="res://assets/spine/evilcoco_mount.skel" id="4_etl44"]
|
[ext_resource type="SpineSkeletonFileResource" uid="uid://ct2wsplxafjpe" path="res://assets/spine/evilcoco_mount.skel" id="4_etl44"]
|
||||||
[ext_resource type="Script" path="res://assets/scenes/spine_sprite.gd" id="5_d6oxx"]
|
[ext_resource type="SpineAtlasResource" uid="uid://dxoeuw18xmsqy" path="res://assets/spine/evilcoco.atlas" id="4_t5cfc"]
|
||||||
[ext_resource type="PackedScene" uid="uid://dmxurk6lfka5g" path="res://assets/scenes/ui.tscn" id="9_l62o0"]
|
[ext_resource type="SpineSkeletonFileResource" uid="uid://xmd724lyi37d" path="res://assets/spine/evilcoco.skel" id="5_04eq1"]
|
||||||
|
[ext_resource type="SpineAtlasResource" uid="uid://co5qu15dmcr67" path="res://assets/spine/nv_hand.atlas" id="8_4ptb2"]
|
||||||
|
[ext_resource type="SpineSkeletonFileResource" uid="uid://bjk0p3k2o0f77" path="res://assets/spine/nv_hand.skel" id="9_uo1s3"]
|
||||||
|
[ext_resource type="SpineAtlasResource" uid="uid://cnycxnfyyjkl" path="res://assets/spine/ui.atlas" id="10_r5qyy"]
|
||||||
|
[ext_resource type="SpineSkeletonFileResource" uid="uid://cfcrliusipr0s" path="res://assets/spine/ui.skel" id="11_1vujb"]
|
||||||
|
[ext_resource type="Script" path="res://assets/scenes/deleteme.gd" id="12_c32mg"]
|
||||||
|
[ext_resource type="AudioStream" uid="uid://dxhcikipxa08n" path="res://assets/spine/out/audio/open.wav" id="12_l3tkg"]
|
||||||
|
[ext_resource type="AudioStream" uid="uid://dwbxaigfj23wn" path="res://assets/spine/out/audio/close.wav" id="13_a3qwf"]
|
||||||
|
[ext_resource type="AudioStream" uid="uid://caok5ssdddedl" path="res://assets/spine/audio_raw/typical-trap-loop-2b-130751.mp3" id="14_exxjy"]
|
||||||
|
|
||||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_8mp0w"]
|
[sub_resource type="ShaderMaterial" id="ShaderMaterial_8mp0w"]
|
||||||
shader = ExtResource("1_ixjhk")
|
shader = ExtResource("1_ixjhk")
|
||||||
shader_parameter/bottom_color = Color(0.415686, 0.0980392, 0.368627, 1)
|
shader_parameter/bottom_color = Color(0.879308, 0.597089, 3.85046e-07, 1)
|
||||||
shader_parameter/top_color = Color(0.0862745, 0.286275, 0.403922, 1)
|
shader_parameter/top_color = Color(0.960341, 0.442215, 0, 1)
|
||||||
shader_parameter/layer_count = 10
|
shader_parameter/layer_count = 11
|
||||||
shader_parameter/time_scale = 0.019
|
shader_parameter/time_scale = 0.2
|
||||||
shader_parameter/base_intensity = 0.375
|
shader_parameter/base_intensity = 0.5
|
||||||
shader_parameter/size = 1.0
|
shader_parameter/size = 1.0
|
||||||
shader_parameter/tex = ExtResource("2_on0kl")
|
shader_parameter/tex = ExtResource("2_on0kl")
|
||||||
|
|
||||||
[sub_resource type="SpineSkeletonDataResource" id="SpineSkeletonDataResource_fp7nn"]
|
[sub_resource type="SpineSkeletonDataResource" id="SpineSkeletonDataResource_pkoje"]
|
||||||
|
atlas_res = ExtResource("4_t5cfc")
|
||||||
|
skeleton_file_res = ExtResource("5_04eq1")
|
||||||
|
|
||||||
|
[sub_resource type="SpineSkeletonDataResource" id="SpineSkeletonDataResource_xq7at"]
|
||||||
atlas_res = ExtResource("3_rslsa")
|
atlas_res = ExtResource("3_rslsa")
|
||||||
skeleton_file_res = ExtResource("4_etl44")
|
skeleton_file_res = ExtResource("4_etl44")
|
||||||
|
|
||||||
|
[sub_resource type="SpineSkeletonDataResource" id="SpineSkeletonDataResource_bi8ad"]
|
||||||
|
atlas_res = ExtResource("8_4ptb2")
|
||||||
|
skeleton_file_res = ExtResource("9_uo1s3")
|
||||||
|
|
||||||
|
[sub_resource type="SpineSkeletonDataResource" id="SpineSkeletonDataResource_5ke1v"]
|
||||||
|
atlas_res = ExtResource("10_r5qyy")
|
||||||
|
skeleton_file_res = ExtResource("11_1vujb")
|
||||||
|
default_mix = 1.0
|
||||||
|
|
||||||
[sub_resource type="Environment" id="Environment_71opc"]
|
[sub_resource type="Environment" id="Environment_71opc"]
|
||||||
background_mode = 1
|
background_mode = 1
|
||||||
background_color = Color(0.842604, 0.404486, 0.626903, 1)
|
background_color = Color(0.842604, 0.404486, 0.626903, 1)
|
||||||
|
|
||||||
[sub_resource type="CameraAttributesPractical" id="CameraAttributesPractical_pdmnu"]
|
[sub_resource type="CameraAttributesPractical" id="CameraAttributesPractical_pdmnu"]
|
||||||
|
|
||||||
[node name="Node2D" type="Node"]
|
[node name="Main" type="Node"]
|
||||||
|
script = ExtResource("1_ecrjg")
|
||||||
|
|
||||||
[node name="Control" type="Control" parent="."]
|
[node name="Control" type="Control" parent="."]
|
||||||
layout_mode = 3
|
layout_mode = 3
|
||||||
@ -35,13 +58,28 @@ anchors_preset = 0
|
|||||||
offset_right = 40.0
|
offset_right = 40.0
|
||||||
offset_bottom = 40.0
|
offset_bottom = 40.0
|
||||||
|
|
||||||
[node name="ColorRect" type="ColorRect" parent="Control"]
|
[node name="GearArea" type="Area2D" parent="Control"]
|
||||||
|
unique_name_in_owner = true
|
||||||
|
show_behind_parent = true
|
||||||
|
position = Vector2(-429, 717)
|
||||||
|
scale = Vector2(0.847294, 0.847293)
|
||||||
|
script = ExtResource("12_c32mg")
|
||||||
|
|
||||||
|
[node name="GearCollision" type="CollisionPolygon2D" parent="Control/GearArea"]
|
||||||
|
show_behind_parent = true
|
||||||
|
position = Vector2(-481.533, 112.122)
|
||||||
|
scale = Vector2(2.63333, 3.02785)
|
||||||
|
polygon = PackedVector2Array(-354.068, -58.0789, -292.218, -144.223, 171.656, -139.545, 234.402, -49.1137, 219.164, 22.2181, 138.49, 51.4525, -321.351, 50.2831)
|
||||||
|
|
||||||
|
[node name="BG" type="ColorRect" parent="Control"]
|
||||||
material = SubResource("ShaderMaterial_8mp0w")
|
material = SubResource("ShaderMaterial_8mp0w")
|
||||||
layout_mode = 0
|
layout_mode = 0
|
||||||
offset_left = -1340.0
|
offset_left = -570.0
|
||||||
offset_top = -967.0
|
offset_top = -976.0
|
||||||
offset_right = 1186.0
|
offset_right = 542.0
|
||||||
offset_bottom = 980.0
|
offset_bottom = 971.0
|
||||||
|
pivot_offset = Vector2(-38, 1462)
|
||||||
|
mouse_filter = 2
|
||||||
color = Color(1, 0.34902, 1, 1)
|
color = Color(1, 0.34902, 1, 1)
|
||||||
|
|
||||||
[node name="AspectRatioContainer" type="AspectRatioContainer" parent="Control"]
|
[node name="AspectRatioContainer" type="AspectRatioContainer" parent="Control"]
|
||||||
@ -49,30 +87,67 @@ layout_mode = 2
|
|||||||
offset_right = 700.0
|
offset_right = 700.0
|
||||||
offset_bottom = 615.0
|
offset_bottom = 615.0
|
||||||
|
|
||||||
[node name="EvilCoco2" type="SpineSprite" parent="Control/AspectRatioContainer"]
|
[node name="EvilCoco1" type="SpineSprite" parent="Control/AspectRatioContainer"]
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
position = Vector2(-2899, -788)
|
position = Vector2(-882, -941)
|
||||||
scale = Vector2(0.686894, 0.686894)
|
scale = Vector2(1.13171, 1.13171)
|
||||||
skeleton_data_res = SubResource("SpineSkeletonDataResource_fp7nn")
|
skeleton_data_res = SubResource("SpineSkeletonDataResource_pkoje")
|
||||||
preview_skin = "Default"
|
preview_skin = "Default"
|
||||||
preview_animation = "-- Empty --"
|
preview_animation = "-- Empty --"
|
||||||
preview_frame = false
|
preview_frame = false
|
||||||
preview_time = 0.0
|
preview_time = 0.0
|
||||||
script = ExtResource("5_d6oxx")
|
|
||||||
|
|
||||||
[node name="CrosshairBone" type="SpineBoneNode" parent="Control/AspectRatioContainer/EvilCoco2"]
|
[node name="CrosshairBone" type="SpineBoneNode" parent="Control/AspectRatioContainer/EvilCoco1"]
|
||||||
|
unique_name_in_owner = true
|
||||||
show_behind_parent = true
|
show_behind_parent = true
|
||||||
position = Vector2(368.469, -370.236)
|
position = Vector2(820.882, 804.977)
|
||||||
rotation = -1.40981
|
scale = Vector2(0.883619, 0.883619)
|
||||||
bone_name = "crosshair"
|
bone_name = "crosshair"
|
||||||
bone_mode = 1
|
bone_mode = 1
|
||||||
|
|
||||||
|
[node name="EvilCoco2" type="SpineSprite" parent="Control/AspectRatioContainer"]
|
||||||
|
unique_name_in_owner = true
|
||||||
|
show_behind_parent = true
|
||||||
|
position = Vector2(50, 317)
|
||||||
|
scale = Vector2(0.777365, 0.777365)
|
||||||
|
skeleton_data_res = SubResource("SpineSkeletonDataResource_xq7at")
|
||||||
|
preview_skin = "Default"
|
||||||
|
preview_animation = "-- Empty --"
|
||||||
|
preview_frame = false
|
||||||
|
preview_time = 0.0
|
||||||
|
|
||||||
|
[node name="NVHand" type="SpineSprite" parent="Control/AspectRatioContainer"]
|
||||||
|
unique_name_in_owner = true
|
||||||
|
position = Vector2(-1852.43, -1694.76)
|
||||||
|
scale = Vector2(1.60198, 1.60198)
|
||||||
|
skeleton_data_res = SubResource("SpineSkeletonDataResource_bi8ad")
|
||||||
|
preview_skin = "Default"
|
||||||
|
preview_animation = "-- Empty --"
|
||||||
|
preview_frame = false
|
||||||
|
preview_time = 0.0
|
||||||
|
|
||||||
[node name="ColorRect" type="ColorRect" parent="Control/AspectRatioContainer"]
|
[node name="ColorRect" type="ColorRect" parent="Control/AspectRatioContainer"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_horizontal = 8
|
size_flags_horizontal = 8
|
||||||
|
|
||||||
[node name="Ui" parent="Control" instance=ExtResource("9_l62o0")]
|
[node name="UI" type="SpineSprite" parent="Control/AspectRatioContainer"]
|
||||||
position = Vector2(-678, -1096)
|
unique_name_in_owner = true
|
||||||
|
position = Vector2(-417, 901)
|
||||||
|
rotation = -0.0593412
|
||||||
|
scale = Vector2(0.847294, 0.847293)
|
||||||
|
skeleton_data_res = SubResource("SpineSkeletonDataResource_5ke1v")
|
||||||
|
bounding_boxes = true
|
||||||
|
preview_skin = "Default"
|
||||||
|
preview_animation = "main/onopen"
|
||||||
|
preview_frame = true
|
||||||
|
preview_time = 1.03
|
||||||
|
|
||||||
|
[node name="UIBone" type="SpineBoneNode" parent="Control/AspectRatioContainer/UI"]
|
||||||
|
unique_name_in_owner = true
|
||||||
|
show_behind_parent = true
|
||||||
|
position = Vector2(889.378, -13.5009)
|
||||||
|
rotation = -1.44703
|
||||||
|
bone_name = "ui2"
|
||||||
|
|
||||||
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
|
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
|
||||||
environment = SubResource("Environment_71opc")
|
environment = SubResource("Environment_71opc")
|
||||||
@ -80,7 +155,28 @@ camera_attributes = SubResource("CameraAttributesPractical_pdmnu")
|
|||||||
|
|
||||||
[node name="Camera2D" type="Camera2D" parent="."]
|
[node name="Camera2D" type="Camera2D" parent="."]
|
||||||
|
|
||||||
|
[node name="open_sfx" type="AudioStreamPlayer2D" parent="."]
|
||||||
|
unique_name_in_owner = true
|
||||||
|
show_behind_parent = true
|
||||||
|
position = Vector2(-702.27, -707.749)
|
||||||
|
scale = Vector2(0.748685, 0.748684)
|
||||||
|
stream = ExtResource("12_l3tkg")
|
||||||
|
playback_type = 1
|
||||||
|
|
||||||
|
[node name="close_sfx" type="AudioStreamPlayer2D" parent="."]
|
||||||
|
unique_name_in_owner = true
|
||||||
|
show_behind_parent = true
|
||||||
|
position = Vector2(-702.27, -707.749)
|
||||||
|
scale = Vector2(0.748685, 0.748684)
|
||||||
|
stream = ExtResource("13_a3qwf")
|
||||||
|
playback_type = 1
|
||||||
|
|
||||||
[node name="fire_sfx" type="AudioStreamPlayer2D" parent="."]
|
[node name="fire_sfx" type="AudioStreamPlayer2D" parent="."]
|
||||||
position = Vector2(-954, 161)
|
position = Vector2(-954, 161)
|
||||||
volume_db = 10.0
|
volume_db = 10.0
|
||||||
autoplay = true
|
autoplay = true
|
||||||
|
|
||||||
|
[node name="music" type="AudioStreamPlayer2D" parent="."]
|
||||||
|
stream = ExtResource("14_exxjy")
|
||||||
|
autoplay = true
|
||||||
|
parameters/looping = true
|
||||||
|
|||||||
@ -1,17 +0,0 @@
|
|||||||
extends SpineSprite
|
|
||||||
|
|
||||||
@export var time_scale: float = 1.0
|
|
||||||
@onready var animation_state: SpineAnimationState = get_animation_state()
|
|
||||||
var o = GDRx.on_input_as_observable(self)\
|
|
||||||
.filter(func (e): return e is InputEventKey or e is InputEventMouseButton)\
|
|
||||||
.subscribe(change_scene)\
|
|
||||||
.dispose_with(self)
|
|
||||||
|
|
||||||
func _ready() -> void:
|
|
||||||
animation_state.set_animation("idle", true)
|
|
||||||
animation_state.set_time_scale(time_scale)
|
|
||||||
|
|
||||||
func change_scene(event: InputEvent):
|
|
||||||
await get_tree().create_timer(1.0).timeout
|
|
||||||
get_tree().change_scene_to_file("res://assets/scenes/main.tscn")
|
|
||||||
o.dispose()
|
|
||||||
@ -1,59 +0,0 @@
|
|||||||
{
|
|
||||||
"skeleton": {
|
|
||||||
"images": "/home/user/Projects/Games/EvilCocoGame1/assets/spine/out/"
|
|
||||||
},
|
|
||||||
"bones": [
|
|
||||||
{
|
|
||||||
"name": "root"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"slots": [
|
|
||||||
{
|
|
||||||
"name": "mount_evilcoco_hair",
|
|
||||||
"bone": "root",
|
|
||||||
"attachment": "mount_evilcoco_hair",
|
|
||||||
"blend": "normal"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "mount_evilcoco_body",
|
|
||||||
"bone": "root",
|
|
||||||
"attachment": "mount_evilcoco_body",
|
|
||||||
"blend": "normal"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "questionmark",
|
|
||||||
"bone": "root",
|
|
||||||
"attachment": "questionmark",
|
|
||||||
"blend": "normal"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"skins": {
|
|
||||||
"default": {
|
|
||||||
"mount_evilcoco_hair": {
|
|
||||||
"mount_evilcoco_hair": {
|
|
||||||
"x": 4186.0,
|
|
||||||
"y": -1303.5,
|
|
||||||
"width": 1080,
|
|
||||||
"height": 1615
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"mount_evilcoco_body": {
|
|
||||||
"mount_evilcoco_body": {
|
|
||||||
"x": 4186.0,
|
|
||||||
"y": -1346.5,
|
|
||||||
"width": 1116,
|
|
||||||
"height": 1851
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"questionmark": {
|
|
||||||
"questionmark": {
|
|
||||||
"x": 4162.5,
|
|
||||||
"y": -302.5,
|
|
||||||
"width": 103,
|
|
||||||
"height": 123
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"animations": {}
|
|
||||||
}
|
|
||||||
@ -1,45 +0,0 @@
|
|||||||
class_name EvilCoco
|
|
||||||
extends SpineSprite
|
|
||||||
|
|
||||||
@export var time_scale: float = 1.0
|
|
||||||
@onready var animation_state: SpineAnimationState = get_animation_state()
|
|
||||||
@onready var crosshair_bone: SpineBoneNode = $CrosshairBone
|
|
||||||
var bounceS = GDRx.on_input_as_observable(self)\
|
|
||||||
.filter(func(event): return event is InputEventMouseButton)\
|
|
||||||
.subscribe(start_bounce)\
|
|
||||||
.dispose_with(self)
|
|
||||||
var crosshairS = GDRx.on_process_as_observable(self)\
|
|
||||||
.debounce(1)\
|
|
||||||
.subscribe(crosshair)\
|
|
||||||
.dispose_with(self)
|
|
||||||
|
|
||||||
func _ready() -> void:
|
|
||||||
animation_state.set_animation("idle", true)
|
|
||||||
animation_state.set_time_scale(time_scale)
|
|
||||||
Globals.evil_coco = self
|
|
||||||
#Input.set_custom_mouse_cursor(load("res://assets/bitmaps/icon.png"))
|
|
||||||
|
|
||||||
func crosshair(_delta):
|
|
||||||
crosshair_bone.global_position = get_viewport().get_mouse_position()
|
|
||||||
|
|
||||||
func start_bounce(event: InputEvent) -> void:
|
|
||||||
#if OS.get_name() == "HTML5":
|
|
||||||
#OS.shell_open("https://example.com")
|
|
||||||
#var e: InputEventMouseButton = event
|
|
||||||
animation_state.set_animation("animation", true)
|
|
||||||
bounceS.dispose()
|
|
||||||
|
|
||||||
func set_skin(skin_choice: Globals.SkinChoices) -> void:
|
|
||||||
#var a = Globals.SkinChoices.find_key(skin_choice)
|
|
||||||
var slot: SpineSlot = self.get_skeleton().find_slot("glasses")
|
|
||||||
var attch: SpineAttachment = self.get_skeleton().get_attachment_by_slot_name("glasses", "nv_device")
|
|
||||||
slot.set_attachment(attch)
|
|
||||||
#var slots: Array = self.get_skeleton().get_slots()
|
|
||||||
#var skin = self.new_skin("default")
|
|
||||||
##for slot: SpineSlot in slots:
|
|
||||||
##print(slot.get_sequence_index(), " ", slot.get_attachment_state())
|
|
||||||
##var skin: SpineSkin = self.get_skeleton().get_skin()
|
|
||||||
#for key in Globals.current_choices:
|
|
||||||
#var a = skin.find_attachments_for_slot(key)
|
|
||||||
#print(a)
|
|
||||||
#print(skin.find_names_for_slot(slot.get_sequence_index()))
|
|
||||||
4
assets/scenes/test.gd
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
extends Area2D
|
||||||
|
|
||||||
|
func _on_mouse_shape_entered(shape_idx: int) -> void:
|
||||||
|
print("test")
|
||||||
14
assets/scenes/test.tscn
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
[gd_scene load_steps=2 format=3 uid="uid://fpfgvqi3aptt"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" path="res://assets/scenes/test.gd" id="1_uq0wm"]
|
||||||
|
|
||||||
|
[node name="Test" type="Node2D"]
|
||||||
|
|
||||||
|
[node name="Area2D" type="Area2D" parent="."]
|
||||||
|
disable_mode = 2
|
||||||
|
script = ExtResource("1_uq0wm")
|
||||||
|
|
||||||
|
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="Area2D"]
|
||||||
|
polygon = PackedVector2Array(1018, 806, 625, 340, 232, 748, 438, 1061)
|
||||||
|
|
||||||
|
[connection signal="mouse_shape_entered" from="Area2D" to="Area2D" method="_on_mouse_shape_entered"]
|
||||||
@ -1,40 +0,0 @@
|
|||||||
extends SpineSprite
|
|
||||||
|
|
||||||
@export var time_scale: float = 1.0
|
|
||||||
@export var option_selected: int = 0
|
|
||||||
#@export var ui: Array[SkinChoi "head", ]
|
|
||||||
@onready var animation_state: SpineAnimationState = get_animation_state()
|
|
||||||
@onready var audio_stream_player2d: AudioStreamPlayer2D = $open_sfx
|
|
||||||
@onready var skeleton: SpineSkeleton = get_skeleton()
|
|
||||||
@onready var skin: SpineSkin = get_skeleton().get_skin()
|
|
||||||
@onready var unhover_polygon: CollisionObject2D = $"Control/UI/Area2D/UnhoverPolygon"
|
|
||||||
|
|
||||||
func _ready() -> void:
|
|
||||||
var gear = skeleton.find_slot("bb")
|
|
||||||
animation_state.set_time_scale(time_scale)
|
|
||||||
animation_state.set_animation("main/closing", false, 0)
|
|
||||||
self.animation_event.connect(_on_animation_event)
|
|
||||||
|
|
||||||
func _on_color_rect_mouse_entered() -> void:
|
|
||||||
animation_state.set_animation("main/onopen", false, 0)
|
|
||||||
$"../ColorRect2".show()
|
|
||||||
$"../ColorRect".hide()
|
|
||||||
|
|
||||||
func _on_color_rect_2_mouse_exited() -> void:
|
|
||||||
animation_state.set_animation("main/onclose", false, 0)
|
|
||||||
$"../ColorRect2".hide()
|
|
||||||
$"../ColorRect".show()
|
|
||||||
|
|
||||||
func _on_animation_event(sprite: SpineSprite, animation_state: SpineAnimationState, track_entry: SpineTrackEntry, event: SpineEvent):
|
|
||||||
var event_name = event.get_data().get_event_name()
|
|
||||||
if event_name == "open" and audio_stream_player2d:
|
|
||||||
audio_stream_player2d.play()
|
|
||||||
elif event_name == "close" and audio_stream_player2d:
|
|
||||||
audio_stream_player2d.play()
|
|
||||||
else:
|
|
||||||
return
|
|
||||||
|
|
||||||
#print("Animation event: " + track_entry.get_animation().get_name() + ", " + event.get_data().get_event_name() )
|
|
||||||
#print("Int: ", str(event.get_data().get_int_value()) )
|
|
||||||
#print("Float: ", str(event.get_data().get_float_value()) )
|
|
||||||
#print("String: ", event.get_data().get_string_value() )
|
|
||||||
@ -1,144 +0,0 @@
|
|||||||
[gd_scene load_steps=10 format=3 uid="uid://dmxurk6lfka5g"]
|
|
||||||
|
|
||||||
[ext_resource type="SpineAtlasResource" uid="uid://cnycxnfyyjkl" path="res://assets/spine/ui.atlas" id="1_ii07j"]
|
|
||||||
[ext_resource type="SpineSkeletonFileResource" uid="uid://cfcrliusipr0s" path="res://assets/spine/ui.skel" id="2_u1q6k"]
|
|
||||||
[ext_resource type="AudioStream" uid="uid://6gvpo7123eim" path="res://assets/spine/out/audio/press.wav" id="2_yjoxk"]
|
|
||||||
[ext_resource type="Script" path="res://assets/scenes/ui.gd" id="3_lnp61"]
|
|
||||||
[ext_resource type="AudioStream" uid="uid://dxhcikipxa08n" path="res://assets/spine/out/audio/open.wav" id="4_ik0l8"]
|
|
||||||
[ext_resource type="AudioStream" uid="uid://dwbxaigfj23wn" path="res://assets/spine/out/audio/close.wav" id="5_bmtfv"]
|
|
||||||
[ext_resource type="Script" path="res://assets/scenes/button_choice.gd" id="7_jwrl2"]
|
|
||||||
[ext_resource type="AudioStream" uid="uid://caok5ssdddedl" path="res://assets/spine/audio_raw/typical-trap-loop-2b-130751.mp3" id="8_t25ki"]
|
|
||||||
|
|
||||||
[sub_resource type="SpineSkeletonDataResource" id="SpineSkeletonDataResource_pe2wv"]
|
|
||||||
atlas_res = ExtResource("1_ii07j")
|
|
||||||
skeleton_file_res = ExtResource("2_u1q6k")
|
|
||||||
default_mix = 1.0
|
|
||||||
|
|
||||||
[node name="Ui" type="Node2D"]
|
|
||||||
|
|
||||||
[node name="Control" type="Control" parent="."]
|
|
||||||
layout_mode = 3
|
|
||||||
anchors_preset = 0
|
|
||||||
offset_left = 365.0
|
|
||||||
offset_top = 1903.0
|
|
||||||
offset_right = 405.0
|
|
||||||
offset_bottom = 1943.0
|
|
||||||
|
|
||||||
[node name="AudioStreamPlayer2D" type="AudioStreamPlayer2D" parent="."]
|
|
||||||
stream = ExtResource("8_t25ki")
|
|
||||||
autoplay = true
|
|
||||||
parameters/looping = true
|
|
||||||
|
|
||||||
[node name="AudioStreamPlayer2D2" type="AudioStreamPlayer2D" parent="."]
|
|
||||||
stream = ExtResource("2_yjoxk")
|
|
||||||
|
|
||||||
[node name="UISprite" type="SpineSprite" parent="."]
|
|
||||||
position = Vector2(226, 1844)
|
|
||||||
scale = Vector2(0.847294, 0.847293)
|
|
||||||
skeleton_data_res = SubResource("SpineSkeletonDataResource_pe2wv")
|
|
||||||
bounding_boxes = true
|
|
||||||
preview_skin = "Default"
|
|
||||||
preview_animation = "main/onopen"
|
|
||||||
preview_frame = true
|
|
||||||
preview_time = 1.03
|
|
||||||
script = ExtResource("3_lnp61")
|
|
||||||
time_scale = 2.0
|
|
||||||
|
|
||||||
[node name="open_sfx" type="AudioStreamPlayer2D" parent="UISprite"]
|
|
||||||
show_behind_parent = true
|
|
||||||
position = Vector2(-322.521, -1681.53)
|
|
||||||
scale = Vector2(0.883619, 0.883619)
|
|
||||||
stream = ExtResource("4_ik0l8")
|
|
||||||
playback_type = 1
|
|
||||||
|
|
||||||
[node name="close_sfx" type="AudioStreamPlayer2D" parent="UISprite"]
|
|
||||||
show_behind_parent = true
|
|
||||||
position = Vector2(-322.521, -1681.53)
|
|
||||||
scale = Vector2(0.883619, 0.883619)
|
|
||||||
stream = ExtResource("5_bmtfv")
|
|
||||||
playback_type = 1
|
|
||||||
|
|
||||||
[node name="SpineBoneNode" type="SpineBoneNode" parent="UISprite"]
|
|
||||||
show_behind_parent = true
|
|
||||||
|
|
||||||
[node name="ColorRect" type="ColorRect" parent="."]
|
|
||||||
visibility_layer = 0
|
|
||||||
offset_left = -88.0
|
|
||||||
offset_top = 1589.0
|
|
||||||
offset_right = 377.0
|
|
||||||
offset_bottom = 2051.0
|
|
||||||
|
|
||||||
[node name="ColorRect2" type="ColorRect" parent="."]
|
|
||||||
visibility_layer = 0
|
|
||||||
offset_left = -96.0
|
|
||||||
offset_top = 1064.0
|
|
||||||
offset_right = 1220.0
|
|
||||||
offset_bottom = 1818.0
|
|
||||||
|
|
||||||
[node name="Button1" type="ColorRect" parent="."]
|
|
||||||
visibility_layer = 0
|
|
||||||
offset_left = 261.0
|
|
||||||
offset_top = 1743.0
|
|
||||||
offset_right = 394.0
|
|
||||||
offset_bottom = 1869.0
|
|
||||||
script = ExtResource("7_jwrl2")
|
|
||||||
|
|
||||||
[node name="Button2" type="ColorRect" parent="."]
|
|
||||||
visibility_layer = 0
|
|
||||||
offset_left = 403.0
|
|
||||||
offset_top = 1754.0
|
|
||||||
offset_right = 536.0
|
|
||||||
offset_bottom = 1880.0
|
|
||||||
script = ExtResource("7_jwrl2")
|
|
||||||
choice = 1
|
|
||||||
|
|
||||||
[node name="Button3" type="ColorRect" parent="."]
|
|
||||||
visibility_layer = 0
|
|
||||||
offset_left = 551.0
|
|
||||||
offset_top = 1763.0
|
|
||||||
offset_right = 684.0
|
|
||||||
offset_bottom = 1889.0
|
|
||||||
script = ExtResource("7_jwrl2")
|
|
||||||
choice = 2
|
|
||||||
|
|
||||||
[node name="Button4" type="ColorRect" parent="."]
|
|
||||||
visibility_layer = 0
|
|
||||||
offset_left = 692.0
|
|
||||||
offset_top = 1773.0
|
|
||||||
offset_right = 825.0
|
|
||||||
offset_bottom = 1899.0
|
|
||||||
script = ExtResource("7_jwrl2")
|
|
||||||
choice = 3
|
|
||||||
|
|
||||||
[node name="Button5" type="ColorRect" parent="."]
|
|
||||||
visibility_layer = 0
|
|
||||||
offset_left = 842.0
|
|
||||||
offset_top = 1777.0
|
|
||||||
offset_right = 975.0
|
|
||||||
offset_bottom = 1903.0
|
|
||||||
script = ExtResource("7_jwrl2")
|
|
||||||
choice = 4
|
|
||||||
|
|
||||||
[node name="Button6" type="ColorRect" parent="."]
|
|
||||||
visibility_layer = 0
|
|
||||||
offset_left = 983.0
|
|
||||||
offset_top = 1783.0
|
|
||||||
offset_right = 1116.0
|
|
||||||
offset_bottom = 1909.0
|
|
||||||
script = ExtResource("7_jwrl2")
|
|
||||||
choice = 5
|
|
||||||
|
|
||||||
[connection signal="mouse_entered" from="ColorRect" to="UISprite" method="_on_color_rect_mouse_entered"]
|
|
||||||
[connection signal="mouse_exited" from="ColorRect2" to="UISprite" method="_on_color_rect_2_mouse_exited"]
|
|
||||||
[connection signal="mouse_entered" from="Button1" to="Button1" method="_on_mouse_entered"]
|
|
||||||
[connection signal="mouse_exited" from="Button1" to="Button1" method="_on_mouse_exited"]
|
|
||||||
[connection signal="mouse_entered" from="Button2" to="Button2" method="_on_mouse_entered"]
|
|
||||||
[connection signal="mouse_exited" from="Button2" to="Button2" method="_on_mouse_exited"]
|
|
||||||
[connection signal="mouse_entered" from="Button3" to="Button3" method="_on_mouse_entered"]
|
|
||||||
[connection signal="mouse_exited" from="Button3" to="Button3" method="_on_mouse_exited"]
|
|
||||||
[connection signal="mouse_entered" from="Button4" to="Button4" method="_on_mouse_entered"]
|
|
||||||
[connection signal="mouse_exited" from="Button4" to="Button4" method="_on_mouse_exited"]
|
|
||||||
[connection signal="mouse_entered" from="Button5" to="Button5" method="_on_mouse_entered"]
|
|
||||||
[connection signal="mouse_exited" from="Button5" to="Button5" method="_on_mouse_exited"]
|
|
||||||
[connection signal="mouse_entered" from="Button6" to="Button6" method="_on_mouse_entered"]
|
|
||||||
[connection signal="mouse_exited" from="Button6" to="Button6" method="_on_mouse_exited"]
|
|
||||||
@ -1,8 +0,0 @@
|
|||||||
extends Node2D
|
|
||||||
|
|
||||||
func _ready() -> void:
|
|
||||||
Globals.FaceChoices.GLASSES
|
|
||||||
pass # Replace with function body.
|
|
||||||
|
|
||||||
func _process(delta: float) -> void:
|
|
||||||
pass
|
|
||||||
@ -1,13 +1,16 @@
|
|||||||
evilcoco.png
|
evilcoco.png
|
||||||
size:1546,863
|
size:1648,863
|
||||||
filter:Linear,Linear
|
filter:Linear,Linear
|
||||||
scale:0.5
|
scale:0.5
|
||||||
ear ring
|
ear ring
|
||||||
bounds:1359,356,62,97
|
bounds:1546,799,62,97
|
||||||
rotate:90
|
rotate:90
|
||||||
evil_coco_body
|
evil_coco_body
|
||||||
bounds:494,5,490,856
|
bounds:494,5,490,856
|
||||||
offsets:0,0,490,859
|
offsets:0,0,490,859
|
||||||
|
evil_coco_oppai
|
||||||
|
bounds:1359,109,287,309
|
||||||
|
offsets:0,2,287,311
|
||||||
evil_coco_oppai_body
|
evil_coco_oppai_body
|
||||||
bounds:2,2,490,859
|
bounds:2,2,490,859
|
||||||
hair
|
hair
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 630 KiB After Width: | Height: | Size: 714 KiB |
BIN
assets/spine/out/evil_coco_oppai.png
Normal file
|
After Width: | Height: | Size: 168 KiB |
34
assets/spine/out/evil_coco_oppai.png.import
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://cmrer4fvbcaa7"
|
||||||
|
path="res://.godot/imported/evil_coco_oppai.png-3bf317d332e172df398c8f07707c0395.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://assets/spine/out/evil_coco_oppai.png"
|
||||||
|
dest_files=["res://.godot/imported/evil_coco_oppai.png-3bf317d332e172df398c8f07707c0395.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
|
||||||
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 132 KiB After Width: | Height: | Size: 133 KiB |
|
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 2.7 KiB |
|
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 25 KiB |
BIN
assets/spine/out/ui2.png
Normal file
|
After Width: | Height: | Size: 71 KiB |
@ -1,11 +1,11 @@
|
|||||||
ui.png
|
ui.png
|
||||||
size:825,209
|
size:857,218
|
||||||
filter:Linear,Linear
|
filter:Linear,Linear
|
||||||
scale:0.5
|
scale:0.5
|
||||||
cloud
|
cloud
|
||||||
bounds:2,24,50,40
|
bounds:815,166,50,40
|
||||||
gearb1
|
|
||||||
bounds:616,2,205,207
|
|
||||||
rotate:90
|
rotate:90
|
||||||
|
gearb1
|
||||||
|
bounds:616,19,197,197
|
||||||
ui1
|
ui1
|
||||||
bounds:2,66,612,141
|
bounds:2,2,612,214
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 30 KiB |
@ -11,7 +11,7 @@ config_version=5
|
|||||||
[application]
|
[application]
|
||||||
|
|
||||||
config/name="EvilCocoTestGame1"
|
config/name="EvilCocoTestGame1"
|
||||||
run/main_scene="res://assets/scenes/intro.tscn"
|
run/main_scene="res://assets/scenes/main.tscn"
|
||||||
config/features=PackedStringArray("4.3", "GL Compatibility")
|
config/features=PackedStringArray("4.3", "GL Compatibility")
|
||||||
config/icon="res://assets/bitmaps/icon.png"
|
config/icon="res://assets/bitmaps/icon.png"
|
||||||
|
|
||||||
|
|||||||