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


Thread Rating:
  • 1 Vote(s) - 4 Average
  • 1
  • 2
  • 3
  • 4
  • 5
How to make grunt respawn when player dies?
Zokrar Offline
Member

Posts: 85
Threads: 16
Joined: May 2013
Reputation: 0
#1
How to make grunt respawn when player dies?

At the moment, if my player dies, all the enemies in the map will not spawn when the player re-spawns. How do I make the enemies spawn every life?

06-23-2013, 02:44 AM
Find
Your Computer Offline
SCAN ME!

Posts: 3,456
Threads: 32
Joined: Jul 2011
Reputation: 235
#2
RE: How to make grunt respawn when player dies?

Using ResetProp on the monster followed by SetEntityActive should work.

Tutorials: From Noob to Pro
06-23-2013, 04:00 AM
Website Find
The chaser Offline
Posting Freak

Posts: 2,486
Threads: 76
Joined: Jun 2012
Reputation: 113
#3
RE: How to make grunt respawn when player dies?

Or you can make a checkpoint. If you post your script, I'll put it for you Smile

THE OTHERWORLD (WIP)
[Image: k6vbdhu]

Aculy iz dolan.
06-23-2013, 09:32 AM
Find
Zokrar Offline
Member

Posts: 85
Threads: 16
Joined: May 2013
Reputation: 0
#4
RE: How to make grunt respawn when player dies?

Ooh, ok sweet. Here's the script.

Edit: the formatting kind of went to shit. Want me to post the file to download, or can you work from this?

Spoiler below!
void OnStart(){    if(ScriptDebugOn())    {        GiveItemFromFile("lantern", "lantern.ent");    }            //****** ATTACKING GRUNTS *********        SetEntityActive("gruntTwo", false);    SetEntityPlayerLookAtCallback("gruntOne", "GruntOne", false);    SetEntityPlayerLookAtCallback("gruntTwo", "GruntTwo", false);    AddLocalVarInt("Grunt1State", 1);    AddLocalVarInt("Grunt2State", 1);        //****** ATTACKING GRUNTS *********            SetSkyBoxActive(true);       SetSkyBoxTexture("nighttime.dds");                     PlayMusic("ending_alexander.ogg", true, 0.30, 2.00, 5, true);}



//****** ATTACKING GRUNTS *********void GruntOne(string &in asEntity, int alState) {    if(alState == 1)     {         if(GetLocalVarInt("Grunt1State") == 1)        {              SetEntityActive("gruntOne", false);              CreateParticleSystemAtEntity("electro1", "ps_electro_charge.ps", "gruntOne", true);              PlaySoundAtEntity("grunt1", "15_bang.snt", "Player", 0, false);              AddTimer("GruntOneSpawnDelay", 3, "GruntOneTimer");              SetLocalVarInt("Grunt1State", 0);          }     }}
void GruntTwo(string &in asEntity, int alState) {    if(alState == 1)    {        if(GetLocalVarInt("Grunt2State") == 1)        {                SetEntityActive("gruntTwo", false);            CreateParticleSystemAtEntity("electro2", "ps_electro_charge.ps", "gruntTwo", true);            PlaySoundAtEntity("grunt2", "15_bang.snt", "Player", 0, false);            AddTimer("GruntTwoSpawnDelay", 3, "GruntTwoTimer");            SetLocalVarInt("Grunt2State", 0);        }    }}
void GruntOneTimer(string &in asTimer){    SetEntityActive("gruntTwo", true);    DestroyParticleSystem("electro2");    SetLocalVarInt("Grunt1State", 1);    ShowEnemyPlayerPosition("gruntTwo");}
void GruntTwoTimer(string &in asTimer){    ShowEnemyPlayerPosition("gruntOne");    SetEntityActive("gruntOne", true);    DestroyParticleSystem("electro1");    SetLocalVarInt("Grunt2State", 1);}//****** ATTACKING GRUNTS *********


(This post was last modified: 06-23-2013, 03:18 PM by Zokrar.)
06-23-2013, 03:16 PM
Find
The chaser Offline
Posting Freak

Posts: 2,486
Threads: 76
Joined: Jun 2012
Reputation: 113
#5
RE: How to make grunt respawn when player dies?

(06-23-2013, 03:16 PM)Zokrar Wrote: Ooh, ok sweet. Here's the script.

Edit: the formatting kind of went to shit. Want me to post the file to download, or can you work from this?

Spoiler below!
void OnStart(){    if(ScriptDebugOn())    {        GiveItemFromFile("lantern", "lantern.ent");    }            //****** ATTACKING GRUNTS *********        SetEntityActive("gruntTwo", false);    SetEntityPlayerLookAtCallback("gruntOne", "GruntOne", false);    SetEntityPlayerLookAtCallback("gruntTwo", "GruntTwo", false);    AddLocalVarInt("Grunt1State", 1);    AddLocalVarInt("Grunt2State", 1);        //****** ATTACKING GRUNTS *********            SetSkyBoxActive(true);       SetSkyBoxTexture("nighttime.dds");                     PlayMusic("ending_alexander.ogg", true, 0.30, 2.00, 5, true);}



//****** ATTACKING GRUNTS *********void GruntOne(string &in asEntity, int alState) {    if(alState == 1)     {         if(GetLocalVarInt("Grunt1State") == 1)        {              SetEntityActive("gruntOne", false);              CreateParticleSystemAtEntity("electro1", "ps_electro_charge.ps", "gruntOne", true);              PlaySoundAtEntity("grunt1", "15_bang.snt", "Player", 0, false);              AddTimer("GruntOneSpawnDelay", 3, "GruntOneTimer");              SetLocalVarInt("Grunt1State", 0);          }     }}
void GruntTwo(string &in asEntity, int alState) {    if(alState == 1)    {        if(GetLocalVarInt("Grunt2State") == 1)        {                SetEntityActive("gruntTwo", false);            CreateParticleSystemAtEntity("electro2", "ps_electro_charge.ps", "gruntTwo", true);            PlaySoundAtEntity("grunt2", "15_bang.snt", "Player", 0, false);            AddTimer("GruntTwoSpawnDelay", 3, "GruntTwoTimer");            SetLocalVarInt("Grunt2State", 0);        }    }}
void GruntOneTimer(string &in asTimer){    SetEntityActive("gruntTwo", true);    DestroyParticleSystem("electro2");    SetLocalVarInt("Grunt1State", 1);    ShowEnemyPlayerPosition("gruntTwo");}
void GruntTwoTimer(string &in asTimer){    ShowEnemyPlayerPosition("gruntOne");    SetEntityActive("gruntOne", true);    DestroyParticleSystem("electro1");    SetLocalVarInt("Grunt2State", 1);}//****** ATTACKING GRUNTS *********

Doesn't matter, got the script from your other thread:

Put a ScriptArea right before all your stuff happens.

void OnStart()
{
if(ScriptDebugOn())
{
GiveItemFromFile("lantern", "lantern.ent");
}

AddEntityCollideCallback(“Player”, “ScriptArea_1”, “Restart”, true, 1);

///The ScriptArea_1 is right before all your things happen

void Restart(string &in asParent, string &in asChild, int alState)
{
CheckPoint (“FirstCheckpoint”, “PlayerStartArea_1”, “Happening”, “DeathCategory”, “Deathtext”);
}

void Happening(string &in asName, int alCount)
{
SetEntityPlayerLookAtCallback("gruntOne", "GruntOne", false);
SetEntityPlayerLookAtCallback("gruntTwo", "GruntTwo", false);
AddLocalVarInt("Grunt1State", 1);
AddLocalVarInt("Grunt2State", 1);
}


//****** ATTACKING GRUNTS *********

SetEntityPlayerLookAtCallback("gruntOne", "GruntOne", false);
SetEntityPlayerLookAtCallback("gruntTwo", "GruntTwo", false);
AddLocalVarInt("Grunt1State", 1);
AddLocalVarInt("Grunt2State", 1);

//****** ATTACKING GRUNTS *********


SetSkyBoxActive(true);
SetSkyBoxTexture("nighttime.dds");


PlayMusic("ending_alexander.ogg", true, 0.30, 2.00, 5, true);
}




//****** ATTACKING GRUNTS *********
void GruntOne(string &in asEntity, int alState)
{
if(alState == 1)
{
if(GetLocalVarInt("Grunt1State") == 1)
{
SetEntityActive("gruntOne", false);
CreateParticleSystemAtEntity("electro1", "ps_electro_charge.ps", "gruntOne", true);
PlaySoundAtEntity("grunt1", "15_bang.snt", "Player", 0, false);
AddTimer("GruntOneSpawnDelay", 3, "GruntOneTimer");
SetLocalVarInt("Grunt1State", 0);
}
}
}

void GruntTwo(string &in asEntity, int alState)
{
if(alState == 1)
{
if(GetLocalVarInt("Grunt2State") == 1)
{
SetEntityActive("gruntTwo", false);
CreateParticleSystemAtEntity("electro2", "ps_electro_charge.ps", "gruntTwo", true);
PlaySoundAtEntity("grunt2", "15_bang.snt", "Player", 0, false);
AddTimer("GruntTwoSpawnDelay", 3, "GruntTwoTimer");
SetLocalVarInt("Grunt2State", 0);
}
}
}

void GruntOneTimer(string &in asTimer)
{
SetEntityActive("gruntTwo", true);
DestroyParticleSystem("electro2");
SetLocalVarInt("Grunt1State", 1);
}

void GruntTwoTimer(string &in asTimer)
{
SetEntityActive("gruntOne", true);
DestroyParticleSystem("electro1");
SetLocalVarInt("Grunt2State", 1);
}
//****** ATTACKING GRUNTS *********


This should work.

Maybe this helps you.

http://wiki.frictionalgames.com/hpl2/tut...riptarea_s

THE OTHERWORLD (WIP)
[Image: k6vbdhu]

Aculy iz dolan.
06-23-2013, 03:48 PM
Find




Users browsing this thread: 1 Guest(s)