Показать сообщение отдельно
Старый 17.10.2006, 19:38   #1477
MaGoth
A.G.F.C.
  Аватар для MaGoth
 
Регистрация: 04.09.2006
Сообщений: 20
MaGoth вне форума

По умолчанию Re: М: Скриптинг в Готике

Готы!
Помогите разобраться с этой проблемой:
Я ни как не могу найти переменную которая содержит на протяжении игры значение Глав. Т.е. 1, 2... 6.
Почитав уроки Вама, и посмотрев в скриптах пришел к выводу, что это должна быть Kapitel, но она ни чего не содержит в себе, т.к. компилится все но в игре никуя не происходит. >:(
Я уже перепробывал все, что ток мона было, реализовывал это дело так:

[spoiler]
Код:
func int KapitelDementor(){ * * *if(Kapitel == 0) * * *{ * * * * * *Gl = 0; * * * * * *return TRUE; * * *}; * * *if(Kapitel == 1) * * *{ * * * * * *Gl = 1; * * * * * *return TRUE; * * *}; * * *if(Kapitel == 2) * * *{ * * * * * *Gl = 2; * * * * * *return TRUE; * * *}; * * *if(Kapitel == 3) * * *{ * * * * * *Gl = 3; * * * * * *return TRUE; * * *}; * * *if(Kapitel == 4) * * *{ * * * * * *Gl = 4; * * * * * *return TRUE; * * *}; * * *if(Kapitel == 5) * * *{ * * * * * *Gl = 5; * * * * * *return TRUE; * * *}; * * *if(Kapitel == 6) * * *{ * * * * * *Gl = 6; * * * * * *return TRUE; * * *}; * * *return FALSE;};func void KapitelDementor(){ * * *if(KapitelDementor == TRUE) && (Gl == 0) * * *{ * * * * * *B_SetAttributesToChapterDementor(self,0); * * *}; * * *if(KapitelDementor == TRUE) && (Gl == 1) * * *{ * * * * * *B_SetAttributesToChapterDementor(self,1); * * *}; * * *if(KapitelDementor == TRUE) && (Gl == 2) * * *{ * * * * * *B_SetAttributesToChapterDementor(self,2); * * *}; * * *if(KapitelDementor == TRUE) && (Gl == 3) * * *{ * * * * * *B_SetAttributesToChapterDementor(self,3); * * *}; * * *if(KapitelDementor == TRUE) && (Gl == 4) * * *{ * * * * * *B_SetAttributesToChapterDementor(self,4); * * *}; * * *if(KapitelDementor == TRUE) && (Gl == 5) * * *{ * * * * * *B_SetAttributesToChapterDementor(self,5); * * *}; * * *if(KapitelDementor == TRUE) && (Gl == 6) * * *{ * * * * * *B_SetAttributesToChapterDementor(self,6); * * *};};func int B_ChapterDementor(var int kapitChapt){ * * *if(kapitChapt == 0) * * *{ * * * * * *Gl = 0; * * *}; * * *if(kapitChapt == 1) * * *{ * * * * * *Gl = 1; * * *}; * * *if(kapitChapt == 2) * * *{ * * * * * *Gl = 2; * * *}; * * *if(kapitChapt == 3) * * *{ * * * * * *Gl = 3; * * *}; * * *if(kapitChapt == 4) * * *{ * * * * * *Gl = 4; * * *}; * * *if(kapitChapt == 5) * * *{ * * * * * *Gl = 5; * * * * * * * * *}; * * *if(kapitChapt == 6) * * *{ * * * * * *Gl = 6; * * *}; * * *return Gl;};func void B_SetAttributesToChapterDementor(var C_Npc slf,var int kapGl){ * * *Npc_SetTalentSkill(slf,NPC_TALENT_MAGE,6); * * *if(kapGl == 0) * * *{ * * * * * *slf.level = 25; * * * * * *slf.attribute[ATR_STRENGTH] = 100; * * * * * *slf.aivar[REAL_STRENGTH] = 100; * * * * * *slf.attribute[ATR_DEXTERITY] = 100; * * * * * *slf.aivar[REAL_DEXTERITY] = 100; * * * * * *slf.attribute[ATR_MANA_MAX] = 800; * * * * * *slf.aivar[REAL_MANA_MAX] = 800; * * * * * *slf.attribute[ATR_MANA] = 800; * * * * * *slf.attribute[ATR_HITPOINTS_MAX] = 300; * * * * * *slf.attribute[ATR_HITPOINTS] = 300; * * *}; * * *if(kapGl == 1) * * *{ * * * * * *slf.level = 25; * * * * * *slf.attribute[ATR_STRENGTH] = 100; * * * * * *slf.aivar[REAL_STRENGTH] = 100; * * * * * *slf.attribute[ATR_DEXTERITY] = 100; * * * * * *slf.aivar[REAL_DEXTERITY] = 100; * * * * * *slf.attribute[ATR_MANA_MAX] = 800; * * * * * *slf.aivar[REAL_MANA_MAX] = 800; * * * * * *slf.attribute[ATR_MANA] = 800; * * * * * *slf.attribute[ATR_HITPOINTS_MAX] = 300; * * * * * *slf.attribute[ATR_HITPOINTS] = 300; * * *}; * * *if(kapGl == 2) * * *{ * * * * * *slf.level = 25; * * * * * *slf.attribute[ATR_STRENGTH] = 100; * * * * * *slf.aivar[REAL_STRENGTH] = 100; * * * * * *slf.attribute[ATR_DEXTERITY] = 100; * * * * * *slf.aivar[REAL_DEXTERITY] = 100; * * * * * *slf.attribute[ATR_MANA_MAX] = 800; * * * * * *slf.aivar[REAL_MANA_MAX] = 800; * * * * * *slf.attribute[ATR_MANA] = 800; * * * * * *slf.attribute[ATR_HITPOINTS_MAX] = 300; * * * * * *slf.attribute[ATR_HITPOINTS] = 300; * * *}; * * *if(kapGl == 3) * * *{ * * *}; * * *if(kapGl == 4) * * *{ * * *}; * * *if(kapGl == 5) * * *{ * * *}; * * *if(kapGl >= 6) * * *{ * * *}; * * *slf.exp = 700 * ((slf.level + 1) / 2) * (slf.level + 1); * * *slf.exp_next = 700 * ((slf.level + 2) / 2) * (slf.level + 1);};
[/spoiler]

С третьей и до 6 Главы, характеристики статов Дементоров разнятся, их не указываю, так-как потом не интересно играть будет.(Имхо) ;)

Да и на эту проблему они ни какого влияния не оказывают. ::)

Так же, прописывал в диалоги Ксардасу, Переменную "Glava",
которой прописывал значение равное наступившей Главы, в том месте скриптов, который отвечает за наступление новой Главы.
И у всех Npс которые переводят в Главы.
И эту переменную ставил в условие. Но все равно никуя не выходит.(Данная реализация делалась отдельно от описываемой мною, я ее не приводил так-как скрипты километровые). Я перепробывал вариантов 60-70. И ни чего. :'(

Самое странное в том, что отображается только характеристики 3 главы, причем парамметры 3 Главы измененной Т.е. я изменил статы в условии (kap == 3), а они отображаются будто движок их откудато берет. *:'

Изменял все именные файлы Дементоров, вернее строку в них, которая описывает статы непесей.
Это файлы DMT_1200_Dementor.d, и т.д., до конца именных, а так-же в файле DMT_DementorAmbient.d который описывает статы всех остальных Дементоров.

При тестировании в Главы скакал при помощи дяди марвина, и перца по имени SH. :(
Не работает. прописывает статы, которые я давно уже изменил. :o :'(

Моя цель, реализовать статы Дементоров, в зависимости от Главы, а на данный момент они в Готе жестко привязаны, к Скрипту. т.е.:

Если в функции инициализации стоит цифра 3 B_SetAttributesToChapterDementor(self,3) то из какой Главы не вызови Дементора, у него статы будут равными условию if(Kap == 3),(В оригинальных скриптах). :(

Жду помощи...
=================
Это проблема №1, еще три есть, но об этом позже. ;)
Отправить личное сообщение для Ответить с цитированием