Frictional Games Forum (read-only)

Full Version: New Key Problems
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Small new problem which will solve a lot of stress...

For every new key do i need a new ".hps" file? Because i tried adding the new key data underneath
with these commands, (this is what is in total)

void OnStart()
{
AddUseItemCallback("", "studykey_1", "mansion_2", "OPEN", true);
}

void OPEN(string &in asItem, string &in asEntity)
{
SetSwingDoorLocked("mansion_2", false, true);
PlaySoundAtEntity("", "unlock_door", "mansion_2", 0, false);
RemoveItem("studykey_1");
}

void StudyDoorLocked(string &in entity)


{
if(GetSwingDoorLocked("mansion_2") == true)
{

SetMessage("Messages", "studyroomlocked", 0);

}
}



AddUseItemCallback("", "dungeonkey_2", "mansion_3", "OPEN", true);


void OPEN(string &in asItem, string &in asEntity)
{
SetSwingDoorLocked("mansion_3", false, true);
PlaySoundAtEntity("", "unlock_door", "mansion_3", 0, false);
RemoveItem("dungeonkey_2");
}

void DungeonDoorLocked(string &in entity)


{
if(GetSwingDoorLocked("mansion_") == true)
{

SetMessage("Messages", "dungeondoorlocked", 0);

}
}

and it says this,

Main (27,19) : ERR : Expected Identifier

(thats the line that looks like this "AddUseItemCallback("", "dungeonkey_2", "mansion_3", "OPEN", true);"

I tried putting {, and }, around it but it told me to get rid of them...

please help
Code:
void OnStart()
{
AddUseItemCallback("", "studykey_1", "mansion_2", "OPEN", true);AddUseItemCallback("", "dungeonkey_2", "mansion_3", "OPEN_somethingelse", true);
}

void OPEN(string &in asItem, string &in asEntity)
{
SetSwingDoorLocked("mansion_2", false, true);
PlaySoundAtEntity("", "unlock_door", "mansion_2", 0, false);
RemoveItem("studykey_1");
}

void StudyDoorLocked(string &in entity)


{
if(GetSwingDoorLocked("mansion_2") == true)
{

SetMessage("Messages", "studyroomlocked", 0);

}
}

void OPEN(string &in asItem, string &in asEntity)
{
SetSwingDoorLocked("mansion_3", false, true);
PlaySoundAtEntity("", "unlock_door", "mansion_3", 0, false);
RemoveItem("dungeonkey_2");
}

void DungeonDoorLocked(string &in entity)


{
if(GetSwingDoorLocked("mansion_") == true)
{

SetMessage("Messages", "dungeondoorlocked", 0);

}
}


No, you don't need a new .hps file for every single script. Wrong section to post this too.
(12-02-2012, 02:02 AM)The chaser Wrote: [ -> ]
Code:
void OnStart()
{
AddUseItemCallback("", "studykey_1", "mansion_2", "OPEN", true);AddUseItemCallback("", "dungeonkey_2", "mansion_3", "OPEN_somethingelse", true);
}

void OPEN(string &in asItem, string &in asEntity)
{
SetSwingDoorLocked("mansion_2", false, true);
PlaySoundAtEntity("", "unlock_door", "mansion_2", 0, false);
RemoveItem("studykey_1");
}

void StudyDoorLocked(string &in entity)


{
if(GetSwingDoorLocked("mansion_2") == true)
{

SetMessage("Messages", "studyroomlocked", 0);

}
}

void OPEN(string &in asItem, string &in asEntity)
{
SetSwingDoorLocked("mansion_3", false, true);
PlaySoundAtEntity("", "unlock_door", "mansion_3", 0, false);
RemoveItem("dungeonkey_2");
}

void DungeonDoorLocked(string &in entity)


{
if(GetSwingDoorLocked("mansion_") == true)
{

SetMessage("Messages", "dungeondoorlocked", 0);

}
}


No, you don't need a new .hps file for every single script. Wrong section to post this too.

do i actually say OPEN_(then the words)"somethingelse"?
AddUseItemCallback("", "dungeonkey_2", "mansion_3", "OPEN_somethingelse", true);


void OPEN_somethingelse(string &in asItem, string &in asEntity)
{
/////Door thing, uses keys, removes key, opens door, etc
}


You can check scripts in simple stories. There you'll see a lot of things.
Learn to use parameters, and you could use the same function for all key-door use-item callbacks.
This thread shows what parameters are. Very good explanation.