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  

 

 Problem mit neuer Granate

Nach unten 
2 verfasser
AutorNachricht
Simsi
Staatssekretär
Staatssekretär
Simsi


Männlich Alter : 31
Ort : Vaihingen/Enz
Anmeldedatum : 30.03.08

Problem mit neuer Granate Empty
BeitragThema: Problem mit neuer Granate   Problem mit neuer Granate EmptyDi Jun 10, 2008 11:01 pm

hallo ihr alle

ich wollte ne neue granate machen, aber irgendwie will die nich so wie ich will, zwar kann man sie verschießen und alles, aber wenn sie dann eigentlich blitze verschleudern sollte, kommt kurz ein kleiner blauer blitz, und dann isch alles wieder weg.

hier der script:

Zitat :
/*-- Blitzgranate --*/

#strict

// Ist eine Granate
#include GREN

protected func HitObject()
{
CastLightnings();
}

func CastLightnings()
{
Sound("LaserGrenade");
SetSpeed(0,0);
SetAction("Float");

for(var i = 0; i <= 360; i += 10) {
var lightning = CreateObject(LGTH, GetX(),GetY(), GetOwner());
var xdir = +Sin(i,RandomX(15,30));
var ydir = -Cos(i,RandomX(15,30));

lightning -> Launch(xdir,ydir,0, 10);
//Launch(int ixdir, int iydir, bool slime, int iDamagepar)
}
}

func ExplodeDelay() { return(50); }

und hier noch der granatenscript, der ja inkludiert wird:

Zitat :
/*-- Granate --*/

#strict

local iDamage;
local shooter;

func Construction(object byObj) {
// nichts? :C
if(!byObj)
return();
// Waffe?
if(byObj->~IsWeapon())
// User der Waffe?
if(!(shooter = byObj->GetUser()))
// kein User -> Waffe.
shooter = byObj;

// noch immer nichst gefunden?
if(!shooter)
// dann einfach byObj nehmen.
shooter = byObj;
}

func Launch(int xdir, int ydir, int iDmg)
{
AddEffect("HitCheck", this(), 1, 1, 0, SHT1,shooter);
AddEffect("Grenade", this(), 1, 1, this());
SetSpeed(xdir, ydir);
iDamage = iDmg;
if(!iDamage)
// Standardexplosion
iDamage = 30;
}

// Aufprall
func Hit()
{
var x, y;
// Rechts angestoßen
if(GetContact(this(), -1) & CNAT_Right )
x=-(Abs(GetXDir()/4)+Random(3));
// Links angestoßen
else if(GetContact(this(), -1) & CNAT_Left ) x=Abs(GetXDir()/4)+Random(3);
// Nichts davon: Alte YDir
else x=GetXDir()/2;

// Oben angestoßen
if(GetContact(this(), -1) & CNAT_Top) y=Abs(GetYDir()/3);
// Unten angestoßen
// Warum verlieren Objekte auf glattem Boden ihre YDir..?
// Hacken wir halt ein bisschen.. Zufall drauf.
// Ich kann nicht mehr so recht lesen was da steht und ich denke das hat einen gewissen Vorteil.
else if(GetContact(this(), -1) & CNAT_Bottom) y=-(Max(Abs(GetYDir()/4), Abs(GetXDir())/4)+Random(3));
// Nichts davon: Alte YDir
else y=GetYDir()/2;
// Rumdopsen.. Komplizierter als man meint
SetXDir(x);
SetYDir(y);
// Letztendlich hört man den Aufprall auch noch
Sound("GrenadeHit*");
}

local noExplode;

func HitObject()
{
RemoveEffect("Grenade", this(),0,1);
// CastObjects(BRNH,Random(3)+6,30);
BlastObjects(GetX(), GetY(), iDamage/4);
Explode(iDamage);
}

func ExplodeDelay() { return(110); }

func IsBulletTarget(id id)
{
// Kann von anderen Geschossen getroffen werden
return(true);
}

public func NoDecoDamage() { return(true); }

func FxGrenadeTimer(object target, int effect, int time)
{
if(time > ExplodeDelay()) return(HitObject());
var vel=Abs(GetXDir())+Abs(GetYDir());
var alpha=Max(0,100-vel);

CreateParticle("Smoke2", -GetXDir()/6, -GetYDir()/6, RandomX(-15, 15), -5,
vel/2+RandomX(20, 60), RGBa(100,100,100,50+alpha));
}

func FxGrenadeDamage()
{
HitObject();
}

func IsBouncy() { return(true); }

ich hoff mal ihr findet den fehler Razz
Nach oben Nach unten
Simsi
Staatssekretär
Staatssekretär
Simsi


Männlich Alter : 31
Ort : Vaihingen/Enz
Anmeldedatum : 30.03.08

Problem mit neuer Granate Empty
BeitragThema: Re: Problem mit neuer Granate   Problem mit neuer Granate EmptyDo Jun 12, 2008 4:53 pm

Bitte schließen, ich hab einfach die ID von ner bestehenden unwissend kopiert.
Nach oben Nach unten
Mozart
Kanzler
Kanzler
Mozart


Männlich Alter : 31
Ort : Vaihingen/Enz
Anmeldedatum : 24.02.08

Problem mit neuer Granate Empty
BeitragThema: Re: Problem mit neuer Granate   Problem mit neuer Granate EmptyDo Jun 12, 2008 5:12 pm

schon getan
Nach oben Nach unten
http://www.funamfag.de
Mozart
Kanzler
Kanzler
Mozart


Männlich Alter : 31
Ort : Vaihingen/Enz
Anmeldedatum : 24.02.08

Problem mit neuer Granate Empty
BeitragThema: Re: Problem mit neuer Granate   Problem mit neuer Granate EmptySa Jul 12, 2008 2:31 pm

ach ja, des gehört net unter Anfragen sondern unter Scripthilfe
~verschieb~
Nach oben Nach unten
http://www.funamfag.de
Gesponserte Inhalte





Problem mit neuer Granate Empty
BeitragThema: Re: Problem mit neuer Granate   Problem mit neuer Granate Empty

Nach oben Nach unten
 
Problem mit neuer Granate
Nach oben 
Seite 1 von 1
 Ähnliche Themen
-
» Ein neuer Carrier
» neuer Clonk auf Knopfdruck
» Problem mit dem Energieverbrauch
» Problem mit Eke

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