The following warnings occurred:
Warning [2] count(): Parameter must be an array or an object that implements Countable - Line: 906 - File: showthread.php PHP 7.2.24-0ubuntu0.18.04.17 (Linux)
File Line Function
/showthread.php 906 errorHandler->error



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


Thread Rating:
  • 5 Vote(s) - 2.8 Average
  • 1
  • 2
  • 3
  • 4
  • 5
The meaning of Parameters
FlawlessHappiness Offline
Posting Freak

Posts: 3,980
Threads: 145
Joined: Mar 2012
Reputation: 171
#1
The meaning of Parameters

Have you ever wondered what it is when people talk about a parameter?
Don't you know how it works? Well, I'll tell you.

A parameter is the little amount of text inside these ( Parameter)
They always come after: void function() <-- parameter goes in here
parameters are used to specify what kind of callback you want.

Here are some common examples:

AddEntityCollideCallback
Colliding = (string &in asParent, string &in asChild, int alState)

Spoiler below!

Because:
asParent = 1st object
asChild = 2nd object
alState = How do they collide? When 1 goes inside? When 1 goes outside? Both?

SetEntityPlayerInteractCallback
Interacting = (string &in asEntity)

Spoiler below!

Because:
asEntity = The entity you interact with. There can only be 1 thing that is cabable of interacting and that is the player.

AddUseItemCallback
Use Item = (string &in asItem, string &in asEntity)

Spoiler below!

Because:
asItem = The item you use.
AsEntity = The entity you use it on

SetEntityPlayerLookAtCallback
Look-at function = (string &in asEntity, int alState)

Spoiler below!

Because:
asEntity = The entity you look at
alState = Defining if you are: Looking at it? Looking away from it? Both?


CheckPoint
Checkpoint function = (string &in asName, int alCount)

Spoiler below!

Because:
asName = The name of the Checkpoint.
alCount = How many times you have respawned at that checkpoint.

AddTimer
Timer function = (string &in asTimer)

Spoiler below!

Because:
asTimer = The name of the timer.

SetEntityCallbackFunc
SetEntityCallbackFunc = (string &in asEntity, string &in asType)

Spoiler below!

Because:
asEntity = The entity you are specifying.
asType = Which kind of callback are you wanting? OnPickup? Break? OnIgnite?

Now these parameters are commonly used in scripts and if-statements.
If you don't know what an if-statement is then you should check that out first, because that will make your scripting even better!
I will give you some function examples for each of the codes i have listed above:

AddEntityCollideCallback("Player", "ScriptArea_1", "CollideFunction", true, 0);
Spoiler below!

void CollideFunction(string &in asParent, string &in asChild, int alState)
{
if(alState == 1)
{
//Do something if the player is walking into the script area.
//How about a screen effect?
FadeImageTrailTo(1, 1);
}
if(alState == -1)
{
//Do something when the player leaves the script area
FadeImageTrailTo(0, 1);
}
}

SetEntityPlayerInteractCallback("ScriptArea", "InteractFunction", true);
Spoiler below!

void InteractFunction(string &in asEntity)
{
//First we do stuff
FadeImageTrailTo(1, 1);
//And then we set the entity, that we just interacted with, inactive
SetEntityActive(asEntity, false);
}

**Notice that in the next function there is 2 items, but only 1 script area**
AddUseItemCallback("", "Item_1", "ScriptArea_1", "UseItemFunction", true);
AddUseItemCallback("", "Item_2", "ScriptArea_1", "UseItemFunction", true);
Spoiler below!

void UseItemFunction(string &in asItem, string &in asEntity)
{
if(asItem == "Item_1")
{
//Do stuff if you used Item_1
}
if(asItem == "Item_2")
{
//Do stuff if you used Item_2
}
}

CheckPoint("", "PlayerStartArea_1", "CheckpointFunction", "DeathHints", "Entry_1");
Spoiler below!

void CheckpointFunction(string &in asName, int alCount)
{
if(alCount == 5)
{
//Do stuff if you respawned 5 times
}
}

**Notice that "asTimer" is the same as "asName"**
**Also notice that I am calling 2 timers. The first is called in 5 seconds. The second is called in 10 seconds. Both of them is calling the same function, but they have different asName**

AddTimer("Timer_1", 5, "TimerFunction");
AddTimer("Timer_2", 10, "TimerFunction");
Spoiler below!

void TimerFunction(string &in asTimer)
{
if(asTimer == "Timer_1")
{
//Do stuff after 5 sconds
}
if(asTimer == "Timer_2")
{
//Do stuff after 10 seconds
}
}

**Notice that in this script i am interacting with a candle, but it could have been a lot of other stuff... Though the Onignite only works on candles (I guess)**
SetEntityCallbackFunc("candle_1", "CallbackFunction");
Spoiler below!

void CallbackFunction(string &in asEntity, string &in asType)
{
if(asType == "OnIgnite")
{
//Do stuff when you light the candle, but only if you light the candle!
}
}


Trying is the first step to success.
(This post was last modified: 12-01-2012, 07:47 PM by FlawlessHappiness.)
09-16-2012, 03:44 PM
Find


Messages In This Thread
The meaning of Parameters - by FlawlessHappiness - 09-16-2012, 03:44 PM
RE: The meaning of Syntaxes - by Your Computer - 09-16-2012, 04:32 PM
RE: The meaning of Syntaxes - by nemesis567 - 09-16-2012, 05:01 PM
RE: The meaning of Syntaxes - by Melvin - 09-16-2012, 05:30 PM
RE: The meaning of Syntaxes - by nemesis567 - 09-16-2012, 07:33 PM
RE: The meaning of Syntaxes - by The chaser - 11-26-2012, 06:00 PM
RE: The meaning of Syntaxes - by nemesis567 - 09-17-2012, 12:41 AM
RE: The meaning of Syntaxes - by Adrianis - 11-27-2012, 06:22 PM
RE: The meaning of Parameters - by Adrianis - 12-02-2012, 03:21 PM



Users browsing this thread: 1 Guest(s)