Thema: Automatisches Katapult Di Sep 28, 2010 11:07 pm
Hi ich will ein Automatisches Katapult scripten - ich weis zwar wie man ein Katapult abfeuert (ProtectedCall(FindObject(CATA),"Fire");
Aber nicht wie man ein Object rein legt :Kann mir jemad helfen .DANKE IM VORAUS
Liech Fregattenkapitän
Alter : 33 Anmeldedatum : 02.02.09
Thema: Re: Automatisches Katapult Mi Sep 29, 2010 12:59 am
Zunächstmal: ProtectedCall muss jetzt wirklich nicht sein, esseiden du verwendest Clonk Planet (Falls: Die Goldenwipf Edition 4 gibts aufm Clonk center und die ist auch noch kostenlos)
Objekte reinlegen geht mittels "CreateContents(id Objekt,object Input);" Dein Script geht in gwe4 aufwärts also: FindObject(CATA)->CreateContents(EFLN); FindObject(CATA)->Fire();
oder in cp: CreateContents(EFLN,FindObject(CATA)); ProtectedCall(FindObject(CATA),"Fire");
//Edit: Vorrausgesetzt du willst neue Objekte reinlegen, ansonsten würde "Enter(object Gegenstand,object Zielobjekt);" funktionieren
Patta Großadmiral
Alter : 30 Anmeldedatum : 22.05.09
Thema: Re: Automatisches Katapult Mi Sep 29, 2010 5:22 pm
warum GWE4, es gibt doch CE schon gratis... Ansonsten köntnest du auch, wenns ein bestimmtes Katapult ist, dem eine Variable zuweisen: pKatap->CreateObject(CATA,X,Y)
dann kannst du die Variable pKatap immer dnan nutzen, wenn du im Katapult etwas ausführen möchstest, etwas in das Katapult befördern möchtest usw.
Limeox Admiral
Anmeldedatum : 25.04.10
Thema: Re: Automatisches Katapult Mi Sep 29, 2010 5:32 pm
Zitat :
ProtectedCall muss jetzt wirklich nicht sein
Doch. Wimni ist Fire() als protected definiert und somit über Object->Function() zwar aufrufbar, allerdings gibt das einen Error (insufficent access level oder sowas).
karly Hauptman
Anmeldedatum : 13.09.10
Thema: Re: Automatisches Katapult Mi Sep 29, 2010 6:38 pm
warum ? was kann ich dar noch nehmen ? Auser ProtectedCall
Limeox Admiral
Anmeldedatum : 25.04.10
Thema: Re: Automatisches Katapult Mi Sep 29, 2010 7:00 pm
ProtectedCall ist schon richtig.
Liech Fregattenkapitän
Alter : 33 Anmeldedatum : 02.02.09
Thema: Re: Automatisches Katapult Mi Sep 29, 2010 7:32 pm
protected/public/private sind eigentlich keine hindernisse für "->". Würde mich wundern wenn dadurch fehler entstehen. CE ist kostenlos? Ist mir jetzt neu, find ich aber nicht verkehrt.
karly Hauptman
Anmeldedatum : 13.09.10
Thema: Re: Automatisches Katapult Mi Sep 29, 2010 10:52 pm
ja klar ist CE kostenlos voll cool XD .okey also ist das schon richtig mit ProtectedCall was kann man dar eigentlich noch aufrufen ..also mit Zugbrücken geht get das ach siehe :
Thema: Re: Automatisches Katapult Do Sep 30, 2010 1:20 am
Du kannst damit soziemlich alles aufrufen. Du schaust dir dazu am besten die Scripte der jeweiligen Objekte an. Dort gibt es teilweise sehr interessante möglichkeiten zu sehen. Faustregel ist: -Was du per anfassen/Reiten steuerst ist mit Control* (z.b. ControlUp) Manipulierbar -Das selbe gilt für Contained* . Wobei da das eine Objekt im anderen drin sein muss -Direkte Clonksteuerung (Z.b. nach rechts laufen) ist auch über Control* erreichbar
karly Hauptman
Anmeldedatum : 13.09.10
Thema: Re: Automatisches Katapult Do Sep 30, 2010 12:00 pm
aha okey supper danke ich hab mir schon überlegt ein luftschif zu machen und das mit script coot zu schreiben
ach ja ich wolte noch ein wissen wie man das katapult zurück spannt kann mir das noch einer sagen .DANKE;)
Liech Fregattenkapitän
Alter : 33 Anmeldedatum : 02.02.09
Thema: Re: Automatisches Katapult Do Sep 30, 2010 2:03 pm
Ich würde ControlDig probieren, du kannst natürlich auch mit kata ->SetAction("xy",Phase) die Spannung direkt manipuliueren
Limeox Admiral
Anmeldedatum : 25.04.10
Thema: Re: Automatisches Katapult Do Sep 30, 2010 2:42 pm
Da bräuchte er SetPhase, nicht SetAction. SetAction hat keinen Phasen-Parameter. Also SetPhase(x, pKata) mit x von 0 (ungespannt) bis 6 (höchste Spannung).
Liech Fregattenkapitän
Alter : 33 Anmeldedatum : 02.02.09
Thema: Re: Automatisches Katapult Do Sep 30, 2010 3:04 pm
stimmt. Ich werd echt alt.
karly Hauptman
Anmeldedatum : 13.09.10
Thema: Re: Automatisches Katapult Do Sep 30, 2010 4:32 pm
unknown identifier pKata Fehler
FindObject(CADA))->SetPhase,("xy",Phase) und das get auch nicht =(
Liech Fregattenkapitän
Alter : 33 Anmeldedatum : 02.02.09
Thema: Re: Automatisches Katapult Do Sep 30, 2010 4:48 pm
natürlich geht das nicht. Du kannst nicht alles einfach so kopieren wie es dir gegeben wurde. In deinem zweiten versuch hast du ne klammer falsch gesetzt und SetPhase(int Phase); falsch verwendet. Achja, die ID vom Katapult ist CATA, nicht CADA. Ansonsten passts fast
Gamer Staatsrat
Alter : 28 Ort : In einem kleinen Dorf in Unterfranken (Bayern) Anmeldedatum : 10.02.09
Thema: Re: Automatisches Katapult Do Sep 30, 2010 6:11 pm
Im Klartext:
Code:
FindObject(CADA) -> SetPhase(6);
6 Kann man ändern von 0 bis 6, wie Liech schon oben beschrieben hat. Und ist "CADA" wirklich die ID fürs Katapult? Ansonsten "CATA" einsetzen.
Limeox Admiral
Anmeldedatum : 25.04.10
Thema: Re: Automatisches Katapult Do Sep 30, 2010 6:33 pm
SetPhase(6, FindObject(CATA)) ist schneller und errort nicht. :>
karly Hauptman
Anmeldedatum : 13.09.10
Thema: Re: Automatisches Katapult Do Sep 30, 2010 7:48 pm
Fehler :Script12[20] direct call ('->'): null pointer provided!
du hast recht der ist wiklich CATA
.. komisch get auch mit CADA ::: haha lustig XD
Gamer Staatsrat
Alter : 28 Ort : In einem kleinen Dorf in Unterfranken (Bayern) Anmeldedatum : 10.02.09
Thema: Re: Automatisches Katapult Do Sep 30, 2010 8:07 pm
Hmpf.. Ich dachte die Leerzeichen machen nix aus? >.< Naja. Aber das es sowohl mit CADA als auch CATA geht würde mir zu denken geben.. Schau mal ob es vlt. noch ne andere Definition in deinem Szen gibt^^
Limeox Admiral
Anmeldedatum : 25.04.10
Thema: Re: Automatisches Katapult Do Sep 30, 2010 9:08 pm
Leerzeichen machen in der Regel nichts aus. FindObject(CADA) dürfte jedoch 0 zurückgeben und den Nullpointer-Error verursachen.
karly Hauptman
Anmeldedatum : 13.09.10
Thema: Re: Automatisches Katapult Do Sep 30, 2010 10:56 pm
ach so ja das ist das sprengt am Anfang IMMER DAS KATAPULT WEG logisch das dar dan sie Meldung kommt XD
karly Hauptman
Anmeldedatum : 13.09.10
Thema: Re: Automatisches Katapult Do Sep 30, 2010 11:15 pm
Ich habs mal mit mehr baliste gemacht geht auch ,das Doofe ist das die ganze zeit an den Pfeil ran zoomt , und das nicht mehr weg geht ,sprich ich kann nicht richtig mein Clonks steuern =(
Liech Fregattenkapitän
Alter : 33 Anmeldedatum : 02.02.09
Thema: Re: Automatisches Katapult Fr Okt 01, 2010 12:24 am
übergib als Parameter bei dem ganzen -1 (ControlThrow(-1) Das steht für keinen besitzer (NO_OWNER geht auch), das dürfte das gezoome verhindern.
der kleine boss Vizeadmiral
Alter : 29 Ort : In einem gaaaaanz kleinen Kaff in Austria Anmeldedatum : 21.03.09
Thema: Re: Automatisches Katapult Fr Okt 01, 2010 8:19 am
am besten dem Katapult beim erstellen direkt -1 als owner geben CreateObject(CATA,x,y,-1);
Control*- und Contained*-Befehle bekommen idR als ersten Parameter das ausführende Objekt. Das gibt also bestenfalls einen Error.
Zitat :
am besten dem Katapult beim erstellen direkt -1 als owner geben
Die Sicht wird nach Controller gesetzt, nicht nach Owner. Das sind 2 verschiedene Sachen.
Im Falle der Armbrust reicht es, Fire(true) aufzurufen. Der erste Parameter hier ist fAuto, gibt also an, ob der Schuss automatisch oder durch einen Clonk ausgelöst wurde. Bei true wird die Sicht nicht gesetzt.