@diegomez
Nie, prototyp to nie funkcja. Warunków można używać w funkcjach.
@MrocznyPaladyn
Nie jest to sprawa trywialna. Ja użyłbym któregoś z perceptionów do odpalania funkcji aktualizującej atrybuty jeśli w danym rozdziale jeśli jeszcze nie były w nim aktualizowane (co z kolei można kontrolować ustawiając któryś z aivarów).
Powtarzam: to nie jest sprawa trywialna i nie pytaj o gotowy kod. Napisałem to co powinieneś zrobić, potrzebujesz jeszcze tylko rozplanować to logicznie, dowiedzieć się czym są i jak działają perceptiony, aivary, i jak skonstruować odpowiedni warunek. Ale to już zrób we własnym zakresie.
@gothic1210
"Demon" to z punktu widzenia parsera stała typu całkowitoliczbowego (tak jak "const int Demon = 666;") (możesz ją sobie printnąć, to nawet dowiesz się co to za numerek

). Nie obiekt typu c_npc, a jedynie jego identyfikator. W przypadku prawdziwych npc da się uzyskać odniesienie do obiektu dzięki metodzie Hlp_GetNpc, która jako argument przyjmuje właśnie liczbowy identyfikator. Jednak działa to dzięki założeniu że każdy npc jest na świecie tylko w jednym egzemplarzu. Dla potwora, zwróciłoby po prostu jedynie pierwszy znaleziony egzemplarz. Jedyny sensowny sposób zdobycia odniesienia do konkretnego potwora to zmienna self / other, użyta w funkcji odpalanej przez któryś z perceptionów (o czym napisałem).
Ciągle mylicie instancje z identyfikatorami, czyli obiekty z numerkami, a do tego jeszcze z definicjami ("szablonami" obiektów). Prototypy to jeszcze co innego, bo z kolei "szablony" definicji. Tyle razy już pisałem jak to działa, chyba muszę zebrać to w ładniejszy artykuł / rozbudować go
Niestety, ale działanie parsera w tym temacie jest momentami przeciw-intuicyjne.
Swoją drogą zabawna sprawa że Zysk, który niby tyle lat pisał skrypty, nie wierzył mi w to kiedy to pierwszy raz pokazałem