Sennep
Junior Member
Posts: 47
Threads: 6
Joined: Apr 2011
Reputation:
0
|
Whats wrong with my script?
Hi!
This is a part of my script:
void OnStart()
{
AddUseItemCallback("", "bedroomkey", "mansion_1", "UsedKeyOnDoor", true);
AddEntityCollideCallback("player", "area_darkmusic", "PlayDarkMusic", true, 1);
}
void PlayDarkMusic(string &in asParent, string &in asChild, int alState)
{
PlayMusic("04_amb.ogg", true, 1.0f, 0, 0, true);
SetEntityActive("servant_grunt_1", true);
}
But there's something wrong with it. What happens is, the Grunt stays inactive and the music doesn't play.
Can you spot the bug?
Oh, and ignore the AddUseItemCallback.
|
|
05-16-2011, 02:24 PM |
|
Roenlond
Senior Member
Posts: 331
Threads: 3
Joined: Apr 2011
Reputation:
0
|
RE: Whats wrong with my script?
AddEntityCollideCallback("Player", "area_darkmusic", "PlayDarkMusic", true, 1);
There's your issue. It should be capitalized.
|
|
05-16-2011, 02:31 PM |
|
Sennep
Junior Member
Posts: 47
Threads: 6
Joined: Apr 2011
Reputation:
0
|
RE: Whats wrong with my script?
Oh.. Well that was pretty simple.
Thanks for the help!
|
|
05-16-2011, 02:33 PM |
|
Roenlond
Senior Member
Posts: 331
Threads: 3
Joined: Apr 2011
Reputation:
0
|
RE: Whats wrong with my script?
Most errors are simple to solve once you spot them
|
|
05-16-2011, 02:34 PM |
|
Sennep
Junior Member
Posts: 47
Threads: 6
Joined: Apr 2011
Reputation:
0
|
RE: Whats wrong with my script?
heh yeah
|
|
05-16-2011, 02:43 PM |
|
Sennep
Junior Member
Posts: 47
Threads: 6
Joined: Apr 2011
Reputation:
0
|
RE: Whats wrong with my script?
Again i have a script question (is there a thread for that?).
void OnStart()
{
AddUseItemCallback("", "bedroomkey", "mansion_1", "UsedKeyOnDoor", true);
AddEntityCollideCallback("Player", "area_darkmusic", "PlayDarkMusic", false, 1);
AddEntityCollideCallback("Player", "area_darkmusic", "StopDarkMusic", false, -1);
}
void StopDarkMusic(string &in asParent, string &in asChild, int alState)
{
StopMusic(3, 0);
}
void PlayDarkMusic(string &in asParent, string &in asChild, int alState)
{
PlayMusic("04_amb.ogg", true, 1.0f, 3, 0, true);
}
That is the beginning of my script. The point is that i want to have music, but only when you are in a special area. The music doesn't go away when you exit area.
|
|
05-16-2011, 04:28 PM |
|
MrBigzy
Senior Member
Posts: 616
Threads: 18
Joined: Mar 2011
Reputation:
8
|
RE: Whats wrong with my script?
I assume the script area is large and takes up the whole room? Actually, you can't set the callback for the same area twice. Make two separate areas.
(This post was last modified: 05-16-2011, 08:04 PM by MrBigzy.)
|
|
05-16-2011, 08:02 PM |
|
Kyle
Posting Freak
Posts: 911
Threads: 36
Joined: Sep 2010
Reputation:
7
|
RE: Whats wrong with my script?
You could do this, but put the area at where the player will enter/exit the room:
void OnStart()
{
AddEntityCollideCallback("Player", "area_darkmusic", "PlayDarkMusic", false, 1);
}
void PlayDarkMusic(string &in asParent, string &in asChild, int alState)
{
PlayMusic("04_amb.ogg", true, 1, 3, 0, true);
AddTimer("", 2, "Func01");
}
void Func01(string &in asTimer)
{
AddEntityCollideCallback("Player", "area_darkmusic", "StopDarkMusic", false, 1);
}
void StopDarkMusic(string &in asParent, string &in asChild, int alState)
{
StopMusic(3, 0);
}
You can further modify the script to where it is impossible for the music to still play when the player leaves the area.
|
|
05-16-2011, 11:03 PM |
|
Sennep
Junior Member
Posts: 47
Threads: 6
Joined: Apr 2011
Reputation:
0
|
RE: Whats wrong with my script?
Hm. Didn't know you couldn't set two callbacks for one area. But its working now. Thanks!
(This post was last modified: 05-17-2011, 12:44 PM by Sennep.)
|
|
05-17-2011, 12:44 PM |
|
Tanshaydar
From Beyond
Posts: 3,085
Threads: 17
Joined: Mar 2009
Reputation:
67
|
RE: Whats wrong with my script?
Instead, you can use 'alState's to determine when player enters or escapes from the area and use them as intended.
if( alState == 1) -> This is for entering
if( alState == -1) -> This is for escaping
if( alState == 0) -> This is for both
|
|
05-17-2011, 12:50 PM |
|
|