» TeamX (Архив Форума)«


Форум TeamX » Тех. поддержка » Скрипты (Все вопросы по скриптингу - сюда)

Переход по темам
<< Пред. След. >>
Страницы этой темы [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 ] Все собщения

 
Ray
Модератор

Откуда: Донецк,Украина
Регистрация: Янв. 2004

Всего: 746 сообщений

Итак:

Недостатки:

2. Нуммерация твоего масива будет от 633+. Т.к. начальные гвары уже заняты. С таким подходом сразу запутаешся. А так ты написал не массив, а быстрое происвоение\чтение гвары.

Возможности:

1. Ну для начала неплохо бы обнулить переменные, а так работать не будет.
2. У тебя сортировка идёт с первого элемента (т.е. с первой гвары). Представляю какая каша начнётся, если такое применить.
3. Забыл обнулить 'y' после вложенного цикла.
4. А зачем вообще нужна сортировка?
5. Метод пузырька крайне не эффективен. Лучше уж использовать методы двухпутевого слияния, Шелла, квадратичной выборки, быстрой сортировки и т.д., любой на вкус и простоту исполнения.


>>Этот код работоспособен(наверное) только для целочеслительных значений так как я не уверен что двиг сможет сравнить две строки.

Как уже много раз говорилось: в ssl нет различий между типами переменной. Ты можешь написать как:
temp:='aaa';
так и
temp:=231;

-----
Не бывает невозможных задач – бывает мало времени.

Отправлено: 21:03 - 23 Ноября, 2005
Anchorite
Пользователь

Откуда: Не здесь
Регистрация: Янв. 2003

Всего: 283 сообщения

Для того, чтобы реализовать полноценные массивы требуется доработать компилятор.
Однако массивы  будет невозможно импортировать и экспортировать, т.к. обращение к переменным такого класса происходит по имени а не индексу.

На настоящий момент массивы можно реализовать с помощью ассембларных вставок в компиляторе от Нойда.

Отправлено: 22:40 - 23 Ноября, 2005
Alan Killenger
Пользователь

Откуда: Россия, Ижевск
Регистрация: Июль 2004

Всего: 404 сообщения

Цитата:
Нуммерация твоего масива будет от 633+. Т.к. начальные гвары уже заняты. С таким подходом сразу запутаешся. А так ты написал не массив, а быстрое происвоение\чтение гвары.

Он же написал set_local_var. Использование GVAR тут не рационально, об этом видимо и речи не идет. А нумерацию все-таки прийдется начинать не с 0 и не с 1 (двиг меняет значение одной LVAR).
Цитата:
Метод пузырька крайне не эффективен. Лучше уж использовать методы двухпутевого слияния, Шелла, квадратичной выборки, быстрой сортировки и т.д., любой на вкус и простоту исполнения.

Могу начать всех грузить своими познаниями в численных методах... а нафига? Следует понимать, что автор идеи всего лишь предлагает пример.

Лично я это использовать буду наврядли. Уж больно некрасиво смотриться (подождем новый компилятор Анчорита ). Да, кстати, автор забыл упомянуть, что данный способ позволяет нам создавать неограниченное (хехе, почти) количество многомерных массивов. Это можно записать как гуд.

-----
hit me, nail me, make me god

Отправлено: 1:14 - 24 Ноября, 2005 | ИСПРАВЛЕНО: Alan Killenger - 2:20 - 24 Ноября, 2005
Ray
Модератор

Откуда: Донецк,Украина
Регистрация: Янв. 2004

Всего: 746 сообщений

>>Он же написал set_local_var

Не заметил, прошу прощения.

>>Могу начать всех грузить своими познаниями в численных методах... а нафига?

А я никого и не грузил. Я просто высказал своё мнение - тот пример не эффективен. Извините, если это выглядело как-то по другому

-----
Не бывает невозможных задач – бывает мало времени.

Отправлено: 11:44 - 24 Ноября, 2005
Fozzy
Пользователь

Откуда: Украина,Киев
Регистрация: Апр. 2004

Всего: 81 сообщение

2Anchorite:
Оч. хорошо, но есть одна проблема... Из Асемблера я знаю только принципы его работы, так что было бы неплохо если кто-нить сделает эту фичу.

2Ray: Я же не говорил что это эффективный способ этот пример я навел просто что бы показать для чего могут послужить массивы.

2Alan Killenger: Спасибо за понимание =)

З.Ы. И еще... Мож кто-нить знает как двиг будет сравнивать переменные если в них записаны строки?
По длинне или по индексам символов(А == 32(вроде)).

-----
Последний патрон в поржавевшем стволе - Остаток надежды на то что бы выжить.
И две банки джета в моем рюкзаке - Реальность, которой уже не увижу. (С)Fozzy

Отправлено: 18:06 - 24 Ноября, 2005
Alan Killenger
Пользователь

Откуда: Россия, Ижевск
Регистрация: Июль 2004

Всего: 404 сообщения

Угадал.

-----
hit me, nail me, make me god

Отправлено: 5:10 - 25 Ноября, 2005
Alan Killenger
Пользователь

Откуда: Россия, Ижевск
Регистрация: Июль 2004

Всего: 404 сообщения

Цитата:
procedure use_p_proc begin
 destroy_object(self_obj);
end

Почему у меня маппер вылетает с ошибкой?

-----
hit me, nail me, make me god

Отправлено: 17:53 - 2 Янв., 2006
Mynah
Модератор

Откуда: Пермь
Регистрация: Окт. 2004

Всего: 469 сообщений

Alan Killenger,
Попробуй поставить script_overrides или, если не поможет, то не уничтожай по use, а вешай короткий таймер, по которому предмет уничтожится.

-----
Scio me nihil scire

Отправлено: 19:04 - 2 Янв., 2006 | ИСПРАВЛЕНО: Mynah - 21:05 - 2 Янв., 2006
Alan Killenger
Пользователь

Откуда: Россия, Ижевск
Регистрация: Июль 2004

Всего: 404 сообщения

1. Как удалить объект из инвентаря игрока, если инвентарь игрока открыт? Можно ли скриптами закрыть инвентарь игрока?

2. Как лучше отловить в скрипте партийца смену прошников?

Ну и напоследок. Я поставил в скрипт игрока на обработчик юсе_обж_п_проц скрипт_оверрайдес (семшно звучит), так серьезных последствий не вижу, но если кто наступа на эту граблю может заранее сказать что мне надо реализовать кроме "Это ничего не делает.".

-----
hit me, nail me, make me god

Отправлено: 23:04 - 4 Янв., 2006 | ИСПРАВЛЕНО: Alan Killenger - 0:05 - 5 Янв., 2006
Wasteland Ghost
Маленькое Злое Привидение

Откуда: Россия, Самара
Регистрация: Дек. 2002

Всего: 2251 сообщение

1. Никак. Нельзя.
2. Сам процесс - никак. Прошники меняет движок. Можешь воспрользоваться этой функцией
int obj_pid(ObjectPtr obj) - возвращает идентификатор прототипа (pid) объекта
Аргументы:
obj - указатель на объект
Возвращаемое значение:
идентификатор прототипа объекта
Однако, она сработает постфактум. А тебе надо до или в процессе. Совет: а тебе очень надо, чтобы партийцы книжки читали? Мне, например, не надо...

Оверрайд лучше не пиши где попало. Можешь и напороться...

Отправлено: 23:09 - 4 Янв., 2006
 

Переход по темам
<< Пред. След. >>
Страницы этой темы [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 ] Все собщения


Powered by Ikonboard 2.1.9 RUS
Modified by RU.Board Team
© 2000 Ikonboard.com