Compare commits
8 Commits
UpdaterFix
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| bac43db4ff | |||
| 745b7c43c4 | |||
| 2be692e55c | |||
| 38655756e3 | |||
| f5a8e811ff | |||
| 8a6c01dce9 | |||
| 65bcb540be | |||
| 1af6294a3f |
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
|
|||||||
compress/hdr_compression=1
|
compress/hdr_compression=1
|
||||||
compress/normal_map=0
|
compress/normal_map=0
|
||||||
compress/channel_pack=0
|
compress/channel_pack=0
|
||||||
mipmaps/generate=false
|
mipmaps/generate=true
|
||||||
mipmaps/limit=-1
|
mipmaps/limit=-1
|
||||||
roughness/mode=0
|
roughness/mode=0
|
||||||
roughness/src_normal=""
|
roughness/src_normal=""
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ compress/lossy_quality=1.0
|
|||||||
compress/hdr_compression=1
|
compress/hdr_compression=1
|
||||||
compress/normal_map=0
|
compress/normal_map=0
|
||||||
compress/channel_pack=0
|
compress/channel_pack=0
|
||||||
mipmaps/generate=false
|
mipmaps/generate=true
|
||||||
mipmaps/limit=-1
|
mipmaps/limit=-1
|
||||||
roughness/mode=1
|
roughness/mode=1
|
||||||
roughness/src_normal=""
|
roughness/src_normal=""
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
|
|||||||
compress/hdr_compression=1
|
compress/hdr_compression=1
|
||||||
compress/normal_map=0
|
compress/normal_map=0
|
||||||
compress/channel_pack=0
|
compress/channel_pack=0
|
||||||
mipmaps/generate=false
|
mipmaps/generate=true
|
||||||
mipmaps/limit=-1
|
mipmaps/limit=-1
|
||||||
roughness/mode=0
|
roughness/mode=0
|
||||||
roughness/src_normal=""
|
roughness/src_normal=""
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
|
|||||||
compress/hdr_compression=1
|
compress/hdr_compression=1
|
||||||
compress/normal_map=0
|
compress/normal_map=0
|
||||||
compress/channel_pack=0
|
compress/channel_pack=0
|
||||||
mipmaps/generate=false
|
mipmaps/generate=true
|
||||||
mipmaps/limit=-1
|
mipmaps/limit=-1
|
||||||
roughness/mode=0
|
roughness/mode=0
|
||||||
roughness/src_normal=""
|
roughness/src_normal=""
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
|
|||||||
compress/hdr_compression=1
|
compress/hdr_compression=1
|
||||||
compress/normal_map=0
|
compress/normal_map=0
|
||||||
compress/channel_pack=0
|
compress/channel_pack=0
|
||||||
mipmaps/generate=false
|
mipmaps/generate=true
|
||||||
mipmaps/limit=-1
|
mipmaps/limit=-1
|
||||||
roughness/mode=0
|
roughness/mode=0
|
||||||
roughness/src_normal=""
|
roughness/src_normal=""
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
|
|||||||
compress/hdr_compression=1
|
compress/hdr_compression=1
|
||||||
compress/normal_map=0
|
compress/normal_map=0
|
||||||
compress/channel_pack=0
|
compress/channel_pack=0
|
||||||
mipmaps/generate=false
|
mipmaps/generate=true
|
||||||
mipmaps/limit=-1
|
mipmaps/limit=-1
|
||||||
roughness/mode=0
|
roughness/mode=0
|
||||||
roughness/src_normal=""
|
roughness/src_normal=""
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
|
|||||||
compress/hdr_compression=1
|
compress/hdr_compression=1
|
||||||
compress/normal_map=0
|
compress/normal_map=0
|
||||||
compress/channel_pack=0
|
compress/channel_pack=0
|
||||||
mipmaps/generate=false
|
mipmaps/generate=true
|
||||||
mipmaps/limit=-1
|
mipmaps/limit=-1
|
||||||
roughness/mode=0
|
roughness/mode=0
|
||||||
roughness/src_normal=""
|
roughness/src_normal=""
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
|
|||||||
compress/hdr_compression=1
|
compress/hdr_compression=1
|
||||||
compress/normal_map=0
|
compress/normal_map=0
|
||||||
compress/channel_pack=0
|
compress/channel_pack=0
|
||||||
mipmaps/generate=false
|
mipmaps/generate=true
|
||||||
mipmaps/limit=-1
|
mipmaps/limit=-1
|
||||||
roughness/mode=0
|
roughness/mode=0
|
||||||
roughness/src_normal=""
|
roughness/src_normal=""
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
|
|||||||
compress/hdr_compression=1
|
compress/hdr_compression=1
|
||||||
compress/normal_map=0
|
compress/normal_map=0
|
||||||
compress/channel_pack=0
|
compress/channel_pack=0
|
||||||
mipmaps/generate=false
|
mipmaps/generate=true
|
||||||
mipmaps/limit=-1
|
mipmaps/limit=-1
|
||||||
roughness/mode=0
|
roughness/mode=0
|
||||||
roughness/src_normal=""
|
roughness/src_normal=""
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
|
|||||||
compress/hdr_compression=1
|
compress/hdr_compression=1
|
||||||
compress/normal_map=0
|
compress/normal_map=0
|
||||||
compress/channel_pack=0
|
compress/channel_pack=0
|
||||||
mipmaps/generate=false
|
mipmaps/generate=true
|
||||||
mipmaps/limit=-1
|
mipmaps/limit=-1
|
||||||
roughness/mode=0
|
roughness/mode=0
|
||||||
roughness/src_normal=""
|
roughness/src_normal=""
|
||||||
|
|||||||
+1
-1
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
|
|||||||
compress/hdr_compression=1
|
compress/hdr_compression=1
|
||||||
compress/normal_map=0
|
compress/normal_map=0
|
||||||
compress/channel_pack=0
|
compress/channel_pack=0
|
||||||
mipmaps/generate=false
|
mipmaps/generate=true
|
||||||
mipmaps/limit=-1
|
mipmaps/limit=-1
|
||||||
roughness/mode=0
|
roughness/mode=0
|
||||||
roughness/src_normal=""
|
roughness/src_normal=""
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
|
|||||||
compress/hdr_compression=1
|
compress/hdr_compression=1
|
||||||
compress/normal_map=0
|
compress/normal_map=0
|
||||||
compress/channel_pack=0
|
compress/channel_pack=0
|
||||||
mipmaps/generate=false
|
mipmaps/generate=true
|
||||||
mipmaps/limit=-1
|
mipmaps/limit=-1
|
||||||
roughness/mode=0
|
roughness/mode=0
|
||||||
roughness/src_normal=""
|
roughness/src_normal=""
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
|
|||||||
compress/hdr_compression=1
|
compress/hdr_compression=1
|
||||||
compress/normal_map=0
|
compress/normal_map=0
|
||||||
compress/channel_pack=0
|
compress/channel_pack=0
|
||||||
mipmaps/generate=false
|
mipmaps/generate=true
|
||||||
mipmaps/limit=-1
|
mipmaps/limit=-1
|
||||||
roughness/mode=0
|
roughness/mode=0
|
||||||
roughness/src_normal=""
|
roughness/src_normal=""
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
|
|||||||
compress/hdr_compression=1
|
compress/hdr_compression=1
|
||||||
compress/normal_map=0
|
compress/normal_map=0
|
||||||
compress/channel_pack=0
|
compress/channel_pack=0
|
||||||
mipmaps/generate=false
|
mipmaps/generate=true
|
||||||
mipmaps/limit=-1
|
mipmaps/limit=-1
|
||||||
roughness/mode=0
|
roughness/mode=0
|
||||||
roughness/src_normal=""
|
roughness/src_normal=""
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
|
|||||||
compress/hdr_compression=1
|
compress/hdr_compression=1
|
||||||
compress/normal_map=0
|
compress/normal_map=0
|
||||||
compress/channel_pack=0
|
compress/channel_pack=0
|
||||||
mipmaps/generate=false
|
mipmaps/generate=true
|
||||||
mipmaps/limit=-1
|
mipmaps/limit=-1
|
||||||
roughness/mode=0
|
roughness/mode=0
|
||||||
roughness/src_normal=""
|
roughness/src_normal=""
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
|
|||||||
compress/hdr_compression=1
|
compress/hdr_compression=1
|
||||||
compress/normal_map=0
|
compress/normal_map=0
|
||||||
compress/channel_pack=0
|
compress/channel_pack=0
|
||||||
mipmaps/generate=false
|
mipmaps/generate=true
|
||||||
mipmaps/limit=-1
|
mipmaps/limit=-1
|
||||||
roughness/mode=0
|
roughness/mode=0
|
||||||
roughness/src_normal=""
|
roughness/src_normal=""
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ compress/lossy_quality=0.7
|
|||||||
compress/hdr_compression=1
|
compress/hdr_compression=1
|
||||||
compress/normal_map=0
|
compress/normal_map=0
|
||||||
compress/channel_pack=0
|
compress/channel_pack=0
|
||||||
mipmaps/generate=false
|
mipmaps/generate=true
|
||||||
mipmaps/limit=-1
|
mipmaps/limit=-1
|
||||||
roughness/mode=0
|
roughness/mode=0
|
||||||
roughness/src_normal=""
|
roughness/src_normal=""
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ func get_mp3_metadata(stream: AudioStreamMP3) -> MusicMetadata:
|
|||||||
return meta
|
return meta
|
||||||
|
|
||||||
var v = "ID3v2.%d.%d" % [header[3], header[4]]
|
var v = "ID3v2.%d.%d" % [header[3], header[4]]
|
||||||
if v == "ID3v2.4.0" or v == "ID3v2.3.0":
|
if v == "ID3v2.4.0" or v == "ID3v2.3.0" or v == "ID3v2.2.0":
|
||||||
var flags = header[5]
|
var flags = header[5]
|
||||||
var _unsync = flags & 0x80 > 0
|
var _unsync = flags & 0x80 > 0
|
||||||
var extended = flags & 0x40 > 0
|
var extended = flags & 0x40 > 0
|
||||||
@@ -66,15 +66,18 @@ func get_mp3_metadata(stream: AudioStreamMP3) -> MusicMetadata:
|
|||||||
match frame_id:
|
match frame_id:
|
||||||
"TBPM", 'TBP':
|
"TBPM", 'TBP':
|
||||||
meta.bpm = int(get_string_from_data(data, idx, size))
|
meta.bpm = int(get_string_from_data(data, idx, size))
|
||||||
"TIT2":
|
"TIT2","TT2":
|
||||||
print("a " + str(Array(data.slice(idx, idx + 3)).hash()))
|
print("a " + str(Array(data.slice(idx, idx + 3)).hash()))
|
||||||
print([1, 0xff, 0xfe].hash())
|
print([1, 0xff, 0xfe].hash())
|
||||||
meta.title = get_string_from_data(data, idx, size)
|
meta.title = get_string_from_data(data, idx, size)
|
||||||
"TALB", 'TAL':
|
"TALB", 'TAL':
|
||||||
meta.album = get_string_from_data(data, idx, size)
|
meta.album = get_string_from_data(data, idx, size)
|
||||||
"COMM":
|
"COMM","COM":
|
||||||
meta.comments = get_string_from_data(data, idx, size)
|
var string:String = get_string_from_data(data, idx, size)
|
||||||
"TYER":
|
print("got comment " + string)
|
||||||
|
if string:
|
||||||
|
meta.comments = string
|
||||||
|
"TYER","TYE":
|
||||||
meta.year = int(get_string_from_data(data, idx, size))
|
meta.year = int(get_string_from_data(data, idx, size))
|
||||||
"TPE1", 'TP1':
|
"TPE1", 'TP1':
|
||||||
meta.artist = get_string_from_data(data, idx, size)
|
meta.artist = get_string_from_data(data, idx, size)
|
||||||
|
|||||||
+1
-6
@@ -232,11 +232,6 @@ script = ExtResource("1_ubs1p")
|
|||||||
LoopPressed = ExtResource("2_iolk5")
|
LoopPressed = ExtResource("2_iolk5")
|
||||||
LoopNotPressed = ExtResource("5_c2g63")
|
LoopNotPressed = ExtResource("5_c2g63")
|
||||||
|
|
||||||
[node name="OSMediaIntigration" type="Control" parent="."]
|
|
||||||
anchors_preset = 0
|
|
||||||
offset_right = 40.0
|
|
||||||
offset_bottom = 40.0
|
|
||||||
|
|
||||||
[node name="WallpaperManager" type="Node2D" parent="." node_paths=PackedStringArray("Daytime", "Evening", "Nighttime")]
|
[node name="WallpaperManager" type="Node2D" parent="." node_paths=PackedStringArray("Daytime", "Evening", "Nighttime")]
|
||||||
script = ExtResource("4_y372l")
|
script = ExtResource("4_y372l")
|
||||||
Daytime = NodePath("../Daytime")
|
Daytime = NodePath("../Daytime")
|
||||||
@@ -921,7 +916,7 @@ offset_left = -64.0
|
|||||||
offset_top = -23.0
|
offset_top = -23.0
|
||||||
grow_horizontal = 0
|
grow_horizontal = 0
|
||||||
grow_vertical = 0
|
grow_vertical = 0
|
||||||
text = "v1.6.2"
|
text = "v1.6.3"
|
||||||
horizontal_alignment = 2
|
horizontal_alignment = 2
|
||||||
|
|
||||||
[node name="SettingsButton" type="Button" parent="."]
|
[node name="SettingsButton" type="Button" parent="."]
|
||||||
|
|||||||
@@ -64,7 +64,7 @@ layout_mode = 2
|
|||||||
custom_minimum_size = Vector2(70, 0)
|
custom_minimum_size = Vector2(70, 0)
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
focus_mode = 0
|
focus_mode = 0
|
||||||
text = "Play"
|
text = "PLAY"
|
||||||
|
|
||||||
[node name="OptionsDropdown" type="MenuButton" parent="HSplitContainer/HBoxContainer"]
|
[node name="OptionsDropdown" type="MenuButton" parent="HSplitContainer/HBoxContainer"]
|
||||||
modulate = Color(0.724643, 0.724643, 0.724643, 1)
|
modulate = Color(0.724643, 0.724643, 0.724643, 1)
|
||||||
@@ -72,10 +72,13 @@ custom_minimum_size = Vector2(20.505, 0)
|
|||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
icon = ExtResource("2_im6ur")
|
icon = ExtResource("2_im6ur")
|
||||||
expand_icon = true
|
expand_icon = true
|
||||||
item_count = 2
|
item_count = 3
|
||||||
popup/item_0/text = "Change Directory"
|
popup/item_0/text = "Open Directory"
|
||||||
popup/item_1/text = "Delete"
|
popup/item_0/id = 2
|
||||||
popup/item_1/id = 1
|
popup/item_1/text = "Change Directory"
|
||||||
|
popup/item_1/id = 0
|
||||||
|
popup/item_2/text = "DELETE"
|
||||||
|
popup/item_2/id = 1
|
||||||
|
|
||||||
[node name="FileDialog" type="FileDialog" parent="."]
|
[node name="FileDialog" type="FileDialog" parent="."]
|
||||||
title = "Open a Directory"
|
title = "Open a Directory"
|
||||||
|
|||||||
@@ -66,6 +66,18 @@ texture = ExtResource("2_haeb5")
|
|||||||
expand_mode = 3
|
expand_mode = 3
|
||||||
stretch_mode = 5
|
stretch_mode = 5
|
||||||
|
|
||||||
|
[node name="TextureRect2" type="TextureRect" parent="ColorRect"]
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = 15
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
texture = ExtResource("3_j8vo6")
|
||||||
|
expand_mode = 3
|
||||||
|
stretch_mode = 6
|
||||||
|
|
||||||
[node name="TextureRect" type="TextureRect" parent="ColorRect"]
|
[node name="TextureRect" type="TextureRect" parent="ColorRect"]
|
||||||
layout_mode = 1
|
layout_mode = 1
|
||||||
anchors_preset = 15
|
anchors_preset = 15
|
||||||
|
|||||||
+27
-22
@@ -1,33 +1,39 @@
|
|||||||
[gd_scene load_steps=3 format=3 uid="uid://ctqcbjrmxaqsk"]
|
[gd_scene load_steps=4 format=3 uid="uid://ctqcbjrmxaqsk"]
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://c3aaxhp0oim08" path="res://Scripts/search_item.gd" id="1_j4126"]
|
[ext_resource type="Script" uid="uid://c3aaxhp0oim08" path="res://Scripts/search_item.gd" id="1_j4126"]
|
||||||
[ext_resource type="Texture2D" uid="uid://dwvy6crqhardn" path="res://Icons/Dropdown.png" id="2_hicj1"]
|
[ext_resource type="Texture2D" uid="uid://dwvy6crqhardn" path="res://Icons/Dropdown.png" id="2_hicj1"]
|
||||||
|
[ext_resource type="Script" uid="uid://dd38vqi4220tx" path="res://Scripts/SongSource.cs" id="3_ftuau"]
|
||||||
|
|
||||||
[node name="SearchItem" type="Control"]
|
[node name="SearchItem" type="Control" node_paths=PackedStringArray("soung_source")]
|
||||||
custom_minimum_size = Vector2(0, 30)
|
custom_minimum_size = Vector2(0, 30)
|
||||||
layout_mode = 3
|
layout_mode = 3
|
||||||
anchors_preset = 14
|
anchors_preset = 10
|
||||||
anchor_top = 0.5
|
|
||||||
anchor_right = 1.0
|
anchor_right = 1.0
|
||||||
anchor_bottom = 0.5
|
|
||||||
grow_horizontal = 2
|
grow_horizontal = 2
|
||||||
grow_vertical = 2
|
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
size_flags_vertical = 4
|
size_flags_vertical = 4
|
||||||
script = ExtResource("1_j4126")
|
script = ExtResource("1_j4126")
|
||||||
|
soung_source = NodePath("Node")
|
||||||
|
|
||||||
[node name="HBoxContainer" type="HBoxContainer" parent="."]
|
[node name="HBoxContainer" type="HBoxContainer" parent="."]
|
||||||
custom_minimum_size = Vector2(700, 32)
|
custom_minimum_size = Vector2(200, 32)
|
||||||
layout_mode = 1
|
layout_mode = 1
|
||||||
anchors_preset = 4
|
anchors_preset = 15
|
||||||
anchor_top = 0.5
|
anchor_right = 1.0
|
||||||
anchor_bottom = 0.5
|
anchor_bottom = 1.0
|
||||||
offset_top = -16.0
|
grow_horizontal = 2
|
||||||
offset_right = 700.0
|
|
||||||
offset_bottom = 16.0
|
|
||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
alignment = 1
|
alignment = 1
|
||||||
|
|
||||||
|
[node name="Songname" type="Button" parent="HBoxContainer"]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
focus_mode = 0
|
||||||
|
flat = true
|
||||||
|
alignment = 0
|
||||||
|
text_overrun_behavior = 1
|
||||||
|
clip_text = true
|
||||||
|
|
||||||
[node name="Dropdown" type="Button" parent="HBoxContainer"]
|
[node name="Dropdown" type="Button" parent="HBoxContainer"]
|
||||||
custom_minimum_size = Vector2(20, 0)
|
custom_minimum_size = Vector2(20, 0)
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
@@ -38,17 +44,16 @@ flat = true
|
|||||||
icon_alignment = 1
|
icon_alignment = 1
|
||||||
expand_icon = true
|
expand_icon = true
|
||||||
|
|
||||||
[node name="Songname" type="Button" parent="HBoxContainer"]
|
|
||||||
layout_mode = 2
|
|
||||||
size_flags_horizontal = 3
|
|
||||||
focus_mode = 0
|
|
||||||
flat = true
|
|
||||||
alignment = 0
|
|
||||||
|
|
||||||
[node name="PopupMenu" type="PopupMenu" parent="."]
|
[node name="PopupMenu" type="PopupMenu" parent="."]
|
||||||
item_count = 1
|
size = Vector2i(116, 100)
|
||||||
|
item_count = 2
|
||||||
item_0/text = "DELETE"
|
item_0/text = "DELETE"
|
||||||
item_0/id = 0
|
item_0/id = 0
|
||||||
|
item_1/text = "OPEN SOURCE"
|
||||||
|
item_1/id = 1
|
||||||
|
|
||||||
|
[node name="Node" type="Node" parent="."]
|
||||||
|
script = ExtResource("3_ftuau")
|
||||||
|
|
||||||
[connection signal="pressed" from="HBoxContainer/Dropdown" to="." method="_on_dropdown_pressed"]
|
|
||||||
[connection signal="pressed" from="HBoxContainer/Songname" to="." method="_on_songname_pressed"]
|
[connection signal="pressed" from="HBoxContainer/Songname" to="." method="_on_songname_pressed"]
|
||||||
|
[connection signal="pressed" from="HBoxContainer/Dropdown" to="." method="_on_dropdown_pressed"]
|
||||||
|
|||||||
@@ -0,0 +1,16 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.IO;
|
||||||
|
using ATL;
|
||||||
|
using Godot;
|
||||||
|
|
||||||
|
public partial class SongSource : Node{
|
||||||
|
public String TryGetSongUrl(String path){
|
||||||
|
Track theTrack = new(path);
|
||||||
|
if (theTrack.AdditionalFields.TryGetValue("comment", out string value)){
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
uid://dd38vqi4220tx
|
||||||
+7
-3
@@ -1,5 +1,6 @@
|
|||||||
class_name MainScene
|
class_name MainScene
|
||||||
extends Control
|
extends Control
|
||||||
|
static var instance:MainScene
|
||||||
@onready var file_dialog: FileDialog = $FileDialog
|
@onready var file_dialog: FileDialog = $FileDialog
|
||||||
@onready var music_player: AudioStreamPlayer = $MusicPlayer
|
@onready var music_player: AudioStreamPlayer = $MusicPlayer
|
||||||
@onready var randomize_list: Button = $RandomizeList
|
@onready var randomize_list: Button = $RandomizeList
|
||||||
@@ -83,6 +84,7 @@ var LoadingSaveFailed:bool = true
|
|||||||
|
|
||||||
# Called when the node enters the scene tree for the first time.
|
# Called when the node enters the scene tree for the first time.
|
||||||
func _ready() -> void:
|
func _ready() -> void:
|
||||||
|
instance = self
|
||||||
playing_now.visible = false
|
playing_now.visible = false
|
||||||
get_tree().root.min_size = Vector2(850,492)
|
get_tree().root.min_size = Vector2(850,492)
|
||||||
current_progress.drag_ended.connect(SongDragStopped)
|
current_progress.drag_ended.connect(SongDragStopped)
|
||||||
@@ -169,7 +171,9 @@ func _ready() -> void:
|
|||||||
play_all.button_pressed = true
|
play_all.button_pressed = true
|
||||||
if data.has("UsingPlayingNow"):
|
if data.has("UsingPlayingNow"):
|
||||||
UsingPlayingNow = data["UsingPlayingNow"]
|
UsingPlayingNow = data["UsingPlayingNow"]
|
||||||
settings_menu_child.now_playing_window_button.button_pressed = true
|
if UsingPlayingNow:
|
||||||
|
print("!!! using stereamer window !!!")
|
||||||
|
settings_menu_child.now_playing_window_button.button_pressed = true
|
||||||
if data.has("OverriddenLocale"):
|
if data.has("OverriddenLocale"):
|
||||||
TranslationServer.set_locale(data["OverriddenLocale"])
|
TranslationServer.set_locale(data["OverriddenLocale"])
|
||||||
overridden_locale = data["OverriddenLocale"]
|
overridden_locale = data["OverriddenLocale"]
|
||||||
@@ -539,9 +543,9 @@ func _process(_delta: float) -> void:
|
|||||||
|
|
||||||
#time_listening_song.text = str(music_player.get_playback_position())
|
#time_listening_song.text = str(music_player.get_playback_position())
|
||||||
|
|
||||||
if Input.is_key_pressed(KEY_DOWN):
|
if Input.is_action_pressed("ui_down"):
|
||||||
volume_slider.value -= 1*_delta *50
|
volume_slider.value -= 1*_delta *50
|
||||||
if Input.is_key_pressed(KEY_UP):
|
if Input.is_action_pressed("ui_up"):
|
||||||
volume_slider.value += 1*_delta *50
|
volume_slider.value += 1*_delta *50
|
||||||
|
|
||||||
if CurrentLenght == 0:
|
if CurrentLenght == 0:
|
||||||
|
|||||||
@@ -18,14 +18,16 @@ func _ready() -> void:
|
|||||||
CorrectlyName()
|
CorrectlyName()
|
||||||
options_dropdown.get_popup().id_pressed.connect(dropdown_pressed)
|
options_dropdown.get_popup().id_pressed.connect(dropdown_pressed)
|
||||||
|
|
||||||
func dropdown_pressed(Idx:int):
|
func dropdown_pressed(Id:int):
|
||||||
match options_dropdown.get_popup().get_item_text(Idx):
|
match Id:
|
||||||
"Change Directory":
|
0:
|
||||||
_on_select_directory_pressed()
|
_on_select_directory_pressed()
|
||||||
"Delete":
|
1:
|
||||||
confirmation.show()
|
confirmation.show()
|
||||||
"Rename":
|
"Rename":
|
||||||
pass
|
pass
|
||||||
|
2:
|
||||||
|
OS.shell_open(PlaylistLocation)
|
||||||
Parent.SaveEverything()
|
Parent.SaveEverything()
|
||||||
|
|
||||||
func Delete():
|
func Delete():
|
||||||
|
|||||||
+11
-2
@@ -6,6 +6,7 @@ var songidx:int
|
|||||||
@onready var songname: Button = $HBoxContainer/Songname
|
@onready var songname: Button = $HBoxContainer/Songname
|
||||||
@onready var dropdown: Button = $HBoxContainer/Dropdown
|
@onready var dropdown: Button = $HBoxContainer/Dropdown
|
||||||
@onready var popup_menu: PopupMenu = $PopupMenu
|
@onready var popup_menu: PopupMenu = $PopupMenu
|
||||||
|
@export var soung_source: Node
|
||||||
|
|
||||||
|
|
||||||
signal PlayPressed
|
signal PlayPressed
|
||||||
@@ -16,8 +17,16 @@ func _ready() -> void:
|
|||||||
popup_menu.index_pressed.connect(popupPressed)
|
popup_menu.index_pressed.connect(popupPressed)
|
||||||
|
|
||||||
func popupPressed(idx:int):
|
func popupPressed(idx:int):
|
||||||
if idx == 0:
|
match idx:
|
||||||
DeletePressed.emit(songidx)
|
0:
|
||||||
|
DeletePressed.emit(songidx)
|
||||||
|
1:
|
||||||
|
var songdir = MainScene.instance.CurrentDir + "/" + MainScene.instance.textSongs[songidx]
|
||||||
|
var source:String = soung_source.TryGetSongUrl(songdir)
|
||||||
|
print("Source: "+source)
|
||||||
|
if source:
|
||||||
|
OS.shell_open(source)
|
||||||
|
|
||||||
|
|
||||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||||
func _process(delta: float) -> void:
|
func _process(delta: float) -> void:
|
||||||
|
|||||||
+2
-1
@@ -190,6 +190,7 @@ func _on_reset_bg_pressed() -> void:
|
|||||||
|
|
||||||
|
|
||||||
func _on_now_playing_window_button_toggled(toggled_on: bool) -> void:
|
func _on_now_playing_window_button_toggled(toggled_on: bool) -> void:
|
||||||
|
print("!!! PLAYING NOW TOGGLED TO ",toggled_on)
|
||||||
Parent.UsingPlayingNow = toggled_on
|
Parent.UsingPlayingNow = toggled_on
|
||||||
Parent.SaveEverything()
|
Parent.SaveEverything()
|
||||||
|
print("!!! PLAYING NOW IS ",Parent.UsingPlayingNow)
|
||||||
|
|||||||
@@ -114,7 +114,9 @@ func _on_download_request_completed(result: int, response_code: int, headers: Pa
|
|||||||
for file in files:
|
for file in files:
|
||||||
var actualfile = file.replace("Linux/","").replace("Windows/","").replace("Android/","")
|
var actualfile = file.replace("Linux/","").replace("Windows/","").replace("Android/","")
|
||||||
print("FILE: " + actualfile)
|
print("FILE: " + actualfile)
|
||||||
var FileAcess:FileAccess = FileAccess.open(GetLocalPath() + actualfile,FileAccess.WRITE_READ)
|
print("dir: "+actualfile.rsplit("/")[0])
|
||||||
|
DirAccess.open(GetLocalPath()).make_dir(actualfile.rsplit("/")[0])
|
||||||
|
var FileAcess:FileAccess = FileAccess.open(GetLocalPath() + actualfile,FileAccess.WRITE)
|
||||||
|
|
||||||
if FileAcess != null:
|
if FileAcess != null:
|
||||||
var downloadedfile = unzipper.read_file(file)
|
var downloadedfile = unzipper.read_file(file)
|
||||||
|
|||||||
@@ -0,0 +1,9 @@
|
|||||||
|
<Project Sdk="Godot.NET.Sdk/4.4.0">
|
||||||
|
<PropertyGroup>
|
||||||
|
<TargetFramework>net8.0</TargetFramework>
|
||||||
|
<EnableDynamicLoading>true</EnableDynamicLoading>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageReference Include="z440.atl.core" Version="7.3.0" />
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||||
|
# Visual Studio 2012
|
||||||
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Simplaudio", "Simplaudio.csproj", "{135675D8-011A-46FC-B4A1-B2D21C2CF78E}"
|
||||||
|
EndProject
|
||||||
|
Global
|
||||||
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
|
Debug|Any CPU = Debug|Any CPU
|
||||||
|
ExportDebug|Any CPU = ExportDebug|Any CPU
|
||||||
|
ExportRelease|Any CPU = ExportRelease|Any CPU
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||||
|
{135675D8-011A-46FC-B4A1-B2D21C2CF78E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{135675D8-011A-46FC-B4A1-B2D21C2CF78E}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{135675D8-011A-46FC-B4A1-B2D21C2CF78E}.ExportDebug|Any CPU.ActiveCfg = ExportDebug|Any CPU
|
||||||
|
{135675D8-011A-46FC-B4A1-B2D21C2CF78E}.ExportDebug|Any CPU.Build.0 = ExportDebug|Any CPU
|
||||||
|
{135675D8-011A-46FC-B4A1-B2D21C2CF78E}.ExportRelease|Any CPU.ActiveCfg = ExportRelease|Any CPU
|
||||||
|
{135675D8-011A-46FC-B4A1-B2D21C2CF78E}.ExportRelease|Any CPU.Build.0 = ExportRelease|Any CPU
|
||||||
|
EndGlobalSection
|
||||||
|
EndGlobal
|
||||||
@@ -1,12 +1,12 @@
|
|||||||
# Simplaudio
|
# Simplaudio
|
||||||
a simple music player that just works
|
a simple music player
|
||||||
|
|
||||||
the v1.x versions are built on a bad codebase, i am working on 2.0 every now and then but it will take a bit for it to be finished
|
the v1.x versions are built on a bad codebase, i am working on fixing it every now and then
|
||||||
the music player is very functual though
|
|
||||||
|
|
||||||
## Translations
|
## Translations
|
||||||
I would apprechiate if you could help out with translations,
|
I would apprechiate if you could help out with translations,
|
||||||
if you want to help you can find a .csv under the folder called "translation"
|
if you want to help you can find a .csv under the folder called "translation",
|
||||||
create a fork of the repo and modify the translations.csv file with a program like excel or libreoffice calc to include your language
|
create a fork of the repo and modify the translations.csv file with a program like excel or libreoffice calc to include your language.
|
||||||
then create a pull request including your translations
|
|
||||||
|
After that create a pull request including your translations.
|
||||||
I will then merge the translations(annoy me if i forget)
|
I will then merge the translations(annoy me if i forget)
|
||||||
|
|||||||
@@ -0,0 +1 @@
|
|||||||
|
,bucket,cachyos-x8664,26.02.2026 21:32,file:///home/bucket/.var/app/org.libreoffice.LibreOffice/config/libreoffice/4;
|
||||||
@@ -14,7 +14,7 @@ UPDATE,Update,Updaten
|
|||||||
SETTINGS,SETTINGS,EINSTELLUNGEN
|
SETTINGS,SETTINGS,EINSTELLUNGEN
|
||||||
INTIGRATIONS,INTIGRATIONS,INTIGRATIONEN
|
INTIGRATIONS,INTIGRATIONS,INTIGRATIONEN
|
||||||
DRPC,discord rich presense,Discord aktivitäten
|
DRPC,discord rich presense,Discord aktivitäten
|
||||||
DRPC_NOTE,NOTE: After disableing a restart is needed,Nach deaktivieren neustarten
|
DRPC_NOTE,NOTE: After disableing simplaudio needs a restart,Nach dem deaktivieren muss Simplaudio neugestartet werden
|
||||||
LOOKS,LOOKS,AUSEHEN
|
LOOKS,LOOKS,AUSEHEN
|
||||||
BS_SELECT,Select Background,Hintergrund auswählen
|
BS_SELECT,Select Background,Hintergrund auswählen
|
||||||
RESET_BG,Reset,Zurücksetzen
|
RESET_BG,Reset,Zurücksetzen
|
||||||
@@ -72,7 +72,7 @@ UPD_ERR_CLT,a client error occurred,ein client error ist passiert
|
|||||||
UPDT_OUT_END, Is Out!, Ist raus!
|
UPDT_OUT_END, Is Out!, Ist raus!
|
||||||
IMPORTANT,(Important),(Wichtig)
|
IMPORTANT,(Important),(Wichtig)
|
||||||
UPD_UPDATING,Updating…,Updated…
|
UPD_UPDATING,Updating…,Updated…
|
||||||
UPD_ERR_CODE,DOWNLOAD FAILED ERROR CODE: ,DOWLOAD FEHLER CODE:
|
UPD_ERR_CODE,DOWNLOAD FAILED ERROR CODE: ,"DOWLOAD FEHLER, CODE: "
|
||||||
UPD_UNZIP_PANT,unzipping…,entpacken…
|
UPD_UNZIP_PANT,unzipping…,entpacken…
|
||||||
SONG_SEARCH,Search…,Suchen…
|
SONG_SEARCH,Search…,Suchen…
|
||||||
FOLDER_SELECT,Select Current Folder,Wähle einen ordner aus
|
FOLDER_SELECT,Select Current Folder,Wähle einen ordner aus
|
||||||
@@ -84,3 +84,8 @@ DL_LIST,Download Playlist,Playliste Herunterladen
|
|||||||
DL_DIALOG,Do you want to download the song or the Entire playlist?,Willst du die playlist herunterladen?
|
DL_DIALOG,Do you want to download the song or the Entire playlist?,Willst du die playlist herunterladen?
|
||||||
LANGUAGE,Language:,Sprache:
|
LANGUAGE,Language:,Sprache:
|
||||||
SELECT,Select ,Auswählen
|
SELECT,Select ,Auswählen
|
||||||
|
OPEN SOURCE,open source,Quelle oeffnen
|
||||||
|
Change Directory,Change Directory,Ordner Aendern
|
||||||
|
Open Directory,Open Directory,Ordner Oeffnen
|
||||||
|
PLAY,Play,Abspielen
|
||||||
|
use Up/Down arrow keys to adjust,use Up/Down arrow keys to adjust,Bentzte die Hoch/Runter pfeiltasten zum aendern
|
||||||
|
|||||||
|
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user