mam skrypt z woga odnosnie zmiany koloru czcionki NPC w zależności od stosunku do głównego bohatera. jednak odczuwam lagi przy inicjowaniu przez tricktocka. wolałbym to zrobić perceptionami, jednak w wersji poniżej funkcja nie działa
func void EVT_UpdateStatus_FocusName() {
const int zCView_SetFontColor_offset = 7339392; //6FFD80 thiscall(zCColor)
var int col;
var int att;
var oCNpc her; her = Hlp_GetNpc(hero);
if(Hlp_Is_oCNpc(her.focus_vob)) {
var oCNpc oth; oth = MEM_PtrToInst(her.focus_vob);
att = oth.attitude;
if(att == ATT_FRIENDLY) {
col = RGBAToZColor(0,255,0,255); //zielony przyjaciel
}
else if(att == ATT_ANGRY) {
col = RGBAToZColor(255,180,0,255); //Orange zły
}
else if(att == ATT_HOSTILE) {
col = RGBAToZColor(255,0,0,255); //czerwony wróg
}
else if(att == ATT_NEUTRAL) {
col = RGBAToZColor(255,255,255,255); //Weiß
};
}
else {
col = RGBAToZColor(255,255,255,255); //Weiß
};
var int ptr; ptr = MEM_Alloc(4);
MEM_WriteInt(ptr, col);
CALL_IntParam(ptr);
CALL__thiscall(MEM_ReadInt(screen_offset), zCView_SetFontColor_offset);
MEM_Free(ptr);
};