Решил в тупую затестить онлайн, и да, я был прав, но в другом месте эта ошибка проявилась. replace не смог найти "\\" в "\\r", из-за чего путь до конца не обрезался.
Тест в онлайн компиляторе
let e = 'RGB_Light/RGB_RockChunks_Light.blp'.replace('/', "\\").toLowerCase();
let t = 'Doodads\\Custom\\RGB_RockChunks_Light.blp'.replace("\\", '/').split('/').pop().toLowerCase();
if(e.includes(t))
console.log("true");
else
console.log("false");
console.log("e=" + e);
console.log("t=" + t);
ScorpioT1000, чекни вариант со спецсимволами, может в фул именах перепутал замену, как описал выше?
Хотя там же 2 косые, по идее так не должно сломаться... Может через несколько преобразований так ломается, но тут уж не уверен, нужно выводить тестовые данные.
Кстаааати, такой момент, а "\r" includes может засчитать за 1 спец-символ в сравнении строк?
Просто в FullName идет замена '/' на "\\"
и у нас получается строка 'rgb_light\\rgb_rockchunks_light.blp' (учитывая toLoverCase), где и появляется этот спецсимвол с таким соединением конкретно в этом примере :D
konvan5, а ля или снова туплю, надо подумать :D
Обрезаешь путь, который прописан в модели: absName(t.Image).toLowerCase()
Проверяешь нахождение этой строки в полном пути... Вроде все верно...
ScorpioT1000, если это считается обрезкой, то работает она как-то не так :D
обрезка
В итоге после такой обрезки удаляется только расширение .blp а путь остается. Да и дальше никак это имя не используется после передачи в функцию (он там используется только для логов, то есть параметр в целом бесполезен о_О)
Надеюсь эта идея на поверхности кому-то поможет.
Кстати, в написании статей было бы неплохо примеры показывать наглядно в виде скринов триггера или блоков кода с использованием форматирования (вместо длинного полотна текста. Хоть и видно, что что-то форматировал).
Описал действие словами - показал скрин. Следующее действие словами - снова скрин. Так проще воспринимать информацию и быстрее читать будет.
Много моделек не просматриваются по этой причине. А модерировать каждого человека будет сложно раскидывать по папкам текстуры + для итогового пользователя будет неудобно вытаскивать из разных папок (не дай бог такие модельки) все текстуры и использовать модель.
ScorpioT1000, кстати, возможно ли программно для просмотрщика находить текстуры и указывать им нужные пути, если по "ожидаемому пути" оно не находит текстуру? А то частенько пути к текстурам более длинные типа "Textures\" и тд, а сама текстура лежит в корне рядом с моделькой.
ScorpioT1000, наверное потому что там не надо закидывать текстуру и модель по пути "Doodads\Custom\" как решил переделать автор ресурса по очень важным для него причинам...
А в чем сложность вычислять расстояние в те моменты, когда тебе нужно? А не хранить его и перезаписывать каждые 0.01 сек. И сразу обнуляешь без утечек и тд. Зачем хранить?
Тебе же нужно вычислить и что-то применить в нужные точки в нужный момент времени, а если нужен перерасчет потом - к примеру снаряд должен лететь в сторону юнита и перенаправляться если он движется, то каждый тик движения вычисляй угол и расстояние заново если так нужно.
Зависит от задачи, а по твоим словам непонятна, что за задача.
MrSaW, ну и как посоветовали, сохрани в начале триггера цель каста в переменную и используй дальше эту переменную. В идеале чтобы это была локальная переменная. А то она пересохраняется с каждым кастом на карте и тем самым могло сбиться действие триггера.
MrSaW, выглядит хорошо, а что именно у тебя не работало? К примеру использовал способку на союзника а каст произошел только молот бурь а духовного пламени не было? И это каждый каст происходит или раз через раз?
» WarCraft 3 / Альтернативное применение способностей
» WarCraft 3 / RockChunks Light ver
Ред. konvan5
» WarCraft 3 / RockChunks Light ver
Хотя там же 2 косые, по идее так не должно сломаться... Может через несколько преобразований так ломается, но тут уж не уверен, нужно выводить тестовые данные.
» WarCraft 3 / RockChunks Light ver
Ред. konvan5
» WarCraft 3 / RockChunks Light ver
Есть путь к текстуре: 'RGB_Light/RGB_RockChunks_Light.blp'
Ред. konvan5
» WarCraft 3 / RockChunks Light ver
Обрезаешь путь, который прописан в модели: absName(t.Image).toLowerCase()
Проверяешь нахождение этой строки в полном пути... Вроде все верно...
Ред. konvan5
» WarCraft 3 / RockChunks Light ver
» WarCraft 3 / RockChunks Light ver
» WarCraft 3 / RockChunks Light ver
» WarCraft 3 / RockChunks Light ver
» WarCraft 3 / RockChunks Light ver
Ред. konvan5
» WarCraft 3 / RockChunks Light ver
Ред. konvan5
» WarCraft 3 / RockChunks Light ver
» WarCraft 3 / Альтернативное применение способностей
Кстати, в написании статей было бы неплохо примеры показывать наглядно в виде скринов триггера или блоков кода с использованием форматирования (вместо длинного полотна текста. Хоть и видно, что что-то форматировал).
Описал действие словами - показал скрин. Следующее действие словами - снова скрин. Так проще воспринимать информацию и быстрее читать будет.
Ред. konvan5
» WarCraft 3 / RockChunks Light ver
» WarCraft 3 / RockChunks Light ver
» WarCraft 3 / RockChunks Light ver
Ред. konvan5
» WarCraft 3 / Расстояние между точками, когда цель подвижна
» Администрация XGM / Упоминания пользователей
» WarCraft 3 / Помогите! Сломались триггеры
» WarCraft 3 / Помогите! Сломались триггеры
» WarCraft 3 / изменение самого редактора варктафт
Enobraed и PT153
» WarCraft 3 / Жизнь на Арене 2.7u2
Эх, так печально когда исходники уходят в небытие.
» Администрация XGM / Упоминания пользователей
» WarCraft 3 / Жизнь на Арене 2.7u2
Скорее не давали или связи не те. С другой стороны да, это просто модинг и каждый выкручивается как может.