If you are requesting technical assistance with Twine, please specify:
Twine Version: 2.3.13
Story Format: 2.34.1
Hi,
After a lot of error messages and searching online I turn to you, hoping anyone can help me.
I am trying to get a variable integer based on some colors I picked. I might add some colors in the future.
But ensure the colors are different for each game, I want to assign each color a specific number at the start, in the storyInit.
So I did the following
I made some arrays and I fill the arrays with colors and numbers.
I could probably fill the numberlist with a for loop based on the colors.length now that I think of it.
I made a new variable, based on colors length so it will not mess up my for loop when I pluck items from it.
<<set $numbers = []>>
<<set $colors = []>>
<<set $numberlist = []>>
<<set $colors to ["red","black","blue","green","yellow","purple"]>>
<<set $numberlist to [0,1,2,3,4,5]>>
<<set $colorslength = $colors.length>>
<<for _i to 0; _i < $colorslength; _i++>>
<<set $colors.push({
colorcode: $colors.pluck(),
result: $numberlist.pluck()
})>>
<</for>>
My idea is to have an array with a random combination of colors and numbers. This seems to work. But i can’t seem to find a way to input a color (for example blue) and retrieve the corresponding number.
I tried to make it work using indexOf:
given <<set $playerPick = "blue">>
<<set colornumber = "">>
<<if 1 == 1>>
<<set $colornumber = $colors.colorcode.indexOf($PlayerPick) >>
<</if>>
It will not surprise you this will not work and gives the following Error: <>: bad evaluation: Cannot read colorcode ‘indexOf’ of undefined
Should not use indexOf? is there another way to do what I want to achieve? I hope anyone can give me a pointer on where to look or what to do?
Any help would be greatly appreciated