Семь Футов под Килем
Форма входа
 
Приветствуем тебя, корсар Юнга!

Гость, мы рады вас видеть. Пожалуйста зарегистрируйтесь или авторизуйтесь!
Логин:
Пароль:


Купить игры
 




Чат
 
500


Статистика
 
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]

Страница 1 из 11
Модератор форума: NikK 
Форум » Ад-доны для игр серии Корсары » FAQ по модам - "Сделай мод сам" » Урок №9 Создание файла для персов
Урок №9 Создание файла для персов
The_JokerДата: Понедельник, 02.05.2011, 12:21 | Сообщение # 1
Профессор-Икс
Группа: Корсар
Сообщений: 1532
Награды: 51
Репутация: 177
Статус: В открытом море
Урок №9 Создание файла для персов

Дамы и господа, создание файла для персов легче чем создание файла с кодом. Для чего создаётся файл для персов? Если вы кодируете квесты, и вы хотите создать много персов, одного на Бермудах, другого в Пуэрто-Рико и т.д., то вам потом неудобно будет их искать. А знаете что можно создать свой файл, и ставить всех своих персов туда? И не только своих можете вставлять=)
Давайте приступим. В первую очередь зайдём в папку PROGRAM/characters/init и создадим файл .c ! Давайте возьмём к примеру мой файл. Создали файл с именем AragonCharacters. Повторяю файл называйте как хотите, главное чтоб по английски был. Теперь открываем файл, и начинаем творить вот это, на первой же строке:
Code
int CreateAragonCharacters(int n)
{

        ref ch;

int CreateAragonCharacters(int n) - это функция создающая ваш файл. В ходе действий вы поймёте для чего она. Заходим в папку characters и ищем файл characters_init.
Открываем файл, и ищем вот это:
Code
ReloadProgressUpdate();

     n = 2;
     n = CreateAntiguaCharacters(n);
     ReloadProgressUpdate();
     Trace("Antigua: " + n);
         
     n = CreateBarbadosCharacters(n);
     ReloadProgressUpdate();
     Trace("Barbados: " + n);

     n = CreateJamaicaCharacters(n);
     ReloadProgressUpdate();
     Trace("Jamaica: " + n);

и теперь по этому образцу вписываем свой файл. Теперь пишите то что мы прописывали вначале своего файла. Покажу как я делал.
Code
n = CreateAragonCharacters(n);
     ReloadProgressUpdate();
     Trace("Quest: " + n);

точно так делаете, только вместо n = CreateAragonCharacters(n); ставите своё название.
Внимание!!! Когда создаёте файл, и в файле прописываете функцию создания, обязательно чтоб в начале были Create а конце Characters. А между ними прописываете всё что хотите. Тоесть int CreateMyNewCharacters(int n). Вот так. Ну что, вы думаете наконец-то закончили? А вот и нет=)
Ищем файл characters.c в папке characters . Открываем и находим вот это:
Code
LoadSegment(sPath + "init\Cartahena.c");    ReloadProgressUpdate();

     LoadSegment(sPath + "init\Maracaibo.c");    ReloadProgressUpdate();

     LoadSegment(sPath + "init\Caracas.c");    ReloadProgressUpdate();

     LoadSegment(sPath + "init\Cumana.c");    ReloadProgressUpdate();

     LoadSegment(sPath + "init\Beliz.c");    ReloadProgressUpdate();

Теперь здесь нужно прописать путь к файлу, тоесть:
Code
LoadSegment(sPath + "init\AragonCharacters.c");  ReloadProgressUpdate();

Вот так, дальше идём вниз, и находим вот это:
Code
UnloadSegment(sPath + "init\Tortuga.c");
     UnloadSegment(sPath + "init\Cartahena.c");
     UnloadSegment(sPath + "init\Maracaibo.c");
     UnloadSegment(sPath + "init\Caracas.c");
     UnloadSegment(sPath + "init\Cumana.c");
     UnloadSegment(sPath + "init\Beliz.c");

и вписываем свой файл, тоесть:
Code
UnloadSegment(sPath + "init\AragonCharacters.c");

Теперь откройте ваш файл с персами, и в самом конце пропишите это:
Code
return n;     
}  

Дальше между начальной и конечной строками вписываете или создаёте персов. Урок окончен.






Сообщение отредактировал Aragon - Понедельник, 02.05.2011, 12:23
Pr1soneRДата: Среда, 03.07.2013, 19:11 | Сообщение # 2
Матрос
Группа: Корсар
Сообщений: 38
Награды: 0
Репутация: 6
Статус: В открытом море
А можно ли создать такой-же файл для дабавления диалогов?

korsary4Дата: Четверг, 04.07.2013, 10:49 | Сообщение # 3
Адмирал
Группа: Администратор
Сообщений: 5126
Награды: 476
Репутация: 1669
Статус: В открытом море
Pr1soneR, а что мешает сделать обычный файл диалога, где будут просто храниться все диалоги? просто нужно будет свои ветки персонажам назначать. Но как бы зачем все мешать, понимаю, если диалоги нпс по какой-то линейки в одну кучу, а так, лучше отдельные, как по мне.


Единственное, что можно сказать об удаче с уверенностью — она изменит.
--------
Pr1soneRДата: Четверг, 04.07.2013, 15:28 | Сообщение # 4
Матрос
Группа: Корсар
Сообщений: 38
Награды: 0
Репутация: 6
Статус: В открытом море
korsary4,
Можно конечно и отдельные, а если один файл создать то по такому-же принцепу добовлять?


DesBalДата: Четверг, 23.10.2014, 23:32 | Сообщение # 5
Матрос
Группа: Корсар
Сообщений: 50
Награды: 1
Репутация: 10
Статус: В открытом море
Будет ли продолжение?После 9 времени море прошло а дальше не прописано...
korsary4Дата: Четверг, 23.10.2014, 23:36 | Сообщение # 6
Адмирал
Группа: Администратор
Сообщений: 5126
Награды: 476
Репутация: 1669
Статус: В открытом море
Цитата DesBal ()
Будет ли продолжение?После 9 времени море прошло а дальше не прописано...

Ты о чем?



Единственное, что можно сказать об удаче с уверенностью — она изменит.
--------
DesBalДата: Четверг, 23.10.2014, 23:39 | Сообщение # 7
Матрос
Группа: Корсар
Сообщений: 50
Награды: 1
Репутация: 10
Статус: В открытом море
Ужё нашёл)просто в самой шапке переходы на 1-9 а на остальные нету)приходится по форуму лазить собирать в кусочки)

Готовность даньки 87% (суммарно,временный фриз)

Стартовый квест 10% (Суммарно)
korsar328Дата: Вторник, 11.11.2014, 10:11 | Сообщение # 8
Мичман
Группа: Корсар
Сообщений: 72
Награды: 1
Репутация: 7
Статус: В открытом море
Информативная, а самое главное полезная информация

Добавлено (11.11.2014, 10:11)
---------------------------------------------
Такой вопрос, я попробовал, и в итоге нпц не добавился


Жизнь - как божественная комедия...
Форум » Ад-доны для игр серии Корсары » FAQ по модам - "Сделай мод сам" » Урок №9 Создание файла для персов
Страница 1 из 11
Поиск:

Copyright Pirates-Life.Ru © 2008-2016


Семь Футов под Килем - Бухта Корсаров и Пиратов!