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. Есть ли ограничение на количество клавиш?