Код:
let touchedEventId = N;
let randomValue = $gameVariables.value(M);
if(touchedEventId === randomValue){
let events = $gameMap.events();
events.forEach(event => {
if(touchedEventId !== event._eventId){
$gameSelfSwitches.setValue([$gameMap._mapId, event._eventId, 'A'], true);
}
});
$gameSelfSwitches.setValue([$gameMap._mapId, touchedEventId, 'B'], true);
}
где:
N - номер (Id) эвента-"копии", с которой взаимодействует игрок.
M - номер переменной, в которой хранится выпавшее случайное значение.
Суть кода:
1) Прописывается номер конкретного эвента.
2) Берется значение рандома.
3) Так как значение рандом равно номеру нужного эвента (которого коснулся игрок), берется массив всех эвентов карты, и для каждого проверяется номер (Id) - если номер не равен выбранному, то для такого эвента включается лок. переключатель "A".
4) После этого, у "правильного" эвента включается другой лок. переключатель ("B")
Проверяются все эвенты на карте, если у какого-то нет страницы с лок. переключателем "А", то мейкер его игнорирует (в смысле, ошибки не будет).
Социальные закладки