Forum

> > Stranded II > Scripts > Scripting - Fragen/Probleme
ForenübersichtStranded II-Übersicht Scripts-ÜbersichtEinloggen, um zu antworten

Deutsch Scripting - Fragen/Probleme

6.780 Antworten
Seite
Zum Anfang Vorherige 1 284 85 86339 340 Nächste Zum Anfang

alt Re: Scripting - Fragen/Probleme

davidsung
User Off Offline

Zitieren
weil keins von beiden funktioniert.:|^

EDIT:
>SCRIPT ERROR:
>Expecting parameter resp. ','
>Script: Object 9 (Blumen)
>Event: use
>Row: 3
>Col: 10
>Script: damage ""self"", 2;

alt Re: Scripting - Fragen/Probleme

davidsung
User Off Offline

Zitieren
Das ist exakt der gleiche Code.
Ob es daran liegt, das irgendwo sonst ein Fehler ist?
Naja, ich probiers nochmal. Falls immer noch nicht klappt, werde ich den ganzen Script im Edit hier reinposten...

alt Re: Scripting - Fragen/Probleme

Timotheus
User Off Offline

Zitieren
So sobald attack1 auch beim Player funktioniert wollte ich das so machen, damit es bei Wasser, Boden und Nichts nicht zu Problemen kommt. Geht das so?
Und warum stehen eigentlich elseif und else nicht in eckigen Klammern bei der Befehlsliste? s2 cmd if Die sind doch optional oder nicht?

1
2
3
4
5
6
7
on:attack1 {
scantarget;
	if (targetclass()>0) {
		$Leben=health(targetclass(), targetid());
		msg "Leben: $Leben"
	}
}

alt Re: Scripting - Fragen/Probleme

Flying Lizard
User Off Offline

Zitieren
ja, so stimmt es, sehr gut. slltest aber noch hinter dem msg Befehl ein ; machen.

Ich denke das in der Befehlsreferenz hat DC einfach später die [] eingeführt als den Befehl

alt Re: Scripting - Fragen/Probleme

Timotheus
User Off Offline

Zitieren
Gut dann mach ich noch das ';'
Hab nur gedacht bei msg braucht man keins, weil ich von dir oben abgeguckt habe.

Hm also kann es sein, dass bei anderen Befehlen auch die eckigen Klammern fehlen? Dann muss ich halt einfach alles ausprobieren.

mfg
Timotheus

alt Re: Scripting - Fragen/Probleme

Gast

Zitieren
Hab ne frage,
Wie mache ich,dass wenn ich ein bestimmtes gebiet
betrete etwas passiert(z.b Tagebucheintrag)

alt Re: Scripting - Fragen/Probleme

davidsung
User Off Offline

Zitieren
Was?
damage "self", 2; geht nicht aber
damage "self",2;

Wegen ein Leerzeichen? Das ist doch nicht normal!
Naja, es klappt nun jedenfalls. Danke Flying Lizard!

Edit:
Wie soll ich den dieses Problem umgehen?
Ich möchte den Script freestored "unit", 1, self; in den Buffer setzten aber bei add "freestored "unit", 1, self;"; gibt es Probleme, da es hierbei um 4 Anführungszeichen handelt.
1× editiert, zuletzt 19.05.07 14:34:55

alt Re: Scripting - Fragen/Probleme

DC
Admin Off Offline

Zitieren
Das ist definitiv nicht normal.
Keine Ahnung was du da machst, aber bei mir funktioniert es auch mit dem besagten Leerzeichen. Sogar wenn ich 5 Leerzeichen mache lässt es das kalt und es funktioniert.

alt Re: Scripting - Fragen/Probleme

Timotheus
User Off Offline

Zitieren
Wie mache ich eine if-Regel bei der überprüft wird ob das objekt z.B. ein Fass einen Inhalt hat?

Also ungefähr so:

1
2
3
4
5
6
7
8
on:use {
    if (*wenn ein Inhalt vorhanden ist*) {
    msg "Wow da ist was drinn";
    }
    else {
    msg "Leer";
    }
}

Edit: Wie kriege ich so eine kleine Minimap?
1× editiert, zuletzt 19.05.07 23:20:55

alt Re: Scripting - Fragen/Probleme

Timotheus
User Off Offline

Zitieren
Muss ich da für jedes items ein if anlegen? Denn so wie es aussieht ja, da ich ja eine ID angeben soll. Oder wählt er dann eine zufällige und beinhaltet damit alle items?

Map?
Den Befehl habe ich benutzt. Raus kam, dass eine große Karte erschienen ist, wie ein Diary-Eintrag und wenn ich das Fenster geschlossen habe war sie weg.

Ich will eine kleine karte, links unten oder sonst wo, die andauernd angezeigt wird, geht das?

alt Re: Scripting - Fragen/Probleme

DC
Admin Off Offline

Zitieren
Nein, das geht nicht.

Der Befehl count_stored hat 3 Parameter!

Mit Klasse und ID beschreibst du nur das Objekt, von welchem du wissen willst, ob was drin ist. Z.b.
"object",3 <- gucken ob im object mit id 3 was ist
"unit",14 <- gucken ob in unit mit id 14 was ist

der 3. paramter ist optional. er kann angegeben werden, muss aber nicht. wenn du ihn nicht angibst, wird die gesamtmenge an gelagerten items zurückgegeben, egal welcher typ. also das was du willst. exakt den code dafür habe ich dir da oben hingeschrieben. du musst nur noch ID durch die id des objects auf der map ersetzen, von welchem du den inhalt prüfen willst.
nur wenn du gucken willst ob ein bestimmter item-typ gelagert ist, musst du den 3. parameter angeben (du musst hierbei die id aus den item definitionen angeben, nicht die id welche ein item auf der map hat)

alt Re: Scripting - Fragen/Probleme

Timotheus
User Off Offline

Zitieren
Hm Schade,

denn mein eigentliches Ziel, war es eben, eine bestimmte Nachricht abzuspielen wenn mindestens ein Items drinnen ist und wenn keins drinnen ist soll da stehen "Leer".

Wenn ich es jetzt aber mit dem count_stored mache, dann müsste ich ein "if" mit allen items machen, da ich ja wenn ein items drinnen ist nicht "Leer" anzeigen sollte, was es aber dann tut, da ich ja ein anderes item einlagern kann und dieses bei count_stored nicht berücksichtigt wird.

Edit: Also bitte einen zusätzlichen Befehl, der überprüft, ob ein Inhalt vorhanden ist.

alt Re: Scripting - Fragen/Probleme

stealth
User Off Offline

Zitieren
Was meinst du denn? Das funzt doch:

count_stored "object", id, typ prüft ob in dem Objekt mit der ID id ein Item vom Typ typ eingelagert ist.

count_stored "object", id ist das was du willst: Es prüft ob bei dem Objekt mit der ID id überhaupt irgendwas eingelagert ist.

Du kannst anstatt "object", id auch self eingeben, dann wird nicht bei dem Object mit der ID id geprüft, sondern bei dem Object bei dem das Script geschreiben wurde, also z.B. count_stored self

Edit: Kann sein dass du self in Anführungszeichen schreiben musst
Zum Anfang Vorherige 1 284 85 86339 340 Nächste Zum Anfang
Einloggen, um zu antworten Scripts-ÜbersichtStranded II-ÜbersichtForenübersicht