ZeToX2007
offline
Опыт:
7,009Активность: |
J, Почему ерунда ? если мы каждому нужному предметы создадим Destructable с таким же id, то есть мы легко сможем получить предмет по id Destructable, и Destructable по id предмета
|
17.08.2009, 16:26 | #81
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
J
expert
offline
Опыт:
48,447Активность: |
потому что ерунда |
17.08.2009, 16:31 | #82
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
ZeToX2007
offline
Опыт:
7,009Активность: |
J, Но работает отлично
|
17.08.2009, 17:01 | #83
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
J
expert
offline
Опыт:
48,447Активность: |
имей ввиду, что программиста за слова "работает да и ладно" можно увольнять с работы получение декорации по предмету и обратно - не динамическая операция, нет реального выйграша в скорости, цель не оправдывает средства, за тем чтобы у всех декораций совпадало определенное количество бит равкода от предмета нужно постоянно за этим следить при создании новых предметов, также на каждый новый предмет придется создавать свою собственную декорацию, неважно одинаковые у декораций иконки или нет, каждый раз новую |
17.08.2009, 17:18 | #84
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
ZeToX2007
offline
Опыт:
7,009Активность: |
Цитата:
О боже, для создание предмета требуется куда больше времяни... Суть такая я создаю инвентарь другим методом... а именно с помощью ХеШтаблиц и id предмета. при запуске создаем декорации с таким же id, которые сохраненны в хтбл, а где 0, создаём пустые слоты. то есть id будут универсальны, как для создание декорации так и для создание предмета. |
|
17.08.2009, 17:56 | #85
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
J
expert
offline
Опыт:
48,447Активность: |
допустим мы создаем компанию и у нас есть 250 нестандартных предметов, тебе будет легче под каждый предмет сделать новую декорацию + к пару сотням декорация стандартных предметов, или воспользоватся уже имеющимися и ниодной лишней декорации не создать? т.е. ты каждому типу предмету сопоставляешь тип декорации, если у предметов одинаковые иконки то ты просто сопоставляешь им одинаковые декорация? как глупо... видно ты очень недолго работал с инвентарями.. ну вообщем ладно, страдай фигней дальше... |
17.08.2009, 18:20 | #86
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
ZeToX2007
offline
Опыт:
7,009Активность: |
Цитата:
за пару часов думаю можно управиться. |
|
17.08.2009, 18:36 | #87
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
J
expert
offline
Опыт:
48,447Активность: |
че ты от меня хочешь услышать? ну делай... |
17.08.2009, 18:39 | #88
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
ZeToX2007
offline
Опыт:
7,009Активность: |
Цитата:
Невижу ничего глупого call CreateDestructable(LoadInteger(HT,GetHandleId(u),i),x,y,270,0) call CreateItem (LoadInteger(HT,GetHandleId(u),i),0,0) Ну можно и масивом пользоваться, ну ХТ как раз и созданная для таких целей. Не считаешь, что это более удобно ? да лично у меня, редко когда два предмета с одной и той же иконкой. |
|
17.08.2009, 18:50 | #89
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
J
expert
offline
Опыт:
48,447Активность: |
а я не говорю не пользоваться хешем, кок раз и нужно вобщем ты просто
я кокраз для таких как ты статью и писал хотя даже есть моменты которые я бы поправил будь время |
17.08.2009, 19:13 | #90
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
ZeToX2007
offline
Опыт:
7,009Активность: |
Если будет приумещаство твоего корказа, я рано или поздно дойду до него, но сейчас я этих преимуществ невижу.
|
17.08.2009, 19:44 | #91
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
J
expert
offline
Опыт:
48,447Активность: |
какого коркаса? хотя впрочем неважно, если ты настолько глуп чтобы игнорировать все что тебе говорят я невижу причин говорить тебе чтолибо еще |
17.08.2009, 20:17 | #92
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
ZeToX2007
offline
Опыт:
7,009Активность: |
J, я на личности не переходил, да и твоя система не оч. лично для меня, и игнорирую, потому можно сделать лучше и удобне и быстрее.
|
17.08.2009, 20:27 | #93
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
J
expert
offline
Опыт:
48,447Активность: |
|
17.08.2009, 20:34 | #94
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
ZeToX2007
offline
Опыт:
7,009Активность: |
J, просто ты не видишь явные преимущества, точнее не хочешь видеть... все, мне безумно надоело тратить силы на тебя.
|
17.08.2009, 20:44 | #95
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
JamesBlack
black mind
offline
Опыт:
6,595Активность: |
Так, я как интересующаяся личность и пытающийся разобраться в коде новичок щас разгребу все что вы тут отговорили и спрошу интересующие моменты:
Цитата:
разве назначение одинаковых id для предмета и декорации может привести к ошибке? Цитата:
Цитата:
Почему так? Т.е. если взять id предмета и по нему найти декорацию, получится не быстрее, чем через кеш взять текстуру для предмета и найти по этой текстуре декорацию? Цитата:
Цитата:
Цитата:
Ну, во первых мы ведь говорим не об универсальных системах, а об инвентаре, требуемом конкретному проекту, т.е. если мы заранее знаем, что предметов будет ВСЕГО скажем около 150-200, то вполне реально. Во вторых, и в правду, не очень хорошо, если многие предметы будут иметь одинаковые иконки. В итоге, кроме того, что ZeToX2007 создает чуть больше декораций в РО, чем у тебя, J, я не увидел ни одного минуса, который ты аргументировал. Ну только если поиск по id действительно окажется медленнее пользования кешем. ADDED: Большинство критики имело содержание: Цитата:
Если взялся писать эту статью, будь добр, дай более развернутый ответ, почему так хуже, а так лучше! |
|||||||
17.08.2009, 21:50 | #96
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
J
expert
offline
Опыт:
48,447Активность: |
речь шла не одинаковых ид, а ид отключающихся доуг от друга на одно и тоже число, т.е. например idDest = idItem-0x10000 и подобное... быстродействие не имеет значение, это не динамическая операция, оптимизировать ее не имеет смысла, тут больший приоритет имеет удобство но делай через ид неудобно, потому что я уже говорил выше придется создавать для каждого предмета по одной декорации, также неудобно и долго настраивать равкоды объектов и заниматься отладкой идеальный вариант это на каждый тип предмета атачить используемую им текстуру, и на каждую текстуру атачить соответствующую ей декорацию, через хеш это возможно сделать т.к. есть нативная хеш функция для строк, тогда добавлять новую декорацию нужно будет только при импорте новой текстуры, которых меньше чем предметов, а изменить текстуру для предмета не придется копаться в кучи декоров и искать соответствие между декорами и предметами чтобы изменить пути текстур у правильных объектов, т.к. все делается на джассе (для аналогии можно привести разницу в наборе арифметических операций в гуи и на джассе, т.е. чем меньше окошечек тем лучше, правится все хорошо в текстовом формате) это никогда не известно заранее даже в собственном проекте, в процессе написания придется еще многое что переделывать и переписывать, пару декораций не удалил, пару лишних добавил и будут ошибки или лишние декорации, а отладкой для ид заниматься сложно ну тогда нужен тот идеальный вариант что я сказал выше J добавил:
мне глубоко пофиг будете вы это читать или нет нравится вам статья или нет меня это не интересует, статья писалась не для критики, а лишь как обучающий материал если с чем-то в ней вы не согласны это не мои, а ваши проблемы делайте как вам удобно, но не пудрите мозги тем кто смотрит данный топик инфой противоречащей статье просто представьте что автор не дураг и не просто так высосал из пальца инфу без никакого опыта и тестов в отличии от ZeToX2007, где то что он говорит основано на не опыте, а лишь на его теории из здравого смысла Отредактировано J, 17.08.2009 в 22:25. |
17.08.2009, 22:03 | #97
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
JamesBlack
black mind
offline
Опыт:
6,595Активность: |
Т.е. одинаковый id для разных хендлов делать нельзя, даже если они разных типов?
|
17.08.2009, 22:04 | #98
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
J
expert
offline
Опыт:
48,447Активность: |
JamesBlack, ты путаешься между словами хендл, ид и тип
в верхнем посту все что я говорил насчет ид это имел ввиду тип (равкод) хендлы мы пока не затрагиваем J добавил: JamesBlack кстате, любую систему хоть для своего проекта хоть для другово нужно писать так будто пользоватся ей будете не вы, делай ее максимально гибкой и универсальной, даже любое самое очевидное взаимодействие с сстемой оборачивать в функцию, хоть даже вы наизусть его знаете, в этом и есть "тру-кодинг" |
17.08.2009, 22:27 | #99
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
JamesBlack
black mind
offline
Опыт:
6,595Активность: |
все преподы по АЯПу и ООП тоже самое говорят... не совсем согласен с этим, но спорить не буду, промолчу.
|
17.08.2009, 22:44 | #100
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|