Frictional Games Forum (read-only)

Full Version: I need help with script!
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hi Smile
I just watched these Tutorials: http://www.youtube.com/playlist?list=PL6...ature=plcp
Now, I got a key to open a door and now I wanted to make another key spawn, after a Note is read, and when you take it an dead body appears (and should scare you) and you can open an Iron Maiden with the key.
Now Amnesia says:
"main (25,1): ERR : An function with the same name and parameters already exists.
main (102,1): ERR : An function with the same name and parameters already exists."

Can you halp me fix that?
This is my Script:



void OnEnter()
{
AddUseItemCallback("", "Key001", "Door001", "UsedKeyOnDoor", true);
AddUseItemCallback("", "Key002", "ironmaiden", "UsedKeyOnDoor", true);
AddEntityCollideCallback("Player", "ScriptArea_2", "horror1", true, 1);
AddEntityCollideCallback("Player", "ScriptArea_1", "TeleportingNakedGuy", true, 1);
AddEntityCollideCallback("Player", "ScriptArea_4", "TeleportingNakedGuy2", true, 1);
AddEntityCollideCallback("Player", "ScriptArea_5", "TeleportingNakedGuy3", true, 1);
AddEntityCollideCallback("Player", "ScriptArea_6", "TeleportingNakedGuy4", true, 1);
AddEntityCollideCallback("Player", "ScriptArea_3", "spawn1", true, 1);
SetEntityCallbackFunc("key_laboratory_1", "OnPickup");
SetEntityCallbackFunc("noteironmaiden", "OnPickup");
}


void UsedKeyOnDoor(string &in asItem, string &in asEntity)
{
SetSwingDoorLocked("Door001", false, false);
PlaySoundAtEntity("", "unlock_Key001.snt", "Door001", 0, false);
RemoveItem("Key001");
AddDebugMessage("KeyOnDoor", false);
}


void UsedKeyOnDoor(string &in asItem, string &in asEntity)
{
SetSwingDoorLocked("ironmaiden", false, false);
PlaySoundAtEntity("", "unlock_Key002.snt", "ironmaiden", 0, false);
RemoveItem("Key002");
AddDebugMessage("KeyOnDoor", false);
}
void horror1(string &in asParent, string &in asChild, int alState)
{
PlaySoundAtEntity("", "react_pant.snt", "Player", 0, false);
ShowEnemyPlayerPosition("servant_grunt_1");
GiveSanityDamage(25.0f, true);
SetEntityActive("servant_grunt_1", true);
}


void TeleportingNakedGuy(string &in asParent, string &in asChild, int alState)
{
PlaySoundAtEntity("", "spider_attack.snt", "Player", 0, false);
SetEntityActive("corpse_male_1", true);
AddPropForce("corpse_male_1", 0, 0, -10, "world");
AddPropImpulse("corpse_male_1", 0, 0, -10, "world");
AddBodyForce("corpse_male_1", 0, 0, -10, "world");
AddBodyImpulse("corpse_male_1", 0, 0, -10, "world");
GiveSanityDamage(25.0f, true);
}


void TeleportingNakedGuy2(string &in asParent, string &in asChild, int alState)
{
PlaySoundAtEntity("", "spider_attack.snt", "Player", 0, false);
SetEntityActive("corpse_male_2", true);
AddPropForce("corpse_male_2", 10, 0, 0, "world");
AddPropImpulse("corpse_male_2", 10, 0, 0, "world");
AddBodyForce("corpse_male_2", 10, 0, 0, "world");
AddBodyImpulse("corpse_male_2", 10, 0, 0, "world");
GiveSanityDamage(5.0f, true);
}


void TeleportingNakedGuy3(string &in asParent, string &in asChild, int alState)
{
PlaySoundAtEntity("", "spider_attack.snt", "Player", 0, false);
SetEntityActive("corpse_male_4", true);
AddPropForce("corpse_male_4", -10, 0, 0, "world");
AddPropImpulse("corpse_male_4", -10, 0, 0, "world");
AddBodyForce("corpse_male_3", -10, 0, 0, "world");
AddBodyImpulse("corpse_male_4", -10, 0, 0, "world");
GiveSanityDamage(5.0f, true);
}


void TeleportingNakedGuy4(string &in asParent, string &in asChild, int alState)
{
PlaySoundAtEntity("", "spider_attack.snt", "Player", 0, false);
SetEntityActive("corpse_male_3", true);
AddPropForce("corpse_male_3", 10, 0, 0, "world");
AddPropImpulse("corpse_male_3", 10, 0, 0, "world");
AddBodyForce("corpse_male_3", 10, 0, 0, "world");
AddBodyImpulse("corpse_male_3", 10, 0, 0, "world");
GiveSanityDamage(5.0f, true);
}


void spawn1(string &in asParent, string &in asChild, int alState)
{
PlaySoundAtEntity("", "react_pant.snt", "Player", 0, false);
SetEntityActive("hatch_metal01_1", true);
}


void OnPickup(string &in asEntity, string &in type)
{
PlaySoundAtEntity("", "react_pant.snt", "Player", 0, false);
PlaySoundAtEntity("", "00_faint.snt", "Player", 0, false);
SetEntityActive("corpse_male_5", true);
AddPropForce("corpse_male_5", 0, 0, -10, "world");
AddPropImpulse("corpse_male_5", 0, 0, -10, "world");
AddBodyForce("corpse_male_5", 0, 0, -10, "world");
AddBodyImpulse("corpse_male_5", 0, 0, -10, "world");
GiveSanityDamage(5.0f, true);
}


void OnPickup(string &in asEntity, string &in type)
{
PlaySoundAtEntity("", "react_pant.snt", "Player", 0, false);
PlaySoundAtEntity("", "00_faint.snt", "Player", 0, false);
SetEntityActive("Key002", true);
}


void OnLeave()
{

}
You had a few functions with the same name, I fixed it:


void OnEnter()
{
AddUseItemCallback("", "Key001", "Door001", "UsedKeyOnDoor", true);
AddUseItemCallback("", "Key002", "ironmaiden", "UsedKeyOnDoor2", true);
AddEntityCollideCallback("Player", "ScriptArea_2", "horror1", true, 1);
AddEntityCollideCallback("Player", "ScriptArea_1", "TeleportingNakedGuy", true, 1);
AddEntityCollideCallback("Player", "ScriptArea_4", "TeleportingNakedGuy2", true, 1);
AddEntityCollideCallback("Player", "ScriptArea_5", "TeleportingNakedGuy3", true, 1);
AddEntityCollideCallback("Player", "ScriptArea_6", "TeleportingNakedGuy4", true, 1);
AddEntityCollideCallback("Player", "ScriptArea_3", "spawn1", true, 1);
SetEntityCallbackFunc("key_laboratory_1", "OnPickup");
SetEntityCallbackFunc("noteironmaiden", "OnPickup2");
}


void UsedKeyOnDoor(string &in asItem, string &in asEntity)
{
SetSwingDoorLocked("Door001", false, false);
PlaySoundAtEntity("", "unlock_Key001.snt", "Door001", 0, false);
RemoveItem("Key001");
AddDebugMessage("KeyOnDoor", false);
}


void UsedKeyOnDoor2(string &in asItem, string &in asEntity)
{
SetSwingDoorLocked("ironmaiden", false, false);
PlaySoundAtEntity("", "unlock_Key002.snt", "ironmaiden", 0, false);
RemoveItem("Key002");
AddDebugMessage("KeyOnDoor", false);
}
void horror1(string &in asParent, string &in asChild, int alState)
{
PlaySoundAtEntity("", "react_pant.snt", "Player", 0, false);
ShowEnemyPlayerPosition("servant_grunt_1");
GiveSanityDamage(25.0f, true);
SetEntityActive("servant_grunt_1", true);
}


void TeleportingNakedGuy(string &in asParent, string &in asChild, int alState)
{
PlaySoundAtEntity("", "spider_attack.snt", "Player", 0, false);
SetEntityActive("corpse_male_1", true);
AddPropForce("corpse_male_1", 0, 0, -10, "world");
AddPropImpulse("corpse_male_1", 0, 0, -10, "world");
AddBodyForce("corpse_male_1", 0, 0, -10, "world");
AddBodyImpulse("corpse_male_1", 0, 0, -10, "world");
GiveSanityDamage(25.0f, true);
}


void TeleportingNakedGuy2(string &in asParent, string &in asChild, int alState)
{
PlaySoundAtEntity("", "spider_attack.snt", "Player", 0, false);
SetEntityActive("corpse_male_2", true);
AddPropForce("corpse_male_2", 10, 0, 0, "world");
AddPropImpulse("corpse_male_2", 10, 0, 0, "world");
AddBodyForce("corpse_male_2", 10, 0, 0, "world");
AddBodyImpulse("corpse_male_2", 10, 0, 0, "world");
GiveSanityDamage(5.0f, true);
}


void TeleportingNakedGuy3(string &in asParent, string &in asChild, int alState)
{
PlaySoundAtEntity("", "spider_attack.snt", "Player", 0, false);
SetEntityActive("corpse_male_4", true);
AddPropForce("corpse_male_4", -10, 0, 0, "world");
AddPropImpulse("corpse_male_4", -10, 0, 0, "world");
AddBodyForce("corpse_male_3", -10, 0, 0, "world");
AddBodyImpulse("corpse_male_4", -10, 0, 0, "world");
GiveSanityDamage(5.0f, true);
}


void TeleportingNakedGuy4(string &in asParent, string &in asChild, int alState)
{
PlaySoundAtEntity("", "spider_attack.snt", "Player", 0, false);
SetEntityActive("corpse_male_3", true);
AddPropForce("corpse_male_3", 10, 0, 0, "world");
AddPropImpulse("corpse_male_3", 10, 0, 0, "world");
AddBodyForce("corpse_male_3", 10, 0, 0, "world");
AddBodyImpulse("corpse_male_3", 10, 0, 0, "world");
GiveSanityDamage(5.0f, true);
}


void spawn1(string &in asParent, string &in asChild, int alState)
{
PlaySoundAtEntity("", "react_pant.snt", "Player", 0, false);
SetEntityActive("hatch_metal01_1", true);
}


void OnPickup(string &in asEntity, string &in type)
{
PlaySoundAtEntity("", "react_pant.snt", "Player", 0, false);
PlaySoundAtEntity("", "00_faint.snt", "Player", 0, false);
SetEntityActive("corpse_male_5", true);
AddPropForce("corpse_male_5", 0, 0, -10, "world");
AddPropImpulse("corpse_male_5", 0, 0, -10, "world");
AddBodyForce("corpse_male_5", 0, 0, -10, "world");
AddBodyImpulse("corpse_male_5", 0, 0, -10, "world");
GiveSanityDamage(5.0f, true);
}


void OnPickup2(string &in asEntity, string &in type)
{
PlaySoundAtEntity("", "react_pant.snt", "Player", 0, false);
PlaySoundAtEntity("", "00_faint.snt", "Player", 0, false);
SetEntityActive("Key002", true);
}


void OnLeave()
{

}
Thank you! Ok I saw what I done wrong xD
I don't know why I didn't see it... Thank you SOOO much!
Smile