Frictional Games Forum (read-only)
still having script problem and a simple question - 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: still having script problem and a simple question (/thread-17228.html)

Pages: 1 2


still having script problem and a simple question - zecuro - 07-24-2012

this is a 2 question
hey everyone heres my hole hps file....when i try to run amnesia they tell me that there still something wrong my my hps file well one of my script
can someone check it out
void OnStart()
{
AddEntityCollideCallback("Player", "explode_scare", "Explode", true, 1);
AddUseItemCallback("", "key_1", "mansion_3", "FUNCTION", true);
}
void FUNCTION(string &in asItem, string &in asEntity)
{
SetSwingDoorLocked(asEntity, false, true);
PlaySoundAtEntity("", "unlock_door", asEntity, 0, false);
RemoveItem(asItem);
}
void Explode(string &in asParent, string &in asChild, int alState)
{
SetPropHealth("pot_explode", 0);
}
void OnEnter()
{
AddEntityCollideCallback("Player", "bang", "func_slam", true, 1);
}
void OnLeave()
{
}
void func_slam(string &in asParent, string &in asChild, int alState)
{
SetSwingDoorClosed("mansion_2", true, true);
PlaySoundAtEntity("", "react_breath_slow.snt", "Player", 0, false);
PlaySoundAtEntity("", "react_scare", "Player", 0, false);
PlaySoundAtEntity("", "close_door.snt", "Player", 0, false);
GiveSanityDamage(5.0f, true);
}
void OnStart()
{
FadeOut(0);
FadeIn(5);
SetPlayerActive(false);
SetPlayerCrouching(true);
SetInventoryDisabled(true);
MovePlayerHeadPos(0, -2, 0, 2, -2);
StartPlayerLookAt("ScriptArea_1", 10, 10, "");
AddTimer("T1", 5.5, "TimerFunc");
AddTimer("T2", 10, "TimerFunc");
AddTimer("T3", 13.5, "TimerFunc");
AddTimer("T4", 16, "TimerFunc");
}
void TimerFunc(string &in asTimer)
{
string x = asTimer;
if (x == "T1")
{
FadeOut(4);
PlaySoundAtEntity("", "react_breath_slow.snt", "Player", 0, false);
}
else if (x == "T2")
{
FadeIn(3);
}
else if (x == "T3")
{
FadeOut(2);
StopPlayerLookAt();
PlaySoundAtEntity("", "react_breath_slow.snt", "Player", 0, false);
MovePlayerHeadPos(0, 2, 0, 2, 2);
}
else if (x == "T4")
{
FadeIn(2);
SetPlayerActive(true);
SetPlayerCrouching(false);
SetInventoryDisabled(false);
PlaySoundAtEntity("", "react_breath.snt", "Player", 0, false);
}
}
and the second question is is there a tutorial on how to add a sound effect when picking up a note ot an item
PLZ HElP


RE: still having script problem and a simple question - Adny - 07-24-2012

You have 2 "void OnStart()". There only needs to be one. Also, all callbacks should be under void OnStart() as well.

As for your issue with the item/note + sounds, use this callback:

SetEntityPlayerInteractCallback("NAMEOFITEM", "NAMEOFFUNCTION", true);


The callback syntax for this function is "(string &in asEntity)'

Hope that helped.


RE: still having script problem and a simple question - zecuro - 07-24-2012

like this !!!
void OnStart()
{
AddEntityCollideCallback("Player", "explode_scare", "Explode", true, 1);
AddUseItemCallback("", "key_1", "mansion_3", "FUNCTION", true);
}
void FUNCTION(string &in asItem, string &in asEntity)
{
SetSwingDoorLocked(asEntity, false, true);
PlaySoundAtEntity("", "unlock_door", asEntity, 0, false);
RemoveItem(asItem);
}
void Explode(string &in asParent, string &in asChild, int alState)
{
SetPropHealth("pot_explode", 0);
}
{
FadeOut(0);
FadeIn(5);
SetPlayerActive(false);
SetPlayerCrouching(true);
SetInventoryDisabled(true);
MovePlayerHeadPos(0, -2, 0, 2, -2);
StartPlayerLookAt("ScriptArea_1", 10, 10, "");
AddTimer("T1", 5.5, "TimerFunc");
AddTimer("T2", 10, "TimerFunc");
AddTimer("T3", 13.5, "TimerFunc");
AddTimer("T4", 16, "TimerFunc");
}
void TimerFunc(string &in asTimer)
{
string x = asTimer;
if (x == "T1")
{
FadeOut(4);
PlaySoundAtEntity("", "react_breath_slow.snt", "Player", 0, false);
}
else if (x == "T2")
{
FadeIn(3);
}
else if (x == "T3")
{
FadeOut(2);
StopPlayerLookAt();
PlaySoundAtEntity("", "react_breath_slow.snt", "Player", 0, false);
MovePlayerHeadPos(0, 2, 0, 2, 2);
}
else if (x == "T4")
{
FadeIn(2);
SetPlayerActive(true);
SetPlayerCrouching(false);
SetInventoryDisabled(false);
PlaySoundAtEntity("", "react_breath.snt", "Player", 0, false);
}
void OnEnter()
{
AddEntityCollideCallback("Player", "bang", "func_slam", true, 1);
}
void OnLeave()
{
}
void func_slam(string &in asParent, string &in asChild, int alState)
{
SetSwingDoorClosed("mansion_2", true, true);
PlaySoundAtEntity("", "react_breath_slow.snt", "Player", 0, false);
PlaySoundAtEntity("", "react_scare", "Player", 0, false);
PlaySoundAtEntity("", "close_door.snt", "Player", 0, false);
GiveSanityDamage(5.0f, true);
}
}


RE: still having script problem and a simple question - zecuro - 07-24-2012

i totaly think its something at the begining of the script


RE: still having script problem and a simple question - Your Computer - 07-24-2012

Removing function headers doesn't solve the problem but adds to it. If you remove the function header simply because you have a duplicate function declaration, you're left with the body dangling, attached to nothing.

PHP Code:
void OnStart()
{
    
AddEntityCollideCallback("Player""explode_scare""Explode"true1);
    
AddUseItemCallback("""key_1""mansion_3""FUNCTION"true);

    
FadeOut(0);
    
FadeIn(5);
    
SetPlayerActive(false);
    
SetPlayerCrouching(true);
    
SetInventoryDisabled(true);
    
MovePlayerHeadPos(0, -202, -2);
    
StartPlayerLookAt("ScriptArea_1"1010"");
    
AddTimer("T1"5.5"TimerFunc");
    
AddTimer("T2"10"TimerFunc");
    
AddTimer("T3"13.5"TimerFunc");
    
AddTimer("T4"16"TimerFunc");
}

void FUNCTION(string &in asItemstring &in asEntity)
{
    
SetSwingDoorLocked(asEntityfalsetrue);
    
PlaySoundAtEntity("""unlock_door"asEntity0false);
    
RemoveItem(asItem);
}

void Explode(string &in asParentstring &in asChildint alState)
{
    
SetPropHealth("pot_explode"0);
}

void TimerFunc(string &in asTimer)
{
    
string x asTimer;
    
    if (
== "T1")
    {
        
FadeOut(4);
        
PlaySoundAtEntity("""react_breath_slow.snt""Player"0false);
    }
    
    else if (
== "T2")
    {
        
FadeIn(3);
    }
    
    else if (
== "T3")
    {
        
FadeOut(2);
        
StopPlayerLookAt();
        
PlaySoundAtEntity("""react_breath_slow.snt""Player"0false);
        
MovePlayerHeadPos(02022);
    }
    
    else if (
== "T4")
    {
        
FadeIn(2);
        
SetPlayerActive(true);
        
SetPlayerCrouching(false);
        
SetInventoryDisabled(false);
        
PlaySoundAtEntity("""react_breath.snt""Player"0false);
    }
}

void OnEnter()
{
    
AddEntityCollideCallback("Player""bang""func_slam"true1);
}

void OnLeave()
{
}

void func_slam(string &in asParentstring &in asChildint alState)
{
    
SetSwingDoorClosed("mansion_2"truetrue);
    
PlaySoundAtEntity("""react_breath_slow.snt""Player"0false);
    
PlaySoundAtEntity("""react_scare""Player"0false);
    
PlaySoundAtEntity("""close_door.snt""Player"0false);
    
GiveSanityDamage(5.0ftrue);




RE: still having script problem and a simple question - FlawlessHappiness - 07-24-2012

Show us what the error is


RE: still having script problem and a simple question - zecuro - 07-25-2012

(07-24-2012, 11:57 PM)beecake Wrote: Show us what the error is


well now i can enter the game but the player start un der the floor and he look like hes flying after help me out
and explain more what you did in the script i want to understand more


RE: still having script problem and a simple question - Cruzore - 07-25-2012

for the explaining: All you did was removing the function header(void OnStart()) and left all the commands of it inside nothing. They weren't in any function.
For the problem: Try moving your PlayerStartArea a bit higher.


RE: still having script problem and a simple question - zecuro - 07-25-2012

man it dosent work it look like i'm flying or something


RE: still having script problem and a simple question - Your Computer - 07-25-2012

(07-25-2012, 01:58 AM)zecuro Wrote: man it dosent work it look like i'm flying or something

Well, you did tell the script to move the player's head about 2 meters upward and never made it reset to its normal position.