World of Gothic Archiv
Alle Beiträge von Elessar
Seite 20 von 20 « Erste 16  17  18  19  20 
14.09.2002, 13:28 #476
Elessar
Beiträge: 495
Gegenstand -
Überprüf ihn mit der GetItemPossessedBy() (oder so ähnlich)
14.09.2002, 16:16 #477
Elessar
Beiträge: 495
"... kann nicht kompiliert werden." Hilfe! -
Nach if-Bedingung nie einen Strichpunkt!
code\:

//::///////////////////////////////////////////////
//:: Default: On User Defined
//:: act_attkdummy
//:: Copyright (c) 2002 Shirat.
//:://////////////////////////////////////////////
/*
Determines the course of action to be taken
on a user defined event.
*/
//:://////////////////////////////////////////////
//:: Created By: Me
//:: Created On: September 14, 2002
//:://////////////////////////////////////////////
int nEvent = GetUserDefinedEventNumber(); //Art des Ereignisses abfragen
int nTime = GetTimeHour(); //Aktuelle Zeit in eine Variable
//speichern


void main()
{
if(nEvent == 1001)
{
if((nTime >= 6 ) && (nTime < 12)) //Wenn es zwischen 6 und 12 Uhr ist, dann...
{
RemoveEffect(OBJECT_SELF,GetFirstEffect(OBJECT_SELF)); //Alle Effekte aufheben
ActionRandomWalk(); //Zufllig herumlaufen
}

if((nTime >= 12) && (nTime < 18)) //Wenn es zwischen 12 und 18 Uhr ist, dann...
{
ActionAttack(GetNearestObjectByTag("CombatDummy")); //Das die naechstgelegene
//Uebungspuppe angreifen
}

if((nTime >= 18) || (nTime < 6)) //Wenn es zwischen 18 und 6 Uhr ist, dann...
{
ApplyEffectToObject(DURATION_TYPE_PERMANENT,EffectSleep(),OBJECT_SELF); //Schlafen
}
}
} //UND WARUM KLAPPT DIESES VERDAMMTE SCRIPT NICHT!?


14.09.2002, 18:18 #478
Elessar
Beiträge: 495
Gegenstand -
Hm, ist der tag und die ResRef Vorlage dieselbe? Ansonsten hast du bei GetItemPossessedBy die ResRef Vorlage eingegeben anstat des Tags...
15.09.2002, 07:55 #479
Elessar
Beiträge: 495
"... kann nicht kompiliert werden." Hilfe! -
Eigentlich beantwortet es deine Frage schon... Wenn du die Variable innerhalb einer Funktion deklarierst, dann ist es eine lokale Variable und gilt nur gerade in dieser Funktion. Deklarierst du sie ausserhalb jeglicher Funktion, ist es eine globale Variable und kann in allen Funktionen innerhalb dieses Scripts abgefragt oder verändert werden...
15.09.2002, 08:00 #480
Elessar
Beiträge: 495
Gegenstand -
Das ganze Zeuchs steht in den Eigenschaften des Gegenstands, der Tag hat, wenn man ihn nicht verändert meist Grossbuchstaben, also eher Stadtportalrolle. Die ResRef Vorlage kann nicht verändert werden, sie ist immer klein geschrieben und besteht aus höchstens 16 Buchstaben, man braucht sie um einen Gegenstand zu erstellen (also CreateObject()). Bei GetItemPossessedBy braucht man den Tag des Items, schau am besten bei deiner Rolle in den Eigenschaften nach (auf deutsch heisst es glaube ich Kennzeichnung)...
15.09.2002, 11:04 #481
Elessar
Beiträge: 495
Gegenstand -
Hm... komisch... keine Ahnung woran es liegt...
15.09.2002, 11:09 #482
Elessar
Beiträge: 495
Wiederbelebung -
Man sollte es durch eine selbstgemachte Funktion so einrichten können, also etwa so:
code\:

void ActionCreateObject(int nType, string sTemplate, location lLocation)
{
CreateObject(nType, sTemplate, lLocation);
}

void main()
{
Action...
Action...
ActionWait(60.0);
ActionDoCommand(ActionCreateObject);
}

15.09.2002, 13:12 #483
Elessar
Beiträge: 495
Wiederbelebung -
Eine Möglichkeit wäre auch noch DelayCommand(60.0, );
Und der Dachs der bei euch erscheint bedeutet eindeutig, dass ihr die falsche ResRef Vorlage angegeben habt (bzw. eine nicht existente)., bei Kreaturen steht die ResRef Vorlage unter Erweitert bei den Eigenschaften.... Glaubt mir es muss daran liegen, schon viele hatten das Problem und merkten dann nach 30 Posts, dass sie tatsächlich einen falschen String angegeben haben...

Rhaegar: Es gibt einige Funktionen die man nicht verzögern kann und da muss man so n Workaround machen...
22.09.2002, 07:56 #484
Elessar
Beiträge: 495
rückrufstein im eigenen modul -
DTime: Der Witz ist ja, dass Gegenstände keine Scripts haben, du musst das ganze also unter ItemActivatet oder so in den Module Eigenschaften scripten, sollte aber weiter kein Problem sein...
23.09.2002, 05:01 #485
Elessar
Beiträge: 495
kampf aufgeben und konversation starten -
Es gibt eine Funktion die ungefähr SurrenderToEnemy heisst, die könnte dir bestimmt weiterhelfen.
23.09.2002, 20:20 #486
Elessar
Beiträge: 495
rückrufstein im eigenen modul -
Füge das folgende Script beim Portal ein, das dich zurückbringen soll:
code\:

void main()
{
object oPC = GetEnteringObject();
location LastRecallUsed = GetLocalLocation(oPC(),"LastRecallUsed");
LastRecallUsed = GetLocation(GetItemActivator());
SetLocalInt(GetItemActivator(),"HasRecalled",0);
AssignCommand(GetItemActivator(),JumpToLocation(LastRecallUsed));
}



nicht getestet, nicht kompiliert...
25.09.2002, 11:19 #487
Elessar
Beiträge: 495
rückrufstein im eigenen modul -
Arg, hau mich... danke
code\:


void main()
{
object oPC = GetEnteringObject();
location LastRecallUsed = GetLocalLocation(oPC,"LastRecallUsed");
LastRecallUsed = GetLocation(GetItemActivator());
SetLocalInt(GetItemActivator(),"HasRecalled",0);
AssignCommand(GetItemActivator(),JumpToLocation(LastRecallUsed));
}



aber ich sagte nicht kompiliert ;) und so schwer war der Fehler nu auch ned zum finden ;)
25.09.2002, 11:29 #488
Elessar
Beiträge: 495
Zauber Wirken..Besondere Eigenschaft...need Help -
OnItemActivated in den Moduleigenschaften... da lässt sich einiges machen...
26.09.2002, 05:45 #489
Elessar
Beiträge: 495
Zwischesequenzen per Gameengine? -
Einzige mir bekannte Möglichkeit ist den PC per SetCommandable auszuschalten und dann etwas zu scripten, wobei man hier auch den PC herumkomandieren kann, wenn man ihn kurz kommandierbar macht, eine aktion zuweist und ihn dann gleich wieder unkommandierbar macht. Allerdings ist der PC dann immer im Bild...
26.09.2002, 11:34 #490
Elessar
Beiträge: 495
Zwischesequenzen per Gameengine? -
Soweit ich weiss nicht, da die Kamera immer auf den Spieler zentriert ist. Man kann aber trotzdem einiges anfangen würde ich sagen, nicht allzuviel, aber einiges.
01.10.2002, 18:31 #491
Elessar
Beiträge: 495
Zwischesequenzen per Gameengine? -
DeadPoet hat es, glaube ich mit Paralyse gemacht, was man allerdings auch resisten kann...

Du weisst dem PC Aktionen zu.
ActionMoveTo...
ActionSpeak...
SetCommandable(FALSE, oPC);

und am Schluss dann

SetCommandable(TRUE, oPC);
03.10.2002, 09:15 #492
Elessar
Beiträge: 495
Zwischesequenzen per Gameengine? -
Das ist ne nette Idee, werde ich vielleicht mal ausprobieren
03.10.2002, 12:56 #493
Elessar
Beiträge: 495
Zwischensequenzen ohne PC - Lösung - Zwischensequenzen ohne PC - Lösung
Dank der super Idee von Iron Mouse nun hier eine , wie ich finde recht gute Lösung:

Man kann zwei Dinge zusammensetzen:
1) SetCommandable
2) Polymorph

1) Wie SetCommandable funktioniert sollte eigentlich klar sein, Beispiel:
SetCommandable(TRUE, oPC);
Action...
Action...
DelayCommand(0.5, SetCommandable(FALSE, oPC));

2) In diesem Thread:
http://nwn.bioware.com/forums/viewt...light=polymorph
könnt ihr nachschlagen, wie man neue Polymorph effeckte macht. Man macht also einen Nullmensch als Polymoprh Model und im Endeffeckt hat man einen unsichtbaren PC, der nicht befehligt werden kann...
03.10.2002, 17:43 #494
Elessar
Beiträge: 495
Zwischensequenzen ohne PC - Lösung -
Die Kamera bleibt immer auf den Spieler zentriert... Bei dieser Varainte kannst du durch einfaches Bewegen des PCs die Kamera verschieben...
04.10.2002, 18:52 #495
Elessar
Beiträge: 495
Zwischensequenzen ohne PC - Lösung -
Das geht wohl nicht per Script, aber ich befinde das nicht als störend, ist schliesslich nur was kleines...
Seite 20 von 20 « Erste 16  17  18  19  20