CNDG
Würden Sie gerne auf diese Nachricht reagieren? Erstellen Sie einen Account in wenigen Klicks oder loggen Sie sich ein, um fortzufahren.


Ein Forum, in dem sich neue Clonk Entwickler untereinander austauschen können.
 
StartseiteStartseite  PortalPortal  SuchenSuchen  Neueste BilderNeueste Bilder  AnmeldenAnmelden  LoginLogin  

 

 Zugbrücke per skript runterlassen

Nach unten 
4 verfasser
AutorNachricht
Dark
Oberst
Oberst
Dark


Männlich Alter : 29
Ort : Deutschland/Frankfurt Main
Anmeldedatum : 07.07.10

Zugbrücke per skript runterlassen Empty
BeitragThema: Zugbrücke per skript runterlassen   Zugbrücke per skript runterlassen EmptyFr Jul 09, 2010 5:10 pm

Wie kann ich eine Zugbrücke per Skript runterlassen?
Ich spreche von der Standartzugbrücke aus dem Ritterpack.

Rufe ich im Skript einfach die Funktion:

Code:
func ControlDownSingle()
auf?

und wie weiß der welche Zufbrücke ich meine wenn ich mehrere auf er Krte habe?
Nach oben Nach unten
der kleine boss
Vizeadmiral
Vizeadmiral
der kleine boss


Männlich Alter : 28
Ort : In einem gaaaaanz kleinen Kaff in Austria
Anmeldedatum : 21.03.09

Zugbrücke per skript runterlassen Empty
BeitragThema: Re: Zugbrücke per skript runterlassen   Zugbrücke per skript runterlassen EmptyFr Jul 09, 2010 5:30 pm

Du schaust mal welche Objectnummer der Turm hat
Code:
ObjectNumber();
im Turm aufrufen.
nehmen wir mal an sie ist 666.

Code:

Object(666)->ControlDownSingle();

sry falls ich mich verschrieben hab, leider kein PC zum testen da, aber so sollte es gehen
Nach oben Nach unten
http://www.clonk.de
Limeox
Admiral
Admiral
Limeox


Männlich Anmeldedatum : 25.04.10

Zugbrücke per skript runterlassen Empty
BeitragThema: Re: Zugbrücke per skript runterlassen   Zugbrücke per skript runterlassen EmptyFr Jul 09, 2010 5:36 pm

Warum so kompliziert? Man kann Objektaufrufe auch ohne Object(ObjectNumber(obj)) aufrufen. Denn das Objekt, was hinten rauskommt, steckt man bereits vorne rein, warum also anstatt reinzustecken nicht gleich benutzen? x)

Wie du jetzt deinen gewünschten Turm rausfindest, hängt ganz davon ab, wie die Zugbrücke ausgelöst werden soll. Das müsste man wissen x)
Generell startet man Aufrufe in fremden Objekten mit Objekt->Funktion(). Das kann allerdings gleich 2 Fehlermeldungen verursachen, deshalb sollte man vorischtig sein. Wenn man vor den Funktionsnamen ein ~ hängt, gibt es keine Fehlermeldung, wenn die Funktion überhaupt nicht existiert. Der 2. Fehler wäre dass es das Objekt gar nicht gibt, dann kommt ein "Target is zero!"-Fehler.
Optimal wäre daher:
Code:
if (obj)
  obj -> ~ControlDownSingle();


Zuletzt von Limeox am Fr Jul 09, 2010 5:39 pm bearbeitet; insgesamt 1-mal bearbeitet
Nach oben Nach unten
Wipfmagus
Konteradmiral
Konteradmiral
Wipfmagus


Weiblich Alter : 28
Anmeldedatum : 06.03.10

Zugbrücke per skript runterlassen Empty
BeitragThema: Re: Zugbrücke per skript runterlassen   Zugbrücke per skript runterlassen EmptyFr Jul 09, 2010 5:37 pm

Dark schrieb:
Rufe ich im Skript einfach die Funktion func ControlDownSingle() auf?
Ja.
Dark schrieb:
und wie weiß der welche Zufbrücke ich meine wenn ich mehrere auf er Krte habe?
Entweder Objektnummern (die Methode vom kleinen Boss) oder per FindObject (das meinte Limeox wohl):
Find_InRect, und wie weiß der welche Zufbrücke ich meine wenn ich mehrere auf er Krte habe?Find_Owner und andere sollten dir in den meisten Fällen gute Dienste leisten.
Wenn die Brücken per Script erstellt werden, kannst du sie auch gleich bei der Erstellung in Variablen speichern (was so geht:)
Code:
var pClonk1=CreateObject(CLNK,550,27);
ControlDownSingle(pClonk1);
(Ich weiß die ID der Brücke gerade nicht, deshalb habe ich einen Clonk genommen.)
Nach oben Nach unten
Dark
Oberst
Oberst
Dark


Männlich Alter : 29
Ort : Deutschland/Frankfurt Main
Anmeldedatum : 07.07.10

Zugbrücke per skript runterlassen Empty
BeitragThema: Re: Zugbrücke per skript runterlassen   Zugbrücke per skript runterlassen EmptyFr Jul 09, 2010 5:45 pm

Also ich hatte geplant:

Man hat selber einen Clonk und einen NPC. wenn man dem NPC jetzt einen bestimmten gegensand gibt, soll der NPC die Zugbrücke runter lassen.

Die Zugbrücke habe ich im EM gesetzt. also nicht per Skript erzeugt.
Sie gehört also dem NPC der bei mir spieler 1 gehört also keinem.

Und was heißt im Turm aufrufen?
Mal in die Script.c vom Turm ObjectNumber(); schreiben und das einfach mal testweise ausgeben oder im EM herausfinden?
Nach oben Nach unten
Limeox
Admiral
Admiral
Limeox


Männlich Anmeldedatum : 25.04.10

Zugbrücke per skript runterlassen Empty
BeitragThema: Re: Zugbrücke per skript runterlassen   Zugbrücke per skript runterlassen EmptyFr Jul 09, 2010 5:54 pm

Hm. Du setzt die Brücke am besten per Script und gibst ihr einen globalen Namen.
Du notierst dir X- und Y-Position der Brücke (GetX, GetY) und setzt sie dann an dieselbe Stelle per Script.
Aber Achtung: Auf den Y-Wert musst du noch das Y-Offset draufrechnen, da der Platzierungspunkt die Mitte der Unterkante angibt, sonst hängt die Brücke in der Luft.

Wenn du dann zB X = 150 und Y = 200 raushast, schreibst du in die Initialize-Funktion des Szenarios:
Spoiler:
Nach oben Nach unten
Dark
Oberst
Oberst
Dark


Männlich Alter : 29
Ort : Deutschland/Frankfurt Main
Anmeldedatum : 07.07.10

Zugbrücke per skript runterlassen Empty
BeitragThema: Re: Zugbrücke per skript runterlassen   Zugbrücke per skript runterlassen EmptyFr Jul 09, 2010 5:57 pm

Ok dann mache ich es so.

warum wird vor varialen eigentlich ein p davor geschrieben?
Ich dachte bis jetzt, dass vor Objekte ein o und vor Personen ein p steht.


Per Skript erzeugt geht es jetzt. Juhu^^
Nach oben Nach unten
Gesponserte Inhalte





Zugbrücke per skript runterlassen Empty
BeitragThema: Re: Zugbrücke per skript runterlassen   Zugbrücke per skript runterlassen Empty

Nach oben Nach unten
 
Zugbrücke per skript runterlassen
Nach oben 
Seite 1 von 1
 Ähnliche Themen
-
» erster skript
» Ich brauch Hilfe Szenatio Skript
» Musi-Wechsler Skript funkioniert nicht

Befugnisse in diesem ForumSie können in diesem Forum nicht antworten
CNDG :: Sonstiges :: Scripthilfe-
Gehe zu: