From 6657eedfa13786fe043d266ec1bd4b802fae6dd7 Mon Sep 17 00:00:00 2001 From: l3ops Date: Tue, 24 Oct 2023 21:09:55 +0200 Subject: [PATCH 1/5] Add a gravity direction property to `trigger_gravity`, `trigger_vphysics_motion` and `func_dust` --- fgd/bases/BaseDustParticleSpawner.fgd | 1 + fgd/brush/trigger/trigger_gravity.fgd | 1 + fgd/brush/trigger/trigger_vphysics_motion.fgd | 1 + 3 files changed, 3 insertions(+) diff --git a/fgd/bases/BaseDustParticleSpawner.fgd b/fgd/bases/BaseDustParticleSpawner.fgd index 258ea5276..241034678 100644 --- a/fgd/bases/BaseDustParticleSpawner.fgd +++ b/fgd/bases/BaseDustParticleSpawner.fgd @@ -7,6 +7,7 @@ spawnrate(integer) : "Particle Per Second" : 40 : "Number of particles to spawn, per second." speedmax(integer) : "Maximum Particle Speed" : 13 : "Maximum speed that the particles can move after spawning." fallspeed(integer) : "Particle Fall Speed" : 0 : "How fast the particles fall to the ground. This value is subtracted from the particle speed in the Z-axis only." + falldirection(vector) : "Particle Fall Direction" : "0 0 0" : "The direction the particles should fall towards, if they are affected by gravity. Note: setting this vector will prevent the particles from being affected by wind." lifetimemin(integer) : "Minimum Particle Lifetime" : 3 : "Minimum number of seconds until each particle dies. Particles live for a random duration between this and 'Maximum Particle Lifetime'." lifetimemax(integer) : "Maximum Particle Lifetime" : 5 : "Maximum number of seconds until each particle dies. Particles live for a random duration between 'Minimum Particle Lifetime' and this. Will be clamped to a max of 15." distmax(integer) : "Maximum Visible Distance" : 1024 : "Maximum distance at which particles are visible. They fade to translucent at this distance." diff --git a/fgd/brush/trigger/trigger_gravity.fgd b/fgd/brush/trigger/trigger_gravity.fgd index 883856b50..8578a68a1 100644 --- a/fgd/brush/trigger/trigger_gravity.fgd +++ b/fgd/brush/trigger/trigger_gravity.fgd @@ -3,4 +3,5 @@ [ gravity(float) : "Gravity (0-1)" : 1 persist(boolean) : "Persist" : 0 : "Whether the gravity change persists. A setting of 0 will reset gravity to default on exiting. 1 will persist and thus act like how it did in older games like TF2." + gravityvector(vector) : "Gravity Vector (X Y Z)" : "0 0 0" : "Override the gravity vector of players touching the volume to this direction." ] diff --git a/fgd/brush/trigger/trigger_vphysics_motion.fgd b/fgd/brush/trigger/trigger_vphysics_motion.fgd index cc511087c..ae76749f8 100644 --- a/fgd/brush/trigger/trigger_vphysics_motion.fgd +++ b/fgd/brush/trigger/trigger_vphysics_motion.fgd @@ -7,6 +7,7 @@ ] setgravityscale(float) : "Gravity Scale" : 1.0 : "Scale gravity of objects in the field by this amount." + setgravitydirection(vector) : "Gravity Direction" : "0 0 0" : "Orient gravity for objects in the field towards this direction." setadditionalairdensity(float) : "Additional air density for drag" : 0 setvelocitylimit(float) : "Velocity Limit" : 0.0 : "Max velocity in field (0 disables)" setvelocitylimitdelta(float) : "Velocity Limit Force" : 0.0 : "Max amount to reduce velocity per second when it exceeds the velocity limit (0 disables)" From 4717b1fbeae002208819e9611ae9f4669f73df2b Mon Sep 17 00:00:00 2001 From: l3ops Date: Sat, 24 Feb 2024 17:53:21 +0100 Subject: [PATCH 2/5] Add inputs to change the gravity vector to relevant entities --- fgd/bases/BaseDustParticleSpawner.fgd | 1 + fgd/brush/trigger/trigger_gravity.fgd | 2 ++ fgd/brush/trigger/trigger_vphysics_motion.fgd | 1 + 3 files changed, 4 insertions(+) diff --git a/fgd/bases/BaseDustParticleSpawner.fgd b/fgd/bases/BaseDustParticleSpawner.fgd index 241034678..032eaff6e 100644 --- a/fgd/bases/BaseDustParticleSpawner.fgd +++ b/fgd/bases/BaseDustParticleSpawner.fgd @@ -20,4 +20,5 @@ // Inputs input TurnOn(void) : "Turn on." input TurnOff(void) : "Turn off." + input SetFallDirection(vector) : "Update the particle fall direction." ] diff --git a/fgd/brush/trigger/trigger_gravity.fgd b/fgd/brush/trigger/trigger_gravity.fgd index 8578a68a1..7bdbd687f 100644 --- a/fgd/brush/trigger/trigger_gravity.fgd +++ b/fgd/brush/trigger/trigger_gravity.fgd @@ -4,4 +4,6 @@ gravity(float) : "Gravity (0-1)" : 1 persist(boolean) : "Persist" : 0 : "Whether the gravity change persists. A setting of 0 will reset gravity to default on exiting. 1 will persist and thus act like how it did in older games like TF2." gravityvector(vector) : "Gravity Vector (X Y Z)" : "0 0 0" : "Override the gravity vector of players touching the volume to this direction." + + input SetGravityDirection(vector) : "Update the gravity vector." ] diff --git a/fgd/brush/trigger/trigger_vphysics_motion.fgd b/fgd/brush/trigger/trigger_vphysics_motion.fgd index ae76749f8..76fb2cd92 100644 --- a/fgd/brush/trigger/trigger_vphysics_motion.fgd +++ b/fgd/brush/trigger/trigger_vphysics_motion.fgd @@ -33,4 +33,5 @@ input SetAngVelocityLimit(float) : "Max angular velocity in field." input SetAngVelocityScale(float) : "Angular Velocity scale/drag" input SetLinearForce(float) : "Linear force (0 disables)" + input SetGravityDirection(vector) : "Update the gravity direction." ] From b00df399f1a957483e99150abbf593fb56ef36cb Mon Sep 17 00:00:00 2001 From: leops Date: Sun, 7 Apr 2024 17:38:47 +0200 Subject: [PATCH 3/5] Add the DisableAirControl property to trigger_vphysics_motion --- fgd/brush/trigger/trigger_vphysics_motion.fgd | 1 + 1 file changed, 1 insertion(+) diff --git a/fgd/brush/trigger/trigger_vphysics_motion.fgd b/fgd/brush/trigger/trigger_vphysics_motion.fgd index 76fb2cd92..aeb6b32a7 100644 --- a/fgd/brush/trigger/trigger_vphysics_motion.fgd +++ b/fgd/brush/trigger/trigger_vphysics_motion.fgd @@ -8,6 +8,7 @@ setgravityscale(float) : "Gravity Scale" : 1.0 : "Scale gravity of objects in the field by this amount." setgravitydirection(vector) : "Gravity Direction" : "0 0 0" : "Orient gravity for objects in the field towards this direction." + disableaircontrol(boolean) : "Disable Air Control" : 1 : "Disable air control for players touching this volume." setadditionalairdensity(float) : "Additional air density for drag" : 0 setvelocitylimit(float) : "Velocity Limit" : 0.0 : "Max velocity in field (0 disables)" setvelocitylimitdelta(float) : "Velocity Limit Force" : 0.0 : "Max amount to reduce velocity per second when it exceeds the velocity limit (0 disables)" From 2c1376b85f9b704f48fff21d3b46f9ed88efcd49 Mon Sep 17 00:00:00 2001 From: "leo-paul.couturier" Date: Thu, 18 Apr 2024 14:45:15 +0200 Subject: [PATCH 4/5] Add second particle color to func_dust --- fgd/bases/BaseDustParticleSpawner.fgd | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/fgd/bases/BaseDustParticleSpawner.fgd b/fgd/bases/BaseDustParticleSpawner.fgd index 032eaff6e..6c7b94215 100644 --- a/fgd/bases/BaseDustParticleSpawner.fgd +++ b/fgd/bases/BaseDustParticleSpawner.fgd @@ -3,7 +3,8 @@ = BaseDustParticleSpawner [ startdisabled(boolean) : "Start Disabled" : 0 - color(color255) : "Particle Color (R G B)" : "255 255 255" + color(color255) : "Start Particle Color (R G B)" : "255 255 255" + color2(color255) : "End Particle Color (R G B)" : "255 255 255" spawnrate(integer) : "Particle Per Second" : 40 : "Number of particles to spawn, per second." speedmax(integer) : "Maximum Particle Speed" : 13 : "Maximum speed that the particles can move after spawning." fallspeed(integer) : "Particle Fall Speed" : 0 : "How fast the particles fall to the ground. This value is subtracted from the particle speed in the Z-axis only." From 89e0c9e78161c5d50ee527d824a4d3bdb3c96864 Mon Sep 17 00:00:00 2001 From: leops Date: Tue, 16 Jul 2024 22:33:11 +0200 Subject: [PATCH 5/5] Change gravity direction from vector to angles --- fgd/brush/trigger/trigger_gravity.fgd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fgd/brush/trigger/trigger_gravity.fgd b/fgd/brush/trigger/trigger_gravity.fgd index 7bdbd687f..13a6e084a 100644 --- a/fgd/brush/trigger/trigger_gravity.fgd +++ b/fgd/brush/trigger/trigger_gravity.fgd @@ -3,7 +3,7 @@ [ gravity(float) : "Gravity (0-1)" : 1 persist(boolean) : "Persist" : 0 : "Whether the gravity change persists. A setting of 0 will reset gravity to default on exiting. 1 will persist and thus act like how it did in older games like TF2." - gravityvector(vector) : "Gravity Vector (X Y Z)" : "0 0 0" : "Override the gravity vector of players touching the volume to this direction." + gravityvector(angle) : "Gravity Direction" : "90 0 0" : "Override the gravity vector of players and paint blobs touching the volume to this direction." input SetGravityDirection(vector) : "Update the gravity vector." ]