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 260 61 62339 340 Nächste Zum Anfang

alt Re: Scripting - Fragen/Probleme

HW
User Off Offline

Zitieren
Flying Lizard hat geschrieben
nein, mann kann es auch in der deffinition so schreiben dass es automatisch höher gesetzt wird.

Dann sag doch am besten gleich, wie das gehen soll.
Ich hab nämlich keine Ahnung worauf du hinaus willst.

alt Re: Scripting - Fragen/Probleme

ker
User Off Offline

Zitieren
@flying lizard: wenn du die x y und z werte in der def meinst das sind nur streckungen... ich hab alle werte schön angeguckt in der doku! und jegliche befehle, aber man kann das model nicht verschieben imho, deshalb hab ich ja hier gefragt!
ich wollte es ja in der bau-ansicht schon verschoben haben... alles andere würde ja gehen...

alt Re: Scripting - Fragen/Probleme

jeepohahyo
User Off Offline

Zitieren
Mann kann es doch mit den normalen Bewegebefehle beim Starten/Laden der Map einfach mit Scripts nen Meter höher schieben?
Also kein Wert in der Def wird geändert, nur ein Script

EDIT:Hupps, Bauansicht.... Ne das geht echt ncih... Aber da schwebtr man doch sowieso obendrüber, da erkennt man das sowieso nicht

alt Re: Scripting - Fragen/Probleme

DC
Admin Off Offline

Zitieren
Die Frage hat nichts mit Scripting zu tun (sie gehört definitiv in den blöde Fragen Thread) und ich kann darauf auch nicht antworten, weil ich es nicht weiß.

alt Re: Scripting - Fragen/Probleme

Flying Lizard
User Off Offline

Zitieren
ker hat geschrieben
@flying lizard: wenn du die x y und z werte in der def meinst das sind nur streckungen... ich hab alle werte schön angeguckt in der doku! und jegliche befehle, aber man kann das model nicht verschieben imho, deshalb hab ich ja hier gefragt!
ich wollte es ja in der bau-ansicht schon verschoben haben... alles andere würde ja gehen...


In der Bauansicht gehts nich, aber du kannst machen dass es im selben moment wie es fertiggestellt wird höher gesetzt wird.

alt Re: Scripting - Fragen/Probleme

HW
User Off Offline

Zitieren
Und genau das hat er bereits umgesetzt, wie er ja schon sagte.
Er will eben, wohl rein aus Schönheitsgründen, dass das Gebäude schon bei der Bauplatzierung erhöht angezeigt wird, worauf man vom Script her keinen Zugriff darauf hat.
Wenn man an den Modellen nicht herumpfuschen will, muss darauf eben verzichten. Wenn es aber kein Problem darstellt, die Modelle zu bearbeiten, kann man das ruhig machen.

alt Re: Scripting - Fragen/Probleme

Flying Lizard
User Off Offline

Zitieren
Also hier jetzt die Lösung:

schreib in die Deffiniton vom Object das du verschoben willst:

1
2
3
4
5
script=start
on:create {
setpos "self","self",(gety ("self")+100),"self";
}
script=end

alt Re: Scripting - Fragen/Probleme

ker
User Off Offline

Zitieren
das hatte ich schon seit tagen das war nicht das problem, wie HW korrekt erkannt hat
und solange man jemanden hat der sich mit models auskennt ist das ja auch kein problem
2× editiert, zuletzt 04.01.07 14:52:32

alt Re: Scripting - Fragen/Probleme

FireDragon
User Off Offline

Zitieren
Wie mache ich einen IF Script? Ich will, das wenn man z.b Gold hat und dann den Piraten anklickt, dass dan steht:
Danke, dass du mir meinen Schatz gefunden hast. und dass man dann auf eine andere Insel gebracht wird.

alt Re: Scripting - Fragen/Probleme

Flying Lizard
User Off Offline

Zitieren
eine if-prüfung meinst du?

1
2
3
4
5
6
7
8
on:use {
if ([i]die Voraussetzung[/i]) {
[i]die Befehle die dann ausgeführt werden[/i]
}
else {
[i]was sonst passiert[/i]
}
}

War das hilfreich?

alt Re: Scripting - Fragen/Probleme

ker
User Off Offline

Zitieren
Hab ein problem:

on:build_finish{
     $cur=currentid();
     loop("objects",256){
          $id=loop_id();
          if(getstatevalue("object",$id,53,0)==$cur){
               freestate "objects", $id ,53;
          }
     }
     freevar $cur;
     freevar $id;
}

das schmiert ab wegen zeile 5, dh dort wo die if abfrage ist

fehler den es auspuckt:

!1 PARSE (EVENT): build_finish @ 1,57

!3 SCRIPT ERROR:
!3 Expression '==57' begins with an unexpected operator!
!3 Probably its a part of a longer expression. In this case please
!3 bracket the whole expression. Otherwise remove the operator
!3 Script: Object 57 (Fundament)
!3 Event: build_finish
!3 Row: 5
!3 Col: 43

alt Re: Scripting - Fragen/Probleme

Flying Lizard
User Off Offline

Zitieren
Also ich hab auch keine Ahnung was da falsch is. Versuch einfach mal ein paar mehr Klammern zu setzten so dass es folgendermasen aussieht.

((getstatevalue("object",$id,53,0))==($cur))

Ansonsten must du auf höere mächte warten, weil ich kann da absolut keinen Fehler finden.

alt Re: Scripting - Fragen/Probleme

HW
User Off Offline

Zitieren
Versuch mal das getstatevalue Gedöhns vor der Abfrage in eine Variable zwischenzuspeichern. Der Parser hat gerne Probleme wenn Funktionen als Parameter angegeben werden. Ist ein Bug, kein Fehler von dir.
Ich kann aber nicht versprechen, dass das hilft.
Edit: Bei freestate musst du als Klasse "object" und nicht "objects" angeben. Das hat aber nichts mit dem Fehler zu tun der in der Konsole ausgegeben wird.

alt Re: Scripting - Fragen/Probleme

ker
User Off Offline

Zitieren
so zeugs hat bei ähnlichen fehlern nie geholfen bei mir lag immer an was anderm...

ABER gerade jetzt wo ich es nicht mache, klappts

thx FL

aber jetzt muss ich gucken wieso es nich so tut wie ich will...
fehler weg, aber funktioniert nicht

EDIT: thx HW, deswegen gings wahrscheinlich nicht!
ich glaub da schreib ich auch ein tut dazu


EDIT2: es geht absolut nicht, ich hab jetzt msgs eingeführt die mir jeden käs ausgeben, aber die sagen mir eindeutig dass getstatevalue IMMER 6 ausgibt egal was
mein testcode:
on:build_finish{
     $cur=currentid();
     echo $cur
     echo "---";
     loop("objects",256){
          $id=loop_id();
          $id2=getstatevalue("object",$id,53);
          echo "+";
          echo $id;
          echo $id2;
          if($id2==$cur){
               echo "sollte jetzt klappen";
               freestate "object", $id ,53;
          }
     }
     freevar $cur;
     freevar $id;
     freevar $id2;
}
2× editiert, zuletzt 04.01.07 16:58:59

alt Re: Scripting - Fragen/Probleme

ker
User Off Offline

Zitieren
*ping*

ich glaub das mit den edit's und dann das häckchen setzen klappt net so wirklich...
es geht absolut nicht, ich hab jetzt msgs eingeführt die mir jeden käs ausgeben, aber die sagen mir eindeutig dass getstatevalue IMMER 6 ausgibt egal was
mein testcode:
on:build_finish{
$cur=currentid();
echo $cur;
echo "---";
loop("objects",256){
$id=loop_id();
$id2=getstatevalue("object",$id,53);
echo "+";
echo $id;
echo $id2;
if($id2==$cur){
echo "sollte jetzt klappen";
freestate "object", $id ,53;
}
}
freevar $cur;
freevar $id;
freevar $id2;
}

hat jemand nen plan was ich falsch mache? das statevalue von den 256er objekten sollte eigendlich ja dann eben der id dieses objektes entsprechen, es ist aber IMMER 6! (selbst wenn ich 10 von allen objekten bau, oder noch andre objekte voher bau oder sonstwas)

alt Re: Scripting - Fragen/Probleme

HW
User Off Offline

Zitieren
Etwas mehr Informationen wären hier angebracht:
Was genau willst du mit dem Script erreichen?
Wo werden die Statevalues der 256er-Objekte gesetzt?
Ansonsten hab ich keine Ahnung was da los ist.

alt Re: Scripting - Fragen/Probleme

ker
User Off Offline

Zitieren
HW: gleiches problem wie voher
also, ich bau ein gebäude an dem gebäude 256
klappt ja, aber wenn jetzt gebäude 256 kaputt geht dann geht auch das neue gebäude kaputt
zum verhindern wollte ich eben den state löschen
und der hat nur "6" gespeichert
und nicht etwa die ID meines neuen gebäudes
Zum Anfang Vorherige 1 260 61 62339 340 Nächste Zum Anfang
Einloggen, um zu antworten Scripts-ÜbersichtStranded II-ÜbersichtForenübersicht