Thema: Hazard-Waffen-HowTo Do Apr 01, 2010 2:35 am
Schwierigkeit:***** Vorkenntnisse: Was sind Clonkscripts? (Grundwissen),DefCore.txt richtig einstellen, #include Als erstes brauchen wir mal ein neues Objekt und eine neue Grafik: Falls noch nicht geschehen, müsst ihr eure Grafik noch in Graphics.png umbenennen und die DefCore.txt auf die Grafik anpassen, Hight, Wight, Offset und Vertexe. Ok, dann brauchen wir jetzt nur noch das script. Zunächst müsste das so aussehen:
Code:
/*-- Neues Objekt --*/
#strict
func Initialize() {
return(1); }
Zunächst müssen wir die Waffensteuerung inkludieren:
Code:
#include WEPN
Dann erstellen wir uns mal unseren ersten Feuermodus, indem wir diese Funktion überladen:
Code:
public func FMData1(int data)//Jenachdem, wie viele Modi man haben will, ändert sich die 1 { if(data == FM_Name) return("Einzelschuss");//Der Name des Modus if(data == FM_AmmoID) return(STAM);//Die ID der Munition if(data == FM_AmmoLoad) return(6);/Die Anzahl der Schüsse pro Magazin
if(data == FM_Reload) return(100);//Die Anzahl in Frames, um ein neues Magazin einzulegen if(data == FM_Recharge) return(10);//Die Anzahl in Frames, um nachzuladen
Jetzt haben wir schonmal die Grundfunktion der Waffe. Wir benötigen aber noch die Informationen, die der Bot braucht zum schießen, dazu überladen wir folgendes;
Code:
public func BOTData1(int data)//Wie gesagt, die 1 kann ersetzt werden { if(data == BOT_Range) return(480);//Die reichweite if(data == BOT_DmgType) return(DMG_Projectile);//Der Typ des Projektils
return(Default(data)); }
Jetzt brauchen wir nur noch diese Funktion zu überladen, um den Schuss zu vollenden:
Code:
public func Fire1()//Die 1 kann variieren. { // Die Richtung herausfinden var dir = GetDir(GetUser())*2-1; // Winkel herausfinden in den geschossen werden soll var angle = GetUser()->AimAngle(); // Position der Mündung der Waffe var x,y; GetUser()->WeaponEnd(x,y); // Schuss dort erstellen und verschießen var ammo = CreateObject(SHT1,x,y,GetController(user)); ammo->Launch(angle,250,600,5,15,GetFMData(FM_Damage));
Jetzt brauchen wir nurnoch eins: Da man die Waffe in der Hand der Hazard-Clonks sehen kann, benötigen wir folgende Funktionen:
Code:
public func HandSize() { return(500); }//Die Größe public func HandX() { return(1500); }//Die X-Position public func HandY() { return(-5000); }//Die Y-Position
Ich hoffe mit diesem Tutorial nicht zu erreichen, dass in Zukunft anstatt Flints Hazard-Waffen auf dem CCAN landen, sondern einfach, dass ich den Anfängern und vielleicht auch schon besseren Scriptern was neues "lehren" könnte.
DIE GRAFIK WURDE NICHT VON MIR ERSTELLT, ALSO BITTE DIE GRAFIK NICHT VERWENDEN!
Zuletzt von YoCed am Do Apr 01, 2010 3:32 pm bearbeitet; insgesamt 1-mal bearbeitet
Extremclonk Staatsrat
Ort : Am Anti-Spam-Limes Anmeldedatum : 19.01.09
Thema: Re: Hazard-Waffen-HowTo Do Apr 01, 2010 2:40 am
Nun, schönes Tut, erzählt zwar nix was die Hazarddoku nicht erzählt, aber trotzdem gut das auch hier zu haben.
Patta Großadmiral
Alter : 30 Anmeldedatum : 22.05.09
Thema: Re: Hazard-Waffen-HowTo Do Apr 01, 2010 12:00 pm
schönes Tutorial, aber schreib noch dazu dass man die Grafik nicht klauen darf
Jokob Oberst
Alter : 28 Ort : Clonkville Anmeldedatum : 15.11.09
Thema: Re: Hazard-Waffen-HowTo Do Apr 01, 2010 12:20 pm
Wirklich gutes Tut...Aber gib nicht iwelche Grafiken raus.
Fox Fähnrich
Anmeldedatum : 26.03.09
Thema: Re: Hazard-Waffen-HowTo Do Apr 01, 2010 3:50 pm
Und wenn schon dann die vom Blastergewehr die ist besser.