From 0ad7b5b1b6229bf65a436d7a7d54a86a13a7e071 Mon Sep 17 00:00:00 2001 From: alex-kumpula Date: Sat, 11 Nov 2023 11:31:48 -0700 Subject: [PATCH 1/2] create TAS system branch --- godot/Hurrmmm.csproj | 6 ++++++ godot/Hurrmmm.sln | 19 +++++++++++++++++++ godot/TAS_system/TAS_System.cs | 6 ++++++ 3 files changed, 31 insertions(+) create mode 100644 godot/Hurrmmm.csproj create mode 100644 godot/Hurrmmm.sln create mode 100644 godot/TAS_system/TAS_System.cs diff --git a/godot/Hurrmmm.csproj b/godot/Hurrmmm.csproj new file mode 100644 index 0000000..e25452c --- /dev/null +++ b/godot/Hurrmmm.csproj @@ -0,0 +1,6 @@ + + + net6.0 + true + + \ No newline at end of file diff --git a/godot/Hurrmmm.sln b/godot/Hurrmmm.sln new file mode 100644 index 0000000..082e355 --- /dev/null +++ b/godot/Hurrmmm.sln @@ -0,0 +1,19 @@ +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2012 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Hurrmmm", "Hurrmmm.csproj", "{BD45A87E-5242-45B0-9A55-8B809F4BB443}" +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 + {BD45A87E-5242-45B0-9A55-8B809F4BB443}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {BD45A87E-5242-45B0-9A55-8B809F4BB443}.Debug|Any CPU.Build.0 = Debug|Any CPU + {BD45A87E-5242-45B0-9A55-8B809F4BB443}.ExportDebug|Any CPU.ActiveCfg = ExportDebug|Any CPU + {BD45A87E-5242-45B0-9A55-8B809F4BB443}.ExportDebug|Any CPU.Build.0 = ExportDebug|Any CPU + {BD45A87E-5242-45B0-9A55-8B809F4BB443}.ExportRelease|Any CPU.ActiveCfg = ExportRelease|Any CPU + {BD45A87E-5242-45B0-9A55-8B809F4BB443}.ExportRelease|Any CPU.Build.0 = ExportRelease|Any CPU + EndGlobalSection +EndGlobal diff --git a/godot/TAS_system/TAS_System.cs b/godot/TAS_system/TAS_System.cs new file mode 100644 index 0000000..7d59442 --- /dev/null +++ b/godot/TAS_system/TAS_System.cs @@ -0,0 +1,6 @@ +using Godot; +using System; + +public partial class TAS_System : Node +{ +} From a0b8942bdfbc8348dc56951fc0c06dfdbac217fa Mon Sep 17 00:00:00 2001 From: alex-kumpula Date: Sat, 11 Nov 2023 13:11:27 -0700 Subject: [PATCH 2/2] Created TAS system framework --- godot/.vs/Hurrmmm/v17/.suo | Bin 0 -> 16384 bytes godot/Backup/Hurrmmm.sln | 19 ++ godot/Hurrmmm.sln | 19 +- godot/TAS_system/TAS_System.cs | 104 +++++++ godot/TAS_system/TAS_System.tscn | 6 + godot/UpgradeLog.htm | 275 ++++++++++++++++++ .../control_target_overlay.material | 4 +- godot/project.godot | 4 +- godot/tests/TAS_system/TAS_test_001.cs | 25 ++ godot/tests/TAS_system/TAS_test_001.tscn | 6 + 10 files changed, 454 insertions(+), 8 deletions(-) create mode 100644 godot/.vs/Hurrmmm/v17/.suo create mode 100644 godot/Backup/Hurrmmm.sln create mode 100644 godot/TAS_system/TAS_System.tscn create mode 100644 godot/UpgradeLog.htm create mode 100644 godot/tests/TAS_system/TAS_test_001.cs create mode 100644 godot/tests/TAS_system/TAS_test_001.tscn diff --git a/godot/.vs/Hurrmmm/v17/.suo b/godot/.vs/Hurrmmm/v17/.suo new file mode 100644 index 0000000000000000000000000000000000000000..f62e48041a37a95ac558c79089250f0d996d561a GIT binary patch literal 16384 zcmeHOO>7&-6&~768>dYiC$8(JPOUhqRG^XAQ)_udTOc>U0g-@p9OJHi2DV!!xw`+)eOEkA(tKK*>Z5MMx= zd7o}?Z!>#85XnA#jyNzQ%J|j9fJlpV+$&;>L+Kihh`SnNepi>TewY4e{Efr^3fzZs z;}599)1X)uKNC-Y`W2+o;^$pzX?}eK5@~05^V`->6Uc`6O3?I4cSDrWf{G{tv*1Mz zShUKuyA6tc0k8CrqO!NF3a7*-sFcJC`cGW4QBEPJ(vGl|Px=Ru=DcJ(x)hhMQ@GZx zf^5qt_6{KZb>uPYZrs0NrN4~(LspvaNRvD~1msXY2s{k@D)1PPWvCY@6JG){eGl#r zTWP-U!>#AQp3eV2{jV|qrNBTI^!(e)`F{a)`|}@60B8y1I!`^oc}h5f=X1hk)M$n!q4%7#ISEfg`{OFba$T z&j3e(j|0yFzYk=6=Wrjl(z;!|r>(s6*8K_Ge_$(zBDWQ!VDS`SgRH^Qq5XGBS|N+b zeHyyCEUI{}0n2z>1s|MX`mle#gGyeb^8m=A=90956pf^$bOjWbkXw;9n0lkiJFllf z|7*ykOmbkH?^`|7202P+1u!M@us$b2ts)d{+I-|hRm@8XQsvrRPx$CR?IZ0+CDHpF zXp!0qC_lZc740aid_VRl@z?@0=+L_+$sNMaC}`XVl2wYT}1!s0p(P|HrJD&Pr4e~6l==1 z%U|pHPd}7;VG1MBN&9du*eC52`XFpW6QMQ_EXy$?X!}!fx!UME?NMjj*c$2vJ8=AI zJ82uo{;plx-v5-i2%6L2^$Ivm|8q(9nska7gKj|mL!ZkF|2bDI_3P;WEcm_&*{e1D z@ru+8dJJ~A2KrylCEAN_`QP0CA~f(Odc7oP!6hkk1!w`zf$lH>`nvCK>C^VtGKls77K4I!DPu88R>nZg56Y66}0{{_)IzlBO>}m=rT&P7LgtYXf3O6RMJ} zuh2i9>1R-tjxu$Mzs$qBj6mnp#%u@VKkW}M{GUMi7ur?mBj2n1+etX(ZxYhKhLL6* z&@LP8WDxe3XZ~~TowXX_q_1dF1F1+{9MZM{DWUyIOO&~Gp#G(gaUAG&{!>?L{g=V2 zo`xq8#x;qNHn7^8xMz?G;+Mkn<%X8r9TnvIOS*#|=ySc$^6!rREZQ@P_T`%99;$(S zdgni5a=QQaF?P=XX{rCzI+Ow5bC3+DRwnmUl2Ocx9i`XHRxi~IE;Zl{pm-5Zsk9K zvYP+S`PZNSch>xGwtxHf-{;W&^Q?dD_8;{C^?_gL^?T|;(kEX0;l|tb)ytdDycJKl zZ4dRh{$72vG4A$Tmg}|s>B)>XWxSAWlnu>ir`i5=GCSSK+~Wk-BPaBd=dA0qd=B&^ zy*qZ0-!^jW#(_yhnHS*86k(w;YPujM;5}9FTa&*9*b>dpODM-UYYk=n18vElh^Ks4 z!1mutpfAjL1pDEqE$@D?z5UBSq+dzQyp;aU+;hMB?S(%kU%hza4ngzc79w zaUJo`MeG?g(^XMZJ5}yx-CU~byo`#}Q|mEi&3%j_PL?pHz9j~r6Q?0DLpayNC^IAa z%Se^bVtd=TqNIkq5E)2I6l0%;HZj0Wrm1gKtb$U*ct#Lc zHDBV8nk3}L#FzXfJxC2>lyQt2V}4gLvPq2Ok{r9cWz4;Of4JM~4!93U8*VUiC6>#N z6wVmYU@T{ZM{+qMUnrW!$d!CF7R`r(k!U_3o)4r(P5iFKhcoGDI2|++(QwEJ22-XH zPY2_MX~xau88ef~BtzHhXD3&xh0IE+SRJb;M;B&_8|CW4#Accz+s&v|vU zosi%B8c&-RKs%VG z&C_N*lPgslLjC-U5AV-E^}) + /// The last frame that can be advanced to. This will + /// only be greater than CurrentFrame after the player + /// regresses frames, and will be equal to CurrentFrame + /// when the player has just done an action. + /// + /// + public int LastAdvancedFrame + { + get { return this._lastAdvancedFrame; } + private set { this._lastAdvancedFrame = value; } + } + + + [Signal] + public delegate void FrameAdvancedEventHandler(int currentFrame); + + [Signal] + public delegate void FramesAdvancedEventHandler(int numFrames); + + [Signal] + public delegate void FramesRegressedEventHandler(int numFrames); + + + public void StartCountingFrames() + { + + } + + public void StopCountingFrames() + { + + } + + public void ResetFrameCount() + { + this.CurrentFrame = 0; + this.LastAdvancedFrame = 0; + } + + // Returns how many frames it could successfully advance + public int Advance(int numFrames) + { + int newFrame = Math.Min(this.CurrentFrame + numFrames, this.LastAdvancedFrame); + int framesAdvanced = newFrame - this.CurrentFrame; + EmitSignal(SignalName.FramesAdvanced, framesAdvanced); + return framesAdvanced; + } + + // Returns how many frames it could successfully regress + public int Regress(int numFrames) + { + int newFrame = Math.Max(this.CurrentFrame - numFrames, 0); + int framesRegressed = newFrame - this.CurrentFrame; + EmitSignal(SignalName.FramesRegressed, framesRegressed); + return framesRegressed; + } + + /// + /// Gets rid of advanced frames. + /// + public void DiscardAdvancedFrames() + { + this.LastAdvancedFrame = this.CurrentFrame; + } + + + + // public void Test() + // { + // GD.Print("test123"); + + // // EmitSignal(SignalName.TestSignal, "test456"); + // } } diff --git a/godot/TAS_system/TAS_System.tscn b/godot/TAS_system/TAS_System.tscn new file mode 100644 index 0000000..910d0fa --- /dev/null +++ b/godot/TAS_system/TAS_System.tscn @@ -0,0 +1,6 @@ +[gd_scene load_steps=2 format=3 uid="uid://x6yhkj1f7yg1"] + +[ext_resource type="Script" path="res://TAS_system/TAS_System.cs" id="1_4s6ry"] + +[node name="System" type="Node"] +script = ExtResource("1_4s6ry") diff --git a/godot/UpgradeLog.htm b/godot/UpgradeLog.htm new file mode 100644 index 0000000..87498ff --- /dev/null +++ b/godot/UpgradeLog.htm @@ -0,0 +1,275 @@ + + + + Migration Report +

+ Migration Report - Hurrmmm

\ No newline at end of file diff --git a/godot/control_scheme/control_target_overlay.material b/godot/control_scheme/control_target_overlay.material index fcdc96e..4c10d6e 100644 --- a/godot/control_scheme/control_target_overlay.material +++ b/godot/control_scheme/control_target_overlay.material @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:83a5adc4b833fc7a42cad6a04f5b3d502ca33fc2c0545d350f546aa998cb8117 -size 175 +oid sha256:5e2f59d49b77fafd3669572cc5924fcb59abe83d602965d8335d78cc167e616a +size 194 diff --git a/godot/project.godot b/godot/project.godot index 489a5ff..3a2df07 100644 --- a/godot/project.godot +++ b/godot/project.godot @@ -11,12 +11,14 @@ config_version=5 [application] config/name="Hurrmmm" -config/features=PackedStringArray("4.1", "Forward Plus") +run/main_scene="res://tests/TAS_system/TAS_test_001.tscn" +config/features=PackedStringArray("4.1", "C#", "Forward Plus") config/icon="res://icon.svg" [autoload] ControllerEventBus="*res://controller_event_bus.gd" +TAS="*res://TAS_system/TAS_System.tscn" [dotnet] diff --git a/godot/tests/TAS_system/TAS_test_001.cs b/godot/tests/TAS_system/TAS_test_001.cs new file mode 100644 index 0000000..1fd57c4 --- /dev/null +++ b/godot/tests/TAS_system/TAS_test_001.cs @@ -0,0 +1,25 @@ +using Godot; +using System; + +public partial class TAS_test_001 : Node +{ + + public override void _Ready() + { + // Called every time the node is added to the scene. + // Initialization here. + GD.Print("Hello from C# to Godot :)"); + + TAS_System TAS = GetNode("/root/TAS"); + + // TAS.TestSignal += (x) => GD.Print(x); + + // TAS.Test(); + } + + private void Test2(string testStr2) + { + + } + +} diff --git a/godot/tests/TAS_system/TAS_test_001.tscn b/godot/tests/TAS_system/TAS_test_001.tscn new file mode 100644 index 0000000..5afd062 --- /dev/null +++ b/godot/tests/TAS_system/TAS_test_001.tscn @@ -0,0 +1,6 @@ +[gd_scene load_steps=2 format=3 uid="uid://bbml0d2v4lf78"] + +[ext_resource type="Script" path="res://tests/TAS_system/TAS_test_001.cs" id="1_0ap5j"] + +[node name="TAS_test_001" type="Node3D"] +script = ExtResource("1_0ap5j")