Новости Большое интервью с HotA Crew - часть 2
  • 1.133
  • 0
HotA Crew о Кронверке и будущих обновлениях (часть 2) Какие герои будут вести армии Кронверка? Герои-воины зовутся Вожди, маги — Старейшины. Их параметры и способности подчеркнут сильные стороны...
Новости Большое интервью с HotA Crew - часть 1
  • 969
  • 0
HotA Crew о Кронверке и будущих обновлениях Важно: весь контент по Кронверку и системе событий находится в разработке, и может ещё поменяться. Итак, следующим городом будет Кронверк. Почему...
С Новым 2025 годом!
  • 2.645
  • 18
Вот и завершается этот год - местами странный, местами крутой, но точно запоминающийся, полный неожиданностей и ярких моментов. Мы благодарны вам за то, что вы были рядом, за все наши совместные...
Новости В Heroes of Might and Magic 3 теперь можно поиграть в веб-браузере
  • 1.407
  • 3
Совсем недавно энтузиасты из России смогли портировать игру HoMM3 в браузер. Причем веб-версия позволяет пройти все сюжетные компании и даже поиграть по сети. Чтобы сыграть в классику необходимо...

Вопросы по скриптингу в Готике

redleha

Постоялец
Модостроитель
Участник форума
Регистрация
14 Дек 2010
Сообщения
59
Реакции
32
Баллы
40
Лучшие ответы
0
bloodrayne,
Новые модельки кидать же нужно по адресу: _work/Data/Meshes/Items ? Правильно?
Да.

Еще мне сказали, что для головного убора, нужно прописать какую то особую анимацию. Что за анимация должна быть?
Нет, вранье. Вот пример шапки Санты из Саги:
INSTANCE ITAR_ds_Santa(C_Item)
{
name = "";
mainflag = ITEM_KAT_ARMOR;
wear = WEAR_HEAD;
visual = "DS_NewYear_Hat.3ds";
material = MAT_LEATHER;
description = name;
};
Одевалась она у меня при входе НПС в своё стартовое расписание (НЕ ДЛЯ ГГ, а для НПС). ГГ может спокойно сам одевать шапку.
func void ZS_Dance()
{
Perception_Set_Normal();
B_ResetAll(self);
AI_SetWalkMode(self,NPC_WALK);
if(Npc_GetDistToWP(self,self.wp) > TA_DIST_SELFWP_MAX)
{
AI_GotoWP(self,self.wp);
AI_AlignToWP(self);
};
if((self.guild == GIL_PIR) && (self.npcType == NPCTYPE_Skel))
{
AI_EquipArmor(self,ItAr_ds_Santa);
};
};
 
Последнее редактирование модератором:

Lamb

Бродяга
Участник форума
Регистрация
22 Фев 2013
Сообщения
47
Реакции
30
Баллы
15
Лучшие ответы
0
Так и знала :)
Получается, сам скрипт шапки будет выглядить так:
Код:
INSTANCE ITAR_ds_Santa(C_Item)
{
   name =   "";
   mainflag =   ITEM_KAT_ARMOR;
   wear =   WEAR_HEAD;
   visual = "DS_NewYear_Hat.3ds";
   material = MAT_LEATHER;
   description   = name;
};
func void ZS_Dance()
{
   Perception_Set_Normal();
   B_ResetAll(self);
   AI_SetWalkMode(self,NPC_WALK);
   if(Npc_GetDistToWP(self,self.wp) > TA_DIST_SELFWP_MAX)
   {
      AI_GotoWP(self,self.wp);
      AI_AlignToWP(self);
   };
   if((self.guild == GIL_PIR) && (self.npcType == NPCTYPE_Skel))
   {
      AI_EquipArmor(self,ItAr_ds_Santa);
   };
};
Попрописывать шапку в _Armor?Саму модельку туда же кидать?
Хм, при компиляции выбивает ошибку идентификатора вот здесь Perception_Set_Normal(); Хотя делала, все четко по образцу. :-[
 
Последнее редактирование модератором:

redleha

Постоялец
Модостроитель
Участник форума
Регистрация
14 Дек 2010
Сообщения
59
Реакции
32
Баллы
40
Лучшие ответы
0
bloodrayne, нет ты просто скрипты оригинала не смотрела, поэтому сложно сходу понять некоторые моменты.
Саму шапку прописывать можешь в IT_Armor.
А вот одевание я прописывал в расписании НПСа. В данном случае это был скелет:
instance vlk_727_DanceScel(Npc_Default)
{
name[0] = "Скелет Деда Мороза";
guild = GIL_PIR;
level = 10;
id = 727;
voice = 12;
flags = 0;
npcType = NPCTYPE_Skel;
attribute[ATR_STRENGTH] = 200;
attribute[ATR_DEXTERITY] = 200;
attribute[ATR_MANA_MAX] = 1000;
attribute[ATR_MANA] = 1000;
attribute[ATR_HITPOINTS_MAX] = 360;
attribute[ATR_HITPOINTS] = 360;
fight_tactic = FAI_HUMAN_STRONG;
protection[PROT_BLUNT] = 125;
protection[PROT_EDGE] = 125;
protection[PROT_POINT] = -1;
protection[PROT_FIRE] = 85;
protection[PROT_FLY] = 125;
protection[PROT_MAGIC] = 0;
damagetype = DAM_EDGE;
aivar[AIV_IgnoresArmor] = TRUE;
B_GiveNpcTalents(self);
B_AddFightSkill(self,NPC_TALENT_1H,50);
B_AddFightSkill(self,NPC_TALENT_2H,85);
B_AddFightSkill(self,NPC_TALENT_BOW,70);
B_AddFightSkill(self,NPC_TALENT_CROSSBOW,40);
EquipItem(self,ItMw_Addon_PIR2hSword);
Mdl_SetVisual(self,"HumanS.mds");
Mdl_ApplyOverlayMds(self,"humans_2hST2.mds");
Mdl_ApplyOverlayMds(self,"humans_BowT1.mds");
Mdl_ApplyOverlayMds(self,"humans_CBowT1.mds");
Mdl_ApplyOverlayMds(self,"Hum_PirSab2.mds");
Mdl_ApplyOverlayMds(self,"humans_skeleton.mds");
Mdl_SetVisualBody(self,"Ske_PirSail_Body",DEFAULT,DEFAULT,"",DEFAULT,DEFAULT,-1);
Mdl_SetModelFatness(self,1);
Mdl_ApplyOverlayMds(self,"Humans_Relaxed.mds");
CreateInvItem(self,ItAr_ds_Santa);
daily_routine = Rtn_Start_727;
};

func void Rtn_Start_727()
{
TA_Dance(7,55,19,55,"DS_FINAL_MOROZ_STAY_01");
TA_Dance(19,55,7,55,"DS_FINAL_MOROZ_STAY_01");
};
с расписанием:
func void ZS_Dance()
{
Perception_Set_Normal();
B_ResetAll(self);
AI_SetWalkMode(self,NPC_WALK);
if(Npc_GetDistToWP(self,self.wp) > TA_DIST_SELFWP_MAX)
{
AI_GotoWP(self,self.wp);
AI_AlignToWP(self);
};
if((self.guild == GIL_PIR) && (self.npcType == NPCTYPE_Skel))
{
AI_EquipArmor(self,ItAr_ds_Santa);
};
};

func int ZS_Dance_Loop()
{
var int danceStyle;
danceStyle = Hlp_Random(9);
if(danceStyle == 0)
{
AI_PlayAni(self,"T_DANCE_01");
};
if(danceStyle == 1)
{
AI_PlayAni(self,"T_DANCE_02");
};
if(danceStyle == 2)
{
AI_PlayAni(self,"T_DANCE_03");
};
if(danceStyle == 3)
{
AI_PlayAni(self,"T_DANCE_04");
};
if(danceStyle == 4)
{
AI_PlayAni(self,"T_DANCE_05");
};
if(danceStyle == 5)
{
AI_PlayAni(self,"T_DANCE_06");
};
if(danceStyle == 6)
{
AI_PlayAni(self,"T_DANCE_07");
};
if(danceStyle == 7)
{
AI_PlayAni(self,"T_DANCE_08");
};
if(danceStyle == 8)
{
AI_PlayAni(self,"T_DANCE_09");
};
AI_GotoWP(self,self.wp);
AI_AlignToWP(self);
return LOOP_CONTINUE;
};

func void ZS_Dance_End()
{
AI_Standup(self);
};

Но это мой личный пример. У тебя естественно всё это не заработает.
Ты проще скажи, на кого из оригинала ты хочешь одеть шапку (какая модель ещё), а тебе здесь я или кто-нибудь напишут.
 

Lamb

Бродяга
Участник форума
Регистрация
22 Фев 2013
Сообщения
47
Реакции
30
Баллы
15
Лучшие ответы
0
Ты проще скажи, на кого из оригинала ты хочешь одеть шапку (какая модель ещё),
Я хочу чтобы ГГ одевал эту шапку. Не другие НПС, а именно ГГ.
Вот на всякий случай, прикрепляю ту самую шапку, которую хочу одеть.
 
Последнее редактирование модератором:

redleha

Постоялец
Модостроитель
Участник форума
Регистрация
14 Дек 2010
Сообщения
59
Реакции
32
Баллы
40
Лучшие ответы
0
bloodrayne, в таком случае и заморачиваться не надо. просто дописать её:
INSTANCE ITAR_Elfen_Hat(C_Item)
{
name = "Шапка-ушанка";
mainflag = ITEM_KAT_ARMOR;
wear = WEAR_HEAD;
visual = "elfen_red.3ds";
material = MAT_LEATHER;
description = name;
};
А потом марвином вставишь и глянешь, как она на ГГ сидит.
 
Последнее редактирование модератором:

Lamb

Бродяга
Участник форума
Регистрация
22 Фев 2013
Сообщения
47
Реакции
30
Баллы
15
Лучшие ответы
0
redleha, ты мой герой! :-*
Благодаря тебе, теперь ГГ будет ходить в крутяцкой шапочке Санты. :)
Правда, волосы что то видно из шапки.
 

Вложения

val300

Труженик
Участник форума
Регистрация
14 Авг 2012
Сообщения
421
Реакции
47
Баллы
45
Лучшие ответы
0
Бомба!
bloodrayne, как думаешь не пора ли в Хоринисе открыть бутик? Управляющая - Сара.
 
Автор
Автор
Hero

Hero

Наемник
Участник форума
Регистрация
8 Апр 2012
Сообщения
791
Реакции
113
Баллы
116
Лучшие ответы
2
bloodrayne, а ведь супер, немного повернуть шапочку на 180 градусов, сдвинуть вперед и будет что надо.
 

redleha

Постоялец
Модостроитель
Участник форума
Регистрация
14 Дек 2010
Сообщения
59
Реакции
32
Баллы
40
Лучшие ответы
0
bloodrayne, если это шапка получена редактированием шапки из Саги, то она была рассчитана специально на скелетов, и у них меньше размер, ибо одеваются на лысый череп. Правда, она была уже развёрнута.
 
Последнее редактирование модератором:

Lamb

Бродяга
Участник форума
Регистрация
22 Фев 2013
Сообщения
47
Реакции
30
Баллы
15
Лучшие ответы
0
redleha, я если честно, не знаю откуда шапочка. Скачала с базы на немецком Воге.
На скелетах кстати, и правда красивее выглядит. :)
P.S. Еще вопросик: когда кидаю новую шляпку, то на старой шляпе, идет текстура от новой. Как можно убрать этот феномен?
 
Последнее редактирование модератором:
Сверху Снизу