Sacar777
offline
Опыт:
2,024Активность: |
Save Load Сохраняющий способности героя
Решил дополнить сейв лоад такой вот функцией, но столкнулся с рядом проблем.
Я подозревал, что придется делать базу скилов, но к сожалению в голову не приходит оптимальный вариант, как красивее и функциональне, ну это пока можно опустить Допустим у меня стандартный палладин и через мою корявую базу мы получили, что его скилы это Благодать, Бож. Щит, Доспехи и Воскрешение. Получили уровни этих способностей и в прочем закодировали в код. Все наш сейв код готов, но при загрузке, нужно не просто присвоить значению силы уровень, а еще и выучить его, это и убило во мне всю способность придумывать. Кто сможет подсказать способ) |
11.02.2013, 06:15 | #1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
offline
Опыт: отключен
|
сохраняешь:
тип юнита, уровень героя, уровни навыков по очереди например 999 6 0 1 0 5, это засовывается в строку типа 0999 06 00 01 00 05, потом применяется алгоритм шифрования, например, в hex, а лучше ascii системе (это когда длинные цифры кодируются как короткие буквы), см статьи от нетрата загружаешь:
декодируешь данные, потом разбиваешь строку как надо, в обратном порядке сначала создаешь юнита типа 999 даешь ему уровень 6 задаешь способности по очереди циклом, если уровень из этих данных больше 0, то изучить и задать иначе просто ничего не делать и переход к след. итерации цикла ничего сложного, но в варе нету некоторых операторов, помочь могу тока вот этим: xgm.ru/p/wc3/divide-int-by-3-bytes |
11.02.2013, 06:19 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Sacar777
offline
Опыт:
2,024Активность: |
Так и делаю, сначала герой, потом уровень, потом способности, предметы. золото.
В загрузки также. герой. уровень, способности, предметы, золото. Но как вычислить способности у героя, я не могу придумать и осуществить именно это. Например, что бы гному не дались спелы пала. |
11.02.2013, 06:23 | #3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
offline
Опыт: отключен
|
тоесть ты потом просто делаешь чтото вроде Если тип юнита такойто, то загружаешь такие то навыки итп но еще лучше просто сделать базу данных где каждой ячейке типа юнита соответствует другой массив - набор навыков
типа 'hpal' -> 'равкод навыка 1, равкод навыка 2 итп ScorpioT1000 добавил: кароче говоря, если героев меньше пяти-шести, то можно ифами, иначе лучше сделать базу и обращаться напрямую |
11.02.2013, 06:32 | #4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Sacar777
offline
Опыт:
2,024Активность: |
Все кажется настроил, я просто ен мог придумать как реализовать эту базу, ну сейчас все работает, спасибо ScorpioT1000
|
11.02.2013, 06:56 | #5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|