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
Lantern script
Hooumeri Offline
Member

Posts: 57
Threads: 11
Joined: Oct 2010
Reputation: 0
#1
Heart  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
Find
Everlone Offline
Member

Posts: 178
Threads: 11
Joined: Oct 2010
Reputation: 2
#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 Wink

for more help, ask me Wink

[Image: 555233.jpg]
10-21-2010, 08:26 PM
Find
Pandemoneus Offline
Senior Member

Posts: 328
Threads: 2
Joined: Sep 2010
Reputation: 0
#3
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
Find
Everlone Offline
Member

Posts: 178
Threads: 11
Joined: Oct 2010
Reputation: 2
#4
RE: Lantern script

change my way Wink i change the sound in one minute. my lantern whisper Tongue it was a test ^^

[Image: 555233.jpg]
10-21-2010, 08:48 PM
Find
Pandemoneus Offline
Senior Member

Posts: 328
Threads: 2
Joined: Sep 2010
Reputation: 0
#5
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
Find
Everlone Offline
Member

Posts: 178
Threads: 11
Joined: Oct 2010
Reputation: 2
#6
RE: Lantern script

oh okay ^^ sorry

[Image: 555233.jpg]
10-21-2010, 09:15 PM
Find
Hooumeri Offline
Member

Posts: 57
Threads: 11
Joined: Oct 2010
Reputation: 0
#7
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 Sad
10-22-2010, 02:04 PM
Find
house Offline
Member

Posts: 195
Threads: 11
Joined: Oct 2010
Reputation: 1
#8
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. Sad
10-22-2010, 03:12 PM
Find
ThePaSch Offline
Member

Posts: 108
Threads: 11
Joined: Sep 2010
Reputation: 0
#9
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. Sad

*snip*
Sorry, didn't see your thread.
10-22-2010, 03:23 PM
Find
Mofo Offline
Member

Posts: 71
Threads: 4
Joined: Sep 2010
Reputation: 2
#10
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. Sad

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.

[Image: 15ygi9f.jpg]


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
Find




Users browsing this thread: 2 Guest(s)