Frictional Games Forum (read-only)
Click on entity for message - 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: Click on entity for message (/thread-20870.html)

Pages: 1 2


RE: Click on entity for message - User01 - 03-04-2013

Sorry it's just my english is not so good
I have no idea if you did that Smoke sorry
Thank you


RE: Click on entity for message - OriginalUsername - 03-04-2013

(03-04-2013, 10:11 PM)User01 Wrote: Sorry it's just my english is not so good
I have no idea if you did that Smoke sorry
Thank you

I didn't, I'll fix it when I'm back home


RE: Click on entity for message - darksky - 03-04-2013

if i get it correctly ,he wants that after an interaction you can do the next interaction only if the message is no longer displayed

your script does not have this


RE: Click on entity for message - OriginalUsername - 03-04-2013

(03-04-2013, 10:13 PM)darksky Wrote: if i get it correctly ,he wants that after an interaction you can do the next interaction only if the message is no longer displayed

your script does not have this

Yeah, I just said that..


RE: Click on entity for message - darksky - 03-04-2013

yes, but when i wrote my answer your answer was not there yet Smile

User01, try it like this

Code:
void OnStart()
{
    SetLocalVarInt("message", 0);
    SetEntityPlayerInteractCallback("Object", "function1", false);
}

bool showMessage = true;

void function1(string &in asEntity)
{  
    if(showMessage){
       if(GetLocalVarInt("message") == 1)
       {
           showMessage = false;
           SetMessage("Category", "Entry2", 2);
           AddTimer("", 2, "messagedone");
       }
       else
       {
           showMessage = false;
           SetMessage("Category", "Entry1", 2);
           AddTimer("", 2, "secondmessage");
       }
   }
}

void secondmessage(string &in asTimer)
{
    SetMessage("Category", "Entry2", 2);
    AddLocalVarInt("message", 1);
    AddTimer("", 2, "messagedone");
}

void messagedone(string &in asTimer)
{
    showMessage = true;
}



RE: Click on entity for message - OriginalUsername - 03-04-2013

I just arrived home and I see it's fixed Wink
I'd just use a blockbox and place some SetEntityActive's in the script. But that's neater I think.


RE: Click on entity for message - ExpectedIdentifier - 03-04-2013

Wouldn't it be MUCH simpler to do it like this?

PHP Code:
void function1(string &in asEntity)

{
SetMessage("FirstMessageCategory""FirstMessageName"2);

SetEntityPlayerInteractCallback("TheEntitiesName"""true);

AddTimer("SetSecondMessage",4,"SetSecondMessage");
}


void SetSecondMessage(string &in asTimer)
{

SetMessage("SecondMessageCategory""SecondMessageName"2);

SetEntityPlayerInteractCallback("TheEntitiesName""NewCallbackFunction"true);
}


void NewCallbackFunction(string &in asEntity)

{
SetMessage("SecondMessageCategory""SecondMessageName"2);







I think that does everything?


RE: Click on entity for message - OriginalUsername - 03-05-2013

(03-04-2013, 11:16 PM)sonataarctica Wrote: Wouldn't it be MUCH simpler to do it like this?

PHP Code:
void function1(string &in asEntity)

{
SetMessage("FirstMessageCategory""FirstMessageName"2);

SetEntityPlayerInteractCallback("TheEntitiesName"""true);

AddTimer("SetSecondMessage",4,"SetSecondMessage");
}


void SetSecondMessage(string &in asTimer)
{

SetMessage("SecondMessageCategory""SecondMessageName"2);

SetEntityPlayerInteractCallback("TheEntitiesName""NewCallbackFunction"true);
}


void NewCallbackFunction(string &in asEntity)

{
SetMessage("SecondMessageCategory""SecondMessageName"2);







I think that does everything?

Have you tested it?


RE: Click on entity for message - ExpectedIdentifier - 03-05-2013

(03-05-2013, 07:45 AM)Smoke Wrote:
(03-04-2013, 11:16 PM)sonataarctica Wrote: Wouldn't it be MUCH simpler to do it like this?

PHP Code:
void function1(string &in asEntity)

{
SetMessage("FirstMessageCategory""FirstMessageName"2);

SetEntityPlayerInteractCallback("TheEntitiesName"""true);

AddTimer("SetSecondMessage",4,"SetSecondMessage");
}


void SetSecondMessage(string &in asTimer)
{

SetMessage("SecondMessageCategory""SecondMessageName"2);

SetEntityPlayerInteractCallback("TheEntitiesName""NewCallbackFunction"true);
}


void NewCallbackFunction(string &in asEntity)

{
SetMessage("SecondMessageCategory""SecondMessageName"2);







I think that does everything?

Have you tested it?

No I haven't but the logic makes sense and I've used something similar in a full conversion before :-)