| 
		
	
		| Datguy5   Senior Member
 
 Posts: 629
 Threads: 25
 Joined: Dec 2011
 Reputation: 
12
 | 
			| Make player look at entity? 
 
				I want that the player turns around and looks at entity when he picks up an item and after that a message appears in the screen saying something like 'You will never be free!' and then the credits would start.How would i do that?Heres my hps file
 ////////////////////////////
 // Run when the map starts
 void OnStart()
 {
 AddUseItemCallback("", "And", "Locked", "KeyOnDoor", true);
 SetEntityCallbackFunc("And", "OnPickup");
 SetEntityCallbackFunc("Antidote", "OnPickup2");
 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);
 }
 ////////////////////////////
 // Run when entering map
 void OnEnter()
 {
 }
 ////////////////////////////
 // Run when leaving map
 void OnLeave()
 {
 }
 
 
 
				
(This post was last modified: 02-03-2012, 10:29 PM by Datguy5.)
 |  |  
	| 02-01-2012, 07:53 PM |  |  
	
		| SilentStriker   Posting Freak
 
 Posts: 950
 Threads: 26
 Joined: Jul 2011
 Reputation: 
43
 | 
			| RE: Make player look at entity? 
 
				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.//
 }
 
				
(This post was last modified: 02-01-2012, 08:09 PM by SilentStriker.)
 |  |  
	| 02-01-2012, 08:03 PM |  |  
	
		| Datguy5   Senior Member
 
 Posts: 629
 Threads: 25
 Joined: Dec 2011
 Reputation: 
12
 | 
			| RE: Make player look at entity? 
 
				 (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() 
{ 
} 
			 
 
				
(This post was last modified: 02-02-2012, 03:13 PM by Datguy5.)
 |  |  
	| 02-01-2012, 08:10 PM |  |  
	
		| FinBanana   Junior Member
 
 Posts: 29
 Threads: 4
 Joined: Jan 2012
 Reputation: 
0
 | 
			| RE: Make player look at entity? 
 
				I think the AddTimer line needs a ';'
 Example below:
 void Win(string &in asEntity)
 {
 StartPlayerLookAt("Master", 3, 5, "");
 AddTimer("", 1, "Message_func");
 }
 
 
 
 
 I'm not 100 % sure if this works, but I'd give it a try.
 
 
 |  |  
	| 02-01-2012, 09:29 PM |  |  
	
		| SilentStriker   Posting Freak
 
 Posts: 950
 Threads: 26
 Joined: Jul 2011
 Reputation: 
43
 | 
			| RE: Make player look at entity? 
 
				 (02-01-2012, 09:29 PM)FinBanana Wrote:  I think the AddTimer line needs a ';'Example below:
 void Win(string &in asEntity)
 {
 StartPlayerLookAt("Master", 3, 5, "");
 AddTimer("", 1, "Message_func");
 }
 
 
 
 
 I'm not 100 % sure if this works, but I'd give it a try.
 It should have a ; I forgot it when making the code for him xD
			 
 |  |  
	| 02-01-2012, 09:33 PM |  |  
	
		| Datguy5   Senior Member
 
 Posts: 629
 Threads: 25
 Joined: Dec 2011
 Reputation: 
12
 | 
			| RE: Make player look at entity? 
 
				Ohh lets see that then   
 
Still not working >.< it still says unexpected end of 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() 
{ 
}
			
 
				
(This post was last modified: 02-02-2012, 07:42 PM by Datguy5.)
 |  |  
	| 02-02-2012, 03:01 PM |  |  
	
		| Datguy5   Senior Member
 
 Posts: 629
 Threads: 25
 Joined: Dec 2011
 Reputation: 
12
 | 
			| RE: Make player look at entity? 
 
				Help would be appreciated!This is the last obstacle in my custom story.When i solve this i can finally release it!
 
 
				
(This post was last modified: 02-02-2012, 07:32 PM by Datguy5.)
 |  |  
	| 02-02-2012, 05:51 PM |  |  
	
		| Datguy5   Senior Member
 
 Posts: 629
 Threads: 25
 Joined: Dec 2011
 Reputation: 
12
 | 
			| RE: Make player look at entity? 
 
				Still not solved   
 |  |  
	| 02-03-2012, 06:01 PM |  |  
	
		| Inurias   Junior Member
 
 Posts: 20
 Threads: 0
 Joined: Jan 2012
 Reputation: 
2
 | 
			| RE: Make player look at entity? 
 
				By taking a short look I noticed two things: 
fix:
 AddTimer("", 2, "CreditStart);
to:
 AddTimer("", 2, "CreditStart");
And add a third parameter to this:
 StartCredits("ending_daniel.ogg", true, , "Ending", 1);
-Inurias
			 |  |  
	| 02-03-2012, 06:12 PM |  |  
	
		| Datguy5   Senior Member
 
 Posts: 629
 Threads: 25
 Joined: Dec 2011
 Reputation: 
12
 | 
			| RE: Make player look at entity? 
 
				Now it says expected expression value. Wtf?!
 
 
 |  |  
	| 02-03-2012, 06:59 PM |  |  |