World of Gothic Archiv > Editing
RTN: Routine Change failed.
Seite 1 von 1  1 
08.03.2003, 11:44 #1
Mudfreak
Beiträge: 446
RTN: Routine Change failed.
Hallo

Hab ma wieder ein Problem. Ich hab einem NPC einen Tagesablauf gegeben. Der funktioniert auch perfekt. Aber nach einem Gespräch mit dem Charakter soll er seinen Tagesablauf ändern. Dazu hab ich ins Dia Script Npc_ExchangeRoutine (self,"Guide"); geschrieben. Das stimmt auch und wird vom Compiler richtig erkannt. Dann im NPC script mach ich unter dem Tagesablauf noch zusätzlich

FUNC VOID Rtn_Guide_8032 ()
{
TA_FollowPC (23,00,16,00,"PSI_TEACH_TRAIN");
TA_FollowPC (16,00,23,00,"PSI_TEACH_TRAIN");
};

rein. Dann müsste das auch funktionieren. Leider nein. ZSPY gibt beim spielen immer die Fehlermeldung Routine Change failed aus. Hab ich was vergessen oder wo steckt der Fehler?

Mudfreak

P.S: Noch eine andere Frage. Wie kann ich im Spacer Objekte wie zb Wegpunkte anwählen ohne 1000000 mal draufklicken zu müssen. Was gibts für nen Trick?
08.03.2003, 23:59 #2
Harri
Beiträge: 214

Für dein 1. Problem hab ich keine Lösung.
Aber wegen der Makierung: Versuch mal nicht die Spitze des Pfeils zur Orientiereung sondern die Mitte des Mousecursors.
09.03.2003, 08:49 #3
Mudfreak
Beiträge: 446

Also das Problem mit dem Spacer hab ich in den Griff bekommen. Aber leider das Scriptproblem noch nicht. Hab auch keine Ahnung an was das liegen könnte.
09.03.2003, 18:56 #4
HornOx
Beiträge: 1.458

Hast du ein AI_ContinueRoutine nach dem TA-Wechsel aufgerufen? IMO ist es sinnvoll die B_irgendwas-funktionen anstatt direkt der externen funktionen zu benutzten...
quote:
//////////////////////////////////////////////////////////////////////////
// B_ExchangeRoutine
// =================
// Ändert den Tagesablauf des angegebenen NSCs
//
// VORSICHT: Auf KEINEN Fall für 'self' innerhalb eines Dialoges
// benutzen, da AI_ContinueRoutine() den Dialog freezed!!!
//////////////////////////////////////////////////////////////////////////
func void B_ExchangeRoutine(var int npcInstance, var string newRoutine)
{
PrintDebugNpc (PD_ZS_DETAIL, "B_ExchangeRoutine");

var C_NPC npc;
npc = Hlp_GetNpc(npcInstance);

Npc_ExchangeRoutine(npc, newRoutine);
AI_ContinueRoutine (npc);
};
10.03.2003, 06:10 #5
Mudfreak
Beiträge: 446

Danke. Habs hinbekommen.
Seite 1 von 1  1