Facebook Twitter YouTube Frictional Games | Forum | Privacy Policy | Dev Blog | Dev Wiki | Support | Gametee


Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Script Help Delay sound from playing
LDOriginal Offline
Junior Member

Posts: 35
Threads: 7
Joined: Oct 2014
Reputation: 0
#3
RE: Delay sound from playing

(02-03-2015, 04:06 PM)Mudbill Wrote: The timer function will run another set of code after it expires. It's quite simple.

If you want to run a script after 5 seconds of starting the map, here's an example snippet:

PHP Code: (Select All)
void OnStart()
{
    
AddTimer("timername"5.0f"TimerFunction");
}

void TimerFunction(string &in asTimer)
{
    
RunScript();


Use the AddTimer line to create a new timer. The first argument is the internal reference name for the timer. You can keep it blank for the most part, unless you need to remove the timer before it expires.

The second argument is the time until it expires (here 5 seconds).

The last argument is the function that will be called when it expires. Write a name here, then create that callback somewhere else in your script.

The callback must have the matching constructor parameters for a timer function (being string &in asTimer). Inside that block, run whatever lines you want to happen after the specified time. In your case, use the PlaySoundAtEntity one.

Getting "Error: Expected Data Type" Am i even close? lol

void OnStart()

{
AddTimer("timername", 5.0f, "PlaySound");
wakeUp();
PlaySoundAtEntity("", "insanity_imageflash01.snt", "Player", 1, false);
AddEntityCollideCallback("Player", "Musik", "CollideStartMusic", true, 1);
AddEntityCollideCallback("Player", "Flaska", "PlaySound", true, 1);
AddEntityCollideCallback("Player", "Ljud", "start", true, 1);
AddUseItemCallback("", "Key", "Door", "UseKeyOnDoor", true);
AddUseItemCallback("", "Nyckel", "Rumpa", "UseKeyOnDoor", true);
AddUseItemCallback("", "Tillskap", "Skap", "UseKeyOnDoor", true);

}

void UseKeyOnDoor(string &in asItem, string &in asEntity)
{
SetSwingDoorLocked(asEntity, false, true);
PlaySoundAtEntity("", "Unlock_door.snt", asEntity, 10, false);
RemoveItem(asItem);
}

void start(string &in asParent, string &in asChild, int alState)
{
PlaySoundAtEntity("", "general_piano01.snt", "Player", 1, false);
}

void PlaySound(string &in asParent, string &in asChild, int alState)
{
PlaySoundAtEntity("", "21_intro_scream.snt", "Player", 1, false);
}

void CollideStartMusic(string &in asParent, string &in asChild, int alState)
{
     PlayMusic("02_amb_safe.ogg", false, 1.0f, 0, 0, true);
}

void wakeUp () {
    FadeOut(0);     // Instantly fades the screen out. (Good for starting the game)
    FadeIn(30);      // Amount of seconds the fade in takes
    FadeImageTrailTo(8, 2);
    SetPlayerActive(false);    
    FadePlayerRollTo(50, 220, 220);                 // "Tilts" the players head
    FadeRadialBlurTo(0.15, 2);
    SetPlayerCrouching(true);              // Simulates being on the ground
    AddTimer("trig1", 11.0f, "beginStory");            // Change '11.0f' to however long you want the

'unconciousness' to last
}

void beginStory(string &in asTimer){
    ChangePlayerStateToNormal();
    SetPlayerActive(true);
    FadePlayerRollTo(0, 33, 33);        // Change all settings to defaults
    FadeRadialBlurTo(0.0, 1);
    FadeSepiaColorTo(0,200);
    SetPlayerCrouching(false);
    FadeImageTrailTo(0,1);
}

void TimerFunction("PlaySound")
{
     RunScript("PlaySoundAtEntity(string &in asTimer", "insanity_imageflash01.snt", "Player", 1, false);

}
02-03-2015, 04:46 PM
Find


Messages In This Thread
Delay sound from playing - by LDOriginal - 02-03-2015, 03:55 PM
RE: Delay sound from playing - by Mudbill - 02-03-2015, 04:06 PM
RE: Delay sound from playing - by LDOriginal - 02-03-2015, 04:46 PM
RE: Delay sound from playing - by Mudbill - 02-03-2015, 06:20 PM
RE: Delay sound from playing - by LDOriginal - 02-03-2015, 07:14 PM
RE: Delay sound from playing - by LDOriginal - 02-04-2015, 11:50 PM



Users browsing this thread: 5 Guest(s)