Add git, restructure
@@ -0,0 +1,10 @@
|
|||||||
|
<Project Sdk="Godot.NET.Sdk/4.7.0-dev.2">
|
||||||
|
<PropertyGroup>
|
||||||
|
<TargetFramework>net8.0</TargetFramework>
|
||||||
|
<TargetFramework Condition=" '$(GodotTargetPlatform)' == 'android' ">net9.0</TargetFramework>
|
||||||
|
<EnableDynamicLoading>true</EnableDynamicLoading>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageReference Include="LibGit2Sharp" Version="0.31.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}") = "BanListEditor", "BanListEditor.csproj", "{57639E35-2F75-4AD8-8D4C-0582F08E0E24}"
|
||||||
|
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
|
||||||
|
{57639E35-2F75-4AD8-8D4C-0582F08E0E24}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{57639E35-2F75-4AD8-8D4C-0582F08E0E24}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{57639E35-2F75-4AD8-8D4C-0582F08E0E24}.ExportDebug|Any CPU.ActiveCfg = ExportDebug|Any CPU
|
||||||
|
{57639E35-2F75-4AD8-8D4C-0582F08E0E24}.ExportDebug|Any CPU.Build.0 = ExportDebug|Any CPU
|
||||||
|
{57639E35-2F75-4AD8-8D4C-0582F08E0E24}.ExportRelease|Any CPU.ActiveCfg = ExportRelease|Any CPU
|
||||||
|
{57639E35-2F75-4AD8-8D4C-0582F08E0E24}.ExportRelease|Any CPU.Build.0 = ExportRelease|Any CPU
|
||||||
|
EndGlobalSection
|
||||||
|
EndGlobal
|
||||||
@@ -0,0 +1,189 @@
|
|||||||
|
using Godot;
|
||||||
|
using LibGit2Sharp;
|
||||||
|
using LibGit2Sharp.Handlers;
|
||||||
|
using System;
|
||||||
|
using System.IO;
|
||||||
|
using System.Linq;
|
||||||
|
|
||||||
|
public partial class GitIntigration:Node{
|
||||||
|
[Export] Button commit_button;
|
||||||
|
[Export] Window options_window;
|
||||||
|
[Export] Node Main;
|
||||||
|
[Export] Label Push_error;
|
||||||
|
[Export] Control Push_Base;
|
||||||
|
[Export] Button pull_button;
|
||||||
|
public override void _Ready()
|
||||||
|
{
|
||||||
|
base._Ready();
|
||||||
|
commit_button.Pressed += Commit_changes;
|
||||||
|
pull_button.Pressed += pull;
|
||||||
|
Button edit = (Button)options_window.Get("clone_repo_button");
|
||||||
|
if (edit != null){
|
||||||
|
edit.Pressed += Clone;
|
||||||
|
}
|
||||||
|
Button reset_button = (Button)options_window.Get("reset_repo_button");
|
||||||
|
if (reset_button != null){
|
||||||
|
reset_button.Pressed += reset;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void delete_recursive(String path){
|
||||||
|
Godot.DirAccess current_access = Godot.DirAccess.Open(path);
|
||||||
|
current_access.IncludeHidden = true;
|
||||||
|
foreach (String Dir in current_access.GetDirectories()){
|
||||||
|
//GD.Print("found " + path.PathJoin(Dir));
|
||||||
|
delete_recursive(path.PathJoin(Dir));
|
||||||
|
}
|
||||||
|
foreach (String file in current_access.GetFiles()){
|
||||||
|
//GD.Print("found file " + file);
|
||||||
|
current_access.Remove(file);
|
||||||
|
}
|
||||||
|
DirAccess.RemoveAbsolute(path);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Clone(){
|
||||||
|
Label edit = (Label)options_window.Get("clone_log");
|
||||||
|
string path = ProjectSettings.GlobalizePath("user://repo/");
|
||||||
|
if (Godot.DirAccess.DirExistsAbsolute(path)){
|
||||||
|
GD.Print("ADAD");
|
||||||
|
delete_recursive(path);
|
||||||
|
DirAccess.RemoveAbsolute(path);
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
Repository.Clone(get_repo(), path);
|
||||||
|
}
|
||||||
|
catch(Exception e){
|
||||||
|
GD.Print("Cloning failed, " + e.Message);
|
||||||
|
if (edit != null){
|
||||||
|
edit.Text = "Cloning failed, " + e.Message;
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (edit != null){
|
||||||
|
edit.Text = "Success! Repo cloned at: " + path;
|
||||||
|
}
|
||||||
|
Main.CallDeferred("set_file",path+"blacklist.txt");
|
||||||
|
}
|
||||||
|
|
||||||
|
String get_repo(){
|
||||||
|
LineEdit edit = (LineEdit)options_window.Get("repo_edit");
|
||||||
|
if (edit != null){
|
||||||
|
return edit.Text;
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
String get_email(){
|
||||||
|
LineEdit edit = (LineEdit)options_window.Get("email_edit");
|
||||||
|
if (edit != null){
|
||||||
|
return edit.Text;
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
String get_name(){
|
||||||
|
LineEdit edit = (LineEdit)options_window.Get("name_edit");
|
||||||
|
if (edit != null){
|
||||||
|
return edit.Text;
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
String get_key(){
|
||||||
|
LineEdit edit = (LineEdit)options_window.Get("key_edit");
|
||||||
|
if (edit != null){
|
||||||
|
return edit.Text;
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public void pull(){
|
||||||
|
|
||||||
|
string path = ProjectSettings.GlobalizePath("user://repo/");
|
||||||
|
Repository repo = new Repository(path);
|
||||||
|
// Credential information to fetch
|
||||||
|
LibGit2Sharp.PullOptions options = new LibGit2Sharp.PullOptions();
|
||||||
|
options.MergeOptions = new MergeOptions();
|
||||||
|
options.MergeOptions.CommitOnSuccess = true;
|
||||||
|
options.MergeOptions.FileConflictStrategy = CheckoutFileConflictStrategy.Ours;
|
||||||
|
options.FetchOptions = new FetchOptions();
|
||||||
|
options.FetchOptions.CredentialsProvider = new CredentialsHandler(
|
||||||
|
(url, usernameFromUrl, types) =>
|
||||||
|
new UsernamePasswordCredentials()
|
||||||
|
{
|
||||||
|
Username = get_name(),
|
||||||
|
Password = get_key()
|
||||||
|
});
|
||||||
|
|
||||||
|
// User information to create a merge commit
|
||||||
|
var signature = new LibGit2Sharp.Signature(
|
||||||
|
new Identity(get_name(), get_email()), DateTimeOffset.Now);
|
||||||
|
|
||||||
|
// Pull
|
||||||
|
try{
|
||||||
|
Commands.Pull(repo, signature, options);
|
||||||
|
}
|
||||||
|
catch(Exception e){
|
||||||
|
Push_error.Text = e.Message;
|
||||||
|
Push_Base.Show();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
Main.CallDeferred("set_file",path+"blacklist.txt");
|
||||||
|
}
|
||||||
|
|
||||||
|
public void reset(){
|
||||||
|
GD.Print("Reset");
|
||||||
|
string path = ProjectSettings.GlobalizePath("user://repo/");
|
||||||
|
Repository repo = new Repository(path);
|
||||||
|
Branch originMain = repo.Branches["origin/main"];
|
||||||
|
repo.Reset(ResetMode.Hard, originMain.Tip);
|
||||||
|
Main.CallDeferred("set_file",path+"blacklist.txt");
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Commit_changes(){
|
||||||
|
string path = ProjectSettings.GlobalizePath("user://repo");
|
||||||
|
GD.Print("Try commit");
|
||||||
|
Repository repo = new Repository(path);
|
||||||
|
repo.Index.Add("blacklist.txt");
|
||||||
|
repo.Index.Write();
|
||||||
|
Signature author = new Signature(get_name(), get_email(), DateTime.Now);
|
||||||
|
Signature committer = author;
|
||||||
|
try{
|
||||||
|
Commit commit = repo.Commit("Update Banlist", author, committer);
|
||||||
|
}
|
||||||
|
catch(Exception e){
|
||||||
|
Push_error.Text = e.Message;
|
||||||
|
Push_Base.Show();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
LibGit2Sharp.PushOptions options = new LibGit2Sharp.PushOptions();
|
||||||
|
options.CredentialsProvider = new CredentialsHandler(
|
||||||
|
(url, usernameFromUrl, types) =>
|
||||||
|
new UsernamePasswordCredentials()
|
||||||
|
{
|
||||||
|
Username = get_name(),
|
||||||
|
Password = get_key()
|
||||||
|
});
|
||||||
|
try{
|
||||||
|
repo.Network.Push(repo.Branches["main"], options);
|
||||||
|
}
|
||||||
|
catch(Exception e){
|
||||||
|
Push_error.Text = e.Message;
|
||||||
|
Push_Base.Show();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
//repo.Commit("Update banlist");
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
uid://dv74d87a31oyx
|
||||||
@@ -26,17 +26,34 @@ func _ready() -> void:
|
|||||||
more_btn.pressed.connect(options_window.show)
|
more_btn.pressed.connect(options_window.show)
|
||||||
edit_window.changed.connect(update_ban_counter) # use as update
|
edit_window.changed.connect(update_ban_counter) # use as update
|
||||||
|
|
||||||
|
var save_file = save_file_parser.read()
|
||||||
quit_confirmation.canceled.connect(get_tree().quit)
|
quit_confirmation.canceled.connect(get_tree().quit)
|
||||||
quit_confirmation.confirmed.connect(save_and_exit)
|
quit_confirmation.confirmed.connect(save_and_exit)
|
||||||
get_tree().auto_accept_quit = false
|
get_tree().auto_accept_quit = false
|
||||||
get_tree().root.close_requested.connect(close_request)
|
get_tree().root.close_requested.connect(close_request)
|
||||||
set_file(save_file_parser.read())
|
set_file(save_file.get("FILE",""))
|
||||||
file_opener.file_selected.connect(set_file)
|
file_opener.file_selected.connect(set_file)
|
||||||
open_btn.pressed.connect(file_opener.show)
|
open_btn.pressed.connect(file_opener.show)
|
||||||
new_btn.pressed.connect(new_punishment)
|
new_btn.pressed.connect(new_punishment)
|
||||||
save_btn.pressed.connect(save)
|
save_btn.pressed.connect(save)
|
||||||
options_window.remove_dupes.connect(remove_dupes)
|
options_window.remove_dupes.connect(remove_dupes)
|
||||||
options_window.save_v_one.connect(savevone)
|
options_window.save_v_one.connect(savevone)
|
||||||
|
|
||||||
|
options_window.repo_edit.text = save_file.get("REPO","")
|
||||||
|
options_window.email_edit.text = save_file.get("EMAIL","")
|
||||||
|
options_window.name_edit.text = save_file.get("NAME","")
|
||||||
|
options_window.key_edit.text = save_file.get("KEY","")
|
||||||
|
options_window.use_old.button_pressed = save_file.get("USE_OLD",false)
|
||||||
|
|
||||||
|
options_window.repo_edit.text_changed.connect(unsave.unbind(1))
|
||||||
|
options_window.email_edit.text_changed.connect(unsave.unbind(1))
|
||||||
|
options_window.name_edit.text_changed.connect(unsave.unbind(1))
|
||||||
|
options_window.key_edit.text_changed.connect(unsave.unbind(1))
|
||||||
|
options_window.use_old.pressed.connect(unsave)
|
||||||
|
|
||||||
|
func unsave():
|
||||||
|
save_label.show()
|
||||||
|
unsaved = true
|
||||||
|
|
||||||
func savevone():
|
func savevone():
|
||||||
var Punishments:Array[Punishment]
|
var Punishments:Array[Punishment]
|
||||||
@@ -124,7 +141,10 @@ func save():
|
|||||||
Punishments.append(child.punishment)
|
Punishments.append(child.punishment)
|
||||||
update_ban_counter()
|
update_ban_counter()
|
||||||
save_file_parser.save(current_path)
|
save_file_parser.save(current_path)
|
||||||
exporter.Export(Punishments,current_path)
|
if options_window.use_old.button_pressed:
|
||||||
|
exporter.Exportv1(Punishments,current_path)
|
||||||
|
else:
|
||||||
|
exporter.Export(Punishments,current_path)
|
||||||
unsaved = false
|
unsaved = false
|
||||||
|
|
||||||
func new_punishment() -> void:
|
func new_punishment() -> void:
|
||||||
@@ -10,9 +10,13 @@ func parse(file:String) -> Array[Punishment]:
|
|||||||
var raw:String = fileaccess.get_as_text()
|
var raw:String = fileaccess.get_as_text()
|
||||||
var lines:PackedStringArray = raw.split("\n")
|
var lines:PackedStringArray = raw.split("\n")
|
||||||
var punishments:Array[Punishment]
|
var punishments:Array[Punishment]
|
||||||
|
var formatting:bool = false
|
||||||
for line in lines:
|
for line in lines:
|
||||||
print("line ",line)
|
|
||||||
var splits:PackedStringArray = line.split(": ")
|
var splits:PackedStringArray = line.split(": ")
|
||||||
|
if line.contains(":") and !line.contains(": "):
|
||||||
|
push_error("WARNING, INCORRECT FORMATTING")
|
||||||
|
formatting = true
|
||||||
|
splits = line.split(":")
|
||||||
match splits[0]:
|
match splits[0]:
|
||||||
"L!ListBegin":
|
"L!ListBegin":
|
||||||
print("start")
|
print("start")
|
||||||
@@ -31,7 +35,8 @@ func parse(file:String) -> Array[Punishment]:
|
|||||||
punishments[-1].punish_end = splits[1].to_int()
|
punishments[-1].punish_end = splits[1].to_int()
|
||||||
"L!ListEnd":
|
"L!ListEnd":
|
||||||
break
|
break
|
||||||
|
if formatting:
|
||||||
|
OS.alert("This file contains incorret formatting, things might not load correctly!")
|
||||||
return punishments
|
return punishments
|
||||||
|
|
||||||
func punish_text_to_enum(text) -> Punishment.punishment_types:
|
func punish_text_to_enum(text) -> Punishment.punishment_types:
|
||||||
@@ -0,0 +1,27 @@
|
|||||||
|
class_name SaveFileParser extends Node
|
||||||
|
@export var options_window: MoreOptionsWindow
|
||||||
|
|
||||||
|
const savloc = "user://save.dat"
|
||||||
|
|
||||||
|
func read() -> Dictionary:
|
||||||
|
var file = FileAccess.open(savloc,FileAccess.READ)
|
||||||
|
if !file:
|
||||||
|
print("no savefile found")
|
||||||
|
return {}
|
||||||
|
var Dict:Dictionary = file.get_var()
|
||||||
|
return Dict
|
||||||
|
|
||||||
|
func save(current_file:String) -> void:
|
||||||
|
var file = FileAccess.open(savloc,FileAccess.WRITE)
|
||||||
|
if !file:
|
||||||
|
push_error("cant write savefile")
|
||||||
|
return
|
||||||
|
var Dict:Dictionary[String,Variant] = {
|
||||||
|
"FILE":current_file,
|
||||||
|
"REPO":options_window.repo_edit.text,
|
||||||
|
"EMAIL":options_window.email_edit.text,
|
||||||
|
"NAME":options_window.name_edit.text,
|
||||||
|
"KEY":options_window.key_edit.text,
|
||||||
|
"USE_OLD":options_window.use_old.button_pressed,
|
||||||
|
}
|
||||||
|
file.store_var(Dict)
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
extends Node
|
||||||
|
|
||||||
|
@export var search_bar:LineEdit
|
||||||
|
@export var punish_container:Node
|
||||||
|
@export var name_check: CheckButton
|
||||||
|
@export var uid_check: CheckButton
|
||||||
|
@export var description_check: CheckButton
|
||||||
|
|
||||||
|
func _ready() -> void:
|
||||||
|
search_bar.text_changed.connect(update.unbind(1))
|
||||||
|
name_check.toggled.connect(update.unbind(1))
|
||||||
|
uid_check.toggled.connect(update.unbind(1))
|
||||||
|
description_check.toggled.connect(update.unbind(1))
|
||||||
|
|
||||||
|
func update():
|
||||||
|
var text = search_bar.text
|
||||||
|
print("ss")
|
||||||
|
if text:
|
||||||
|
for child in punish_container.get_children():
|
||||||
|
child.hide()
|
||||||
|
var strings:PackedStringArray = text.split(";")
|
||||||
|
for child in punish_container.get_children():
|
||||||
|
if child is PunishShowcase:
|
||||||
|
var valid:bool = true
|
||||||
|
for string in strings:
|
||||||
|
if string:
|
||||||
|
var in_name:bool = (string.to_lower() in child.name_label.text.to_lower()) if name_check.button_pressed else false
|
||||||
|
var in_uid:bool = (string.to_lower() in child.uid_label.text.to_lower()) if uid_check.button_pressed else false
|
||||||
|
var in_decsciption:bool = (string.to_lower() in child.punishment.punish_reason.to_lower()) if description_check.button_pressed else false
|
||||||
|
if !in_name and !in_uid and !in_decsciption:
|
||||||
|
valid = false
|
||||||
|
if valid:
|
||||||
|
child.show()
|
||||||
|
else:
|
||||||
|
for child in punish_container.get_children():
|
||||||
|
if child is PunishShowcase:
|
||||||
|
child.show()
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"><path fill="none" stroke="#e0e0e0" stroke-width="2" d="m3 3 10 10M3 13 13 3"/></svg>
|
||||||
|
After Width: | Height: | Size: 148 B |
@@ -0,0 +1,18 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="svg"
|
||||||
|
type="DPITexture"
|
||||||
|
uid="uid://decrh4ixlnkgd"
|
||||||
|
path="res://.godot/imported/Close.svg-5f1d7568fbad006f18f69572107b3723.dpitex"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Textures/Close.svg"
|
||||||
|
dest_files=["res://.godot/imported/Close.svg-5f1d7568fbad006f18f69572107b3723.dpitex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
base_scale=1.0
|
||||||
|
saturation=1.0
|
||||||
|
color_map={}
|
||||||
|
compress=true
|
||||||
|
Before Width: | Height: | Size: 285 B After Width: | Height: | Size: 285 B |
@@ -3,15 +3,15 @@
|
|||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://c7r26dxgqkklc"
|
uid="uid://c7r26dxgqkklc"
|
||||||
path="res://.godot/imported/Minus.png-fdca73571ee1f51129171a53d22c475c.ctex"
|
path="res://.godot/imported/Minus.png-49777f5d1da0d7575a5bc8719899853e.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Minus.png"
|
source_file="res://Textures/Minus.png"
|
||||||
dest_files=["res://.godot/imported/Minus.png-fdca73571ee1f51129171a53d22c475c.ctex"]
|
dest_files=["res://.godot/imported/Minus.png-49777f5d1da0d7575a5bc8719899853e.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
|
Before Width: | Height: | Size: 409 B After Width: | Height: | Size: 409 B |
@@ -3,15 +3,15 @@
|
|||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://dppihj7ptidog"
|
uid="uid://dppihj7ptidog"
|
||||||
path="res://.godot/imported/Plus.png-7f0b6e62ef4c9053e1aaeef8ad93a0d8.ctex"
|
path="res://.godot/imported/Plus.png-43004a6412ae0456b1d59e9614262edb.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Plus.png"
|
source_file="res://Textures/Plus.png"
|
||||||
dest_files=["res://.godot/imported/Plus.png-7f0b6e62ef4c9053e1aaeef8ad93a0d8.ctex"]
|
dest_files=["res://.godot/imported/Plus.png-43004a6412ae0456b1d59e9614262edb.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
|
Before Width: | Height: | Size: 202 B After Width: | Height: | Size: 202 B |
@@ -3,15 +3,15 @@
|
|||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://cinbmowbp2btd"
|
uid="uid://cinbmowbp2btd"
|
||||||
path="res://.godot/imported/door.png-4ad4ab0c545155655bbef277d86eb152.ctex"
|
path="res://.godot/imported/door.png-daa3ac81719220de09c55f3c384cdd74.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://door.png"
|
source_file="res://Textures/door.png"
|
||||||
dest_files=["res://.godot/imported/door.png-4ad4ab0c545155655bbef277d86eb152.ctex"]
|
dest_files=["res://.godot/imported/door.png-daa3ac81719220de09c55f3c384cdd74.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
|
Before Width: | Height: | Size: 995 B After Width: | Height: | Size: 995 B |
@@ -3,15 +3,15 @@
|
|||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://bf1hiirahdgrf"
|
uid="uid://bf1hiirahdgrf"
|
||||||
path="res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"
|
path="res://.godot/imported/icon.svg-f434aa81383d8e7efdc588f214c40953.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://icon.svg"
|
source_file="res://Textures/icon.svg"
|
||||||
dest_files=["res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"]
|
dest_files=["res://.godot/imported/icon.svg-f434aa81383d8e7efdc588f214c40953.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
|
Before Width: | Height: | Size: 430 B After Width: | Height: | Size: 430 B |
@@ -3,15 +3,15 @@
|
|||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://cbq650vxvsxw1"
|
uid="uid://cbq650vxvsxw1"
|
||||||
path="res://.godot/imported/speaker.png-045bf6684b83b55b088824f14e175d16.ctex"
|
path="res://.godot/imported/speaker.png-cc1161b42434472c8389ab1218658ff7.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://speaker.png"
|
source_file="res://Textures/speaker.png"
|
||||||
dest_files=["res://.godot/imported/speaker.png-045bf6684b83b55b088824f14e175d16.ctex"]
|
dest_files=["res://.godot/imported/speaker.png-cc1161b42434472c8389ab1218658ff7.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
|
Before Width: | Height: | Size: 228 KiB After Width: | Height: | Size: 228 KiB |
@@ -3,15 +3,15 @@
|
|||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://o2sjogt3b0ht"
|
uid="uid://o2sjogt3b0ht"
|
||||||
path="res://.godot/imported/tf2logo.png-5b6963627dd432a7b538e7f5c69f00b3.ctex"
|
path="res://.godot/imported/tf2logo.png-6d02051285f1875bf9b92f282b14ea28.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://tf2logo.png"
|
source_file="res://Textures/tf2logo.png"
|
||||||
dest_files=["res://.godot/imported/tf2logo.png-5b6963627dd432a7b538e7f5c69f00b3.ctex"]
|
dest_files=["res://.godot/imported/tf2logo.png-6d02051285f1875bf9b92f282b14ea28.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
@@ -12,8 +12,8 @@ config_version=5
|
|||||||
|
|
||||||
config/name="BanListEditor"
|
config/name="BanListEditor"
|
||||||
run/main_scene="uid://cxf3yenlgvupj"
|
run/main_scene="uid://cxf3yenlgvupj"
|
||||||
config/features=PackedStringArray("4.7", "GL Compatibility")
|
config/features=PackedStringArray("4.7", "C#", "GL Compatibility")
|
||||||
config/icon="res://icon.svg"
|
config/icon="res://Textures/icon.svg"
|
||||||
|
|
||||||
[dotnet]
|
[dotnet]
|
||||||
|
|
||||||
|
|||||||
@@ -1,18 +0,0 @@
|
|||||||
class_name SaveFileParser extends Node
|
|
||||||
|
|
||||||
const savloc = "user://save.dat"
|
|
||||||
|
|
||||||
func read() -> String:
|
|
||||||
var file = FileAccess.open(savloc,FileAccess.READ)
|
|
||||||
if !file:
|
|
||||||
print("no savefile found")
|
|
||||||
return ""
|
|
||||||
|
|
||||||
return file.get_as_text()
|
|
||||||
|
|
||||||
func save(current_file:String) -> void:
|
|
||||||
var file = FileAccess.open(savloc,FileAccess.WRITE)
|
|
||||||
if !file:
|
|
||||||
push_error("cant write savefile")
|
|
||||||
return
|
|
||||||
file.store_string(current_file)
|
|
||||||
@@ -1,17 +1,19 @@
|
|||||||
[gd_scene format=3 uid="uid://cxf3yenlgvupj"]
|
[gd_scene format=3 uid="uid://cxf3yenlgvupj"]
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://c57yqopmolu8o" path="res://main.gd" id="1_bjd11"]
|
[ext_resource type="Script" uid="uid://c57yqopmolu8o" path="res://Scripts/Gdscript/main.gd" id="1_bjd11"]
|
||||||
[ext_resource type="PackedScene" uid="uid://bxpr2nb1hydpi" path="res://scenes/punish_showcase.tscn" id="2_qmy6f"]
|
[ext_resource type="PackedScene" uid="uid://bxpr2nb1hydpi" path="res://scenes/punish_showcase.tscn" id="2_qmy6f"]
|
||||||
[ext_resource type="Texture2D" uid="uid://o2sjogt3b0ht" path="res://tf2logo.png" id="3_mwfav"]
|
[ext_resource type="Texture2D" uid="uid://o2sjogt3b0ht" path="res://Textures/tf2logo.png" id="3_mwfav"]
|
||||||
[ext_resource type="Texture2D" uid="uid://dppihj7ptidog" path="res://Plus.png" id="4_3p2gp"]
|
[ext_resource type="Texture2D" uid="uid://dppihj7ptidog" path="res://Textures/Plus.png" id="4_3p2gp"]
|
||||||
[ext_resource type="Texture2D" uid="uid://c7r26dxgqkklc" path="res://Minus.png" id="5_cvmbd"]
|
[ext_resource type="Texture2D" uid="uid://c7r26dxgqkklc" path="res://Textures/Minus.png" id="5_cvmbd"]
|
||||||
[ext_resource type="Script" uid="uid://c5ihhdkosauvw" path="res://punish_list_parser.gd" id="6_ft6cd"]
|
[ext_resource type="Script" uid="uid://c5ihhdkosauvw" path="res://Scripts/Gdscript/punish_list_parser.gd" id="6_ft6cd"]
|
||||||
[ext_resource type="Script" uid="uid://caaljvxo8tja5" path="res://ban_list_exporter.gd" id="7_bb450"]
|
[ext_resource type="Texture2D" uid="uid://decrh4ixlnkgd" path="res://Textures/Close.svg" id="6_mwfav"]
|
||||||
|
[ext_resource type="Script" uid="uid://caaljvxo8tja5" path="res://Scripts/Gdscript/ban_list_exporter.gd" id="7_bb450"]
|
||||||
[ext_resource type="PackedScene" uid="uid://dy18m2uq557to" path="res://scenes/windwos/edit_window.tscn" id="8_nfivy"]
|
[ext_resource type="PackedScene" uid="uid://dy18m2uq557to" path="res://scenes/windwos/edit_window.tscn" id="8_nfivy"]
|
||||||
[ext_resource type="PackedScene" uid="uid://burukk5374yyu" path="res://scenes/windwos/MoreOptionsWindow.tscn" id="9_1nqs0"]
|
[ext_resource type="PackedScene" uid="uid://burukk5374yyu" path="res://scenes/windwos/MoreOptionsWindow.tscn" id="9_1nqs0"]
|
||||||
[ext_resource type="PackedScene" uid="uid://gah2g6nabyf4" path="res://scenes/windwos/statistics.tscn" id="10_1iba3"]
|
[ext_resource type="PackedScene" uid="uid://gah2g6nabyf4" path="res://scenes/windwos/statistics.tscn" id="10_1iba3"]
|
||||||
[ext_resource type="Script" uid="uid://bt5wd8qjaevk0" path="res://search.gd" id="11_yxlcp"]
|
[ext_resource type="Script" uid="uid://bt5wd8qjaevk0" path="res://Scripts/Gdscript/search.gd" id="11_yxlcp"]
|
||||||
[ext_resource type="Script" uid="uid://3gmapu83dglo" path="res://save_file_parser.gd" id="12_ebg2g"]
|
[ext_resource type="Script" uid="uid://3gmapu83dglo" path="res://Scripts/Gdscript/save_file_parser.gd" id="12_ebg2g"]
|
||||||
|
[ext_resource type="Script" uid="uid://dv74d87a31oyx" path="res://Scripts/Csharp/GitIntigration.cs" id="13_qmy6f"]
|
||||||
|
|
||||||
[sub_resource type="LabelSettings" id="LabelSettings_lgr22"]
|
[sub_resource type="LabelSettings" id="LabelSettings_lgr22"]
|
||||||
font_size = 26
|
font_size = 26
|
||||||
@@ -28,6 +30,18 @@ stacked_outline_1/color = Color(0.8099345, 0.9946762, 7.70092e-07, 1)
|
|||||||
stacked_outline_2/size = 4
|
stacked_outline_2/size = 4
|
||||||
stacked_outline_2/color = Color(0.32855865, 0.41260794, 1, 1)
|
stacked_outline_2/color = Color(0.32855865, 0.41260794, 1, 1)
|
||||||
|
|
||||||
|
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_mwfav"]
|
||||||
|
content_margin_left = 0.0
|
||||||
|
content_margin_top = 0.0
|
||||||
|
content_margin_right = 0.0
|
||||||
|
content_margin_bottom = 0.0
|
||||||
|
bg_color = Color(0.5446172, 0.24615589, 0.017454231, 0.6)
|
||||||
|
corner_radius_top_left = 3
|
||||||
|
corner_radius_top_right = 3
|
||||||
|
corner_radius_bottom_right = 3
|
||||||
|
corner_radius_bottom_left = 3
|
||||||
|
corner_detail = 5
|
||||||
|
|
||||||
[node name="Control" type="Control" unique_id=2276929 node_paths=PackedStringArray("edit_window", "punish_list_parser", "PunishContainer", "new_punish_btn", "file_opener", "open_btn", "new_btn", "save_btn", "exporter", "file_label", "save_file_parser", "quit_confirmation", "ban_counter", "save_label", "plus", "minus", "more_btn", "options_window")]
|
[node name="Control" type="Control" unique_id=2276929 node_paths=PackedStringArray("edit_window", "punish_list_parser", "PunishContainer", "new_punish_btn", "file_opener", "open_btn", "new_btn", "save_btn", "exporter", "file_label", "save_file_parser", "quit_confirmation", "ban_counter", "save_label", "plus", "minus", "more_btn", "options_window")]
|
||||||
layout_mode = 3
|
layout_mode = 3
|
||||||
anchors_preset = 15
|
anchors_preset = 15
|
||||||
@@ -157,6 +171,28 @@ text = "More"
|
|||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
placeholder_text = "Search..."
|
placeholder_text = "Search..."
|
||||||
|
|
||||||
|
[node name="HBoxContainer3" type="HBoxContainer" parent="MarginContainer/VBoxContainer" unique_id=355358061]
|
||||||
|
layout_mode = 2
|
||||||
|
|
||||||
|
[node name="Label" type="Label" parent="MarginContainer/VBoxContainer/HBoxContainer3" unique_id=400647282]
|
||||||
|
layout_mode = 2
|
||||||
|
text = "Filter by:"
|
||||||
|
|
||||||
|
[node name="NameCheck" type="CheckButton" parent="MarginContainer/VBoxContainer/HBoxContainer3" unique_id=422637912]
|
||||||
|
layout_mode = 2
|
||||||
|
button_pressed = true
|
||||||
|
text = "Name"
|
||||||
|
|
||||||
|
[node name="UIDCheck" type="CheckButton" parent="MarginContainer/VBoxContainer/HBoxContainer3" unique_id=1437120434]
|
||||||
|
layout_mode = 2
|
||||||
|
button_pressed = true
|
||||||
|
text = "UID"
|
||||||
|
|
||||||
|
[node name="DescriptionCheck" type="CheckButton" parent="MarginContainer/VBoxContainer/HBoxContainer3" unique_id=1216809809]
|
||||||
|
layout_mode = 2
|
||||||
|
button_pressed = true
|
||||||
|
text = "Description"
|
||||||
|
|
||||||
[node name="HSeparator" type="HSeparator" parent="MarginContainer/VBoxContainer" unique_id=1970903622]
|
[node name="HSeparator" type="HSeparator" parent="MarginContainer/VBoxContainer" unique_id=1970903622]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
|
|
||||||
@@ -198,6 +234,64 @@ text = "*"
|
|||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
text = "Save changes"
|
text = "Save changes"
|
||||||
|
|
||||||
|
[node name="Commit" type="Button" parent="MarginContainer/VBoxContainer/HBoxContainer2" unique_id=533267664]
|
||||||
|
layout_mode = 2
|
||||||
|
tooltip_text = "Send your changes to github, make sure you have saved your changes before doing this!"
|
||||||
|
text = "Commit changes"
|
||||||
|
|
||||||
|
[node name="Pull" type="Button" parent="MarginContainer/VBoxContainer/HBoxContainer2" unique_id=127094888]
|
||||||
|
layout_mode = 2
|
||||||
|
tooltip_text = "Use this when updating your local copy to the one on github. If you have local changes this wont override them"
|
||||||
|
text = "Pull changes"
|
||||||
|
|
||||||
|
[node name="Base" type="Control" parent="MarginContainer" unique_id=1265704529]
|
||||||
|
visible = false
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 8
|
||||||
|
size_flags_vertical = 8
|
||||||
|
|
||||||
|
[node name="Control" type="Control" parent="MarginContainer/Base" unique_id=419756343]
|
||||||
|
anchors_preset = 0
|
||||||
|
offset_left = -250.0
|
||||||
|
offset_top = -163.0
|
||||||
|
offset_bottom = -35.0
|
||||||
|
|
||||||
|
[node name="ColorRect" type="Panel" parent="MarginContainer/Base/Control" unique_id=1808786583]
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = 15
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
theme_override_styles/panel = SubResource("StyleBoxFlat_mwfav")
|
||||||
|
|
||||||
|
[node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer/Base/Control" unique_id=1967441013]
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = 15
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
|
||||||
|
[node name="HBoxContainer" type="HBoxContainer" parent="MarginContainer/Base/Control/VBoxContainer" unique_id=984310582]
|
||||||
|
layout_mode = 2
|
||||||
|
|
||||||
|
[node name="Warning" type="Label" parent="MarginContainer/Base/Control/VBoxContainer/HBoxContainer" unique_id=514469174]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
text = "Error:"
|
||||||
|
|
||||||
|
[node name="Button" type="Button" parent="MarginContainer/Base/Control/VBoxContainer/HBoxContainer" unique_id=1955287259]
|
||||||
|
layout_mode = 2
|
||||||
|
icon = ExtResource("6_mwfav")
|
||||||
|
flat = true
|
||||||
|
|
||||||
|
[node name="Label" type="Label" parent="MarginContainer/Base/Control/VBoxContainer" unique_id=289973316]
|
||||||
|
custom_minimum_size = Vector2(100, 100)
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_vertical = 3
|
||||||
|
autowrap_mode = 2
|
||||||
|
|
||||||
[node name="BanListParser" type="Node" parent="." unique_id=951623750]
|
[node name="BanListParser" type="Node" parent="." unique_id=951623750]
|
||||||
script = ExtResource("6_ft6cd")
|
script = ExtResource("6_ft6cd")
|
||||||
|
|
||||||
@@ -214,10 +308,13 @@ root = NodePath("..")
|
|||||||
PunishContainer = NodePath("../MarginContainer/VBoxContainer/ScrollContainer/Tree")
|
PunishContainer = NodePath("../MarginContainer/VBoxContainer/ScrollContainer/Tree")
|
||||||
search_bar = NodePath("../MarginContainer/VBoxContainer/SearchBar")
|
search_bar = NodePath("../MarginContainer/VBoxContainer/SearchBar")
|
||||||
|
|
||||||
[node name="Search" type="Node" parent="." unique_id=170590161 node_paths=PackedStringArray("search_bar", "punish_container")]
|
[node name="Search" type="Node" parent="." unique_id=170590161 node_paths=PackedStringArray("search_bar", "punish_container", "name_check", "uid_check", "description_check")]
|
||||||
script = ExtResource("11_yxlcp")
|
script = ExtResource("11_yxlcp")
|
||||||
search_bar = NodePath("../MarginContainer/VBoxContainer/SearchBar")
|
search_bar = NodePath("../MarginContainer/VBoxContainer/SearchBar")
|
||||||
punish_container = NodePath("../MarginContainer/VBoxContainer/ScrollContainer/Tree")
|
punish_container = NodePath("../MarginContainer/VBoxContainer/ScrollContainer/Tree")
|
||||||
|
name_check = NodePath("../MarginContainer/VBoxContainer/HBoxContainer3/NameCheck")
|
||||||
|
uid_check = NodePath("../MarginContainer/VBoxContainer/HBoxContainer3/UIDCheck")
|
||||||
|
description_check = NodePath("../MarginContainer/VBoxContainer/HBoxContainer3/DescriptionCheck")
|
||||||
|
|
||||||
[node name="OpenFile" type="FileDialog" parent="." unique_id=1378168421]
|
[node name="OpenFile" type="FileDialog" parent="." unique_id=1378168421]
|
||||||
oversampling_override = 1.0
|
oversampling_override = 1.0
|
||||||
@@ -228,8 +325,9 @@ access = 2
|
|||||||
filters = PackedStringArray("*.txt", "*.dat")
|
filters = PackedStringArray("*.txt", "*.dat")
|
||||||
use_native_dialog = true
|
use_native_dialog = true
|
||||||
|
|
||||||
[node name="SaveFileParser" type="Node" parent="." unique_id=930223611]
|
[node name="SaveFileParser" type="Node" parent="." unique_id=930223611 node_paths=PackedStringArray("options_window")]
|
||||||
script = ExtResource("12_ebg2g")
|
script = ExtResource("12_ebg2g")
|
||||||
|
options_window = NodePath("../OptionsWindow")
|
||||||
|
|
||||||
[node name="ConfirmationDialog" type="ConfirmationDialog" parent="." unique_id=416398003]
|
[node name="ConfirmationDialog" type="ConfirmationDialog" parent="." unique_id=416398003]
|
||||||
oversampling_override = 1.0
|
oversampling_override = 1.0
|
||||||
@@ -241,6 +339,16 @@ ok_button_text = "Save and quit"
|
|||||||
dialog_text = "You have unsaved changes!"
|
dialog_text = "You have unsaved changes!"
|
||||||
cancel_button_text = "Quit without saving"
|
cancel_button_text = "Quit without saving"
|
||||||
|
|
||||||
|
[node name="Git" type="Node" parent="." unique_id=737987824 node_paths=PackedStringArray("commit_button", "options_window", "Main", "Push_error", "Push_Base", "pull_button")]
|
||||||
|
script = ExtResource("13_qmy6f")
|
||||||
|
commit_button = NodePath("../MarginContainer/VBoxContainer/HBoxContainer2/Commit")
|
||||||
|
options_window = NodePath("../OptionsWindow")
|
||||||
|
Main = NodePath("..")
|
||||||
|
Push_error = NodePath("../MarginContainer/Base/Control/VBoxContainer/Label")
|
||||||
|
Push_Base = NodePath("../MarginContainer/Base")
|
||||||
|
pull_button = NodePath("../MarginContainer/VBoxContainer/HBoxContainer2/Pull")
|
||||||
|
|
||||||
[connection signal="pressed" from="MarginContainer/VBoxContainer/HBoxContainer/Stats" to="Statistics" method="grab_focus"]
|
[connection signal="pressed" from="MarginContainer/VBoxContainer/HBoxContainer/Stats" to="Statistics" method="grab_focus"]
|
||||||
[connection signal="pressed" from="MarginContainer/VBoxContainer/HBoxContainer/Stats" to="Statistics" method="show"]
|
[connection signal="pressed" from="MarginContainer/VBoxContainer/HBoxContainer/Stats" to="Statistics" method="show"]
|
||||||
[connection signal="pressed" from="MarginContainer/VBoxContainer/HBoxContainer/More" to="OptionsWindow" method="grab_focus"]
|
[connection signal="pressed" from="MarginContainer/VBoxContainer/HBoxContainer/More" to="OptionsWindow" method="grab_focus"]
|
||||||
|
[connection signal="pressed" from="MarginContainer/Base/Control/VBoxContainer/HBoxContainer/Button" to="MarginContainer/Base" method="hide"]
|
||||||
|
|||||||
@@ -16,8 +16,8 @@ func _ready() -> void:
|
|||||||
func update() -> void:
|
func update() -> void:
|
||||||
name_label.text = punishment.username
|
name_label.text = punishment.username
|
||||||
uid_label.text = punishment.uid
|
uid_label.text = punishment.uid
|
||||||
punishment_type_display.texture = load("res://door.png") if \
|
punishment_type_display.texture = load("res://Textures/door.png") if \
|
||||||
punishment.what_punishment == punishment.punishment_types.BAN else load("res://speaker.png")
|
punishment.what_punishment == punishment.punishment_types.BAN else load("res://Textures/speaker.png")
|
||||||
|
|
||||||
func edit():
|
func edit():
|
||||||
Edit.emit(self)
|
Edit.emit(self)
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
[gd_scene format=3 uid="uid://bxpr2nb1hydpi"]
|
[gd_scene format=3 uid="uid://bxpr2nb1hydpi"]
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://dxlkscqs0wpo6" path="res://scenes/punish_showcase.gd" id="1_3wpqj"]
|
[ext_resource type="Script" uid="uid://dxlkscqs0wpo6" path="res://scenes/punish_showcase.gd" id="1_3wpqj"]
|
||||||
[ext_resource type="Script" uid="uid://cafyno407e2uq" path="res://Punishment.gd" id="2_j4kex"]
|
[ext_resource type="Script" uid="uid://cafyno407e2uq" path="res://Scripts/Gdscript/Punishment.gd" id="2_j4kex"]
|
||||||
[ext_resource type="Texture2D" uid="uid://cinbmowbp2btd" path="res://door.png" id="3_lw8i6"]
|
[ext_resource type="Texture2D" uid="uid://cinbmowbp2btd" path="res://Textures/door.png" id="3_lw8i6"]
|
||||||
|
|
||||||
[sub_resource type="Resource" id="Resource_j4kex"]
|
[sub_resource type="Resource" id="Resource_j4kex"]
|
||||||
script = ExtResource("2_j4kex")
|
script = ExtResource("2_j4kex")
|
||||||
|
|||||||
@@ -5,16 +5,27 @@
|
|||||||
[sub_resource type="LabelSettings" id="LabelSettings_5xt3b"]
|
[sub_resource type="LabelSettings" id="LabelSettings_5xt3b"]
|
||||||
font_size = 30
|
font_size = 30
|
||||||
|
|
||||||
[node name="OptionsWindow" type="Window" unique_id=1485451151 node_paths=PackedStringArray("dupe_clear_button", "save_v_1_button")]
|
[sub_resource type="LabelSettings" id="LabelSettings_gec7h"]
|
||||||
|
outline_color = Color(1, 0.7764706, 0.7764706, 1)
|
||||||
|
|
||||||
|
[node name="OptionsWindow" type="Window" unique_id=1485451151 node_paths=PackedStringArray("use_old", "dupe_clear_button", "save_v_1_button", "repo_edit", "email_edit", "name_edit", "key_edit", "clone_repo_button", "clone_log", "reset_repo_button")]
|
||||||
oversampling_override = 1.0
|
oversampling_override = 1.0
|
||||||
position = Vector2i(0, 36)
|
position = Vector2i(0, 36)
|
||||||
size = Vector2i(300, 200)
|
size = Vector2i(557, 397)
|
||||||
visible = false
|
visible = false
|
||||||
force_native = true
|
force_native = true
|
||||||
min_size = Vector2i(262, 199)
|
min_size = Vector2i(262, 199)
|
||||||
script = ExtResource("1_5xt3b")
|
script = ExtResource("1_5xt3b")
|
||||||
|
use_old = NodePath("MarginContainer/ScrollContainer/BoxContainer/UseOld")
|
||||||
dupe_clear_button = NodePath("MarginContainer/ScrollContainer/BoxContainer/DupeClearButton")
|
dupe_clear_button = NodePath("MarginContainer/ScrollContainer/BoxContainer/DupeClearButton")
|
||||||
save_v_1_button = NodePath("MarginContainer/ScrollContainer/BoxContainer/SaveV1Button")
|
save_v_1_button = NodePath("MarginContainer/ScrollContainer/BoxContainer/SaveV1Button")
|
||||||
|
repo_edit = NodePath("MarginContainer/ScrollContainer/BoxContainer/Repo/RepoEdit")
|
||||||
|
email_edit = NodePath("MarginContainer/ScrollContainer/BoxContainer/Git Email/EmailEdit")
|
||||||
|
name_edit = NodePath("MarginContainer/ScrollContainer/BoxContainer/Git Username/NameEdit")
|
||||||
|
key_edit = NodePath("MarginContainer/ScrollContainer/BoxContainer/Git key/KeyEdit")
|
||||||
|
clone_repo_button = NodePath("MarginContainer/ScrollContainer/BoxContainer/CloneRepo")
|
||||||
|
clone_log = NodePath("MarginContainer/ScrollContainer/BoxContainer/CloneLog")
|
||||||
|
reset_repo_button = NodePath("MarginContainer/ScrollContainer/BoxContainer/Reset Repo")
|
||||||
|
|
||||||
[node name="ColorRect" type="ColorRect" parent="." unique_id=1724009282]
|
[node name="ColorRect" type="ColorRect" parent="." unique_id=1724009282]
|
||||||
anchors_preset = 15
|
anchors_preset = 15
|
||||||
@@ -50,6 +61,16 @@ layout_mode = 2
|
|||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
vertical = true
|
vertical = true
|
||||||
|
|
||||||
|
[node name="RichTextLabel3" type="Label" parent="MarginContainer/ScrollContainer/BoxContainer" unique_id=418846341]
|
||||||
|
layout_mode = 2
|
||||||
|
text = "General"
|
||||||
|
label_settings = SubResource("LabelSettings_5xt3b")
|
||||||
|
|
||||||
|
[node name="UseOld" type="CheckBox" parent="MarginContainer/ScrollContainer/BoxContainer" unique_id=1245550112]
|
||||||
|
layout_mode = 2
|
||||||
|
text = "Save file with OLD ban file structure(NEEDED before TFVR 4.0)"
|
||||||
|
autowrap_mode = 2
|
||||||
|
|
||||||
[node name="RichTextLabel" type="Label" parent="MarginContainer/ScrollContainer/BoxContainer" unique_id=66906023]
|
[node name="RichTextLabel" type="Label" parent="MarginContainer/ScrollContainer/BoxContainer" unique_id=66906023]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
text = "Utility"
|
text = "Utility"
|
||||||
@@ -64,3 +85,72 @@ text = "Clear Dupes"
|
|||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
tooltip_text = "Save a version of the banlist in the legacy format"
|
tooltip_text = "Save a version of the banlist in the legacy format"
|
||||||
text = "save duplicate v1 file"
|
text = "save duplicate v1 file"
|
||||||
|
|
||||||
|
[node name="RichTextLabel2" type="Label" parent="MarginContainer/ScrollContainer/BoxContainer" unique_id=824466576]
|
||||||
|
layout_mode = 2
|
||||||
|
text = "Git"
|
||||||
|
label_settings = SubResource("LabelSettings_5xt3b")
|
||||||
|
|
||||||
|
[node name="Repo" type="HBoxContainer" parent="MarginContainer/ScrollContainer/BoxContainer" unique_id=1177156648]
|
||||||
|
layout_mode = 2
|
||||||
|
|
||||||
|
[node name="Label" type="Label" parent="MarginContainer/ScrollContainer/BoxContainer/Repo" unique_id=1452601630]
|
||||||
|
layout_mode = 2
|
||||||
|
text = "GIT Repo:"
|
||||||
|
|
||||||
|
[node name="RepoEdit" type="LineEdit" parent="MarginContainer/ScrollContainer/BoxContainer/Repo" unique_id=74818467]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
|
||||||
|
[node name="Git Email" type="HBoxContainer" parent="MarginContainer/ScrollContainer/BoxContainer" unique_id=1897029584]
|
||||||
|
layout_mode = 2
|
||||||
|
|
||||||
|
[node name="Label" type="Label" parent="MarginContainer/ScrollContainer/BoxContainer/Git Email" unique_id=1643679626]
|
||||||
|
layout_mode = 2
|
||||||
|
text = "GIT Email:"
|
||||||
|
|
||||||
|
[node name="EmailEdit" type="LineEdit" parent="MarginContainer/ScrollContainer/BoxContainer/Git Email" unique_id=1342026395]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
|
||||||
|
[node name="Git Username" type="HBoxContainer" parent="MarginContainer/ScrollContainer/BoxContainer" unique_id=1185383015]
|
||||||
|
layout_mode = 2
|
||||||
|
|
||||||
|
[node name="Label" type="Label" parent="MarginContainer/ScrollContainer/BoxContainer/Git Username" unique_id=790257001]
|
||||||
|
layout_mode = 2
|
||||||
|
text = "GIT Name:"
|
||||||
|
|
||||||
|
[node name="NameEdit" type="LineEdit" parent="MarginContainer/ScrollContainer/BoxContainer/Git Username" unique_id=791124761]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
|
||||||
|
[node name="Git key" type="HBoxContainer" parent="MarginContainer/ScrollContainer/BoxContainer" unique_id=670946792]
|
||||||
|
layout_mode = 2
|
||||||
|
|
||||||
|
[node name="Label" type="Label" parent="MarginContainer/ScrollContainer/BoxContainer/Git key" unique_id=1561518298]
|
||||||
|
layout_mode = 2
|
||||||
|
text = "GIT Key:"
|
||||||
|
|
||||||
|
[node name="KeyEdit" type="LineEdit" parent="MarginContainer/ScrollContainer/BoxContainer/Git key" unique_id=1089959886]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
secret = true
|
||||||
|
|
||||||
|
[node name="CloneRepo" type="Button" parent="MarginContainer/ScrollContainer/BoxContainer" unique_id=1623040123]
|
||||||
|
layout_mode = 2
|
||||||
|
text = "Clone Repo"
|
||||||
|
|
||||||
|
[node name="CloneLog" type="Label" parent="MarginContainer/ScrollContainer/BoxContainer" unique_id=876009711]
|
||||||
|
layout_mode = 2
|
||||||
|
label_settings = SubResource("LabelSettings_gec7h")
|
||||||
|
autowrap_mode = 2
|
||||||
|
|
||||||
|
[node name="Reset Repo" type="Button" parent="MarginContainer/ScrollContainer/BoxContainer" unique_id=1348491757]
|
||||||
|
layout_mode = 2
|
||||||
|
text = "Reset Repo"
|
||||||
|
|
||||||
|
[node name="ResetInfo" type="Label" parent="MarginContainer/ScrollContainer/BoxContainer" unique_id=1109421918]
|
||||||
|
layout_mode = 2
|
||||||
|
text = "Reset the repo if you have a weird issue that you cannot fix by other means, this will reset all your local changes"
|
||||||
|
label_settings = SubResource("LabelSettings_gec7h")
|
||||||
|
autowrap_mode = 2
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
[gd_scene format=3 uid="uid://bv4mvou68l2sk"]
|
[gd_scene format=3 uid="uid://bv4mvou68l2sk"]
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://2f384phq5272" path="res://AltShowcase.gd" id="1_7tuyd"]
|
[ext_resource type="Script" uid="uid://2f384phq5272" path="res://Scripts/Gdscript/AltShowcase.gd" id="1_7tuyd"]
|
||||||
|
|
||||||
[sub_resource type="LabelSettings" id="LabelSettings_7tuyd"]
|
[sub_resource type="LabelSettings" id="LabelSettings_7tuyd"]
|
||||||
font_size = 20
|
font_size = 20
|
||||||
@@ -10,7 +10,7 @@ font_size = 15
|
|||||||
font_color = Color(0.74558026, 0.7455802, 0.7455802, 1)
|
font_color = Color(0.74558026, 0.7455802, 0.7455802, 1)
|
||||||
|
|
||||||
[sub_resource type="LabelSettings" id="LabelSettings_y1bem"]
|
[sub_resource type="LabelSettings" id="LabelSettings_y1bem"]
|
||||||
font_size = 27
|
font_size = 18
|
||||||
|
|
||||||
[node name="Altshowcase" type="Control" unique_id=96967418 node_paths=PackedStringArray("name_label", "uid_label", "count_label", "search_alts_button")]
|
[node name="Altshowcase" type="Control" unique_id=96967418 node_paths=PackedStringArray("name_label", "uid_label", "count_label", "search_alts_button")]
|
||||||
custom_minimum_size = Vector2(0, 58.235)
|
custom_minimum_size = Vector2(0, 58.235)
|
||||||
@@ -54,7 +54,7 @@ label_settings = SubResource("LabelSettings_45q1g")
|
|||||||
|
|
||||||
[node name="Count" type="Label" parent="HBoxContainer" unique_id=899914138]
|
[node name="Count" type="Label" parent="HBoxContainer" unique_id=899914138]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
text = "67 alts"
|
text = "69420 alts"
|
||||||
label_settings = SubResource("LabelSettings_y1bem")
|
label_settings = SubResource("LabelSettings_y1bem")
|
||||||
|
|
||||||
[node name="SearchAltsButton" type="Button" parent="HBoxContainer" unique_id=957758160]
|
[node name="SearchAltsButton" type="Button" parent="HBoxContainer" unique_id=957758160]
|
||||||
|
|||||||
@@ -111,7 +111,9 @@ text = "Ends on:"
|
|||||||
[node name="DaysEdit" type="SpinBox" parent="margin/VBoxContainer/ScrollContainer/Container/Ends" unique_id=1346908939]
|
[node name="DaysEdit" type="SpinBox" parent="margin/VBoxContainer/ScrollContainer/Container/Ends" unique_id=1346908939]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
|
min_value = 1.0
|
||||||
max_value = 364.0
|
max_value = 364.0
|
||||||
|
value = 1.0
|
||||||
prefix = "day "
|
prefix = "day "
|
||||||
|
|
||||||
[node name="YearsEdit" type="SpinBox" parent="margin/VBoxContainer/ScrollContainer/Container/Ends" unique_id=467960707]
|
[node name="YearsEdit" type="SpinBox" parent="margin/VBoxContainer/ScrollContainer/Container/Ends" unique_id=467960707]
|
||||||
|
|||||||
@@ -1,7 +1,17 @@
|
|||||||
class_name MoreOptionsWindow extends Window
|
class_name MoreOptionsWindow extends Window
|
||||||
|
|
||||||
|
@export var use_old: CheckBox
|
||||||
@export var dupe_clear_button: Button
|
@export var dupe_clear_button: Button
|
||||||
@export var save_v_1_button: Button
|
@export var save_v_1_button: Button
|
||||||
|
@export var repo_edit: LineEdit
|
||||||
|
@export var email_edit: LineEdit
|
||||||
|
@export var name_edit: LineEdit
|
||||||
|
@export var key_edit: LineEdit
|
||||||
|
@export var clone_repo_button: Button
|
||||||
|
@export var clone_log: Label
|
||||||
|
@export var reset_repo_button:Button
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
signal remove_dupes
|
signal remove_dupes
|
||||||
signal save_v_one
|
signal save_v_one
|
||||||
|
|||||||
@@ -1,20 +0,0 @@
|
|||||||
extends Node
|
|
||||||
|
|
||||||
@export var search_bar:LineEdit
|
|
||||||
@export var punish_container:Node
|
|
||||||
|
|
||||||
func _ready() -> void:
|
|
||||||
search_bar.text_changed.connect(update)
|
|
||||||
|
|
||||||
func update(text:String):
|
|
||||||
if text:
|
|
||||||
for child in punish_container.get_children():
|
|
||||||
if child is PunishShowcase:
|
|
||||||
if (text.to_lower() in child.name_label.text.to_lower()) or (text.to_lower() in child.uid_label.text.to_lower()):
|
|
||||||
child.show()
|
|
||||||
else:
|
|
||||||
child.hide()
|
|
||||||
else:
|
|
||||||
for child in punish_container.get_children():
|
|
||||||
if child is PunishShowcase:
|
|
||||||
child.show()
|
|
||||||