Autor |
|
Parcifal
Crusader
Dabei seit: Juni 2002
Geschlecht:
Herkunft: OB
Beiträge: 397
|
|
|
11.11.2002, 14:55 |
|
Hasenködel
Archer
Dabei seit: Oktober 2002
Geschlecht: keine Angabe
Herkunft:
Beiträge: 18
|
|
@ Parcifal
Topic: Als erstes erstellst du ein Topic im Dialog... - das hast du wahrscheinlich schon gemacht. Dann musst du dein Topic einer Figur zuordnen. Das geht so. 1: Rufe den NPC auf der das Topic bekommen soll. 2: erstelle einen Script der etwa so lautet:
begin meinScript ; für meinScript setze einen beliebigen Sciptnamen ein.
AddTopic "DeinTopic"
end meinScript
das war es schon fast, jetzt brauchst du dein Script nur noch dem NPC zuweisen.
Schwert: wenn du das Schild nur dabei oder angelegt hast ? Angelegt so (nicht getestet):
begin deinScript
short OnPCEquip
short OnActivate
if ( player->Journal "deinJournal"!=100 )
if ( player->OnPCEquip "deineSchildId"== 1)
Journal deinJournal 100
stopScript deinScript
elseif ( player->OnPCEquip "deineSchildId"==0)
if ( player->OnActivate==1)
MessageBox " Das Schwert läst sich nicht rausziehen."
endif
endif
endif
elseif ( player->Journal "deinJournal">=100 )
stopScript
endif
endif
end deinScript
; **** = deinJounal - Ich würde das ganze mit einem Journal Eintrag machen dann überprüft er nur einmal ob du das Schwert nehmen kannst oder nicht. Journal Eintrag z.b. Endlich ich habe Ex.... Ich weis aber net ob das so mit dem Journal Eintrag geht, habe das Nochnet gemacht!
Dieser Beitrag wurde von Hasenködel am 11.11.2002, 19:03 Uhr editiert.
|
|
11.11.2002, 17:35 |
|
Garak
Admin
Dabei seit: Juli 2002
Geschlecht:
Herkunft: Cardassia Prime
Beiträge: 9256
|
|
das mit dem Journal geht über
getjournalindex JournalID
das Journal ist dabei immer dem player zugeordnet, player -> ist daher nicht nötig!
Das script auf dem NPC hat einen Haken: es wird ständig ausgeführt, sobald der NPC in verarbeitungsreichweite kommt - auch ohne daß der Player ihn wahrnimmt! Sollte vieleicht eher mit einer Onactivate - oder NPC -> getdistance player -Abfrage gelöst werden bzw, falls es zu einer Auftragskette gehört im results-feld eines früheren threads stehen.
die If/endif -konstruktionen würd ich noch mal durchdenken! Du hast 3 if und 5 endif anweisungen! Elseif gehört noch zum davor gestarteten if und benötigt kein eigenes endif!
__________________ drei mal dürft ihr raten, wer grade seine Signatur geschrottet hat...geht aber wieder - allerdings solltet Ihr noch die Finger von den Avataren lassen
Dieser Beitrag wurde von Garak am 12.11.2002, 10:41 Uhr editiert.
|
|
12.11.2002, 10:40 |
|
Parcifal
Crusader
Dabei seit: Juni 2002
Geschlecht:
Herkunft: OB
Beiträge: 397
|
|
Ägypten? Hyroglyphen? Arrrrrg ich gebs bald auf. If und endif und was weiß ich.......ich will doch nur das meine NPC's reden und das mit dem Schwert geht nur per Script......aua......mal sehen.
|
|
12.11.2002, 13:53 |
|
Garak
Admin
Dabei seit: Juli 2002
Geschlecht:
Herkunft: Cardassia Prime
Beiträge: 9256
|
|
Ich versuch jetzt mal, Hasenködels script ein bisschen glattzubügeln, vielleicht wird es dann weniger ägyptisch...
Ach ja, ich definiere eine neue globale Variable "Excaliburflag" vom typ short mit Startwert 0 und splitte das Script ein wenig, um es übersichtlicher zu machen:
1. Script, auf dem Schild
begin Schildscript
short onPCadd
short onPCdrop
if (Excaliburflag >= 0)
if (onPCadd == 1)
set Excaliburflag to 1
endif
if (onPCdrop == 1)
set Excaliburflag to 0
endif
endif
end Schildscript
2. Script auf dem Schwert
begin Schwertscript
if (onactivate == 1)
if (Excaliburflag == 0)
Messagebox " Das Schwert steckt fest "
return; bricht das Script ab, ohne das Schwert zu nehmen
else
set excaliburflag to -1 ; -1 bei Morrowind oft als Signal für Auftrag abgeschlossen
activate ; führt die standartaktivierung (hier : Aufheben) aus
endif
endif
end Schwertscript
Ich hoffe, das ist übersichtlicher so!
__________________ drei mal dürft ihr raten, wer grade seine Signatur geschrottet hat...geht aber wieder - allerdings solltet Ihr noch die Finger von den Avataren lassen
|
|
13.11.2002, 12:35 |
|
Parcifal
Crusader
Dabei seit: Juni 2002
Geschlecht:
Herkunft: OB
Beiträge: 397
|
|
Beim Schwert bin ich noch nicht angelangt, werde es aber alsbald probieren. Zur Zeit erstelle ich die Ritter und Dialoge. Was genau muß ich machen um den Greatings Schritt zu übergehen, so daß z.B. der Begriff Excalibur sofort unter Topics steht?
|
|
13.11.2002, 13:44 |
|
Garak
Admin
Dabei seit: Juli 2002
Geschlecht:
Herkunft: Cardassia Prime
Beiträge: 9256
|
|
Hasenködel's Script mit dem Addtopic wird funktionieren, aber warum sollte die Spielfigur etwas wissen, wovon er/sie noch nie etwas gehört hat? Realistischer ist also doch der Weg über das Greeting, ein neues Gerücht oder in Buch mit If onactivate/addtopic-Script!
__________________ drei mal dürft ihr raten, wer grade seine Signatur geschrottet hat...geht aber wieder - allerdings solltet Ihr noch die Finger von den Avataren lassen
|
|
13.11.2002, 13:58 |
|
Parcifal
Crusader
Dabei seit: Juni 2002
Geschlecht:
Herkunft: OB
Beiträge: 397
|
|
Äh....verstehe ich das falsch oder reden (schreiben ) wir aneinander vorbei. Ich als NPC spreche z.B. Gawain an und dort soll im Topic z.B. Excalibur stehen (ohne den Umweg über Greatings), denn Gawáin weiß natürlich von dem Schwert usw. zu berichten. Das meinte ich....
|
|
13.11.2002, 19:32 |
|
Garak
Admin
Dabei seit: Juli 2002
Geschlecht:
Herkunft: Cardassia Prime
Beiträge: 9256
|
|
Schon, aber wenn Gawain nicht von selbst über Excalibur erzählt, wie soll die Spielfigur darauf kommen, danach zu fragen? Darfst nie vergessen, daß der Mensch vor der Tastatur nicht unbedingt den selben Kenntnisstand wie die Figur die er steuert haben muss...
__________________ drei mal dürft ihr raten, wer grade seine Signatur geschrottet hat...geht aber wieder - allerdings solltet Ihr noch die Finger von den Avataren lassen
|
|
14.11.2002, 12:55 |
|
Parcifal
Crusader
Dabei seit: Juni 2002
Geschlecht:
Herkunft: OB
Beiträge: 397
|
|
Boooh du Besserwisser.....du sollst mir helfen und mich nicht belehren
Nein, aber im Ernst. Recht hast Du und ich bin ja nun auch dabei. Aber ich habe nun über Greatings mit Parcifal gesprochen. Hab dann die Topics Excalibur, Artus, Gral usw..... wie bekomme ich die denn dann z.B. nach Lancelot, denn wenn ich den treffe, weiß "ich" doch worum es geht und kann "ihn" darauf ansprechen, oder nicht? Dann wäre da noch: Ich hab nen Zettel geschrieben und wenn ich den aufhebe, soll ins Journal eine Nachricht erscheinen. Geht nur über Script? Hab versucht den Script:
begin Nachricht
RK_Lamorack 20 (Eintrag im Tagebuch)
end Nachricht
klick ich dann auf das Speichersymbol (Diskette), lande ich auf der Windoof Oberfläche.......
|
|
14.11.2002, 19:48 |
|
Hasenködel
Archer
Dabei seit: Oktober 2002
Geschlecht: keine Angabe
Herkunft:
Beiträge: 18
|
|
|
15.11.2002, 17:34 |
|
Garak
Admin
Dabei seit: Juli 2002
Geschlecht:
Herkunft: Cardassia Prime
Beiträge: 9256
|
|
Wenn Du den Zettel erst lesen möchtest, muss da ein
If (onactivate ==1)
...
endif
drumrum. Oder, wenn die Schrift auf dem Zettel gross genug ist
if (getdistance player <= 100)
...
endif
, und Du schnappst die Nachricht im Vorbeilaufen auf...
Wenn Dein Parci auch einen Text zu den Stichwörtern hatte, merkt sie sich der PC, und sdollte alle, die was dazu zu sagen haben drauf ansprechen können - falls Du ganz sicher gehen willst, spendier Parci"s Greeting noch die Results
Addtopic "Excalibur"
addtopic "artus"
und so weiter!
__________________ drei mal dürft ihr raten, wer grade seine Signatur geschrottet hat...geht aber wieder - allerdings solltet Ihr noch die Finger von den Avataren lassen
|
|
18.11.2002, 09:51 |
|
|