![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#641
|
|
Immortal Сообщений: 2 149 Спасибо сказали: 697 раз ![]() |
Без понятия. Хотя и правда, больше -9 никогда не видел. Точнее, меньше.
|
|
|
![]()
Сообщение
#642
|
|
![]() Banished Сообщений: 1 782 Спасибо сказали: 116 раз ![]() |
-10 есть
Добавлено ([mergetime]1231163974[/mergetime]): А y так до -99 Добавлено ([mergetime]1231163996[/mergetime]): в смысле переменная y (Y) ![]() -------------------- |
|
|
![]()
Сообщение
#643
|
|
Immortal Сообщений: 2 149 Спасибо сказали: 697 раз ![]() |
У меня есть четыре v-переменных. В зависимости от того, какая из них наибольшая, нужно поставить пятую в значение 1/2/3/4 соотв.
Есть более-менее короткий путь? |
|
|
![]()
Сообщение
#644
|
|
![]() Анти-Всë Сообщений: 2 989 Спасибо сказали: 2377 раз ![]() |
Вроде так должно быть:
!!VRv5&v1>v2/v1>v3/v1>v4:S1; !!VRv5&v2>v1/v2>v3/v2>v4:S2; !!VRv5&v3>v1/v3>v2/v3>v4:S3; !!VRv5&v4>v1/v4>v2/v4>v3:S4; Или я не так понял? -------------------- Circle of destruction, hammer comes crushing
Powerhouse of energy Whipping up a fury, dominating flurry We create the battery |
|
|
![]()
Сообщение
#645
|
|
Immortal Сообщений: 2 149 Спасибо сказали: 697 раз ![]() |
Они могут быть равны и в этом случае нужно из больших (равных, если их несколько) выбрать случайны.
Пример: v1=2, v2=1, v3=2, v4=0. И нужно, чтобы скрипт проставил v5 в 1 или 3 с шансом 1 к 1. |
|
|
![]()
Сообщение
#646
|
|
![]() Яблочный произвол! Сообщений: 11 080 Спасибо сказали: 3988 раз ![]() |
обязательно случайную или можно первую попавшуюся?
|
|
|
![]()
Сообщение
#647
|
|
![]() Анти-Всë Сообщений: 2 989 Спасибо сказали: 2377 раз ![]() |
Н-да, коротко не выйдет. Разве что функцией какой...
Добавлено ([mergetime]1231591217[/mergetime]): Если первую попавшуюся, то везде в условии просто = добавить. Но Aleee наверняка нужна случайная. -------------------- Circle of destruction, hammer comes crushing
Powerhouse of energy Whipping up a fury, dominating flurry We create the battery |
|
|
![]()
Сообщение
#648
|
|
Immortal Сообщений: 2 149 Спасибо сказали: 697 раз ![]() |
Вот и я думаю, что легких путей нет.
Хотя.. все переменные могут быть в диапазоне от 0 до 4, причем в сумме не могут дать больше 4. Если какая-то из них равна 3 или 4, то выбирается сразу она. Дальше, если какая-то равна двум, а все другие меньше двух, то выбирается опять же она. Если две двум, то опять же нужно случайную... Все-таки надо пойти в ту тему про удобство ЕРМ и переголосовать. |
|
|
![]()
Сообщение
#649
|
|
![]() Анти-Всë Сообщений: 2 989 Спасибо сказали: 2377 раз ![]() |
Жесть.
![]() А может, как-нибудь упростить? Ты бы сказал, для чего оно надо - вдруг всё проще можно сделать. -------------------- Circle of destruction, hammer comes crushing
Powerhouse of energy Whipping up a fury, dominating flurry We create the battery |
|
|
![]()
Сообщение
#650
|
|
![]() Анти-Всë Сообщений: 2 989 Спасибо сказали: 2377 раз ![]() |
Собственно, когда у меня подобные проблемы, то я сначала пишу с полной развёрткой, длинный скрипт. А потом смотрю, где и как можно сократить его более или менее одинаковые строчки.
-------------------- Circle of destruction, hammer comes crushing
Powerhouse of energy Whipping up a fury, dominating flurry We create the battery |
|
|
![]()
Сообщение
#651
|
|
![]() Яблочный произвол! Сообщений: 11 080 Спасибо сказали: 3988 раз ![]() |
Цитата(Aleee @ 10 Jan 2009, 15:45) Все-таки надо пойти в ту тему про удобство ЕРМ и переголосовать. не в удобстве дело. простейшие языковые конструкции в ерм уже есть, так что простейшие алгоритмы на нем реализовывать можно. а алгоритм выбора абсолютно случайного максимального длинный сам по себе. |
|
|
![]()
Сообщение
#652
|
|
![]() Анти-Всë Сообщений: 2 989 Спасибо сказали: 2377 раз ![]() |
О скорости: длинные скрипты игру не убивают. Я вот, например, не вижу никакой разницы в скорости ERM, если давать какой-то скилл всем героям лично или круговой функцией. Просто последней намного компактнее - вот и всё преимущество.)
Когда идёт только проверка на условия - то тем более ERM быстр. Тормозит он только тогда, когда применяет какие-то действия. -------------------- Circle of destruction, hammer comes crushing
Powerhouse of energy Whipping up a fury, dominating flurry We create the battery |
|
|
Гость_Хмм.._* |
![]()
Сообщение
#653
|
![]() |
Автор поста: Berserker.
ЕРМ медленен, можете в это поверить. И то, что в одном месте на глаз незаметно, при увеличении скриптов или при большей частоте событий (шаг героя) превращается в тормоза. Пример, на гигагерцовом проце скрипт случайные ресы при разведке подтормаживает нереально при каждом шаге героя. Просто мощь компа не даёт вам глянуть, какой ценой всё идёт. Что касается развёрнутого кода или функции, то развёрнутый код быстрее. Удивлены? Ничего удивительного. Расходы на иниициализацию переменных для функции и некоторые дополнительные действия, а обычный текст выполняется без расходов. Цитата Когда идёт только проверка на условия - то тем более ERM быстр. Код с условием в 1.3 раза медленее обычного. условия парсятся до машинного уровня, а потому быстрее, чем команды и т.д. Для Алеее: Как я понял, есть v1..v4. Нужно выбрать наибольшее в v5 (индекс наибольшего), если наибольших несколько, то случайное. Поехали: Код ; Поиск максимального значения !!VRy1:Sv1; !!VRy1&v2>y1:Sv2; !!VRy1&v3>y1:Sv3; !!VRy1&v4>y1:Sv4; ; Создание массива индексов максимальных значений !!VRy7:S2; !!VRyy7&v1=y1:S1; !!VRy7&v1=y1:+1; !!VRyy7&v2=y1:S2; !!VRy7&v2=y1:+1; !!VRyy7&v3=y1:S3; !!VRy7&v3=y1:+1; !!VRyy7&v4=y1:S4; !!VRy7&v4=y1:+1; ; Получаем кол-во максимальных значений !!VRy7:-2; ; Генерируем случайное число в этом диапазоне !!VRy1:S1 Ry7; ; Получаем результат !!VRv5:Syy1; При работе над Фениксом мне приходилось решать и посложнее задачки ![]() |
|
|
![]()
Сообщение
#654
|
|
![]() Яблочный произвол! Сообщений: 11 080 Спасибо сказали: 3988 раз ![]() |
а там точно номер v-переменной с наибольшим значением будет?
|
|
|
Гость_Хмм.._* |
![]()
Сообщение
#655
|
![]() |
Автор поста: Berserker.
Последнюю строчку я пропустил, извиняюсь. Добавлено ([mergetime]1231601213[/mergetime]): Обновил скрипт, протестировал. |
|
|
![]()
Сообщение
#656
|
|
![]() Анти-Всë Сообщений: 2 989 Спасибо сказали: 2377 раз ![]() |
Было ощущение, что длинные коды быстрее, чем функции, но сам себе не верил.)
-------------------- Circle of destruction, hammer comes crushing
Powerhouse of energy Whipping up a fury, dominating flurry We create the battery |
|
|
![]()
Сообщение
#657
|
|
![]() В миру GrayFace Сообщений: 2 529 Спасибо сказали: 817 раз ![]() |
Дак это всегда так. Но в ЕРМ они несравнимо быстрее.
-------------------- ДНК банана на 50% состоит из человека.
|
|
|
![]() ![]() |
Текстовая версия | Сейчас: 8 August 2025 - 00:30 |
Copyright by Алексей Крючков
![]() Programming by Degtyarev Dmitry |
|