Opferlamm-Clan Board
www.opferlamm-clan.de
Verantwortlich für diese bösen Machenschaften: siehe Impressum

Registrierung Kalender Mitgliederliste Suche Häufig gestellte Fragen Zur Startseite

Opferlamm-Clan Board » Call of Duty 4 » Call of Duty 4 - Mapping » CoD4-Mapping-Hilfe » Hilfe zu playloopedfx » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Neues Thema erstellen Antwort erstellen
Zum Ende der Seite springen Hilfe zu playloopedfx
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
[BST]Plagegeist
Teetrinker


Dabei seit: 21.01.2008
Beiträge: 38


Hilfe zu playloopedfx Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Moin Moin

Ich habe folgendes Problem. Ich möchte einem Heli ab einem ScriptOrigin bis zu einem anderen ScriptOrigin einen Effekt zuweisen.
Dazu nutze ich folgendes Script:

heli1_flug()
{
level.heliSpeed = 3.5;
heli1 = getent ("heli1","targetname");
helipos1 = getent ("helipos1","targetname");
helipos2 = getent ("helipos2","targetname");
helipos3 = getent ("helipos3","targetname");
helipos4 = getent ("helipos4","targetname");
heli1.pos1 = helipos1.origin;
heli1.pos2 = helipos2.origin;
heli1.pos3 = helipos3.origin;
heli1.pos4 = helipos4.origin;
heli1.start = heli1.origin;
heli1 hide();

wait 30;
while (1)
{
heli1 thread heli1_move("apache");
wait 7200;
}
}

heli1_move(sound)
{
if (isdefined (sound))
self playsound (sound);

wait 7;

self show();
self moveto(self.pos1, level.heliSpeed);
wait level.heliSpeed;
self moveto(self.pos2, level.heliSpeed);
self playloopsound ("heli_shot");
playloopedfx(level._effect["helishot"], heli1.pos2);
wait level.heliSpeed;
self moveto(self.pos3, level.heliSpeed);
self stoploopsound("heli_shot");
self rotateto ((0,0,-25),2.2);
wait level.heliSpeed;
self moveto(self.pos4, level.heliSpeed);
wait level.heliSpeed;
self hide();
}

Wie man im Script sieht, fängt der Heli ab einem bestimmten Punkt an zu schiessen + Sound.
Nun möchte ich aber auch noch ein Mündungsfeuer Effekt ( level._effect["helishot"] = loadfx("explosions/ammo_cookoff_child"); ) dazu haben und das auch nur bis zum nächsten ScriptOrigin.

Die Zeile mit dem playloopedfx stimmt na klar so nicht. Das ist eins von meinen Experimenten das auch in die Hose ging.

Ich hoffe das mir da einer helfen kann. Schon mal ein DANKE im voraus.
[BST]Plagegeist ist offline E-Mail an [BST]Plagegeist senden Beiträge von [BST]Plagegeist suchen Nehmen Sie [BST]Plagegeist in Ihre Freundesliste auf
OLD MAN WITH GUN
... sehr viel alleine


images/avatars/avatar-798.gif


Dabei seit: 01.05.2006
Beiträge: 2.305


RE: Hilfe zu playloopedfx Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Die Sache mit dem Effekt ist schon ein wenig komplizierter.
Erstens, einen Effekt, den man mit playloopedfx startet, kann man nicht mehr beenden.
Zweitens, der Effekt soll ja bestimmt nicht am Rotor abgespielt werden (dem origin des Helis) sondern vorne beim MG. Dazu musst du wissen, wie diese Position (Tag) beim Heli heißt. Dann kannst du dort den Effekt mit playfxontag abspielen.
playfxontag spielt allerdings den Effekt auch nicht in einer Schleife (ohne loop), sodass du dir da eine selber schreiben musst.

__________________

Da die Lichtgeschwindigkeit höher ist als die Schallgeschwindigkeit,
hält man so manchen für einen hellen Kopf, bis man ihn reden hört.

OLD MAN WITH GUN ist offline Beiträge von OLD MAN WITH GUN suchen Nehmen Sie OLD MAN WITH GUN in Ihre Freundesliste auf
[BST]Plagegeist
Teetrinker


Dabei seit: 21.01.2008
Beiträge: 38


Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Das immer alles so kompliziert sein muß.
Und ich dacht das man einen Effekt ab einer bestimmten Zeit von einem Origin zum anderen Origin abspielen kann.
Na ja da ich vom Scripten überhaupt keine Ahnung habe, wird es wohl nur beim Schuss Effekt bleiben.

Danke für die Info OLD MAN WITH GUN

Mal eine Frage an dich. Woher weißt du das alles? Wenn ich mir so deine Forenbeiträge anschaue, hast du ja meistens eine Antwort parat.

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von [BST]Plagegeist: 08.03.2008 20:53.

[BST]Plagegeist ist offline E-Mail an [BST]Plagegeist senden Beiträge von [BST]Plagegeist suchen Nehmen Sie [BST]Plagegeist in Ihre Freundesliste auf
OLD MAN WITH GUN
... sehr viel alleine


images/avatars/avatar-798.gif


Dabei seit: 01.05.2006
Beiträge: 2.305


Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Zitat:

Original von [BST]Plagegeist
Mal eine Frage an dich. Woher weißt du das alles? Wenn ich mir so deine Forenbeiträge anschaue, hast du ja meistens eine Antwort parat.
Eigentlich nur durch sehr viel lesen und viel ausprobieren.
Ich habe bei CoD2 mit dem Mappen und Modden angefangen und habe da schon sehr viele Erfahrungen gesammelt (das Meiste kann man auch bei CoD4 gebrauchen).


Sowas ähnliches wie mit deinem Effekt am Heli habe ich auch schon mal bei CoD2 gemacht
Bewegliche fx
So in etwas veränderter Form müsste es dann auch für deinen Heli aussehen.

__________________

Da die Lichtgeschwindigkeit höher ist als die Schallgeschwindigkeit,
hält man so manchen für einen hellen Kopf, bis man ihn reden hört.

OLD MAN WITH GUN ist offline Beiträge von OLD MAN WITH GUN suchen Nehmen Sie OLD MAN WITH GUN in Ihre Freundesliste auf
[BST]Plagegeist
Teetrinker


Dabei seit: 21.01.2008
Beiträge: 38


Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Danke das du mir da weiter hilfst!!!!

So, ich habe in dem Ordner xmodelparts 2 Files gefunden mit vehicle_apache. Da ich aber nicht weiß welcher nun meiner ist, habe ich mir beide angesehen. Die tags sind bei beiden gleich:

tag_origin, origin_animate_jnt, tag_body, body_animate_jnt, fron_wheel_lt_base, front_wheel_rt_base, main_rotor_jnt, tag_deathfx, tag_detach, tag_driver, tag_engin_right, tag_engine_left, tag_flash_11, tag_flash_2, tag_flash_22, tag_flash_3, tag_ground, tag_passenger, tag_player, tag_turret, tail_rotor_jnt, wheel_rear_base_jnt, front_wheel_lt, front_wheel_rt, turret_animate_jnt, wheel_rear_jnt, tag_barrel, barrel_animate_jnt, tag_flash

Meine playfxontag sieht jetzt so aus:
playfxontag(level._effect["helishot"], self, "tag_barrel" );

Die maps/mp/mp_meinemap_fx so:
main()
{
level._effect["helishot"] = loadfx("explosions/ammo_cookoff_child");

/#
if ( getdvar( "clientSideEffects" ) != "1" )
maps\createfx\mp_meinemap_fx::main();
#/
}

Die maps/createfx/mp_meinemap_fx so:
main()
{
level._effect["helishot"] = loadfx("explosions/ammo_cookoff_child");

/#
if ( getdvar( "clientSideEffects" ) != "1" )
maps\createfx\mp_meinemap_fx::main();
#/
}

Und in der zone_source/mp_meinemap.csv habe ich das eingefügt:
fx,explosions/ammo_cookoff_child

Wenn ich die Map so starte, bekomme ich keinen Fehler. Aber den Effekt sehe ich auch nicht!

Du hattest doch geschrieben das man einen playfxontag nicht mehr stoppen kann. Was ist wenn ich den nicht stoppe sondern einfach über bzw. unter die Map verschwinden lasse?

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von [BST]Plagegeist: 09.03.2008 11:13.

[BST]Plagegeist ist offline E-Mail an [BST]Plagegeist senden Beiträge von [BST]Plagegeist suchen Nehmen Sie [BST]Plagegeist in Ihre Freundesliste auf
[BST]Plagegeist
Teetrinker


Dabei seit: 21.01.2008
Beiträge: 38


Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Der Effekt wird doch abgespielt. Ich habe dazu einen anderen Effekt genommen der etwas größer ist. Das Problem ist aber das der Effekt nur einmal abgespielt wird und zwar dann wenn der Heli den ersten Schuß abgibt.
[BST]Plagegeist ist offline E-Mail an [BST]Plagegeist senden Beiträge von [BST]Plagegeist suchen Nehmen Sie [BST]Plagegeist in Ihre Freundesliste auf
[BST]Plagegeist
Teetrinker


Dabei seit: 21.01.2008
Beiträge: 38


Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ich habe mir gerade noch einmal deinen ersten Beitrag angesehen. Da hattest du ja geschrieben das der playfxontag ohne loop läuft. Das hatte ich total übersehen. Denn ist ja auch kein Wunder das der nur einmal abgespielt wird.

Ich frage mich nur wie die das im Original Heliscript gemacht haben! Denn wenn man den Heli anfordert, sieht man ja auch das Mündungsfeuer. Nun sag bitte nicht das ist animiert.

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von [BST]Plagegeist: 09.03.2008 11:53.

[BST]Plagegeist ist offline E-Mail an [BST]Plagegeist senden Beiträge von [BST]Plagegeist suchen Nehmen Sie [BST]Plagegeist in Ihre Freundesliste auf
OLD MAN WITH GUN
... sehr viel alleine


images/avatars/avatar-798.gif


Dabei seit: 01.05.2006
Beiträge: 2.305


Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Zitat:

Original von [BST]Plagegeist
Du hattest doch geschrieben das man einen playfxontag nicht mehr stoppen kann. Was ist wenn ich den nicht stoppe sondern einfach über bzw. unter die Map verschwinden lasse?
Nein, ich habe geschrieben, das man playloopedfx nicht mehr stoppen kann und das playfxontag den Effekt nur einmal abspielt.
Darum habe ich ja in dem verlinkten CoD2 Beitrag mir eine eigene Schleife geschrieben, die den Effekt dauernd neu abspielt und das nur solange, solange
level.plane_move "true" ist.

__________________

Da die Lichtgeschwindigkeit höher ist als die Schallgeschwindigkeit,
hält man so manchen für einen hellen Kopf, bis man ihn reden hört.

OLD MAN WITH GUN ist offline Beiträge von OLD MAN WITH GUN suchen Nehmen Sie OLD MAN WITH GUN in Ihre Freundesliste auf
[BST]Plagegeist
Teetrinker


Dabei seit: 21.01.2008
Beiträge: 38


Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Da ich ja vom Scripten keine Ahnung habe, hatte ich die Schleife in deinem CoD2 Beitrag nicht erkannt.

Versuche gerade die Schleife in meinem Script anzupassen.
[BST]Plagegeist ist offline E-Mail an [BST]Plagegeist senden Beiträge von [BST]Plagegeist suchen Nehmen Sie [BST]Plagegeist in Ihre Freundesliste auf
[BST]Plagegeist
Teetrinker


Dabei seit: 21.01.2008
Beiträge: 38


Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ich habe zwar keinen auf, aber ich ziehe trotzdem meinen Hut vor dir. Klappt alles Wunderbar. Danke Danke

Hier ist das Script falls es jemand nutzen oder modifizieren will.

main()
{
level.heli1_move = false;
thread heli1_flug();
}

heli1_flug()
{
level.heliSpeed = 3.5;
heli1 = getent ("heli1","targetname");
heli1pos1 = getent ("heli1pos1","targetname");
heli1pos2 = getent ("heli1pos2","targetname");
heli1pos3 = getent ("heli1pos3","targetname");
heli1pos4 = getent ("heli1pos4","targetname");
heli1.pos1 = heli1pos1.origin;
heli1.pos2 = heli1pos2.origin;
heli1.pos3 = heli1pos3.origin;
heli1.pos4 = heli1pos4.origin;
heli1.start = heli1.origin;
heli1 hide();

wait 30;
while (1)
{
heli1 thread shot1();
heli1 thread heli1_move("apache");
wait 7200;
}
}

heli1_move(sound)
{
if (isdefined (sound))
self playsound (sound);

wait 7;

self show();
self moveto(self.pos1, level.heliSpeed);
wait level.heliSpeed;
self moveto(self.pos2, level.heliSpeed);
level.heli1_move = true;
self playloopsound ("heli_shot");
wait level.heliSpeed;
self moveto(self.pos3, level.heliSpeed);
level.heli1_move = false;
self stoploopsound("heli_shot");
wait level.heliSpeed;
self moveto(self.pos4, level.heliSpeed);
wait level.heliSpeed;
self hide();
}

shot1()
{
while(1)
{
while(level.heli1_move)
{
playfxontag(level._effect["helishot"], self, "tag_flash" );
playfxontag(level._effect["eject"], self, "tag_turret" );
wait .1;
}
wait 0.01;
}
}

In /maps/mp/mp_meinemap_fx.gsc und /maps/createfx/mp_meinemap_fx.gsc kommt dies:

main()
{
level._effect["helishot"] = loadfx("impacts/20mm_metal_impact");
level._effect["eject"] = loadfx("shellejects/20mm_mp");

/#
if ( getdvar( "clientSideEffects" ) != "1" )
maps\createfx\mp_meinemap_fx::main();
#/
}

In die meinesound.csv kommt dies:

apache,,vehicles/veh_cobra_move_loop_v3.wav,1,1,na,0.95,1.05,7,12000,effect
s1,,,,,mp_meinemap,,,,,,,,,,,,,
heli_shot,,vehicles/veh_hind_gatling_fireloop_1.wav,1,1,max,1.3,,7,12000,we
apon,streamed,,looping,0.8,mp_meinemap,,,,weapon2,,,,,,,,,

In die /zone_source/mp_meinemap.csv kommen die Einträge hinzu:
impacts/20mm_metal_impact
fx,shellejects/20mm_mp

Falls jemand dieses Script ändert, wäre das Super diese Änderung hier einzutragen. Damit JEDER das nutzen kann. Danke

Dieser Beitrag wurde 3 mal editiert, zum letzten Mal von [BST]Plagegeist: 09.03.2008 15:50.

[BST]Plagegeist ist offline E-Mail an [BST]Plagegeist senden Beiträge von [BST]Plagegeist suchen Nehmen Sie [BST]Plagegeist in Ihre Freundesliste auf
Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellen Antwort erstellen
Opferlamm-Clan Board » Call of Duty 4 » Call of Duty 4 - Mapping » CoD4-Mapping-Hilfe » Hilfe zu playloopedfx

Impressum ||Datenschutzerklärung

Forensoftware: Wbb - WoltLab GmbH || zum Archiv