- Регистрация
- 17 Дек 2011
- Сообщения
- 1.113
- Благодарности
- 581
- Баллы
- 350
мм,я не понял.что мне сделать по шагам?
Все очень плохо...
1) Разбираешь файл где хранятся скрипты( сам не знаю в наличии имею только сами скрипты) (Разбираем прогой Gothic VDFS)
2)Декомпилируешь файл Gothic.dat (Прогой GothicSourcer)
3) У тебя слева будет перечень файлов и папок, там открываешь папки Story, B_Story и файл B_AddFightSkill
4) Первые же строчки это про одноручное оружие, заменяешь это
func void B_AddFightSkill(var C_Npc slf,var int talent,var int percent)
{
if(talent == NPC_TALENT_1H)
{
slf.HitChance[NPC_TALENT_1H] = slf.HitChance[NPC_TALENT_1H] + percent;
if(slf.HitChance[NPC_TALENT_1H] >= 90)
{
Npc_SetTalentSkill(slf,NPC_TALENT_1H,3);
if((LowHealth == FALSE) && (Ani_Shield_S == FALSE) && (EquipedIndex_Chief == FALSE))
{
Mdl_ApplyOverlayMds(slf,"humans_1hST3.mds");
};
if(EquipedIndex_Chief == TRUE)
{
Mdl_RemoveOverlayMds(slf,"humans_1hST3.mds");
Mdl_ApplyOverlayMds(slf,"Humans_Pirate.mds");
Ani_ChiefWeapon = TRUE;
};
}
else if(slf.HitChance[NPC_TALENT_1H] >= 60)
{
Npc_SetTalentSkill(slf,NPC_TALENT_1H,2);
if((LowHealth == FALSE) && (Ani_Shield_S == FALSE) && (EquipedIndex_Chief == FALSE))
{
Mdl_ApplyOverlayMds(slf,"humans_1hST2.mds");
};
if(EquipedIndex_Chief == TRUE)
{
Mdl_RemoveOverlayMds(slf,"humans_1hST2.mds");
Mdl_ApplyOverlayMds(slf,"Humans_Pirate.mds");
Ani_ChiefWeapon = TRUE;
};
}
else if(slf.HitChance[NPC_TALENT_1H] >= 30)
{
Npc_SetTalentSkill(slf,NPC_TALENT_1H,1);
if((LowHealth == FALSE) && (Ani_Shield_S == FALSE) && (EquipedIndex_Chief == FALSE))
{
Mdl_ApplyOverlayMds(slf,"humans_1hST1.mds");
};
if(EquipedIndex_Chief == TRUE)
{
Mdl_RemoveOverlayMds(slf,"humans_1hST1.mds");
Mdl_ApplyOverlayMds(slf,"Humans_Pirate.mds");
Ani_ChiefWeapon = TRUE;
};
}
else if(slf.HitChance[NPC_TALENT_1H] >= 0)
{
Npc_SetTalentSkill(slf,NPC_TALENT_1H,0);
if(EquipedIndex_Chief == TRUE)
{
Mdl_ApplyOverlayMds(slf,"Humans_Pirate.mds");
Ani_ChiefWeapon = TRUE;
};
};
};
{
if(talent == NPC_TALENT_1H)
{
slf.HitChance[NPC_TALENT_1H] = slf.HitChance[NPC_TALENT_1H] + percent;
if(slf.HitChance[NPC_TALENT_1H] >= 90)
{
Npc_SetTalentSkill(slf,NPC_TALENT_1H,3);
if((LowHealth == FALSE) && (Ani_Shield_S == FALSE) && (EquipedIndex_Chief == FALSE))
{
Mdl_ApplyOverlayMds(slf,"humans_1hST3.mds");
};
if(EquipedIndex_Chief == TRUE)
{
Mdl_RemoveOverlayMds(slf,"humans_1hST3.mds");
Mdl_ApplyOverlayMds(slf,"Humans_Pirate.mds");
Ani_ChiefWeapon = TRUE;
};
}
else if(slf.HitChance[NPC_TALENT_1H] >= 60)
{
Npc_SetTalentSkill(slf,NPC_TALENT_1H,2);
if((LowHealth == FALSE) && (Ani_Shield_S == FALSE) && (EquipedIndex_Chief == FALSE))
{
Mdl_ApplyOverlayMds(slf,"humans_1hST2.mds");
};
if(EquipedIndex_Chief == TRUE)
{
Mdl_RemoveOverlayMds(slf,"humans_1hST2.mds");
Mdl_ApplyOverlayMds(slf,"Humans_Pirate.mds");
Ani_ChiefWeapon = TRUE;
};
}
else if(slf.HitChance[NPC_TALENT_1H] >= 30)
{
Npc_SetTalentSkill(slf,NPC_TALENT_1H,1);
if((LowHealth == FALSE) && (Ani_Shield_S == FALSE) && (EquipedIndex_Chief == FALSE))
{
Mdl_ApplyOverlayMds(slf,"humans_1hST1.mds");
};
if(EquipedIndex_Chief == TRUE)
{
Mdl_RemoveOverlayMds(slf,"humans_1hST1.mds");
Mdl_ApplyOverlayMds(slf,"Humans_Pirate.mds");
Ani_ChiefWeapon = TRUE;
};
}
else if(slf.HitChance[NPC_TALENT_1H] >= 0)
{
Npc_SetTalentSkill(slf,NPC_TALENT_1H,0);
if(EquipedIndex_Chief == TRUE)
{
Mdl_ApplyOverlayMds(slf,"Humans_Pirate.mds");
Ani_ChiefWeapon = TRUE;
};
};
};
этим
func void B_AddFightSkill(var C_Npc slf,var int talent,var int percent)
{
if(talent == NPC_TALENT_1H)
{
if(slf.HitChance[NPC_TALENT_1H] >= 60)
{
Npc_SetTalentSkill(slf,NPC_TALENT_1H,2);
if((LowHealth == FALSE) && (Ani_Shield_S == FALSE) && (EquipedIndex_Chief == FALSE))
{
Mdl_ApplyOverlayMds(slf,"humans_1hST2.mds");
};
if(EquipedIndex_Chief == TRUE)
{
Mdl_RemoveOverlayMds(slf,"humans_1hST2.mds");
Mdl_ApplyOverlayMds(slf,"Humans_Pirate.mds");
Ani_ChiefWeapon = TRUE;
};
}
else if(slf.HitChance[NPC_TALENT_1H] >= 30)
{
Npc_SetTalentSkill(slf,NPC_TALENT_1H,1);
if((LowHealth == FALSE) && (Ani_Shield_S == FALSE) && (EquipedIndex_Chief == FALSE))
{
Mdl_ApplyOverlayMds(slf,"humans_1hST1.mds");
};
if(EquipedIndex_Chief == TRUE)
{
Mdl_RemoveOverlayMds(slf,"humans_1hST1.mds");
Mdl_ApplyOverlayMds(slf,"Humans_Pirate.mds");
Ani_ChiefWeapon = TRUE;
};
}
else if(slf.HitChance[NPC_TALENT_1H] >= 0)
{
Npc_SetTalentSkill(slf,NPC_TALENT_1H,0);
if(EquipedIndex_Chief == TRUE)
{
Mdl_ApplyOverlayMds(slf,"Humans_Pirate.mds");
Ani_ChiefWeapon = TRUE;
};
};
};
{
if(talent == NPC_TALENT_1H)
{
if(slf.HitChance[NPC_TALENT_1H] >= 60)
{
Npc_SetTalentSkill(slf,NPC_TALENT_1H,2);
if((LowHealth == FALSE) && (Ani_Shield_S == FALSE) && (EquipedIndex_Chief == FALSE))
{
Mdl_ApplyOverlayMds(slf,"humans_1hST2.mds");
};
if(EquipedIndex_Chief == TRUE)
{
Mdl_RemoveOverlayMds(slf,"humans_1hST2.mds");
Mdl_ApplyOverlayMds(slf,"Humans_Pirate.mds");
Ani_ChiefWeapon = TRUE;
};
}
else if(slf.HitChance[NPC_TALENT_1H] >= 30)
{
Npc_SetTalentSkill(slf,NPC_TALENT_1H,1);
if((LowHealth == FALSE) && (Ani_Shield_S == FALSE) && (EquipedIndex_Chief == FALSE))
{
Mdl_ApplyOverlayMds(slf,"humans_1hST1.mds");
};
if(EquipedIndex_Chief == TRUE)
{
Mdl_RemoveOverlayMds(slf,"humans_1hST1.mds");
Mdl_ApplyOverlayMds(slf,"Humans_Pirate.mds");
Ani_ChiefWeapon = TRUE;
};
}
else if(slf.HitChance[NPC_TALENT_1H] >= 0)
{
Npc_SetTalentSkill(slf,NPC_TALENT_1H,0);
if(EquipedIndex_Chief == TRUE)
{
Mdl_ApplyOverlayMds(slf,"Humans_Pirate.mds");
Ani_ChiefWeapon = TRUE;
};
};
};
6)Сохраняешь и жмешь компилировать
7)Кидаешь новые файлы в папку с скриптами
8)Собираешь все обратно
От всего этого не будет смысла если в В2 вставлены "костыли", если они вставлены тебе при попытке декомпилировать выдаст ошибку
А вообще почитай эти темы
https://worldofplayers.ru/threads/37749/
https://worldofplayers.ru/threads/36473/