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

Austausch | 
 

 Ein Koffer mit Attach

Vorheriges Thema anzeigen Nächstes Thema anzeigen Nach unten 
AutorNachricht
Toastbrot
Kadett
Kadett
avatar

Männlich Anmeldedatum : 10.03.09

BeitragThema: Ein Koffer mit Attach   So Jun 28, 2009 1:30 pm

Vor ewigkeiten wurde mal ein Tutorial gewünscht das erklärt wie man einen Koffer an einen Clonk "ranhängt" ich habe mich jetzt mal entschlossen so eins zu machen.


Zuerst einmal braucht man einen einfachen Koffer in den man
Sachen reinlegen kann und so dafür wird nicht viel vorwissen
benötigt:

Ich bin kein Grafiker also empfele ich die Grafik selber zu
machen, das hier ist meine:


So das wäre der DefCore:
Spoiler:
 

So jetzt fehlt aber noch ein script mit dem man den Koffer aufnehmen kann:

Code:

/*-- Der Koffer --*/

#strict 2

//Der Rückgabewert von CalcValue wird im Spiel
//als verkaufs und KaufsWert genommen
protected func CalcValue()
{
  //zwei variablen eine zum Zählen und eine zum
  //speichern des Wertes des Inhaltes
  var i,value;
 
  //So jetzt lassen wir eine while-Schleife so oft
  //durchlaufen wie objekte im Koffer sind
  while(i<ContentsCount()){
 
  //Und Zählen jedesmal den Wert des Inhaltsobjekts
  // mit dem Index des durchlaufes (fängt bei 0 an)
  //zu value dazu
  value+=GetValue(Contents(i));
  i++;   
 
  }

//Rückgabewert ist jetzt der Wert des gesammten
//Inhaltes+35 wasich als Wert für den Koffer nehme
return(35+value);
}


//So und jetzt die Funktion zum Aufnehmen des Koffers
//Es wird vorausgesetzt das der Clonk einen Locale namens
//Koffer hat in der wir den Koffer speichern
protected func ControlDigDouble(Caller){

  //Wenn der Clonk schon nen Koffer hat(Koffer!=0)
  //kann keiner mehr aufgenommen werden
  if(LocalN("Koffer",Caller)!=0){ 
              PlayerMessage(GetOwner(Caller),"%s hat schon einen Koffer",Caller,GetName(Caller));
              return(1);}
 
  //Ansonsten setzen wir die ID auf die des
  //des getragenen Koffers der gleich folgen wird
  //und setzten seine Action auf Feshalten
  ChangeDef(C19K);
  SetAction("Festhalten",Caller);
  //So hier werden die Vertices die aneinandergehängt werden sollen
  //Festgelegt mehr dazu gleich
  SetActionData(1,this);
 
  //und hier wird der Localen des Clonks der Kffer zugewiesen
  LocalN("Koffer",Caller)=this;
}

So nun brauchen wir aber den zweiten Koffer(wenn er am Clonk hängt) für diesen nehmen wir die Selbe Grafik wie für den ersten nur der DefCore und der script sind anders.Ich stelle sie jetzt vor.

DefCore:
Spoiler:
 

Es fehlt jetzt eine Aktion mit der Der Koffer Feshängt.

ActMap vom Koffer-Getragen:
Zitat :

[Action]
Name=Festhalten
Procedure=ATTACH
Delay=1
FacetBase=1
NextAction=Festhalten

Wie Funktioniert SetActionData mit der Prozedur ATTACH?

Die Doku schrieb:

ATTACH richtet Objektposition Vertex a an Vertex b des Zielobjekts aus. a und b sind die beiden niederwertigen Bytes von ActionData (Siehe SetActionData für Beispiel). Erweitert ab CE.

Eine DwordInteger-Variable (Ganzahl-Variable)besteht bei Clonk aus vier bytes es können also 2³² Zahlen damit dargestellt werden. Jede dieser Zahlen kann in vier Bytes aufgeteillt werden:
x+y*256+z*256*256+c*256*256*256und damit ergeben
sich x und y als niederwertige Bytes:

Wenn also wie in Unserem Beispiel der erste Vertices des Koffers an
den zweiten Vertices des Clonks gehängt werden soll dann muss es
SetActionData(1+0*256,this); lauten denn die Zählung der Vertices
beginnt mit 0.

Einen script für den Koffer brauchen wir auch noch:
Code:

/*-- Koffer getragen --*/

#strict 2
public func AttachTargetLost(){ChangeDef(CA9K);}
Der ist aber wie man sieht nicht sehr aufwendig er stellt nur sicher das beim verschwinden des Clonks(auf welchem Wege auch immer) der Koffer wieder normal wird.

Zuletzt fehlt noch ein Clonk-#Appendto damit der Koffer wieder abglegt wird.

DefCore:
Spoiler:
 


Und der script:
Code:

/////////////////////////////////////////////
///Clonk-Append

#appendto CLNK
#strict 2

//So das ist dann die Variable die den
//KOffer speichert und die wir vorhin
//verwendet haben:
local Koffer; //Enthält den Koffer

//Diese Funktion gibt den Koffer zurück
//damit kann man prüfen ob der Clonk
//einen hat
func HasCase(){return(Koffer);}

//Das ist dann die Funktion zum Ablegen des Koffers
//Sie ist im Kontextmenu hat den Namen
//Koffer Ablegen das Icon des Koffers(CA9K)
//und ist nur verfügbar wenn der Clonk
//einen Koffer trägt also HasCase
//einen Wert ungleich 0 zurückgibt
public func ContextAblegen(pCaller)
{
  [Koffer Ablegen|Image=CA9K|Condition=HasCase]
 
 //Hier wird der Koffer wieder normal gemacht un
 //die Variable Koffer wird wieder zu 0(Kein Koffer)
  Koffer->ChangeDef(CA9K);
  Koffer=0;
 
  return(1);
}


Wenn alles fertig ist sollte das ganze dann so aussehen:



Damit wäre ich dann fertig ich hoffe es hat euch gefallen schwierigkeitsgrad kann ich schlecht einschätzen schreibt bitte und sagt dazu(und zum Tutorial insgesammt) eure Meinung.



Mit Freundlichen Grüßen Toastbrot
Nach oben Nach unten
Benutzerprofil anzeigen
Bowserkoopa
Staatsrat
Staatsrat
avatar

Männlich Alter : 23
Anmeldedatum : 21.12.08

BeitragThema: Re: Ein Koffer mit Attach   So Jun 28, 2009 2:38 pm

Wow, ziemlich viel geschrieben. Schade, dass man dafür 3 IDs verbrauchen muss, aber da lässt sich nichts ändern. Wobei man das Hilfsobjekt sicher auch ins System.c4g schreiben könnte.

Also ich finde das Tutorial toll gemacht und schön erklärt. Gäbe es hier ein Bewertungssystem, gäbe es 5 Sterne.

EDIT: Glaube man sollte den Koffer schon aufnehmen können, richtig? In die erste DefCore noch Collectible=1
EDIT2: Ansonsten wird bei mir auch nicht ControlDigDouble aufgerufen. Bin da aber schon am Fehlersuchen dran.
Nach oben Nach unten
Benutzerprofil anzeigen
Toastbrot
Kadett
Kadett
avatar

Männlich Anmeldedatum : 10.03.09

BeitragThema: Re: Ein Koffer mit Attach   So Jun 28, 2009 3:19 pm

Nein man muss den Koffer nicht aufnehmen können es funktioniert auch so denn ControlDigDouble() lässt den Clonk den Koffer ja ATTACHEN.

Hier hast du mal mein Exemplar zum Vergleich:
http://www.file-upload.net/download-1730369/Koffer.c4d.html
Nach oben Nach unten
Benutzerprofil anzeigen
Bowserkoopa
Staatsrat
Staatsrat
avatar

Männlich Alter : 23
Anmeldedatum : 21.12.08

BeitragThema: Re: Ein Koffer mit Attach   So Jun 28, 2009 5:53 pm

Achso. Ich dachte du willst, dass der Clonk den Koffer aufnimmt, und ihn anschließend mit DoppelDig attacht. Jetzt wird mir erst alles klar. Sorry, hab mich geirrt. Und wie lässt man sachen z.B. an den Ganzen Clonk attachen? Also zum Tarnen.
Nach oben Nach unten
Benutzerprofil anzeigen
Toastbrot
Kadett
Kadett
avatar

Männlich Anmeldedatum : 10.03.09

BeitragThema: Re: Ein Koffer mit Attach   So Jun 28, 2009 6:22 pm

Was meinst du mit an den ganzen Clonk attachen? Wenn du ihn Tarnen willst geht das mit SetClrModulation(RGBa(0,0,0,x))

x von 0-255 setzt dann den Alpha-Wert.
Nach oben Nach unten
Benutzerprofil anzeigen
Patta
Großadmiral
Großadmiral
avatar

Männlich Alter : 24
Anmeldedatum : 22.05.09

BeitragThema: Re: Ein Koffer mit Attach   So Jun 28, 2009 6:37 pm

er mient glaube ich dass der ganze Clonk versdeckt ist. Wenn er z.B. einen Busch oder was mit sich herumträgt, hinter dem man dann den Clonk nicht mehr sehen kann.
Nach oben Nach unten
Benutzerprofil anzeigen http://sites.google.com/site/clonkprojekte/star-wars
Toastbrot
Kadett
Kadett
avatar

Männlich Anmeldedatum : 10.03.09

BeitragThema: Re: Ein Koffer mit Attach   So Jun 28, 2009 6:43 pm

Patta schrieb:
er mient glaube ich dass der ganze Clonk versdeckt ist. Wenn er z.B. einen Busch oder was mit sich herumträgt, hinter dem man dann den Clonk nicht mehr sehen kann.

Dafür nimmt man das selbe Sytem der Busch wird einfach mithilfe der Prozedur ATTACH mit einem seiner Vertices an einen des Clonks gehängt.
Nach oben Nach unten
Benutzerprofil anzeigen
Bowserkoopa
Staatsrat
Staatsrat
avatar

Männlich Alter : 23
Anmeldedatum : 21.12.08

BeitragThema: Re: Ein Koffer mit Attach   So Jun 28, 2009 7:07 pm

Jup habs grade selbst geschafft^^. So ne Statue, hinter der man sich vor feindlichen Clonks tarnen kann
Nach oben Nach unten
Benutzerprofil anzeigen
Patta
Großadmiral
Großadmiral
avatar

Männlich Alter : 24
Anmeldedatum : 22.05.09

BeitragThema: Re: Ein Koffer mit Attach   So Jun 28, 2009 8:59 pm

hei. das war meine Idee. Hatte ich auch gerade, als ich zum ersten mal dieses Tut gelesen habe.^^ Immer werden meine Ideen geklaut. Sag mal, kann man deine Statuer denn auch mit sich herumtragen? Ich hab mich noch nicht frangesetzt, modde momentan für Oblivion, nicht für Clonk. Wenn dus fertig kriegst, kannst du mir die dann evtl zukommen lassen (hier hochladen oder so? KÖnnt die gut gebrauchen. Hab aber momentan kaum Zeit noch was für Clonk zu machen. nur so nebenbei was für Bonezone, aber sonst...
Nach oben Nach unten
Benutzerprofil anzeigen http://sites.google.com/site/clonkprojekte/star-wars
Bowserkoopa
Staatsrat
Staatsrat
avatar

Männlich Alter : 23
Anmeldedatum : 21.12.08

BeitragThema: Re: Ein Koffer mit Attach   Mo Jun 29, 2009 9:42 am

Also man geht zu ihr hin, drückt Doppelgraben und dann ist sie vor einem. Man kann damit auch rumlaufen, aber laufende Statuen fallen nun mal den Gegnern ins auge^^
Nach oben Nach unten
Benutzerprofil anzeigen
Patta
Großadmiral
Großadmiral
avatar

Männlich Alter : 24
Anmeldedatum : 22.05.09

BeitragThema: Re: Ein Koffer mit Attach   Mo Jun 29, 2009 9:53 am

OK. wärst du so nett mir die hochzuladen? wie gesagt, brauch die für ein Szen (nein, nicht Bonezone, obwohl laufende Statuen als Gegner schon lustig wären) nur hab halt grad keine Zeit für Clonk ( Sad )
Nach oben Nach unten
Benutzerprofil anzeigen http://sites.google.com/site/clonkprojekte/star-wars
YoCed
Vizeadmiral
Vizeadmiral
avatar

Männlich Alter : 21
Ort : Rheine
Anmeldedatum : 23.05.09

BeitragThema: Re: Ein Koffer mit Attach   Mo Jul 06, 2009 12:25 am

Hast du da als Grafik die normale Statue genommen? Wenn ja, würde ich die vlt ein bisschen verändern, also graphisch jetzt

EDIT: Also, vermutlich hab ich zu wenig gemacht, aber man kann sich schonmal hinter der Statue verstecken:[url=clonka.cl.funpic.de/anderes/Koffer2.c4d]Koffer[/url]
Sie hat sogar ein geheimfach^^


Zuletzt von YoCed am Mo Jul 06, 2009 12:43 am bearbeitet; insgesamt 1-mal bearbeitet (Grund : Upload)
Nach oben Nach unten
Benutzerprofil anzeigen
Patta
Großadmiral
Großadmiral
avatar

Männlich Alter : 24
Anmeldedatum : 22.05.09

BeitragThema: Re: Ein Koffer mit Attach   Mo Jul 06, 2009 2:45 pm

also bei mir kann man sich hinter deiner Statue nicht verstecken. Die hängt sich immer schräg über mienem Clonk auf.
Nach oben Nach unten
Benutzerprofil anzeigen http://sites.google.com/site/clonkprojekte/star-wars
YoCed
Vizeadmiral
Vizeadmiral
avatar

Männlich Alter : 21
Ort : Rheine
Anmeldedatum : 23.05.09

BeitragThema: Re: Ein Koffer mit Attach   Mo Jul 06, 2009 2:51 pm

Ja, aber man kann dahinter herlaufen Very Happy
Nach oben Nach unten
Benutzerprofil anzeigen
Patta
Großadmiral
Großadmiral
avatar

Männlich Alter : 24
Anmeldedatum : 22.05.09

BeitragThema: Re: Ein Koffer mit Attach   Mo Jul 06, 2009 2:53 pm

achso.
Nach oben Nach unten
Benutzerprofil anzeigen http://sites.google.com/site/clonkprojekte/star-wars
Bowserkoopa
Staatsrat
Staatsrat
avatar

Männlich Alter : 23
Anmeldedatum : 21.12.08

BeitragThema: Re: Ein Koffer mit Attach   Mo Jul 06, 2009 2:59 pm

Man muss mit Offset oder Vertex rumarbeiten bis man es schafft, die Grafik genau über den Clonk zu legen. Weiß nur nicht mehr, was ich damals dazu gemacht habe Laughing Jedenfalls kannste du Grafik der Statue leicht austauschen, ist eben aus dem SM-Pack 5.3 Beta. Hat genaue Clonk Größe:

Statue
Nach oben Nach unten
Benutzerprofil anzeigen
der kleine boss
Vizeadmiral
Vizeadmiral
avatar

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

BeitragThema: Re: Ein Koffer mit Attach   Di Sep 01, 2009 4:43 pm

kann man auch iwie Sachen an Fahrzeuge ATTACHEN ?
Nach oben Nach unten
Benutzerprofil anzeigen http://www.clonk.de
Dragonclonk
Kadett
Kadett
avatar

Männlich Alter : 24
Ort : Lübeck
Anmeldedatum : 11.12.08

BeitragThema: Re: Ein Koffer mit Attach   Mo Okt 12, 2009 10:04 am

An sich ist das Tutorial nicht schlecht, aber man müsste den Script anpassen, wenn man schwimmt, springt etc, da der Koffer nur attached wird, und nicht dynamisch sich an die Bewegungen des Clonkes angepasst ist.
Nach oben Nach unten
Benutzerprofil anzeigen
Wipfhunter
Brigadegeneral
Brigadegeneral
avatar

Männlich Alter : 22
Ort : Am Ort, den niemand kennt.... Bielefeld
Anmeldedatum : 01.12.09

BeitragThema: Re: Ein Koffer mit Attach   Do März 11, 2010 11:14 pm

Wie funktioniert denn das Overlay bei InExantros? (meine das Objekt, dass sich vor den Clonk attached und die Rüstungen etc. anzeigt!)
Wie kann das immer die Actions ausführen, die der Clonk auch macht und trotzdem an ihm attached bleiben?
Nach oben Nach unten
Benutzerprofil anzeigen
Wipfmagus
Konteradmiral
Konteradmiral
avatar

Weiblich Alter : 22
Anmeldedatum : 06.03.10

BeitragThema: Re: Ein Koffer mit Attach   Mo März 15, 2010 3:35 am

All diese Overlays sind in einem Objekt namens Overlay.c4d (OVRL) gespeichert, das im Helpers-Ordner steckt. Das Overlay wird dann einfach über SetGraphics gesetzt.
(Einfach? Ich wüsste zwar, wie man es macht, aber könnte es trotzdem nicht)
Nach oben Nach unten
Benutzerprofil anzeigen
Gesponserte Inhalte




BeitragThema: Re: Ein Koffer mit Attach   

Nach oben Nach unten
 
Ein Koffer mit Attach
Vorheriges Thema anzeigen Nächstes Thema anzeigen Nach oben 
Seite 1 von 1

Befugnisse in diesem ForumSie können in diesem Forum nicht antworten
CNDG :: Fortgeschrittene :: Tutorials-
Gehe zu: