]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/common/triggers/target/speaker.qc
Rename triggers to mapobjects
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / triggers / target / speaker.qc
diff --git a/qcsrc/common/triggers/target/speaker.qc b/qcsrc/common/triggers/target/speaker.qc
deleted file mode 100644 (file)
index 11c9ad7..0000000
+++ /dev/null
@@ -1,138 +0,0 @@
-#include "speaker.qh"
-#ifdef SVQC
-// TODO add a way to do looped sounds with sound(); then complete this entity
-void target_speaker_use_off(entity this, entity actor, entity trigger);
-void target_speaker_use_activator(entity this, entity actor, entity trigger)
-{
-       if (!IS_REAL_CLIENT(actor))
-               return;
-       string snd;
-       if(substring(this.noise, 0, 1) == "*")
-       {
-               var .string sample = GetVoiceMessageSampleField(substring(this.noise, 1, -1));
-               if(GetPlayerSoundSampleField_notFound)
-                       snd = SND(Null);
-               else if(actor.(sample) == "")
-                       snd = SND(Null);
-               else
-               {
-                       tokenize_console(actor.(sample));
-                       float n;
-                       n = stof(argv(1));
-                       if(n > 0)
-                               snd = strcat(argv(0), ftos(floor(random() * n + 1)), ".wav"); // randomization
-                       else
-                               snd = strcat(argv(0), ".wav"); // randomization
-               }
-       }
-       else
-               snd = this.noise;
-       msg_entity = actor;
-       soundto(MSG_ONE, this, CH_TRIGGER, snd, VOL_BASE * this.volume, this.atten);
-}
-void target_speaker_use_on(entity this, entity actor, entity trigger)
-{
-       string snd;
-       if(substring(this.noise, 0, 1) == "*")
-       {
-               var .string sample = GetVoiceMessageSampleField(substring(this.noise, 1, -1));
-               if(GetPlayerSoundSampleField_notFound)
-                       snd = SND(Null);
-               else if(actor.(sample) == "")
-                       snd = SND(Null);
-               else
-               {
-                       tokenize_console(actor.(sample));
-                       float n;
-                       n = stof(argv(1));
-                       if(n > 0)
-                               snd = strcat(argv(0), ftos(floor(random() * n + 1)), ".wav"); // randomization
-                       else
-                               snd = strcat(argv(0), ".wav"); // randomization
-               }
-       }
-       else
-               snd = this.noise;
-       _sound(this, CH_TRIGGER_SINGLE, snd, VOL_BASE * this.volume, this.atten);
-       if(this.spawnflags & (SPEAKER_LOOPED_ON + SPEAKER_LOOPED_OFF))
-               this.use = target_speaker_use_off;
-}
-void target_speaker_use_off(entity this, entity actor, entity trigger)
-{
-       sound(this, CH_TRIGGER_SINGLE, SND_Null, VOL_BASE * this.volume, this.atten);
-       this.use = target_speaker_use_on;
-}
-void target_speaker_reset(entity this)
-{
-       if(this.spawnflags & SPEAKER_LOOPED_ON)
-       {
-               if(this.use == target_speaker_use_on)
-                       target_speaker_use_on(this, NULL, NULL);
-       }
-       else if(this.spawnflags & SPEAKER_LOOPED_OFF)
-       {
-               if(this.use == target_speaker_use_off)
-                       target_speaker_use_off(this, NULL, NULL);
-       }
-}
-
-spawnfunc(target_speaker)
-{
-       // TODO: "*" prefix to sound file name
-       // TODO: wait and random (just, HOW? random is not a field)
-       if(this.noise)
-               precache_sound (this.noise);
-
-       if(!this.atten && (this.spawnflags & SPEAKER_GLOBAL))
-       {
-               LOG_WARN("target_speaker uses legacy spawnflag GLOBAL (BIT(2)), please set atten to -1 instead");
-               this.atten = -1;
-       }
-
-       if(!this.atten)
-       {
-               IFTARGETED
-                       this.atten = ATTEN_NORM;
-               else
-                       this.atten = ATTEN_STATIC;
-       }
-       else if(this.atten < 0)
-               this.atten = 0;
-
-       if(!this.volume)
-               this.volume = 1;
-
-       IFTARGETED
-       {
-               if(this.spawnflags & SPEAKER_ACTIVATOR)
-                       this.use = target_speaker_use_activator;
-               else if(this.spawnflags & SPEAKER_LOOPED_ON)
-               {
-                       target_speaker_use_on(this, NULL, NULL);
-                       this.reset = target_speaker_reset;
-               }
-               else if(this.spawnflags & SPEAKER_LOOPED_OFF)
-               {
-                       this.use = target_speaker_use_on;
-                       this.reset = target_speaker_reset;
-               }
-               else
-                       this.use = target_speaker_use_on;
-       }
-       else if(this.spawnflags & SPEAKER_LOOPED_ON)
-       {
-               ambientsound (this.origin, this.noise, VOL_BASE * this.volume, this.atten);
-               delete(this);
-       }
-       else if(this.spawnflags & SPEAKER_LOOPED_OFF)
-       {
-               objerror(this, "This sound entity can never be activated");
-       }
-       else
-       {
-               // Quake/Nexuiz fallback
-               ambientsound (this.origin, this.noise, VOL_BASE * this.volume, this.atten);
-               delete(this);
-       }
-}
-#endif