Frictional Games Forum (read-only)
[SCRIPT] engineers wont move ? - 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: [SCRIPT] engineers wont move ? (/thread-24992.html)



engineers wont move ? - lothabread - 04-04-2014

enemies engineer_2 and 3 wont patrol the halls guys, just as the title says, im pretty sure i've set em up right too. help ? Oh and i was wondering if it were possible to activate two enemies with one collide call back area ?

PHP Code:
////////////////////////////
// Run when starting game
void OnStart()
{
/////////////////////////////////////////////////////////////////////////////////////////
//Debug
    
if(ScriptDebugOn())
          {
               
GiveItemFromFile("lantern""lantern.ent");
               
SetPlayerLampOil(100.0f);
 
               for(
int i 0;10;i++)
               {
                    
GiveItemFromFile("tinderbox""tinderbox.ent");
               }
          }
///////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////
//Start Scene
    
ShowPlayerCrossHairIcons(false);
    
SetSanityDrainDisabled(true);
    
SetPlayerCrouching(true);
    
SetPlayerActive(false);
    
FadeOut(0);
    
AddTimer("StartGame"6.0f"IntroSequence");
////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////
//General
    
////////////////////////////////////////////////////////////////////////////////////////
}

///////////////////////////////////////////////////////////////////////////////////////
//Start Scene
void IntroSequence(string &in asTimer)
{
    
AddLocalVarInt("iIntroPart"1);
    
float partSpeed 0.5f;
    switch(
GetLocalVarInt("iIntroPart")) {
        case 
1:
            
MovePlayerHeadPos(0, -0.9f010.0f0.1f);
            
PlayGuiSound(""1.0f);
            
StartPlayerLookAt("AreaIntroLook_1"10.0f10.0f"");
            
FadePlayerRollTo(-50200200);
            
partSpeed 0.5f;
        break;
        
        case 
2:
            
StartPlayerLookAt("AreaIntroLook_1"1.0f1.0f"");
            
FadeIn(2.0f);
            
Manpig01();
            
engineer_2();
            
engineer_3();
            
partSpeed 3.0f;  
        break;
        
        case 
3:
            
StartPlayerLookAt("AreaIntroLook_2"1.0f1.0f"");
            
partSpeed 5.0f;
        break;
        
        case 
4:
            
StartPlayerLookAt("AreaIntroLook_3"1.0f1.0f"");
            
PlayGuiSound(""0.7f);
            
FadeOut(5.7f);
            
partSpeed 6.0f;
        break;
        
        case 
5:
            
StopPlayerLookAt();
            
StartPlayerLookAt("AreaIntroLook_4"20.0f20.0f"");
            
TeleportPlayer("PlayerDrag");
            
FadePlayerRollTo(70200200);
            
partSpeed 0.1f;
        break;
        
        case 
6:
            
StopPlayerLookAt();
            
SetEntityActive("engineer_1"false);
            
PlayGuiSound("joint_cage_slide_open"10.0f);
            
FadeIn(8.0f);
            
partSpeed 8.0f;
        break;
        
        case 
7:
            
AddTimer("drag"1.0f"Drag");
            
FadeOut(9.0f);
            
partSpeed 10.0f;
        break;
        
        case 
8:
            
RemoveTimer("drag");
            
partSpeed 2.0f;
        break;
        
        case 
9:
            
TeleportPlayer("PlayerStartArea_2");
            
FadeIn(5.0f);
            
StartPlayerLookAt("AreaIntroLook_5"20.0f20.0f"");
            
PlayGuiSound(""1.0f);
            
partSpeed 6.0f;
        break;
        
        case 
10:
            
FadeOut(2.0f);
            
PlayGuiSound(""1.0f);
            
partSpeed 4.0f;
        break;
        
        case 
11:
            
FadeIn(4.5f);
            
PlayGuiSound(""1.0f);
            
StopPlayerLookAt();
            
FadePlayerRollTo(02018);
            
MovePlayerHeadPos(0.00.00.00.50.1f);
            
partSpeed 5.0f;
        break;
        
        case 
12:
            
ShowPlayerCrossHairIcons(true);
            
SetPlayerCrouching(false);
            
SetPlayerActive(true);
            
partSpeed 0.01f;
        break;
    }
    
    if(
GetLocalVarInt("iIntroPart") < 13)    AddTimer("tmrIntro"partSpeed"IntroSequence");     
}

void Drag(string &in asTimer)
{
  
AddPlayerBodyForce(0010000false);
  
AddTimer(asTimer1.5f"Drag");
  
PlayGuiSound("Drag03.snt"1);
}

void Manpig01()
{
    
AddEnemyPatrolNode("engineer_1""PathNodeArea_1"0.0f"");
    
AddEnemyPatrolNode("engineer_1""PathNodeArea_2"0.0f"");
    
AddEnemyPatrolNode("engineer_1""PathNodeArea_3"0.0f"");


/////////////////////////////////////////////////////////////////////////////////////////////////
//General
/////////////////////////////////////////////////////////////////////////////////////////////////

void engineer_2()
{
    
AddEnemyPatrolNode("engineer_1""PathNodeArea_19"0.0f"");
    
AddEnemyPatrolNode("engineer_1""PathNodeArea_78"0.0f"");
    
AddEnemyPatrolNode("engineer_1""PathNodeArea_97"0.0f"");
    
AddEnemyPatrolNode("engineer_1""PathNodeArea_119"0.0f"");
    
AddEnemyPatrolNode("engineer_1""PathNodeArea_19"0.0f"");


void engineer_3()
{
    
AddEnemyPatrolNode("engineer_1""PathNodeArea_119"0.0f"");
    
AddEnemyPatrolNode("engineer_1""PathNodeArea_19"0.0f"");
    
AddEnemyPatrolNode("engineer_1""PathNodeArea_78"0.0f"");
    
AddEnemyPatrolNode("engineer_1""PathNodeArea_97"0.0f"");
    
AddEnemyPatrolNode("engineer_1""PathNodeArea_119"0.0f"");




RE: engineers wont move ? - Neelke - 04-04-2014

It might be better to call these pathnodes when the enemy is spawned or when the enemy has reached a certain area.


RE: engineers wont move ? - DnALANGE - 04-04-2014

What neeke said.
Try this for example :
PHP Code:
void Manpig01()
{
    
SetEntityActive("engineer_1"true); 
    
AddEnemyPatrolNode("engineer_1""PathNodeArea_1"0.0f"");
    
AddEnemyPatrolNode("engineer_1""PathNodeArea_2"0.0f"");
    
AddEnemyPatrolNode("engineer_1""PathNodeArea_3"0.0f"");

---
You can do this if this works for your map offcourse.
PHP Code:
case 6:
            
StopPlayerLookAt();
            
SetEntityActive("engineer_1"true);
            
SetEntityActive("engineer_2"true);
            
SetEntityActive("engineer_3"true);
            
PlayGuiSound("joint_cage_3lide_open"10.0f);
            
FadeIn(8.0f);
            
partSpeed 8.0f;
        break; 



RE: engineers wont move ? - lothabread - 04-04-2014

neither seemed to work sadly, they'll just stay in place until they see me, i'd like to add that these manpigs are in another section of the map altogether so i was wondering if the activation distance for them hand anything to do with it ?


RE: engineers wont move ? - Mudbill - 04-04-2014

Hm, it might. If the nodes are too far away, it might not know how to get there. I think it would at least try though. You should scatter some nodes around you map. You don't need to assign them in the script, the monsters will use them as guidelines to get to where they're supposed to go. Also try making sure the script is run after they have spawned. Perhaps that makes a difference.


RE: engineers wont move ? - lothabread - 04-05-2014

hmm well i have them set to active from in the editor and i do believe that i have placed the nodes a fair distance from eachother. but when i actually get to round the corner, there's the first pig just as he is waiting for me.