Учитывая weapons: ["rock" "scissors" "paper"]
Если бы я сделал player-choice: ask "(r)ock, (p)aper, (s)cissors or (q)uit? "
как я мог искать введенный пользователем символ в блоке с прикрепленным к нему словом weapons
Учитывая weapons: ["rock" "scissors" "paper"]
Если бы я сделал player-choice: ask "(r)ock, (p)aper, (s)cissors or (q)uit? "
как я мог искать введенный пользователем символ в блоке с прикрепленным к нему словом weapons
Если вам нужно только одно совпадение и использовать только фактические имена элементов в вашем блоке, ваше собственное решение подойдет. Но одна из важных вещей в Red — это то, как вы можете структурировать свои данные, чтобы упростить работу. Например, если вы хотите выбрать элементы из списка только на основе известного ключа (например, первого символа), вы можете сделать это явным, а не неявным.
weapons: ["r" "rock" "s" "scissors" "p" "paper"]
player-choice: ask "(r)ock, (p)aper, (s)cissors or (q)uit? "
print select weapons player-choice
Если вы хотите, чтобы блок начинался с найденного, удалите index?
switch player-choice [
"r" [index? find weapons "rock"]
"s" [index? find weapons "scissors"]
"p" [index? find weapons "paper"]
"q" ["quit"]
]