const int SPL_DedMahno = 64; //Превращение в деда Махно
spell = SPL_DedMahno ;
func int Spell_Logic_Trf DedMahno (var int manaInvested)
{
Npc_SetActiveSpellInfo(self, DedMahno );
return SPL_SENDCAST;
};
if (Hlp_GetInstance(self) == Hlp_GetInstance(PC_Hero))
{
self.flags = NPC_FLAG_GHOST;
AI_Teleport(self,"PC_HERO");
};
А что означают префиксы R_ и C_?
// LOOK Autoaiming
// Seitenwinkel: +/- 60° Hцhenwinkel: +/- 45°
ani ("c_look_1" 9 "" 0.0 0.0 . "Hum_Look_Autoaim_M01.asc" F 0 0)
ani ("c_look_2" 9 "" 0.0 0.0 . "Hum_Look_Autoaim_M01.asc" F 1 1)
ani ("c_look_3" 9 "" 0.0 0.0 . "Hum_Look_Autoaim_M01.asc" F 2 2)
ani ("c_look_4" 9 "" 0.0 0.0 . "Hum_Look_Autoaim_M01.asc" F 3 3)
ani ("c_look_5" 9 "" 0.0 0.0 . "Hum_Look_Autoaim_M01.asc" F 4 4)
ani ("c_look_6" 9 "" 0.0 0.0 . "Hum_Look_Autoaim_M01.asc" F 5 5)
ani ("c_look_7" 9 "" 0.0 0.0 . "Hum_Look_Autoaim_M01.asc" F 6 6)
ani ("c_look_8" 9 "" 0.0 0.0 . "Hum_Look_Autoaim_M01.asc" F 7 7)
ani ("c_look_9" 9 "" 0.0 0.0 . "Hum_Look_Autoaim_M01.asc" F 8 8)
aniComb ("t_look" 9 "t_look" 0.3 0.3 M. "c_look_" 9)
- Объекты Dummy с именем zs_POS0... zs_POSN, где N - количество исходных позиций персонажа.
*HELPEROBJECT {
*NODE_NAME "ZS_POS0"
*NODE_TM {
*NODE_NAME "ZS_POS0"
*TM_ROW0 1.0 0.0 0.0
*TM_ROW1 0.0 1.0 0.0
*TM_ROW2 0.0 0.0 1.0
*TM_ROW3 -46.2848 -65.445 97.4066
*TM_POS -46.2848 -65.445 97.4066
*TM_ROTAXIS 0.0 0.0 0.0
*TM_ROTANGLE 0.0
*TM_SCALE 1 1 1
*TM_SCALEAXIS 0 0 0
*TM_SCALEAXISANG 0 0 0
}
}
Dummy объект имеет приставку BIP_ когда используется в качестве точки опоры (кости) и определения точки фокуса.В исходнике для компиляции тип этих объектов должен быть "HELPEROBJECT"
Можешь выложить функцию, вызываемую триггером, если не трудно?Я проверку урона по ГГ делал через связку триггер-скрипт и состояние атакующего.
Каждый цикл проверяется здоровье ГГ и сравнивается с ранее сохраненным показателем здоровья в переменной. Если в момент состояния атаки НПЦ здоровье ГГ уменьшается относительно ранее сохраненной переменной, обрабатываться урон по ГГ, а текущее здоровье записывается в переменную. Атакующий определяется из состояния атаки ZS_Attack для людей или ZS_MM_Attack для монстров и орков. Таким образом реализовал ядовитыех шершней.
Возможно позже, обработка урона ГГ завязана не только на функции триггер-скрипта, да и сама функция вызываемая через триггер-скрипт содержит не только обработку урона для ГГ а еще около тысячи строк кода.Можешь выложить функцию, вызываемую триггером, если не трудно?
Всем привет!
Словом, жду советов от знающих людей![]()
1. Где меняется назначение клавиш?
Все ключи из списка "В файле Gothic.ini есть секция KEYS:" прописанны в движке игры (engine) gothic2.exe и поменять их невозможно. В Ребалансе идет замещение скрипта, к. выполняется при вызове "карта" из \PrjGOTHIC\Story\Dialog_Mobsis\B_OnHotkey.d через внешнюю функцию func int player_hotkey_screen_map()1. Где меняется назначение клавиш? В Ребалансе, например, вместо карты, стоит спринт, а карта убрана совсем.
func int player_hotkey_screen_map()
{
var int OldInstance;
var int NewInstance;
if(Npc_HasItems(hero,itmi_keyring) >= 1)
{ OldInstance = itmi_keyring;
return OldInstance; };
instance ITMI_KEYRING(C_Item)
{
name = "Кольцо для ключей";
mainflag = ITEM_KAT_DOCS;
flags = ITEM_MISSION;
visual = "ItKe_Key_01.3ds";
material = MAT_METAL;
on_state[0] = Use_keyring;
scemeName = "MAP";
description = name;
конечно, см. ответ #3219.2. Есть ли ограничение на количество клавиш?