Oblivion:Eigenschaften abfragen und ändern: Unterschied zwischen den Versionen
Keris (Diskussion | Beiträge) K |
Keris (Diskussion | Beiträge) K |
||
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
== Anwendung == | == Anwendung == | ||
=== Aufgabenstellung === | === Aufgabenstellung === | ||
− | Es sollen nach Wahl unterschiedliche Eigenschaften von Agarmir, einem | + | Es sollen nach Wahl unterschiedliche Eigenschaften von Agarmir, einem [[ob:NPC|NPC]], geändert werden. |
Zeile 33: | Zeile 33: | ||
Messagebox "Was soll geändert werden?" "Klasse", "Level" "Schwertkampf (setzen)" | Messagebox "Was soll geändert werden?" "Klasse", "Level" "Schwertkampf (setzen)" | ||
"Schwertkampf (erhöhen)" "Schwertkampf (Basiswert erhöhen)" "Basis-Gesundheit herstellen" "Nichts" | "Schwertkampf (erhöhen)" "Schwertkampf (Basiswert erhöhen)" "Basis-Gesundheit herstellen" "Nichts" | ||
+ | ;im CS muss der Inhalt der beiden obigen Zeilen in eine Zeile geschrieben werden! | ||
Set RealiseSelection to 1 | Set RealiseSelection to 1 | ||
endif | endif | ||
Zeile 85: | Zeile 86: | ||
− | {{ Scriptkategorie |Attribute und Fertigkeiten| | + | {{ Scriptkategorie |Attribute und Fertigkeiten|Level_1_Scripts|Eigenschaften abfragen und ändern }} |
Aktuelle Version vom 15. April 2009, 13:34 Uhr
Inhaltsverzeichnis
Anwendung
Aufgabenstellung
Es sollen nach Wahl unterschiedliche Eigenschaften von Agarmir, einem NPC, geändert werden.
Theorie
NPCs und auch der Player haben eine Menge von Eigenschaften. Diese können mit einzelnen Kommandos abgefragt und auf verschiedene Weise geändert werden. Häufig sind die Werte vom Datentyp unsigned Integer, deren Eigenheiten bei der Änderung zu berücksichtigen sind.
Realisierung
Umgebung
Agarmir lebt.
Script
<tesscript>scn ChangeActorValues
- Written by Milchmann
- 30.11.08
short Doonce short Button short RealiseSelection long ActorValue long NewActorValue long BaseValue long NewBaseValue
Begin GameMode
if Doonce == 0
set Doonce to 1 ; es soll nur einmal gemacht werden!
Messagebox "Was soll geändert werden?" "Klasse", "Level" "Schwertkampf (setzen)" "Schwertkampf (erhöhen)" "Schwertkampf (Basiswert erhöhen)" "Basis-Gesundheit herstellen" "Nichts"
- im CS muss der Inhalt der beiden obigen Zeilen in eine Zeile geschrieben werden!
Set RealiseSelection to 1
endif
if RealiseSelection Set Button to GetButtonPressed if Button == -1 return elseif Button == 0 Set RealiseSelection to 0 If GetIsClass Bard == 1 AgarmirRef.SetClass Warrior endif elseif Button == 1 Set RealiseSelection to 0 SetLevel 2 1
; Level wird auf das Playerlevel + 2 erhöht.
elseif Button == 2 Set RealiseSelection to 0 Set ActorValue to AgarmirRef.GetActorValue Blade Set ActorValue to ActorValue + 10 AgarmirRef.ForceActorValue Blade ActorValue
; Schwertkampf der Referenz wird um 10 erhöht
elseif Button == 3 Set RealiseSelection to 0 AgarmirRef.ModActorValue Blade 10
; Schwertkampf der Referenz wird um 10 erhöht
elseif Button == 4 Set RealiseSelection to 4 Set BaseValue to AgarmirRef.GetbaseActorValue Blade Set NewBaseValue to BaseValue + 10 AgarmirRef.SetActorValue Blade NewBaseValue
; der Basiswert Schwertkampf des Objects wird um 10
elseif Button == 5 Set RealiseSelection to 0 AgarmirRef.ResetHealth
; der NPC bekommt seine (Basis-)Gesundheit zurück
elseif Button == 6 Set RealiseSelection to 0 endif endif
End</tesscript>
Handhabung
Das Script kann als Quest- oder als Objectscript genutzt werden.
Weiterführende Hinweise
Weitere Scripts aus dieser Kategorie
Level 2
Level 3
{{#if: Attribute und Fertigkeiten | }}
{{#if: Level_1_Scripts | }}