Hooumeri
Member
Posts: 57
Threads: 11
Joined: Oct 2010
Reputation:
0
|
Lantern script
Hey.
I'm trying to make a script, which makes some grunts activated when the lantern is activated. When ever the lantern is not activated, the grunts are not active.
I tried a script (if HasItem....) but I couldnt get it to work. Could someone please help in creating it?
I'm calling the area which triggers this action "LightsOutArea_01" So when ever inside the area, this happens
The grunts are from servant_brute_1 to servant_brute_13.
I'm calling the area which brings everything to normal "LightsBackArea_01"
|
|
10-21-2010, 08:00 PM |
|
Everlone
Member
Posts: 178
Threads: 11
Joined: Oct 2010
Reputation:
2
|
RE: Lantern script
Why you write a script? You can make them very easy. open the model editor then the path:
Models/hand object/lantern and open the lantern model. there you add the sound and choose the configuration you will. save it and its ready
for more help, ask me
|
|
10-21-2010, 08:26 PM |
|
Pandemoneus
Senior Member
Posts: 328
Threads: 2
Joined: Sep 2010
Reputation:
0
|
RE: Lantern script
OnStart()
{
AddEntityCollideCallback("Player", "AreaNameHere", "GruntLightEventOn", true, 1);
AddEntityCollideCallback("Player", "AreaNameHere", "GruntLightEventOff", true, 1);
}
void GruntLightEventOn(string &in asParent, string &in asChild, int alState)
{
AddTimer("", 0.1f, "GruntLightEvent");
}
void GruntLightEventOff(string &in asParent, string &in asChild, int alState)
{
RemoveTimer("GruntLightEvent");
}
void GruntLightEvent(string &in asTimer)
{
if(GetLanternActive() == true) {
for(int i=1;i<13;i++) {
SetEntityActive("servant_brute_" + i, true);
}
}
else {
for(int i=1;i<13;i++) {
SetEntityActive("servant_brute_" + i, false);
}
}
AddTimer("", 0.1f, "GruntLightEvent");
}
Something like that.
|
|
10-21-2010, 08:33 PM |
|
Everlone
Member
Posts: 178
Threads: 11
Joined: Oct 2010
Reputation:
2
|
RE: Lantern script
change my way i change the sound in one minute. my lantern whisper it was a test ^^
|
|
10-21-2010, 08:48 PM |
|
Pandemoneus
Senior Member
Posts: 328
Threads: 2
Joined: Sep 2010
Reputation:
0
|
RE: Lantern script
Everlone, I don't think you get what he wants to do.
He wants monsters active when he holds his latern and inactive when not.
He doesn't want to edit any sounds.
|
|
10-21-2010, 09:01 PM |
|
Everlone
Member
Posts: 178
Threads: 11
Joined: Oct 2010
Reputation:
2
|
RE: Lantern script
oh okay ^^ sorry
|
|
10-21-2010, 09:15 PM |
|
Hooumeri
Member
Posts: 57
Threads: 11
Joined: Oct 2010
Reputation:
0
|
RE: Lantern script
(10-21-2010, 08:33 PM)Pandemoneus Wrote: OnStart()
{
AddEntityCollideCallback("Player", "AreaNameHere", "GruntLightEventOn", true, 1);
AddEntityCollideCallback("Player", "AreaNameHere", "GruntLightEventOff", true, 1);
}
void GruntLightEventOn(string &in asParent, string &in asChild, int alState)
{
AddTimer("", 0.1f, "GruntLightEvent");
}
void GruntLightEventOff(string &in asParent, string &in asChild, int alState)
{
RemoveTimer("GruntLightEvent");
}
void GruntLightEvent(string &in asTimer)
{
if(GetLanternActive() == true) {
for(int i=1;i<13;i++) {
SetEntityActive("servant_brute_" + i, true);
}
}
else {
for(int i=1;i<13;i++) {
SetEntityActive("servant_brute_" + i, false);
}
}
AddTimer("", 0.1f, "GruntLightEvent");
}
Something like that.
Couldnt get this to work. If someone could possibly try it themselves and post a solution? plz
|
|
10-22-2010, 02:04 PM |
|
house
Member
Posts: 195
Threads: 11
Joined: Oct 2010
Reputation:
1
|
RE: Lantern script
You ALMOST have a problem like me. Exept, I'm trying to make a door unlock when you PICK UP the lantern. I could never get that to work.
|
|
10-22-2010, 03:12 PM |
|
ThePaSch
Member
Posts: 108
Threads: 11
Joined: Sep 2010
Reputation:
0
|
RE: Lantern script
(10-22-2010, 03:12 PM)house Wrote: You ALMOST have a problem like me. Exept, I'm trying to make a door unlock when you PICK UP the lantern. I could never get that to work.
*snip*
Sorry, didn't see your thread.
|
|
10-22-2010, 03:23 PM |
|
Mofo
Member
Posts: 71
Threads: 4
Joined: Sep 2010
Reputation:
2
|
RE: Lantern script
(10-22-2010, 03:12 PM)house Wrote: You ALMOST have a problem like me. Exept, I'm trying to make a door unlock when you PICK UP the lantern. I could never get that to work.
Open your map in the level editor and select the lantern. select the entity tab on the right side of the screen and add a callback funtion named: PickLantern.
Open the .HPS file and add the following lines:
void PickLantern(string &in asEntity, string &in asType)
{
SetSwingDoorLocked("your_door_here", false, false);
}
(If your door is a Level Door, change SetSwingDoorLocked("your_door_here", false, false); to SetLevelDoorLocked("your_door_here", false);
*EDIT*
Just noticed you had opened a thread about this. http://frictionalgames.com/forum/thread-5152.html
|
|
10-22-2010, 03:34 PM |
|
|