Facebook Twitter YouTube Frictional Games | Forum | Privacy Policy | Dev Blog | Dev Wiki | Support | Gametee


Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Multiple Issues Help Help me please
iAmAw3some Offline
Junior Member

Posts: 9
Threads: 4
Joined: Mar 2014
Reputation: 0
#1
Help me please

Okay i will +rep on anyone who helped me because i have a problem at my editor:
I just want to ask something.

How can i put a text in the middle of the screen when i stepped on to the script area?
03-29-2014, 08:18 AM
Find Reply
7heDubz Offline
Posting Freak

Posts: 1,329
Threads: 40
Joined: Feb 2013
Reputation: 41
#2
RE: Help me please

Through scripting. These are the things that you will use.
http://wiki.frictionalgames.com/hpl2/amn..._functions - Look here for all of them.
https://www.youtube.com/playlist?list=PL...9BC99530C8 - This covers alot of the basics to scripting (and some mapping stuff.

void AddEntityCollideCallback(string& asParentName, string& asChildName, string& asFunction, bool abDeleteOnCollide, int alStates);
Calls a function when two entites collide.
Callback syntax: void MyFunc(string &in asParent, string &in asChild, int alState)
alState: 1 = enter, -1 = leave

asParentName - internal name of main object
asChildName - internal name of object that collides with main object (asterix (*) NOT supported!)
asFunction - function to call
abDeleteOnCollide - determines whether the callback after it was called
alStates - 1 = only enter, -1 = only leave, 0 = both
--------------------------------------------------------------------
void SetMessage(string& asTextCategory, string& asTextEntry, float afTime);
Displays a message on the screen.

asTextCategory - the category in the .lang file
asTextEntry - the entry in the .lang file
afTime - determines how long the message is displayed. If time is < =0 then the life time is calculated based on string length.


void OnStart()
{
AddEntityCollideCallback("Player", "Area", callsthis, false, 1);
}

void callsthis(string &in asParent, string &in asChild, int alState)
{
SetMessage("TextCategory", "TextEntry", 2.0f);
}

(This post was last modified: 03-29-2014, 08:27 AM by 7heDubz.)
03-29-2014, 08:21 AM
Find Reply
PutraenusAlivius Offline
Posting Freak

Posts: 4,713
Threads: 75
Joined: Dec 2012
Reputation: 119
#3
RE: Help me please

THERE YOU GO.

Spoiler below!

Put this in your HPS file and adjust them with your names on the Level Editor.

PHP Code: (Select All)
void OnStart()
{
AddEntityCollideCallback("Player""ScriptAreaName""TextAppear"true1);
}

void TextAppear(string &in asParentstring &in asChildint alState)
{
SetMessage("MessagesEx""ScriptMsg"0);



Spoiler below!

Put this in your LANG file.

PHP Code: (Select All)
<LANGUAGE>
  <
RESOURCES>
  </
RESOURCES>
  <
CATEGORY Name="CustomStoryMain">
    <
Entry Name="Description">INPUT STORY DESC HERE</Entry>
  </
CATEGORY>
  <
CATEGORY Name="MessagesEx">
    <
Entry Name="ScriptMsg">YOUR MESSAGE HERE.</Entry>
 </
CATEGORY


EDIT: Ninja'd Sad

"Veni, vidi, vici."
"I came, I saw, I conquered."
(This post was last modified: 03-29-2014, 08:24 AM by PutraenusAlivius.)
03-29-2014, 08:23 AM
Find Reply
7heDubz Offline
Posting Freak

Posts: 1,329
Threads: 40
Joined: Feb 2013
Reputation: 41
#4
RE: Help me please

But you had the Lang part =P

03-29-2014, 08:26 AM
Find Reply
iAmAw3some Offline
Junior Member

Posts: 9
Threads: 4
Joined: Mar 2014
Reputation: 0
#5
RE: Help me please

(03-29-2014, 08:21 AM)WIWWM Wrote: Through scripting. These are the things that you will use.
http://wiki.frictionalgames.com/hpl2/amn..._functions - Look here for all of them.
https://www.youtube.com/playlist?list=PL...9BC99530C8 - This covers alot of the basics to scripting (and some mapping stuff.

void AddEntityCollideCallback(string& asParentName, string& asChildName, string& asFunction, bool abDeleteOnCollide, int alStates);
Calls a function when two entites collide.
Callback syntax: void MyFunc(string &in asParent, string &in asChild, int alState)
alState: 1 = enter, -1 = leave

asParentName - internal name of main object
asChildName - internal name of object that collides with main object (asterix (*) NOT supported!)
asFunction - function to call
abDeleteOnCollide - determines whether the callback after it was called
alStates - 1 = only enter, -1 = only leave, 0 = both

void SetMessage(string& asTextCategory, string& asTextEntry, float afTime);
Displays a message on the screen.

asTextCategory - the category in the .lang file
asTextEntry - the entry in the .lang file
afTime - determines how long the message is displayed. If time is < =0 then the life time is calculated based on string length.

no it didn't worked, i want something like when i stepped on to that area, a message will appear on the middle of the screen like " This is my lantern "
03-29-2014, 08:27 AM
Find Reply
7heDubz Offline
Posting Freak

Posts: 1,329
Threads: 40
Joined: Feb 2013
Reputation: 41
#6
RE: Help me please

You wouldnt do it through the editor.

(03-29-2014, 08:23 AM)SomethingRidiculous Wrote: THERE YOU GO.

Spoiler below!

Put this in your HPS file and adjust them with your names on the Level Editor.

PHP Code: (Select All)
void OnStart()
{
AddEntityCollideCallback("Player""ScriptAreaName""TextAppear"true1);
}

void TextAppear(string &in asParentstring &in asChildint alState)
{
SetMessage("MessagesEx""ScriptMsg"0);



Spoiler below!

Put this in your LANG file.

PHP Code: (Select All)
<LANGUAGE>
  <
RESOURCES>
  </
RESOURCES>
  <
CATEGORY Name="CustomStoryMain">
    <
Entry Name="Description">INPUT STORY DESC HERE</Entry>
  </
CATEGORY>
  <
CATEGORY Name="MessagesEx">
    <
Entry Name="ScriptMsg">YOUR MESSAGE HERE.</Entry>
 </
CATEGORY


EDIT: Ninja'd Sad

Follow this.

Follow mine if your actually gonna learn scripting for yourself.

(This post was last modified: 03-29-2014, 08:39 AM by 7heDubz.)
03-29-2014, 08:38 AM
Find Reply
iAmAw3some Offline
Junior Member

Posts: 9
Threads: 4
Joined: Mar 2014
Reputation: 0
#7
RE: Help me please

(03-29-2014, 08:23 AM)SomethingRidiculous Wrote: THERE YOU GO.

Spoiler below!

Put this in your HPS file and adjust them with your names on the Level Editor.

PHP Code: (Select All)
void OnStart()
{
AddEntityCollideCallback("Player""ScriptAreaName""TextAppear"true1);
}

void TextAppear(string &in asParentstring &in asChildint alState)
{
SetMessage("MessagesEx""ScriptMsg"0);



Spoiler below!


Put this in your LANG file.

PHP Code: (Select All)
<LANGUAGE>
  <
RESOURCES>
  </
RESOURCES>
  <
CATEGORY Name="CustomStoryMain">
    <
Entry Name="Description">INPUT STORY DESC HERE</Entry>
  </
CATEGORY>
  <
CATEGORY Name="MessagesEx">
    <
Entry Name="ScriptMsg">YOUR MESSAGE HERE.</Entry>
 </
CATEGORY


EDIT: Ninja'd Sad

Didn't worked either, am i doing something wrong?
03-29-2014, 08:39 AM
Find Reply
7heDubz Offline
Posting Freak

Posts: 1,329
Threads: 40
Joined: Feb 2013
Reputation: 41
#8
RE: Help me please

Got a skype mate?

I'll help you out

03-29-2014, 08:39 AM
Find Reply
iAmAw3some Offline
Junior Member

Posts: 9
Threads: 4
Joined: Mar 2014
Reputation: 0
#9
RE: Help me please

(03-29-2014, 08:39 AM)WIWWM Wrote: Got a skype mate?

I'll help you out

No, sorry.. But it works now, i just did something wrong..
Thanks for all your help..
03-29-2014, 08:51 AM
Find Reply
7heDubz Offline
Posting Freak

Posts: 1,329
Threads: 40
Joined: Feb 2013
Reputation: 41
#10
RE: Help me please

Anytime man best of luck to you. Post back in this thread if you need more help.

03-29-2014, 08:53 AM
Find Reply




Users browsing this thread: 1 Guest(s)