World of Gothic Archiv > NWN-Hilfe
Jack in the Box
Seite 1 von 1  1 
30.07.2003, 20:13 #1
Alamar
Beiträge: 4.050
Jack in the Box
[Au Backe, was will der Scriptidiot wieder ]

Was ganz einfaches:
Wenn der Char ne Kiste öffnet soll die Kiste zerstört werden und Gegner kommen raus, wie mach ich das? Ich Depp habs durch einfaches kopieren natürlich nicht geschafft

Übrigens, damit niemand behauptet ich schaffe nichts: Meine sitzenden NPCs... äh sitzen :D
31.07.2003, 09:58 #2
Kardor
Beiträge: 523
Lösung:
Ok das hier ins OnOpen der Kiste:

code\:

//jackoopen idea by Alamar scripted by kardor 31/07/03
//dieses script kommt ins OnOpen der entsprechenden Kiste
//falls die Kiste unzerstoerbar sein soll einfach auf Handlung setzen

//ins OnDeath der Kiste kommt das script jackodeath

void main()
{
int HP = GetCurrentHitPoints(OBJECT_SELF); //wieviel Hitpoints hat die kiste
SetPlotFlag(OBJECT_SELF, FALSE); //stellt sicher das die Kiste zerstoerbar ist
ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectDamage(HP), OBJECT_SELF);//Kiste kaputt :)

}



und das hier ins OnDeath

code\:

//jackodeath idea by Alamar scripted by kardor 31/07/03
//dieses script kommt ins OnDeath der entsprechenden Kiste
//falls die Kiste unzerstoerbar sein soll einfach auf Handlung setzen

//ins OnOpen der Kiste kommt das script jackoopen


void main()
{

location loc = GetLocation(OBJECT_SELF);

object oMonster = CreateObject(OBJECT_TYPE_CREATURE,"monster", loc);
//statt "monster" die RESREF der gewuenschten Kreatur
object oPlayer = GetNearestCreature(CREATURE_TYPE_PLAYER_CHAR,PLAYER_CHAR_IS_PC, oMonster, 1);
//sucht den Spieler der am naechsten zur Kreatur steht und...
AssignCommand(oMonster, ActionAttack(oPlayer));
//..greift diesen an


}



das script funktioniert sowohl wenn der Spieler die Kiste zerstört(sofern du ihm diese Möglichkeit geben willst), als auch beim öffnen


___________________________

Pilze Band I - das NWN Modul ;)
Niemand hat die Absicht eine Mauer zu baun. Außer uns!
[/font]
23.08.2003, 01:15 #3
Alamar
Beiträge: 4.050

Das erste Script funzt nicht, da zerspringt nur die Kiste und kein Monster erscheint. Zerstör ich die Kiste aber, erscheint eins.
Soll heißen, zerstören löst nicht OnDeath aus, wenn die Kiste scriptisch zerstört wird :D
23.08.2003, 10:54 #4
Kardor
Beiträge: 523

^^ ja genau. Deshalb wird die Kiste auch nicht mit DestroyObject zerstört, sondern dadurch, dass alle Hitpoints abgezogen werden...hmm also bei mir hats funktioniert...komisch.

Werds mir nochmal anschaun, bin heute allerdings den ganzen Tag weg, kann also noch bisschen dauern.
24.08.2003, 09:20 #5
Kardor
Beiträge: 523

Habs gerade nochmal bei mir getestet, da funktioniert es einwandfrei. Wenn man die Kiste öffnet zerspringt sie und es erscheint ein Monster.
Ka warums bei dir nicht geht

Du kannst mal in das erste Script vor ApplyEffectTo...
einfügen:

code\:
ExecuteScript("jackodeath" ,OBJECT_SELF);


Bei mir führt das dann allerdings dazu, dass zwei Monster erscheinen....bei dir dürfte dann wenigstens eins kommen.

Trotzdem sehr merkwürdig


___________________________

Pilze Band I - das NWN Modul ;)
Niemand hat die Absicht eine Mauer zu baun. Außer uns!
[/font]
Seite 1 von 1  1