Frictional Games Forum (read-only)
Monster doesn't spawn when "Script" area has collided with player (on custom story) - Printable Version

+- Frictional Games Forum (read-only) (https://www.frictionalgames.com/forum)
+-- Forum: Amnesia: The Dark Descent (https://www.frictionalgames.com/forum/forum-6.html)
+--- Forum: Custom Stories, TCs & Mods - Development (https://www.frictionalgames.com/forum/forum-38.html)
+---- Forum: Development Support (https://www.frictionalgames.com/forum/forum-39.html)
+---- Thread: Monster doesn't spawn when "Script" area has collided with player (on custom story) (/thread-16493.html)



Monster doesn't spawn when "Script" area has collided with player (on custom story) - ryuthebeardy - 06-25-2012

Recently, I have decided to make a custom story however I am new to the whole "C++" coding. So i kinda need help on this code below.
void OnStart()
{
AddEntityCollideCallback("Player", "PlayerCollide", "MonsterFunction", true, 1);
}
void MonsterFunction(string &in asParent, string &in asChild, int alState)
{
SetEntityActive("servant_grunt_1", true);
AddEnemyPatrolNode("servant_gsrunt_1", "PathNodeArea_1", 2, "");
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_2", 0, "");
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_3", 0, "");
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_4", 0, "");
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_5", 0, "");
}
void OnEnter
{

}
void OnLeave
{

}
Here is what I have done (If my description is confusing, i have a image of the area of my level),
[attachment=3049]
I have placed a monster behind a door (he is inactive), and when the player crosses the door, he should collide with the "Script area" named "PlayerCollide", in which should active the monster, however doesn't... Can anyone help?


RE: Monster doesn't spawn when "Script" area has collided with player - Your Computer - 06-25-2012

Looks like you may have named your HPS file incorrectly. I say this because the OnEnter and OnLeave functions are incomplete and should have caused a syntax error. The file name of the HPS should be "01 Mansion.hps". If it is that, then rename both the MAP and HPS file so that they lack spaces.


RE: Monster doesn't spawn when "Script" area has collided with player - ryuthebeardy - 06-25-2012

Hi, I have renamed the map name to "mansion_1.map" (and same for the .hsp file) however, when i run the game and collide with the script area, nothing happens. What do i try now?


Monster doesn't spawn when "Script" area has collided with player (on custom story) - Jagsrs28 - 06-25-2012

(06-25-2012, 07:25 PM)ryuthebeardy Wrote: Recently, I have decided to make a custom story however I am new to the whole "C++" coding. So i kinda need help on this code below.
void OnStart()
{
AddEntityCollideCallback("Player", "PlayerCollide", "MonsterFunction", true, 1);
}
void MonsterFunction(string &in asParent, string &in asChild, int alState)
{
SetEntityActive("servant_grunt_1", true);
AddEnemyPatrolNode("servant_gsrunt_1", "PathNodeArea_1", 2, "");
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_2", 0, "");
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_3", 0, "");
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_4", 0, "");
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_5", 0, "");
}
void OnEnter
{

}
void OnLeave
{

}
Here is what I have done (If my description is confusing, i have a image of the area of my level),

I have placed a monster behind a door (he is inactive), and when the player crosses the door, he should collide with the "Script area" named "PlayerCollide", in which should active the monster, however doesn't... Can anyone help?
SetEntityActive("servant_grunt_1", true);
AddEnemyPatrolNode("servant_gsrunt_1", "PathNodeArea_1", 2, "");
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_2", 0, "");
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_3", 0, "");
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_4", 0, "");
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_5", 0, "");

Change all of that to:

SetEntityActive("servant_grunt_1", true);
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_1", 2, "");
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_2", 0, "");
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_3", 0, "");
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_4", 0, "");
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_5", 0, "");

That's the only error I see. I am comparing it to mine.

Edit: I would also left click him and see if he is actually named servant_grunt_1
If not I recommend you change that.

Check the name of your Script Area and make sure it matches PlayerCollide.


Monster doesn't spawn when "Script" area has collided with player (on custom story) - ryuthebeardy - 06-26-2012

I have made sure that the monster's name is identical to the codes, and made sure that the Script area is the same in the code, however the event still doesn't happen. What do I try now?