(02-01-2012, 08:03 PM)SilentStriker Wrote: You use a
SetEntityPlayerInteractCallback(string& asName, string& asCallback, bool abRemoveOnInteraction);
then in the void you use
StartPlayerLookAt(string& asEntityName, float afSpeedMul, float afMaxSpeed, string& asAtTargetCallback);
and AddTimer
(string& asName, float afTime, string& asFunction);
then on the void from the timer you use
SetMessage(string& asTextCategory, string& asTextEntry, float afTime);
then maby another timer and then in the other timer void you use
StartCredits(string& asMusic, bool abLoopMusic, string& asTextCat, string& asTextEntry, int alEndNum);
void OnStart()
{
SetEntityPlayerInteractCallback("NAMEOFENTITY", "NAMEOFCALLBACK", true);
}
void NAMEOFCALLBACK(string &in asEntity)
{
StartPlayerLookAt("NAMEOFWHATHESHOULDLOOKAT", 3, 5, "");
AddTimer("", 1, "Message_func")
}
void Message_func(string &in asTimer)
{
SetMessage("CATEGORY", "ENTRY", 2);
AddTimer("", 2, "CreditStart);
}
void CreditStart(string &in asTimer)
{
StartCredits("NAMEOFMUSIC.ogg", LOOP? true or false, string& asTextCat, string& asTextEntry, int alEndNum);
//Starts the end credits screen. asMusic - the music to play (including .ogg)
abLoopMusic - determines whether the music should loop
asTextCat - the category to be used in the .lang file (must be “Ending”)
asTextEntry - the entry in the .lang file (must be “MainCredits”)
alEndNum - Amnesia has 3 different endings and displays a code at the bottom. Determines which code is displayed. 0-2 will display codes, any other integer will not.//
}
Ok,lets test!
Aww not working.Crash report says something about unexpected end of file. Heres my hps file
////////////////////////////
// Run when the map starts
void OnStart()
{
AddUseItemCallback("", "And", "Locked", "KeyOnDoor", true);
SetEntityCallbackFunc("And", "OnPickup");
SetEntityCallbackFunc("Antidote", "OnPickup2");
SetEntityPlayerInteractCallback("Antidote", "Win", true);
AddEntityCollideCallback("Player", "Message_1", "Message1", true, 1);
AddEntityCollideCallback("Player", "End", "Message2", true, 1);
}
void Message1(string &in asChild, string &in asParent, int alState)
{
SetMessage("Messages", "Popup1", 0);
}
void Message2(string &in asChild, string &in asParent, int alState)
{
SetMessage("Messages", "Popup2", 0);
}
void OnPickup(string &in asEntity, string &in type)
{
SetEntityActive("grunt_1", true);
}
void KeyOnDoor(string &in asItem, string &in asEntity)
{
SetSwingDoorLocked("Locked", false, true);
PlaySoundAtEntity("", "explosion_rock_large.snt", "Locked", 0, false);
RemoveItem("And");
}
void OnPickup2(string &in asEntity, string &in type)
{
SetEntityActive("Master", true);
}
void Win(string &in asEntity)
{
StartPlayerLookAt("Master", 3, 5, "");
AddTimer("", 1, "Message_func")
}
void Message_func(string &in asTimer)
{
SetMessage("Messages", "Popup3", 2);
AddTimer("", 2, "CreditStart);
}
void CreditStart(string &in asTimer)
{
StartCredits("ending_daniel.ogg", true, , "Ending", 1);
}
////////////////////////////
// Run when entering map
void OnEnter()
{
}
////////////////////////////
// Run when leaving map
void OnLeave()
{
}