leorak
offline
Опыт:
825Активность: |
перевод переменной из одного типа в другой
есть 15 областей с названиями 1,2,3 ... 14,15
и надо сделать портование в рандомную область. (их может быть и больше а не только 15) я решил сделать это способом совмещения строк local string t = "gg_rct_" + I2S(GetRandomInt(1, 15)) call SetUnitPositionLoc( gg_unit_Hpal_0000, GetRectCenter(t) ) gg_rct_НАЗВАНИЕ - так в джасе выглядит область. получается что если соеденить строки gg_rct_ + ранд(1,15) то получится строка имеющая такое же значение как и настоящая область. т.е. gg_rct_3
но когда я нажимаю проверить редактор выдает ошибку неправильный тип аргумента. попытка перевести из текста в область тоже успехом не увенчалась ибо опять ошибка несовпадения типов при присвоение товарищи джасеры объясните по хардкору как быть. в Пыхе было все просто "строка".$переменная и все работало. а вот в джасе какая то подстава |
22.07.2013, 21:12 | #1
+0/−5
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
alexprey
познающий Unity
offline
Опыт:
68,501Активность: |
В php используятся утиная типизация, в jass - строгая. Поэтому обычное присвоение не прокатит. Самый простой и 100% рабочий способ - забить локации в массив руками. |
22.07.2013, 21:20 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Faion
Noblesse Oblige
offline
Опыт:
30,395Активность: |
Никак. |
22.07.2013, 21:55 | #3
+1/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Clamp
Lost in space
offline
Опыт:
71,158Активность: |
Строка##Строка
Работает только при препроцессинге.
Clamp добавил: Т.е. в функцию не вставить. Отредактировано Clamp, 23.07.2013 в 14:00. |
23.07.2013, 02:12 | #4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
quq_CCCP
Я белый и пушистый!
offline
Опыт:
94,185Активность: |
leorak, массив локейшенов, и GetRandomInt( от 0 и до макс локейшенов) и области для такой чепухи лучше не юзать, возьми камеру и помести ей на место куда нужно телепортироваться и скопируй её координаты в код.. пример - udg_LPoints[0] = Location(0.450,110.00) |
23.07.2013, 02:31 | #5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Faion
Noblesse Oblige
offline
Опыт:
30,395Активность: |
Как то так. не проверял работоспособность, могут быть ошибки\опечатки. |
23.07.2013, 11:20 | #6
+1/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DioD
offline
Опыт:
45,134Активность: |
такого объекта как переменная джас не имеет, соответственно вызвать переменную по имени нельзя.
то что отписал Faion выше самый быстрый метод, немножко более понятно будет использовать хеш таблицу или кеш, там можно использовать строки вместо чисел если хотеть. |
23.07.2013, 13:29 | #7
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
J64_
offline
Опыт:
4,724Активность: |
Так уже не работает? |
23.07.2013, 15:34 | #8
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DioD
offline
Опыт:
45,134Активность: |
для работы этого метода достаточно конвертировать
ConvertFogState(H2I(gg_rct_FIRST)+offset)
при этом никакие переменные не нужны, то что вы понаписали блот ненужный.
да и еще, это работает ЖУТКО медленно и близзы могут в любой момент внезапно решить закрыть и эту дырку тоже. |
23.07.2013, 15:55 | #9
+1/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Faion
Noblesse Oblige
offline
Опыт:
30,395Активность: |
Не думаю что это хороший пример. |
23.07.2013, 16:24 | #10
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
alexprey
познающий Unity
offline
Опыт:
68,501Активность: |
DioD, я сперва хотел такое предложить, но где гарантия того, что регионы будут лежать с одинаковыми хендлами? |
23.07.2013, 17:05 | #11
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
quq_CCCP
Я белый и пушистый!
offline
Опыт:
94,185Активность: |
|
23.07.2013, 17:09 | #12
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DioD
offline
Опыт:
45,134Активность: |
хороший пример это перехватывать создание регионов и регистрировать гденить, vjass такую возможность даёт, однако это ответ на пост выше, а не пример хорошего кода, игра с указателями по умолчанию плохой код. хендлы гарантированно лежат один за другим если не было освобождённых номеров, например если удалить хоть один триггер есть риск что остальные уже по порядку не будут лежать а какойто триггер займёт освободившийся слот. |
23.07.2013, 17:15 | #13
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
alexprey
познающий Unity
offline
Опыт:
68,501Активность: |
DioD, имхо у Faion'а лучше получилось) |
23.07.2013, 17:23 | #14
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DioD
offline
Опыт:
45,134Активность: |
зато у меня без лишней воды
DioD добавил: вот вам РАБОЧИЙ семпл, жать эскейп для теста |
23.07.2013, 17:41 | #15
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Faion
Noblesse Oblige
offline
Опыт:
30,395Активность: |
quq_CCCP:
? DioD:
cjass так же дает эту возможность. В итоге получится костыль. Тем более нужно перехватывать конкретную группу ректов, а не все. Так что нет.
DioD:
Простите, где у меня там что лишнее? Инит + метод для получения рандомного ректа. |
23.07.2013, 18:53 | #16
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
quq_CCCP
Я белый и пушистый!
offline
Опыт:
94,185Активность: |
Faion, кароче берём триггер (случайный, неважно какой) и находим его ИД, после приравниваем 2 инт переменных это ид и начниаем одно увеличивать на 1 а другое уменьшаеть, при каждом уменьшении и увеличении проверяем есть ли триггер в данной ячейке памяти, результат был таков отр. - да, да, нет и тд, в положительную сторону да, нет, да, да и тд...
\ |
24.07.2013, 14:39 | #17
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Faion
Noblesse Oblige
offline
Опыт:
30,395Активность: |
quq_CCCP, не, я просто не понял, к чему мне это пояснять?) Я вообще не предлагал сканить объекты в памяти, это бредово т.к. |
24.07.2013, 14:48 | #18
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
quq_CCCP
Я белый и пушистый!
offline
Опыт:
94,185Активность: |
Ну я просто ошибся, тыкнув ссылку на твой ник, я диоду, ну и всем что рез был такой... |
24.07.2013, 14:59 | #19
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DioD
offline
Опыт:
45,134Активность: |
карту пример скачай и посмотри, если руки из жопы это не ко мне. |
24.07.2013, 18:29 | #20
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|