German Questitem

16 replies
Goto Page
To the start Previous 1 Next To the start
21.06.13 04:31:36 pm
Up
Pehlivan
User
Offline Off
Hallo,

Wenn man einen Entity(z.B ein Pirat) anspricht, also mit
Code:
1
on:use
,dass dann ein Item spawnt, also nach den man den Dialogue abbricht mit
Code:
1
button:action=close, (BEISPIEL)!
, dann spawnt das Item nach dem Ansprechen und man muss das Item zu den Entity bringen, ohne, dass man das Item droppen kann,dann kommen neue Dialogue zu den Entity.EDIT:Das Item sollte auch in einer bestimmten Position spawnen
21.06.13 04:52:31 pm
Up
Hurri04
Super User
Offline Off
ich habe keine ahnung, was du uns mitteilen willst.

wenn's was wichtiges ist: versuchs nochmal, vorzugsweise mit vollständigen deutschen sätzen.
21.06.13 05:08:08 pm
Up
Pehlivan
User
Offline Off
ich weiß es ist schwierig zu beschreiben.Hmm ich überlege...
aja bei der 2Adv Map muss man doch den Piraten Holz und Steine bringen, dass meine ich
21.06.13 06:52:06 pm
Up
Westbeam
User
Offline Off
Aaaah achso, du willst also einen Piraten erstellen, dem du Holz und Steine bringen kannst? ...

Guck dir doch einfach den Script von dem Abenteuer-Piraten an.
22.06.13 12:45:08 pm
Up
Pehlivan
User
Offline Off
Wollte ich ja aber da gibts nur die Paths von den Piraten
EDIT:Ich hab die Scripts gefunden, aber die sind zu schwer für einen Neuling.Könnte es jemand leichter definieren?
2EDIT:Da ich kein neues Thema öffnen möchte hier die Frage:
Kann mir einer ein Beispiel geben mit "on:reach"?
edited 4×, last 26.06.13 05:36:26 pm
26.06.13 06:13:17 pm
Up
Nova
User
Offline Off
on:reach ist einfach nur Event, welches ausgeführt wird, wenn eine Einheit ein bestimmtes Info bei einem Pfad erreicht wird.
Pack es in ein bestimmtes Info rein, und es wird ausgeführt, wenn sich beispielsweise ein Pirat zu dem Info begibt. (Mittels s2 cmd unitpath)
Hexenverbrennung, Inquisition, Kreuzzüge... Wir wissen, wie man feiert! - Ihre Kirche
27.06.13 09:10:21 am
Up
Pehlivan
User
Offline Off
Aber wie soll ich es schreiben?
Code:
1
on:reach "Klasse" , Typ // Das meine ich
27.06.13 10:56:06 am
Up
Nova
User
Offline Off
on:reach reagiert auf jede Einheit, die das Info durch s2 cmd unitpath erreicht.
Also ganz einfach
Code:
1
2
3
4
on:reach
{
     msg "Irgendjemand hat das Info erreicht!";
}



Kleines Beispiel gefällig?

Beispiel für unitpath und reach >
Hexenverbrennung, Inquisition, Kreuzzüge... Wir wissen, wie man feiert! - Ihre Kirche
27.06.13 11:57:50 am
Up
Pehlivan
User
Offline Off
Und wie kann man noch einen Script für den Piraten adden?
Und Danke Nova!
(Sollte kein Spamm sein)Weiß wirklich niemand wie man ein Questitem macht?Also man muss im Inventar bestimmte Items haben und das dem Entity geben.
us
27.06.13 12:26:10 pm
Up
Der Muggemann
User
Offline Off
Natürlich geht das!

Du musst dann einfach mit s2 cmd count_stored überprüfen, ob der Spieler das/die Items hat und sie dann mit s2 cmd freestored wegnehmen.
Staatlich geprüfter Schlagzeuger
27.06.13 12:45:43 pm
Up
Pehlivan
User
Offline Off
Könntest du mir ein Beispiel geben
EDIT:Kann man noch bei on:reach ai_stay hinzufügen?Wenn ja dann wie?
us
27.06.13 01:12:23 pm
Up
Nova
User
Offline Off
Klar kannst du das. Einfach s2 cmd ai_stay in die geschweiften Klammern reinpackern. Aber Achtung, du solltest nicht s2 cmd ai_stay und s2 cmd unitpath gleichzeitig ausführen. Das sieht dämlich aus, da die Einheit dann einfach nur über den Boden "rutscht".


Beispiel für Quest-Items >
Hexenverbrennung, Inquisition, Kreuzzüge... Wir wissen, wie man feiert! - Ihre Kirche
27.06.13 05:30:10 pm
Up
Pehlivan
User
Offline Off
Danke, aber ein Problem Der Pirat wird von einem Gebiet-Trigger gespawnt.EDIT:Was müsste ich jetzt in den Trigger schreiben?Sicherheitsweise schreibe ich mal den Trigger-Script:
Code:
1
2
3
4
5
6
7
8
9
10
on:trigger {
        $pirate=create ("unit" , 37);
        setat "unit" , $pirate , "info" , 24;
        addstate "unit" ,  $pirate "invulnerability;
        unitpath $pirate , 25,26,27,28;
           
        addscript "unit" , $pirate , "maps/*1*","*2*";   //Beschreibung lesen

        free "self";
}

*1*=Der Pechvogel(Ordnername)
*2*=Hallo Fremder!(Text-Script)
,doch addscript funktioniert nicht da kommt immer ein Fehler
EDIT:Kann man noch die Message(ganz unten), durch einen Dialogue ersetzen?Also mit dialogue "Titel" , ID(Von Textcontainer);
2EDIT:Wenn der Spieler die 10Goldbeutel abgeben hatte
kann man, dann auch den Spieler ein Item geben?
3EDIT:Kann man es machen, dass man nur 1mal 10Goldbeutel geben kann und danach kommen neue Dialogue?
us
edited 3×, last 27.06.13 06:23:46 pm
27.06.13 08:57:32 pm
Up
Nova
User
Offline Off
$pirate enthält die ID des Piratens. Du kannst diesen Wert dann für alle s2 cmd unitpath benutzen, um den Piraten anzusprechen.

Wenn du schon sagst, dass immer ein Fehler kommt, wäre es wohl auch ganz interessant zu wissen, was denn dieser Fehler ist.

Zum Edit 1: Wenn du dabei mein Goldbeutel-Script meinst: Klar, kein Problem. Einfach dafür s2 cmd dialogue nehmen.
Zum Edit 2: Jupp. Siehe dafür s2 cmd find.
Zum Edit 3: Du musst mit s2 cmd if überprüfen, ob eine bestimmte Variable noch nicht auf einen bestimmten Wert gesetzt wurde. So sieht das ungefähr aus:
Code:
1
2
3
4
5
6
7
8
9
10
11
12
if ($goldquest == 0)
{
     // Hier die Goldquest...

     $goldquest = 1;
}
else
{
     // Wenn die Variable $goldquest bereits mit 1 belegt wurde,
     // dann wird dieses Script ausgeführt.
     msg "Nochmals danke für das Gold!";
}
Hexenverbrennung, Inquisition, Kreuzzüge... Wir wissen, wie man feiert! - Ihre Kirche
28.06.13 11:03:46 am
Up
Pehlivan
User
Offline Off
Danke, aber ich habe das mit den Unitpaths nicht verstanden und der ID des Piraten.Achso und der Fehler ist weg hab ihn selbst behoben
EDIT:Wo muss ich diesen "if" Script reinschreiben bzw. kopieren?
us
edited 1×, last 28.06.13 05:09:47 pm
28.06.13 05:42:06 pm
Up
Nova
User
Offline Off
Dort, wo du halt diese Quest nutzen willst. Das Goldbeutel-Quest-Beispiel kann beispielsweise in dieses Script reinkopiert werden. Dürfte logisch sein, wo es hin kommt.
Hexenverbrennung, Inquisition, Kreuzzüge... Wir wissen, wie man feiert! - Ihre Kirche
29.06.13 10:57:47 am
Up
Pehlivan
User
Offline Off
Oke Danke!
us
To the start Previous 1 Next To the start