Alter : 28 Ort : In einem kleinen Dorf in Unterfranken (Bayern) Anmeldedatum : 10.02.09
Thema: Problem mit Geschütz Mi Jul 08, 2009 5:36 pm
Hallo.
Also ich wills kurzmachen. Ich hab ein geschütz. Zum anfassen und abdrücken. Ich hab den Script von der Pistole (leicht modifiziert) eingefügt, als ich gesehen hab das das teil aus dem offsett aus schießt - dort war aber grafikmäßig nicht der lauf. Also gut, offsett geändert, und schon stimmt der schuss. Aber eben nur in eine Richtung. Fasst man es von rechts an (schaut nach rechts), geht der schuss zwar nach rechts aber da der schuss aus dem offsett kommt gibt man sich selbst einen headshot. Vlt. wisst ihr ja Hilfe.
Script:
Zitat :
/*-- Pistole --*/
#strict
#include WEPN
public func OnReload(int i) { if(i == 1) Sound("PistolLoad");
public func Fire1() // Projektilschuss { var user = GetUser(); var angle = user->AimAngle(20) + RandomX(-1,+1); var x,y; user->WeaponEnd(x,y); var x2=x-9; var y2=x-6; var ammo = CreateObject(SHT1,x2,y2,GetController(user)); ammo->Launch(angle,250,600,4,300,GetFMData(FM_Damage, 1));
// Effekte MuzzleFlash(40,user,x2,y2,angle); var dir = GetDir(user)*2-1; BulletCasing(dir*6,3,-dir*5,-20,5);
// Sound Sound("Pistol",0,ammo); }
Grafik:
Übrigtens sind die Austrittslöcher bei Linksstellung bei 4,4 und wenn das geschütz nach rechts schaut bei 20,4 OFfset bei -8,-8 gesetz.
EDIT: Für die Schaulustigen unter uns:
Extremclonk Staatsrat
Ort : Am Anti-Spam-Limes Anmeldedatum : 19.01.09
Thema: Re: Problem mit Geschütz Mi Jul 08, 2009 5:46 pm
Also wenn ich das mal so loswerden darf: Ich würds selber schreiben und nix ummodeln so kriegst du bloß Fehler rein. Du hast sowas wie AimAngle drin. Wozu? Da dein Teil weder noch oben noch nach untern zielt reicht es völlig wenn du angle je nach Richtung (links = 270, rechts = 90) definierst. Und natürlich auch x je nach Richtung anders definieren.
Gamer Staatsrat
Alter : 28 Ort : In einem kleinen Dorf in Unterfranken (Bayern) Anmeldedatum : 10.02.09
Thema: Re: Problem mit Geschütz Mi Jul 08, 2009 5:50 pm
Ich weiß das es eig. nicht gut ist sachen nur zu verändern aber es musste eben schnell gehen^^ Aber ich denke ich weiß wie ich das löße. Wenn GetX(this()) In der Landschaft die Offset pos angibt mach ich einfach var ammo = CreateObject(SHT1,GetX(this())+8 oder kA,GetY(this())+6 oder kA ,GetController(user)); Und dass je nach richtung
Extremclonk Staatsrat
Ort : Am Anti-Spam-Limes Anmeldedatum : 19.01.09
Thema: Re: Problem mit Geschütz Mi Jul 08, 2009 5:55 pm
Was? Machs dir doch nicht so schwer, Junge! Schau so löst man das besser: Statt nur die Grafik zu drehen drehst du einfach mit SetDir das ganze Geschütz. Dann:
Code:
angle = 270; if(GetDir()) angle =90;
x = -8 if(GetDir()) x =8;
BTW: Ich würde bei drehen auch das Geschütz in seiner position versetzten da man ganz hinten anfasst du dann dreht und plötzlich die Mündung im Gesicht hat.