From 4728677e80607a6742a2bbff43f25f1c12d9cacf Mon Sep 17 00:00:00 2001 From: MaddoScientisto Date: Fri, 4 Jul 2025 22:55:28 +0200 Subject: [PATCH] Falling props --- 3D/MapModels/actor_alarmbox.glb | Bin 5420 -> 5420 bytes 3D/MapModels/actor_capacitor_mini.glb | Bin 19696 -> 19696 bytes 3D/MapModels/actor_chest_1.glb | Bin 9240 -> 9240 bytes 3D/MapModels/actor_controlpad.glb | Bin 4516 -> 4516 bytes 3D/MapModels/actor_door_1.glb | Bin 9004 -> 9004 bytes 3D/MapModels/actor_forcefield_1.glb | Bin 2860 -> 2860 bytes 3D/MapModels/actor_furniture_box.glb | Bin 4200 -> 4200 bytes 3D/MapModels/actor_furniture_can.glb | Bin 8908 -> 8908 bytes .../actor_furniture_computertower.glb | Bin 4556 -> 4556 bytes 3D/MapModels/actor_furniture_shelf.glb | Bin 3968 -> 3968 bytes 3D/MapModels/actor_furniture_triangle.glb | Bin 4376 -> 4376 bytes 3D/MapModels/actor_keypad.glb | Bin 4168 -> 4168 bytes 3D/MapModels/actor_mainframe.glb | Bin 6088 -> 6088 bytes 3D/MapModels/actor_securitycamera.glb | Bin 22184 -> 22184 bytes 3D/MapModels/actor_stairs_mini.glb | Bin 22812 -> 22812 bytes 3D/MapModels/actor_tank_large.glb | Bin 74716 -> 74716 bytes 3D/MapModels/actor_teleporter.glb | Bin 4836 -> 4836 bytes 3D/MapModels/actor_terminal_big.glb | Bin 8400 -> 8400 bytes 3D/MapModels/actor_vendingmachine.glb | Bin 4108 -> 4108 bytes 3D/MapModels/actor_wallfan.glb | Bin 34480 -> 34480 bytes 3D/MapScenes/TestLevel2.tscn | 7 +- 3D/Scenes/Props/Box_3D_Blue.tscn | 26 +- 3D/Scenes/Props/Box_3D_Green.tscn | 21 +- 3D/Scenes/Props/Box_3D_Red.tscn | 21 +- 3D/Scenes/Props/Box_3D_Yellow.tscn | 21 +- 3D/Scenes/Props/Wooden_Box.tscn | 24 +- .../EntityScripts/Solid/FuncShroud.cs | 15 +- 3D/TrenchBroom/Main_Game_Config.tres | 2 +- Resources/BossPhases/Marisa/marisa_ns1.tres | 20 -- Resources/BossPhases/Rumia_NS2.tres | 241 ------------------ Resources/BossPhases/Rumia_SP1.tres | 71 ------ Resources/BossPhases/TestBoss1.tres | 15 -- .../Basic_Enemy_Emitter_Spiral_Bullets.tres | 15 -- .../Boss/Rumia/Rumia_Red_Chase_Bullet.tres | 8 - Resources/Bullets/yin_yang_bullet.tres | 7 - Resources/Enemies/Base_Fairy.tres | 6 - Resources/Enemies/Thermathron.tres | 6 - Resources/Enemies/Turret360.tres | 5 - Resources/Items/Heart_Extend_Pickup.tres | 8 - Resources/Items/Spider_Bomb_Pickup.tres | 13 - Resources/Patterns/rumia_ns_2.tres | 69 ----- Scenes/Hacking/HackingBackground.tscn | 46 ---- Scripts/Actors/3D/PropGravityModule3D.cs | 42 +++ Scripts/Actors/3D/PropGravityModule3D.cs.uid | 1 + .../shaders/outline_shader.tres | 1 - 45 files changed, 171 insertions(+), 540 deletions(-) create mode 100644 Scripts/Actors/3D/PropGravityModule3D.cs create mode 100644 Scripts/Actors/3D/PropGravityModule3D.cs.uid diff --git a/3D/MapModels/actor_alarmbox.glb b/3D/MapModels/actor_alarmbox.glb index 78f52688a666b11f0f5089ac68027790c3fed329..a0a8df7d90bc1468c95343f68bb19b9e897e2321 100644 GIT binary patch delta 69 zcmZ3ZwMJ_LBfEu>UT%I~zFvM>T4r))Vva*e8_ YiA7S1L85t*xut=nxoP5NOZLya00RjXKL7v# delta 69 zcmZ3ZwMJ_LBfEv6UT%I~zFvM>T4r))Vvd7}S+a?xX>y{GVVa3SnyGoBd0LWXvUze! Ys+pmQvAMBDnxUDgQHsfCOZLya0R4{@AOHXW diff --git a/3D/MapModels/actor_capacitor_mini.glb b/3D/MapModels/actor_capacitor_mini.glb index 7f808e242b1e96c40bb684e6b5bc389ad5a01596..b6f161d8cc2d9002ef86dc8d4f16bab3b9c1240f 100644 GIT binary patch delta 71 zcmew`lkvk$#tp2@7Djrx`FZ(z`DtmH$(e~c4ykELCI-odrbZ^IrY31d$!VrWX-0;| bsYWIiNht=2=1Jz32A1ZgiJNViH+upAW-At> delta 71 zcmew`lkvk$#tp2@7KVDc`FZ(z`DtmH$(e~c4kl*FCYGkjiAIKLCI)Gy=85KMNtVgx b$tkI3h9<`5#ujOYW~N3dCYx=UH+upAV89lH diff --git a/3D/MapModels/actor_chest_1.glb b/3D/MapModels/actor_chest_1.glb index 2735d3939eb20787f7407e51a9f8878d8509dbe5..15eed3c17132d07aef31169bd9e1e5851dacf38c 100644 GIT binary patch delta 69 zcmbQ?F~eiSR}Kp!z1;k~e7*d%w9Mqp#2kmzv?LRQWJ6OUlT=faG^6A+Q=>E^L*rB< Y6N{u2gGBQrb4vqDbJN7lx}2}207WkrLjV8( delta 69 zcmbQ?F~eiSR}Kq9z1;k~e7*d%w9Mqp#2g0`vt$!X)8s@W!!#3vG*k0L^Ry((Wb@>d YR5L>pV{>DRG($5}qZE_Px}2}206)YQBme*a diff --git a/3D/MapModels/actor_controlpad.glb b/3D/MapModels/actor_controlpad.glb index a70bcf0f8265ce8eca65a806b84d32633fe39fbe..d5b9ed810fea4816bc57455126d84bed84c424c5 100644 GIT binary patch delta 69 zcmZ3YyhM2e6SIYpUT%I~zFvM>T4r))Vva*e8_ YiA7S1L85t*xut=nxoP5NE9NXd0QoxT4r))Vvd7}S+a?xX>y{GVVa3SnyGoBd0LWXvUze! Ys+pmQvAMBDnxUDgQHsfCE9NXd0Q1lkbN~PV diff --git a/3D/MapModels/actor_door_1.glb b/3D/MapModels/actor_door_1.glb index bad09cac34bb190258ea8e8e5ee35c8a411a502f..fde22fd9e7b363e3aedae22db967e1939d1ce3ab 100644 GIT binary patch delta 69 zcmZ4Ew#IEkJhz3BUT%I~zFvM>T4r))Vva*e8_ YiA7S1L85t*xut=nxoP6&>D*Jr0V@9$=Kufz delta 69 zcmZ4Ew#IEkJhz3RUT%I~zFvM>T4r))Vvd7}S+a?xX>y{GVVa3SnyGoBd0LWXvUze! Ys+pmQvAMBDnxUDgQHsgt>D*Jr0VR|b$N&HU diff --git a/3D/MapModels/actor_forcefield_1.glb b/3D/MapModels/actor_forcefield_1.glb index 8dc1a2d6f3f55c03dd003fd0a1b976191e45239e..3e9843fc53be4f4effdadb0610628e2979e10180 100644 GIT binary patch delta 69 zcmZ1@wnl7&5VM7mUT%I~zFvM>T4r))Vva*e8_ YiA7S1L85t*xut=nxoP5NFXl(=0Q=Sz8UO$Q delta 69 zcmZ1@wnl7&5VM7$UT%I~zFvM>T4r))Vvd7}S+a?xX>y{GVVa3SnyGoBd0LWXvUze! Ys+pmQvAMBDnxUDgQHsfCFXl(=0QPGX`v3p{ diff --git a/3D/MapModels/actor_furniture_box.glb b/3D/MapModels/actor_furniture_box.glb index d8754d3073f6bed64e0080f72970a46ed0ea72a9..4c2f46d9ce0c1df18a6ed2299b156975dd2aa890 100644 GIT binary patch delta 68 zcmaE%@Iqk$vxSjfZhl_AUVd6yW^!g?jzel%l8HgGp{bEcs;NnuQF5B8QJRsVajKDt XMN*1EqIr_JrGcfnY2s!JW&>UT6dDx9 delta 68 zcmaE%@Iqk$vxT8vZhl_AUVd6yW^!g?j)RF=vWcZ>a-xx8nu$T0sd=J#T9Re5d2&js XnW2fXxv@o>p_!>sipgdRW&>UT4zCoa diff --git a/3D/MapModels/actor_furniture_can.glb b/3D/MapModels/actor_furniture_can.glb index 17610bf631d82118b6c22cead746c8006b4385d6..956915188900507d228c8de7bc4837247e9577d2 100644 GIT binary patch delta 69 zcmX@(dd78wAhU&$UT%I~zFvM>T4r))Vva*e8_ YiA7S1L85t*xut=nxoP5NPv&NM03?+aZvX%Q delta 69 zcmX@(dd78wAhU&`UT%I~zFvM>T4r))Vvd7}S+a?xX>y{GVVa3SnyGoBd0LWXvUze! Ys+pmQvAMBDnxUDgQHsfCPv&NM03Rw9Pyhe` diff --git a/3D/MapModels/actor_furniture_computertower.glb b/3D/MapModels/actor_furniture_computertower.glb index 1dc4ef01b8d8018f4b03c2614b003a5dffda99e4..3b8ab19936f7ad4452d1954bcfad1c53fee1488d 100644 GIT binary patch delta 69 zcmX@3d`5Z0UnUD9z1;k~e7*d%w9Mqp#2kmzv?LRQWJ6OUlT=faG^6A+Q=>E^L*rB< Y6N{u2gGBQrb4vqDbJN7lrp(j%08LRA1poj5 delta 69 zcmX@3d`5Z0UnUDfz1;k~e7*d%w9Mqp#2g0`vt$!X)8s@W!!#3vG*k0L^Ry((Wb@>d YR5L>pV{>DRG($5}qZE_Prp(j%07vE(<^TWy diff --git a/3D/MapModels/actor_furniture_shelf.glb b/3D/MapModels/actor_furniture_shelf.glb index ad6c32227edf4fc5f62c94311f35f02552ec328b..6b15eb5433468684e53b5b447991167a57b9c7b6 100644 GIT binary patch delta 69 zcmZpWZ;;>cgUP~3FE>9gUoSr`Ei*YYF~=b_Ey=_n+0fL;B-PX;%_up|)F{o!&^Xn| Y#3CuhAkjR@+|t0(+%$2s0doKk03h`h5&!@I delta 69 zcmZpWZ;;>cgUP~BFE>9gUoSr`Ei*YYF~`BgEZM};G&#}8FwMju&D1>6JT1vG**rNV Y)y&Yu*xcA6&Ctx$D8*#60doKk02_)F^8f$< diff --git a/3D/MapModels/actor_furniture_triangle.glb b/3D/MapModels/actor_furniture_triangle.glb index 731bd35d51705c7457e80a5165a1d669620eae0c..9d2e3e3d9395cf01fde163087728b8865c11eaf7 100644 GIT binary patch delta 69 zcmbQCG(%}aDzk-=UT%I~zFvM>T4r))Vva*e8_ YiA7S1L85t*xut=nxoP6&xy;qP01VL;PXGV_ delta 69 zcmbQCG(%}aDzk;5UT%I~zFvM>T4r))Vvd7}S+a?xX>y{GVVa3SnyGoBd0LWXvUze! Ys+pmQvAMBDnxUDgQHsgtxy;qP00(9jFaQ7m diff --git a/3D/MapModels/actor_keypad.glb b/3D/MapModels/actor_keypad.glb index a60bbce2b7afa930eccd9e429864cb702686b3d0..bd0a77d956e4fc85b6ffbc5e8319f1b8830d3458 100644 GIT binary patch delta 69 zcmX@1a6(}N6SIYpUT%I~zFvM>T4r))Vva*e8_ YiA7S1L85t*xut=nxoP5ND`q}k016)zcmMzZ delta 69 zcmX@1a6(}N6SIY(UT%I~zFvM>T4r))Vvd7}S+a?xX>y{GVVa3SnyGoBd0LWXvUze! Ys+pmQvAMBDnxUDgQHsfCD`q}k00guYSpWb4 diff --git a/3D/MapModels/actor_mainframe.glb b/3D/MapModels/actor_mainframe.glb index ac8592e230e2067ab76624d3f4b53f76c7012ba8..20db20c530689aef1e792d8fd330c76c626cd2cc 100644 GIT binary patch delta 69 zcmX@1e?ou54<-vEz1;k~e7*d%w9Mqp#2kmzv?LRQWJ6OUlT=faG^6A+Q=>E^L*rB< Y6N{u2gGBQrb4vqDbJN7l2Fx==08lL!5&!@I delta 69 zcmX@1e?ou54<-vkz1;k~e7*d%w9Mqp#2g0`vt$!X)8s@W!!#3vG*k0L^Ry((Wb@>d YR5L>pV{>DRG($5}qZE_P2Fx==07}9Y^8f$< diff --git a/3D/MapModels/actor_securitycamera.glb b/3D/MapModels/actor_securitycamera.glb index 1c27513c9a685cbc008ff7ac77c5717f4115913d..7ff413f48a2f9399e7b77d9ae2a7d1be9a00f66c 100644 GIT binary patch delta 71 zcmZ3nmT|>e#tr%c7Djrx`FZ(z`DtmH$(e~c4ykELCI-odrbZ^IrY31d$!VrWX-0;| asYWIiNht=2=1Jz32A1ZgiJQ{}9Nhp{Viq(2 delta 71 zcmZ3nmT|>e#tr%c7KVDc`FZ(z`DtmH$(e~c4kl*FCYGkjiAIKLCI)Gy=85KMNtVgx a$tkI3h9<`5#ujOYW~N3dCY#d*9Nhp>_ZAfZ diff --git a/3D/MapModels/actor_stairs_mini.glb b/3D/MapModels/actor_stairs_mini.glb index 7c2decb8f07272d2db1e4dd413e308988fd239e3..e3067f467e85cfd3d6a91378cfcb3f9455e1dbac 100644 GIT binary patch delta 71 zcmbQUiE+**#tpB^Yilc^3&2XlQR=@98AoTO)O256O9bhObpUY%@fVjk}Q+W flT%X73{8y9jV;m)%}k9_Oq!p{ZGS4q_?-m+2(1~; diff --git a/3D/MapModels/actor_teleporter.glb b/3D/MapModels/actor_teleporter.glb index 57ae878a997443fd37a149726b979799539c6ce0..8d1337479706325df3bcc2083460ab18807f2a9f 100644 GIT binary patch delta 69 zcmaE&`b2euFSCV_UT%I~zFvM>T4r))Vva*e8_ YiA7S1L85t*xut=nxoP6&R_1tq05B~TqW}N^ delta 69 zcmaE&`b2euFSCWAUT%I~zFvM>T4r))Vvd7}S+a?xX>y{GVVa3SnyGoBd0LWXvUze! Ys+pmQvAMBDnxUDgQHsgtR_1tq04l;2ga7~l diff --git a/3D/MapModels/actor_terminal_big.glb b/3D/MapModels/actor_terminal_big.glb index 58cd40124bcd13f9f7933c3940def6d7f6d15928..61423dfefaecf6f642c5837e5a98e713f02a379d 100644 GIT binary patch delta 69 zcmccMc)@YQZzc;Pz1;k~e7*d%w9Mqp#2kmzv?LRQWJ6OUlT=faG^6A+Q=>E^L*rB< Y6N{u2gGBQrb4vqDbJN7l#>{hN0baNkS^xk5 delta 69 zcmccMc)@YQZzc;vz1;k~e7*d%w9Mqp#2g0`vt$!X)8s@W!!#3vG*k0L^Ry((Wb@>d YR5L>pV{>DRG($5}qZE_P#>{hN0a;BJI{*Lx diff --git a/3D/MapModels/actor_vendingmachine.glb b/3D/MapModels/actor_vendingmachine.glb index fa689896fe5b756fcb99311e8a887da49920c744..1495771d51e7486fec54aa8acab219f3eb3283e9 100644 GIT binary patch delta 69 zcmeBC=uy~kpUJ{VFE>9gUoSr`Ei*YYF~=b_Ey=_n+0fL;B-PX;%_up|)F{o!&^Xn| Y#3CuhAkjR@+|t0(+%$2sIP+H?03v}Ep8x;= delta 69 zcmeBC=uy~kpUJ{dFE>9gUoSr`Ei*YYF~`BgEZM};G&#}8FwMju&D1>6JT1vG**rNV Y)y&Yu*xcA6&Ctx$D8*#6IP+H?038+;fB*mh diff --git a/3D/MapModels/actor_wallfan.glb b/3D/MapModels/actor_wallfan.glb index ffc9273804f50b58861b424ce92598764131a6af..f75041d887b98c530d7ea3ce9b73dd98e1b1a216 100644 GIT binary patch delta 1625 zcma)6Urbwd6#fP%o7~COweBL|0E%F_*^4#YRboKL3flbKq2GG=Qu z(xk|lO7TdGPD5UXf~K3^qmgEnrjE%p)lx`TTZ~lX-9xjl$&~+kIW2R&vv~tj>k|Fk zs?s3WB(H6qx6oWjKXOeV;vJ^^{W7h1OG$05r~0-MTIP38o4U>)X_Jf2{JoMqIO(+> z|JZBiYuPjNiQ%@KEi~A!(pxPuU1{H#wA{{lOCEi|b%9*pH&o&`sbBrMqJ3JiZLek0 zYyUqnHHH+5cdNAEQ|Kq3q+`*apqXGky&EvnP@tOZCnY-9T}q99$*>~__7CTOvA+G0 zcX}>&X@^ z$ou`f-*gUpIub3e7QOi!w74U#&&%vBX5K8jsn7i(aa-$8ozmFTY}iPHQA;-G^jWkt zU-0lxuXgLaPkblch!)TnVVVAjDz+iVklz3LvPTo~TK_ax@86etNA%Tu2rqJ;OS@uS zxq>HdG!QGGoQOiV40E{r8019?89%NgLA{3$oyYLVmMj1*OCbkuL z1m$=Pk775Tz~k7%sAO9O6;Hx~YM5c|#a`4fYT4TG6zceIw*mEd8v9^pJj3=`9Ke1! z@I0Qwi+BMC8Hd;&!C}0FSMV|#;er!K8E&@CXo3f=IEEIqqYYk$k8J>cbRdinf`}oC P2qXJdL?#-JpDg?r6cb^& delta 1727 zcmZuxZA{yB5PtR|Y_3Qduyq#3i`8wcW4shv1pY9c(kbc`XiK5c7h1r9#PMPKU;zN#f80n@AMV+g+kqdZeLHWr95D%C=2*XibIy7P?^IW{}yjjczxj(6TEjNtI@(w$Y%I zR=Hnk7-^iOq9zmdu+=tZ(v_xET5fWa!%@I}JL!@mg$_Hm(>*r5Q#G>|XrhB$&dCXv ziK^K2&P@8ml}eXglVo=1Qcp`RZ9ZO0x>h4OJ-JlZx{vg|S-R7IN9T^rc&x|1@YK-W zcGG&``}Q0<+nh_++w~mv8#Hpcb13zA8PCzvcXjEs)S9+s68H+Za)}IWQp}{WW-h*K zRBy9ePd)BsCE#MqeuYVMeJgQu9xXQ~E3BSHjd^1A-#vOVw=I*oorSl@upd~0&bvV4 zJ_8N<4dm@Nk=LiAU;U|cEnuMJKpqwK8+3fgygxesr5r{_g9bw)@Z+QC+}C@y&RAwV zH4{GLfq23NjSJ;cNF*&zdurYXtSix|matMs@9|2TU$=gp*JqeuNmG6ko#gnrFHBu5 z^<%%0=KYy0RY&?j4~=l|EaM9S!$e1{Wbe??$&N7Df(Gge#;~a%Ul*JlSj=D4eu`Yv zBrZg*Y7cMzp>m0m-x>F6li^Rbk?^oKWFJyda=|6Pm48bci;QZIZvLr_M21zATyV)R zhA$|dMCm(YKcjMqoDV4CP~-#Eh<^rDlw1Z#F2a6^{H%oCh+J1ua=|6PZ@;hNZ{a(N zCs7U(5o6&|ZO}fbor`>?-B@v|bu zXKggx^|)v4*N~puU5|IjadNEiPjs*6%daGwu6FkhJPQ+^zz$^MIW`0P6zoAh_F*rK zcp3%#*Is}P><_?<{V2jg6rvO*C}y*;x1t4)A7x4lP;bpvp!>|t^7jdOFyoGE$gGT7t z(%C!VKoi_(h6^6FqJ^!Ey$@crBLF{=u^nmXU<(); + } + + public override void _PhysicsProcess(double delta) + { + if (!_isFalling) return; + _parent.GlobalPosition += new Vector3(0, FallingSpeed , 0) * (float)delta; + } + + public void OnBodyEntered(Node3D body) + { + if (body == _parent) return; + _detectedBodies++; + TryFalling(); + } + + public void OnBodyExited(Node3D body) + { + if (body == _parent) return; + _detectedBodies--; + TryFalling(); + } + + private void TryFalling() + { + _isFalling = _detectedBodies == 0; + } +} \ No newline at end of file diff --git a/Scripts/Actors/3D/PropGravityModule3D.cs.uid b/Scripts/Actors/3D/PropGravityModule3D.cs.uid new file mode 100644 index 00000000..103ffd50 --- /dev/null +++ b/Scripts/Actors/3D/PropGravityModule3D.cs.uid @@ -0,0 +1 @@ +uid://hkmutmmjqh1e diff --git a/addons/cyclops_level_builder/shaders/outline_shader.tres b/addons/cyclops_level_builder/shaders/outline_shader.tres index c333f1f4..d8fca244 100644 --- a/addons/cyclops_level_builder/shaders/outline_shader.tres +++ b/addons/cyclops_level_builder/shaders/outline_shader.tres @@ -54,7 +54,6 @@ void fragment() { } " -graph_offset = Vector2(-10.4364, 103.709) nodes/fragment/0/position = Vector2(480, 140) nodes/fragment/2/node = SubResource("VisualShaderNodeColorConstant_mqcg1") nodes/fragment/2/position = Vector2(227.319, 156.469)