fix: void card
This commit is contained in:
parent
350361395d
commit
b79780835e
|
|
@ -1,6 +1,7 @@
|
||||||
class_name HardcodedCards extends Control
|
class_name HardcodedCards extends Control
|
||||||
|
|
||||||
@onready var card_prefab : PackedScene = preload("res://logic-scenes/board/card.tscn")
|
@onready var card_prefab : PackedScene = preload("res://logic-scenes/board/card.tscn")
|
||||||
|
@onready var void_prefab : PackedScene = preload("res://logic-scenes/board/void_card.tscn")
|
||||||
@onready var note_prefab : PackedScene = preload("res://logic-scenes/board/sticky-note.tscn")
|
@onready var note_prefab : PackedScene = preload("res://logic-scenes/board/sticky-note.tscn")
|
||||||
|
|
||||||
var source_dicts: Array[Dictionary] = [
|
var source_dicts: Array[Dictionary] = [
|
||||||
|
|
@ -183,12 +184,21 @@ func get_cards_by_scene_id(id: int) -> Array[Card]:
|
||||||
var output:Array[Card]
|
var output:Array[Card]
|
||||||
|
|
||||||
for card_name in source_dicts[id].keys():
|
for card_name in source_dicts[id].keys():
|
||||||
var card := card_prefab.instantiate() as Card
|
var card : Card = _create_card(card_name)
|
||||||
|
|
||||||
card.init(card_name, all_ids[card_name]);
|
card.init(card_name, all_ids[card_name]);
|
||||||
output.append(card)
|
output.append(card)
|
||||||
|
|
||||||
return output
|
return output
|
||||||
|
|
||||||
|
|
||||||
|
func _create_card(card_name: StringName) -> Card:
|
||||||
|
match card_name:
|
||||||
|
&"c_void": return void_prefab.instantiate() as Card
|
||||||
|
&"3.c_void": return void_prefab.instantiate() as Card
|
||||||
|
_: return card_prefab.instantiate() as Card
|
||||||
|
|
||||||
|
|
||||||
# used to put cards on the dev board
|
# used to put cards on the dev board
|
||||||
func get_cards_by_name_array(names: Array[StringName]) -> Dictionary[String, Array]:
|
func get_cards_by_name_array(names: Array[StringName]) -> Dictionary[String, Array]:
|
||||||
var output:Dictionary[String, Array] = {
|
var output:Dictionary[String, Array] = {
|
||||||
|
|
@ -210,7 +220,7 @@ func get_cards_by_name_array(names: Array[StringName]) -> Dictionary[String, Arr
|
||||||
func create_from_id(id:StringName) -> Area2D:
|
func create_from_id(id:StringName) -> Area2D:
|
||||||
var parsed: PackedStringArray = id.rsplit(".")
|
var parsed: PackedStringArray = id.rsplit(".")
|
||||||
if card_ids.values().has(id):
|
if card_ids.values().has(id):
|
||||||
var card := card_prefab.instantiate() as Card
|
var card := _create_card(id)
|
||||||
card.init(parsed[1], id);
|
card.init(parsed[1], id);
|
||||||
return card
|
return card
|
||||||
elif sticky_ids.values().has(id):
|
elif sticky_ids.values().has(id):
|
||||||
|
|
|
||||||
|
|
@ -150,7 +150,7 @@ func _ready():
|
||||||
_on_text_updated.call_deferred()
|
_on_text_updated.call_deferred()
|
||||||
|
|
||||||
func _on_text_updated():
|
func _on_text_updated():
|
||||||
if is_node_ready():
|
if is_node_ready() and name != "c_void" and name != "3.c_void":
|
||||||
var curr_frame := text.hash() % background_sprite.sprite_frames.get_frame_count(background_sprite.animation)
|
var curr_frame := text.hash() % background_sprite.sprite_frames.get_frame_count(background_sprite.animation)
|
||||||
background_sprite.frame = curr_frame
|
background_sprite.frame = curr_frame
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,7 @@ collision_layer = 4
|
||||||
collision_mask = 0
|
collision_mask = 0
|
||||||
priority = 50
|
priority = 50
|
||||||
script = ExtResource("1_emip0")
|
script = ExtResource("1_emip0")
|
||||||
text = "asdf"
|
text = "card"
|
||||||
metadata/type = "card"
|
metadata/type = "card"
|
||||||
|
|
||||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||||
|
|
|
||||||
|
|
@ -1,39 +1,11 @@
|
||||||
[gd_scene load_steps=12 format=3 uid="uid://vqwep0whfb0o"]
|
[gd_scene load_steps=11 format=3 uid="uid://vqwep0whfb0o"]
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://2loic2eeec5b" path="res://logic-scenes/board/card.gd" id="1_6ceun"]
|
[ext_resource type="Script" uid="uid://2loic2eeec5b" path="res://logic-scenes/board/card.gd" id="1_6ceun"]
|
||||||
[ext_resource type="Texture2D" uid="uid://sv0nhkkur1tt" path="res://logic-scenes/board/card-textures/cardsheet.png" id="2_buevv"]
|
[ext_resource type="Texture2D" uid="uid://sv0nhkkur1tt" path="res://logic-scenes/board/card-textures/cardsheet.png" id="2_buevv"]
|
||||||
[ext_resource type="PackedScene" path="res://logic-scenes/board/void_stuff.tscn" id="3_ipd1f"]
|
[ext_resource type="PackedScene" uid="uid://b2st6v25p0ley" path="res://logic-scenes/board/void_stuff.tscn" id="3_ipd1f"]
|
||||||
|
|
||||||
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_aqrbw"]
|
[sub_resource type="RectangleShape2D" id="RectangleShape2D_ipd1f"]
|
||||||
radius = 110.0
|
size = Vector2(277, 231)
|
||||||
height = 336.0
|
|
||||||
|
|
||||||
[sub_resource type="GDScript" id="GDScript_8bs16"]
|
|
||||||
script/source = "extends Node2D
|
|
||||||
|
|
||||||
@onready var particles = $BackgroundSprite/GPUParticles2D
|
|
||||||
@onready var initial_position = position
|
|
||||||
var noise_position = randf()
|
|
||||||
var noise: Noise = FastNoiseLite.new()
|
|
||||||
|
|
||||||
func _process(delta):
|
|
||||||
|
|
||||||
if not State.reduce_motion:
|
|
||||||
|
|
||||||
noise_position += delta * 10
|
|
||||||
|
|
||||||
var random_position = Vector2(noise.get_noise_1d(noise_position*2), noise.get_noise_1d(-noise_position))
|
|
||||||
|
|
||||||
random_position = random_position.normalized() * pow(random_position.length()*2, 3) * 5
|
|
||||||
|
|
||||||
position = initial_position - random_position
|
|
||||||
|
|
||||||
rotation = noise.get_noise_1d(noise_position*10) * random_position.length() * 0.01
|
|
||||||
|
|
||||||
particles.position = random_position
|
|
||||||
|
|
||||||
else: position = initial_position
|
|
||||||
"
|
|
||||||
|
|
||||||
[sub_resource type="AtlasTexture" id="AtlasTexture_aqrbw"]
|
[sub_resource type="AtlasTexture" id="AtlasTexture_aqrbw"]
|
||||||
atlas = ExtResource("2_buevv")
|
atlas = ExtResource("2_buevv")
|
||||||
|
|
@ -79,28 +51,27 @@ animations = [{
|
||||||
}]
|
}]
|
||||||
|
|
||||||
[node name="c_void" type="Area2D"]
|
[node name="c_void" type="Area2D"]
|
||||||
|
collision_layer = 4
|
||||||
|
collision_mask = 0
|
||||||
|
priority = 50
|
||||||
script = ExtResource("1_6ceun")
|
script = ExtResource("1_6ceun")
|
||||||
text = "card"
|
text = "card"
|
||||||
metadata/type = "card"
|
metadata/type = "card"
|
||||||
|
|
||||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||||
position = Vector2(-0.0713516, 0.997451)
|
position = Vector2(5.5, 0)
|
||||||
rotation = 1.5708
|
shape = SubResource("RectangleShape2D_ipd1f")
|
||||||
shape = SubResource("CapsuleShape2D_aqrbw")
|
|
||||||
|
|
||||||
[node name="Visual" type="Node2D" parent="."]
|
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
|
||||||
scale = Vector2(0.6, 0.6)
|
|
||||||
script = SubResource("GDScript_8bs16")
|
|
||||||
|
|
||||||
[node name="BackgroundSprite" type="AnimatedSprite2D" parent="Visual"]
|
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
clip_children = 2
|
clip_children = 2
|
||||||
|
scale = Vector2(0.6, 0.6)
|
||||||
sprite_frames = SubResource("SpriteFrames_cu2at")
|
sprite_frames = SubResource("SpriteFrames_cu2at")
|
||||||
frame = 1
|
frame = 1
|
||||||
|
|
||||||
[node name="void_stuff" parent="Visual/BackgroundSprite" instance=ExtResource("3_ipd1f")]
|
[node name="void_stuff" parent="AnimatedSprite2D" instance=ExtResource("3_ipd1f")]
|
||||||
|
|
||||||
[node name="StickyNoteAncor" type="Node2D" parent="Visual/BackgroundSprite"]
|
[node name="StickyNoteAncor" type="Node2D" parent="AnimatedSprite2D"]
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
position = Vector2(-109.413, 100.642)
|
position = Vector2(-109.413, 100.642)
|
||||||
scale = Vector2(1.66667, 1.66667)
|
scale = Vector2(1.66667, 1.66667)
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,35 @@
|
||||||
|
extends Node2D
|
||||||
|
|
||||||
|
@onready var particles = $GPUParticles2D
|
||||||
|
@onready var sprite = $Sprite2D
|
||||||
|
@onready var initial_position := position
|
||||||
|
@onready var parent : Node2D
|
||||||
|
var noise_position := randf()
|
||||||
|
var noise: Noise = FastNoiseLite.new()
|
||||||
|
|
||||||
|
func _ready() -> void:
|
||||||
|
State.settings_changed.connect(_on_settings_updated)
|
||||||
|
|
||||||
|
parent = get_parent()
|
||||||
|
|
||||||
|
func _process(delta):
|
||||||
|
|
||||||
|
if not State.reduce_motion:
|
||||||
|
|
||||||
|
noise_position += delta * 10
|
||||||
|
|
||||||
|
var random_position := Vector2(noise.get_noise_1d(noise_position*2), noise.get_noise_1d(-noise_position))
|
||||||
|
|
||||||
|
random_position = random_position.normalized() * pow(random_position.length()*2, 3) * 5
|
||||||
|
|
||||||
|
parent.position = initial_position - random_position
|
||||||
|
|
||||||
|
parent.rotation = noise.get_noise_1d(noise_position*10) * random_position.length() * 0.01
|
||||||
|
|
||||||
|
particles.position = random_position
|
||||||
|
|
||||||
|
else: position = initial_position
|
||||||
|
|
||||||
|
func _on_settings_updated():
|
||||||
|
particles.visible = !State.reduce_motion
|
||||||
|
sprite.visible = State.reduce_motion
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
uid://cwgrf3yofi1va
|
||||||
Loading…
Reference in New Issue