Kategorie:Inventar: Unterschied zwischen den Versionen

Aus Skript-Wiki
Wechseln zu: Navigation, Suche
Zeile 15: Zeile 15:
 
[ActorID].removeItem (ObjectID) Count <br>
 
[ActorID].removeItem (ObjectID) Count <br>
 
[ActorID].addItem (ObjectID) Count <br>
 
[ActorID].addItem (ObjectID) Count <br>
Unsere "ActorID" ist der Player, die "ObjectID" sind das Goldnugget (Gem0GoldNugget) und die Goldmünzen (Gold001) und "Count" die jeweilige Anzahl.
+
Die "ActorID" ist der Player, die "ObjectID" sind das Goldnugget (Gem0GoldNugget) und die Goldmünzen (Gold001) und "Count" die jeweilige Anzahl.
  
  
Zeile 43: Zeile 43:
  
 
==== Bemerkung ====
 
==== Bemerkung ====
Durch die Variable 'doonce' ist der ganze Vorgang in dem letzten Script auf einen Durchlauf beschränkt. Danach wird die Prägestätte nicht mehr funktionieren, auch wenn sich noch mehrere Goldnuggets im Inventar des Players befinden (siehe dazu .
+
Durch die Variable 'doonce' ist der ganze Vorgang in dem letzten Script auf einen Durchlauf beschränkt. Danach wird die Prägestätte nicht mehr funktionieren, auch wenn sich noch mehrere Goldnuggets im Inventar des Players befinden (siehe dazu Kapitel 3).
  
 
==== Handhabung ====
 
==== Handhabung ====
Zeile 54: Zeile 54:
  
 
==== Aufgabenstellung ====
 
==== Aufgabenstellung ====
 +
Der Austausch von Goldnuggets gegen Geld im vorherigen Script soll nun so lange möglich sein, wie der Player noch Goldnuggets im Inventar hat.
  
 
==== Theorie ====
 
==== Theorie ====
 +
Es muss die Anzahl der Goldnuggets im Inventar überprüft werden. Solange diese größer als 0 ist, können weiterhin Münzen geprägt werden. <br>
 +
Der Befehl: <br>
 +
[ActorID].getItemCount [ObjectID] <br>
 +
"ActorID" ist wieder der Player, die "ObjectID" ist natürlich das Goldnugget (Gem0GoldNugget).
  
 
=== Realisierung ===
 
=== Realisierung ===
 +
Hier gibt es nun zwei Möglichkeiten: <br>
 +
1. entweder man belegt eine Variable mit der Anzahl der Nuggets und vergleicht diese Variable mit einem Wert.
 +
2. man vergleicht die Anzahl der Nuggets direkt mit einem Wert.
  
 
==== Umgebung ====
 
==== Umgebung ====
 
+
Das Scrit liegt wieder auf einem Activator.
 
==== Script ====
 
==== Script ====
  

Version vom 25. Oktober 2008, 01:05 Uhr

Allgemeine Bemerkung

Sowohl bei dem Inventar des Players, als auch dem von NPCs, gefallenen Gegnern und Truhen (etc.) spricht man von "Containern".
Sie funktionieren folglich alle nach dem gleichen Prinzip und können daher auch gleich behandelt und durch Skripten angesprochen werden.

Hinzufügen und Entfernen von Gegenständen

Anwendung

Aufgabenstellung

Durch das Aktivieren eines Gegenstandes im Spiel (z.B. eine Art "Münzpräge") soll ein Gegenstand (hier: Goldnugget) im Inventar des Players gegen mehrere andere (hier: 100 Goldmünzen) ausgetauscht werden.

Theorie

Das Austauschen wird dadurch erreicht, dass wir zuerst den geforderten Gegenstand, also das Goldnugget, aus dem Invnetar des Players entfernen und dann die 100 Goldmünzen dafür hinzufügen. Die Befehle:
[ActorID].removeItem (ObjectID) Count
[ActorID].addItem (ObjectID) Count
Die "ActorID" ist der Player, die "ObjectID" sind das Goldnugget (Gem0GoldNugget) und die Goldmünzen (Gold001) und "Count" die jeweilige Anzahl.


Realisierung

Umgebung

Das Script liegt auf dem Activator (z.B. der erwähnten Münzpräge), den der Player im Spiel betätigen soll.

Script

<tesscript> scn CoinScript

written by Leila Ithil
24.10.2008

short doonce

begin OnActivate player

  if doonce == 0
     player.removeItem Gem0GoldNugget 1
     player.addItem Gold001 100
     set doonce to 1
  endif

End </tesscript>

Bemerkung

Durch die Variable 'doonce' ist der ganze Vorgang in dem letzten Script auf einen Durchlauf beschränkt. Danach wird die Prägestätte nicht mehr funktionieren, auch wenn sich noch mehrere Goldnuggets im Inventar des Players befinden (siehe dazu Kapitel 3).

Handhabung

Das Script sollte als Objekt-Script genutzt werden.


Anzahl/ Menge bestimmter Items

Anwendung

Aufgabenstellung

Der Austausch von Goldnuggets gegen Geld im vorherigen Script soll nun so lange möglich sein, wie der Player noch Goldnuggets im Inventar hat.

Theorie

Es muss die Anzahl der Goldnuggets im Inventar überprüft werden. Solange diese größer als 0 ist, können weiterhin Münzen geprägt werden.
Der Befehl:
[ActorID].getItemCount [ObjectID]
"ActorID" ist wieder der Player, die "ObjectID" ist natürlich das Goldnugget (Gem0GoldNugget).

Realisierung

Hier gibt es nun zwei Möglichkeiten:
1. entweder man belegt eine Variable mit der Anzahl der Nuggets und vergleicht diese Variable mit einem Wert. 2. man vergleicht die Anzahl der Nuggets direkt mit einem Wert.

Umgebung

Das Scrit liegt wieder auf einem Activator.

Script

Handhabung

komplettes Inventar ablegen

Aktivieren im Inventar

Seiten in der Kategorie „Inventar“

Folgende 4 Seiten sind in dieser Kategorie, von 4 insgesamt.