Как сделать?
…
Как убрать картинку из окна доп.описания?
Очистка окна доп. описания:
CLR
добавить дополнительное описание своим предметам, но не имею достаточно сведений как это сделать,например(чтоб все поняли вопрос): “Меч” *в окно доп.описания вынести* “Это самый обычный стальной меч.”
1. В стартовой локации назначить обработчик “$ONOBJSEL”:
$ONOBJSEL = 'ONOBJSEL'
2. Создать локацию “ONOBJSEL”. В коде локации записать следующее:
CLR
IF $SELOBJ = 'Меч':
PL 'Это самый обычный стальной меч.'
ELSEIF $SELOBJ = 'Щит':
PL 'Это самый обычный деревянный щит.'
ELSEIF $SELOBJ = 'Шлем':
PL 'Это самый обычный кожаный шлем.'
END
UNSEL
Также см. примеры кода: 28 в 1
Как сделать предметы,которые зависят от друг-друга, например, в инвентаре есть Кузнечный молот, а также три стальных пластины. Как применить кузнечный молот, да так, чтоб исчезли три пластины, да еще вместо их появился Стальной нагрудник, и это все одним махом??? :D
Dirit,
код простой:
DELOBJ 'пластина'
DELOBJ 'пластина'
DELOBJ 'пластина'
ADDOBJ 'Стальной нагрудник'
А вот в какой момент его вызвать, это уже интереснее. Есть три основных варианта:
1. Самое простое - действие по условию. При входе на определенную локацию(или ветку диалога) проверяем наличие нужных предметов, добавляем действие. Пример(код при посещении локации):
! Считаем количество пластин
i = 1
plast = 0
:loop
IF i <= COUNTOBJ:
IF $GETOBJ(i) = 'пластина':
plast = plast + 1
END
i = i + 1
JUMP 'loop'
END
! Проверяем условие
IF OBJ 'Молот' AND plast > 2:
! Добавляем действие
ACT 'Сделать нагрудник':
DELOBJ 'пластина'
DELOBJ 'пластина'
DELOBJ 'пластина'
ADDOBJ 'Стальной нагрудник'
GOTO $CURLOC
END
END
2. Можно показывать всплывающее меню при нажатии на предмет, в котором например будет, при выполнении условия, для молота появляться действие “Сделать нагрудник”.
3. Можно сделать добавление дополнительных действий при нажатии на предмет.
Также есть еще вопрос. Как добавить фоновое изображение в окно действий и инвентаря, а также в окно доп. описания
Dirit,
в классическом плеере нельзя, только в Aero.
Вопрос по регулярным выражениям. Есть такой код:
$t = "меню_бомбы[0]='состояние:бомбы_состояние' меню_бомбы[1]='использовать:бомбы_использовать' меню_бомбы[2]='выбросить:бомбы_выбросить' "
u=0
$e[u]=strfind($t,"(\S+)\[<<u>>\]='[\s,\w]+:(\S+)'")
Регэксп видоизменялся уже раз сто, но нужного результата я добиться не могу. Нужно, чтобы результаты для разных u были разными. Т.е. результат мне нужен такой.
$e[0]="меню_бомбы[0]='состояние:бомбы_состояние'"
$e[1]="меню_бомбы[1]='использовать:бомбы_использовать'"
$e[2]="меню_бомбы[2]='выбросить:бомбы_выбросить'"
Вроде бы должно быть так: несколько непробельных символов, символ [, значение u, символы]=‘, потом любые символы, включая пробелы, потом :, снова непробельные символы и апостроф ’
Однако при выполнении в $e[u] записывается всё $t. Что я делаю не так, и как сделать правильно?
Вопрос снимаю. В пятьдесят первый раз, как обычно, добился нужного:
$e[u]=strfind($t,”(\S+)[<<u>>]=‘[\s,\w]+:[\w]+’”) - это работает.
хм, у меня твой код работает так как тебе нужно
Как ни странно у меня тоже. Теперь я вообще не понимаю, в чём было дело.
Подскажите код чтобы перейти на локацию нажав на ссылку, например: бла бла “ссылка” …???
Он самый, все просто :)
бла-бла <a href="EXEC:gs''локация_ссылки''">ссылка</a> бла-бла
AleKon,
спасибо:) сам не смог разобраться.
Вот возник вопрос, над реализацией которого сейчас думаю. Придуманное мной решение работает, но слишком большой объем кода выходит. Нутром чувствую, что можно упростить, а вот как - не пойму. Суть вопроса в чем:
Есть поле 10х10 символов. По сути - как в любом рогалике. Нужно, собственно, реализовать перемещение “@” персонажа по этой зоне. На данный момент я присвоил каждой точке численное значение от 1 до 100, решение, как видите, не самое удобное. Хочется сделать опознавание по осям x и y, но как правильнее реализовать пока не очень понимаю.
Массивы от x[0] до x[9] и от y[0] до y[9], положение персонажа и объектов через систему координат делать явно удобнее, но вот как его реализовать? Хотя-бы просто сделать отображение поля x на y символов “.”
UPD: Да, HTML кодами не очень хотелось бы пользоваться.
Ryo,
многомерные массивы
Ryo,
Удобнее для тебя реализовать это поле как $ячейка[x+y*10], где x - горизонталь y - вертикаль 10 - ширина по горизонтали. Насколько я помню, в справке это подробнее расписано.
Nex,
Спасибо, но я эту статью уже читал. Я не пойму как работу с координатами организовать. Как сделать чтобы в сетке 10х10, по координатам, скажем x[2] и y[3] отображался символ. То есть как создать эту самую координатную сетку.
Aleks Versus,
Спасибо за совет. Поищу в справке, пока не натыкался еще, но штудирую.