Frictional Games Forum
[SCRIPT] Selection From a List? - Printable Version

+- Frictional Games Forum (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: [SCRIPT] Selection From a List? (/thread-28106.html)



Selection From a List? - BonesTheRabbit - 12-20-2014

I'm trying to think of how to code a selection from a list. Something like this, I suppose:

Code:
void somefunction()
{
    string variable = {
        [1] = "String option A",
        [2] = "String option B",
        [3] = "String option C",
        [4] = "String option D"
    }
    int r = RandInt(1,4);
    AddDebugMessage("Selection: " + variable[r], false);
}

Of course, that's not valid code. I'm just hoping someone understands what I mean, and can tell me how to achieve this with the HPL2 editor without using repeated if then checks. Any assistance is greatly appreciated.

P.S. I am a complete layman when it comes to coding.


RE: Selection From a List? - 7heDubz - 12-20-2014

I know what you mean and that should work, never dictionaries though, why not just use a list and get a random integer between 0-biggest number?


RE: Selection From a List? - Daemian - 12-20-2014

What you want is an array, it goes like this:

Let's say I want to choose a random enemy from a list. This is the code:

Spoiler below!

PHP Code:
string[] Enemy = { "grunt""suitor""brute" };
int randomNum RandInt(0,2);

AddDebugMessageEnemy[randomNum], false ); 


Every time I run that code I get a diff string from the list.


RE: Selection From a List? - BonesTheRabbit - 12-20-2014

(12-20-2014, 03:34 PM)Daemian Wrote: What you want is an array, it goes like this:

Let's say I want to choose a random enemy from a list. This is the code:

Spoiler below!

PHP Code:
string[] Enemy = { "grunt""suitor""brute" };
int randomNum RandInt(0,2);

AddDebugMessageEnemy[randomNum], false ); 


Every time I run that code I get a diff string from the list.

This is exactly what I was looking for. I had forgotten the appropriate term. Thanks very kindly.