2016-03-07 8 views
1

Игра: Моя игра - простая игра, которая берет список слов из файла txt и помещает их в сетку. Затем слова перетасовываются (в сетке 3 * 3 отображается 9 слов, а одна заменяется запасным словом, не используемым), тогда пользователь должен угадать, какое слово было заменено, и какое слово, которое его заменило тоже. Если пользователь прав, они переходят на более жесткий уровень, который представляет собой сетку 4 * 4.GML - Verify Answer

Проблема: Я пытался проверить ввод данных от пользователя, проверив слова в списке по положению слова, которое было перетасовано, поэтому я пытаюсь проверить, какое слово находится в десятой позиции списка, так как это слово, которое было заменено.

Код Сценарии: "Global_Variables" -

> globalvar WordCount; globalvar WordColumn; globalvar WordRow; 
> globalvar WordList; globalvar GridList; globalvar LineGap; globalvar 
> WildCard; globalvar BoxSize; globalvar BoxIndent; globalvar BoxHeader; 
> globalvar TimerIndent; 

"ReadFile" -

> filop = file_text_open_read(working_directory + "Words.txt"); 
> wordgridlist = ds_list_create(); gridcreate = ds_list_create(); 
> while(!file_text_eof(filop)){ 
>  line = string_upper(file_text_readln(filop)); 
>  ds_list_add(wordgridlist, line); 
>  } file_text_close(filop); wordgridlistshuffled =   
> ds_list_shuffle(wordgridlist) "Output" - draw_set_colour(c_red) 
> draw_set_font(Text_Font) Text_Grid = 0 for (X=0; X<3; X+=1){ 
>  for (Y=0; Y<3; Y+=1){ 
>   draw_text((X*710)+250,  
> (Y*244)+300,ds_list_find_value(wordgridlist,Text_Grid)); 
>   Text_Grid +=1 
>   
>   } 
>  } 

"Word_Question" -

> WordChangedEasy = get_string("What word changed?", ""); 
> WordChangedEasyAnswer = ds_list_shuffle(10); WordReplacedEasy = 
> get_string("What word has been replaced?", ""); 

ответ

1

Я соерсед это от GameMaker: Руководство пользователя.

ds_list_find_value

Находит значения, содержащиеся в данной позиции в списке. Синтаксис: ds_list_find_value (id, pos);

ID: ID используемого списка.

pos: Позиция для поиска, где 0 соответствует самому началу списка, а конечная позиция - ds_list_size (id) -1.

Вы должны использовать ds_list_find_value (wordgridlist, 9), чтобы найти десятое значение.