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-Tutorials / Wiki » [Tutorial] Explosive Modelle » 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 [Tutorial] Explosive Modelle
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
-tiger-
Steuerzahler


images/avatars/avatar-1082.jpg


Dabei seit: 22.01.2008
Beiträge: 189


smile [Tutorial] Explosive Modelle Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Vorlage von display | Modsonline

1. Öffnet im Radianten das com_propane_tank.map Prefab, ihr findet es unter: Prefab --> Misc_Models --> com_propane_tank.map. Speichert das Prefab mit einem anderen Namen ab zb. explo_propane_tank.

2. Erstellt nun einen Brush der genauso groß ist wie das Model. Nun überzieht ihr den Brush mit der clip_nosight Textur. Drückt die Taste 4, damit ist die Grid Größe 8 ausgewählt ist. Markiert den Brush, geht dann oben im Radianten auf Brush --> Arbitrary sided cylinder, gebt in dem neuen Fenster die Zahl 12 ein damit der Brush 12 Zylinderseiten bekommt.

3. Markiert das Model und drückt die Taste N, im Entity Fenster gebt ihr unter Key: targetname und unter value: explodable_model ein. Macht einen Haken vor NO_SHADOW und NO_STATIC_SHADOWS, dadurch werden keine Schatten für das Model erstellt. Achtet darauf das das Model mittig ausgerichtet ist (origin 0 0 0). Markiert jetzt noch den Brush und drückt W. Dadurch wird das skript_model mit dem Brush verbunden, jetzt speichern.



Platziert das Prefab in eure Map und speichert eure Map ab. Nun könnt ihr eure Map Kompilieren.

maps\mp\_explosive_models::main(); fügt diese Zeile in euremap.gsc ein, rawfile,maps/mp/_explosive_models.gsc und die Zeile fügt ihr unter update your zone file ein.

Erstellt eine neue .gsc Datei und speichert es unter raw/maps/mp als _explosive_models.gsc ab.

_explosive_models.gsc:

Code einblendenCode angehängt. Klicke hier zum Ein-/Ausblenden

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
main()
{
models = getentarray("explodable_model", "targetname");
if (models.size > 0)
{
level.breakables_fx["explode"] = loadfx( "explosions/grenadeexp_metal" );
}

level.barrelExpSound = "explo_metal_rand";

for(i = 0; i < models.size; i++)
{
models[i] thread explodable_model_think();
}
}

explodable_model_think()
{
//targeted brushmodels take priority over proximity based breakables - nate
if (isdefined(self.target))
{
targ = getent(self.target,"targetname");
if(targ.classname == "script_brushmodel")
{
self.remove = targ;
}
}
accumulate = 40;
threshold = 0;
dmg = 0;

self setcandamage(true);
while(1)
{
self waittill("damage", amount, other);
if (amount >= threshold)
{
dmg += amount;
if (dmg >= accumulate)
{
self thread explodable_model_explode();
}
}
}
}

explodable_model_explode()
{
Self = getentarray("explodable_model", "targetname");

if (isdefined (self.remove))
{
self.remove delete();
}

if(isdefined(self))
{
origin = self getorigin();
range = 200;
maxdamage = 200;
mindamage = 1;

self playsound (level.barrelExpSound);
playfx(level.breakables_fx["explode"], origin);
radiusDamage(origin, range, maxdamage, mindamage);

self delete();
}
}



skript info:

range ist Größe des Schadens Radius,
maxdamage ist Maximale Größe des Player Schadens
explosions/grenadeexp_metal ist der Effekt
barrelExpSound ist der soundalias Name

__________________


Processor: Intel Core2 Quad Q6600 | Mainboard: ABIT IP35 | Grafikkarte: GeForce 9800 GTX | Arbeitsspeicher: 2 GB G-Skill | Netzteil: Be Quiet! Straight Power

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von -tiger-: 17.04.2009 22:07.

-tiger- ist offline Homepage von -tiger- Beiträge von -tiger- suchen Nehmen Sie -tiger- in Ihre Freundesliste auf
Marvin
Turnbeutelvergesser


images/avatars/avatar-114.gif


Dabei seit: 08.02.2009
Beiträge: 455


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

Nur mal ne fräge:

Kann man dafür auch ein anderes Model als das im Beispiel nehmenEin Fragezeichen Keinen Plan?

Marvin

__________________
Wenn ihr Lust habt schaut mal auf meinem YouTube Channel vorbei, dort werden vorallem Gaming Videos hochgeladen:
http://www.youtube.com/user/PackyGames?feature=mhee

Ich freue mich auf euere Kommentare und / oder Feedback.
Wenns euch gefällt lasst ein Abo da smile
Marvin ist offline Beiträge von Marvin suchen Nehmen Sie Marvin in Ihre Freundesliste auf
-tiger-
Steuerzahler


images/avatars/avatar-1082.jpg


Dabei seit: 22.01.2008
Beiträge: 189


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 Marvin
Nur mal ne fräge:

Kann man dafür auch ein anderes Model als das im Beispiel nehmenEin Fragezeichen Keinen Plan?

Marvin


Ja, man kann jedes XModel dafür verwenden. Aber es muss dann zu ein skript_model gemacht werden.

__________________


Processor: Intel Core2 Quad Q6600 | Mainboard: ABIT IP35 | Grafikkarte: GeForce 9800 GTX | Arbeitsspeicher: 2 GB G-Skill | Netzteil: Be Quiet! Straight Power

-tiger- ist offline Homepage von -tiger- Beiträge von -tiger- suchen Nehmen Sie -tiger- in Ihre Freundesliste auf
Marvin
Turnbeutelvergesser


images/avatars/avatar-114.gif


Dabei seit: 08.02.2009
Beiträge: 455


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

Ahh danke, jetzt kann ich auch mal andere Fässer zum explodieren bringen! Augenzwinkern

mfg Marvin

__________________
Wenn ihr Lust habt schaut mal auf meinem YouTube Channel vorbei, dort werden vorallem Gaming Videos hochgeladen:
http://www.youtube.com/user/PackyGames?feature=mhee

Ich freue mich auf euere Kommentare und / oder Feedback.
Wenns euch gefällt lasst ein Abo da smile
Marvin ist offline Beiträge von Marvin suchen Nehmen Sie Marvin in Ihre Freundesliste auf
jtms
Hat kein Zuhause


Dabei seit: 30.10.2012
Beiträge: 86


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 tiger für das Script Freude
Ich dachte mir, wenn ich eine fetten Tank habe soll der ja mehr schaden machen als so ein winziger gasbehälter, deshalb hab ich das script ein bisschen erweitert:

Code einblendenCode angehängt. Klicke hier zum Ein-/Ausblenden

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
main()
{
models = getentarray("explodable_model", "targetname");
if (models.size > 0)
{
level.breakables_fx["explode"] = loadfx( "explosions/grenadeexp_metal" );
}
 
level.barrelExpSound = "explo_metal_rand";
 
for(i = 0; i < models.size; i++)
{
models[i] thread explodable_model_think();
}
}
 
explodable_model_think()
{
//targeted brushmodels take priority over proximity based breakables - nate
if (isdefined(self.target))
{
targ = getent(self.target,"targetname");
if(targ.classname == "script_brushmodel")
{
self.remove = targ;
}
}
accumulate = 40;
threshold = 0;
dmg = 0;
 
self setcandamage(true);
while(1)
{
self waittill("damage", amount, other);
if (amount >= threshold)
{
dmg += amount;
if (dmg >= accumulate)
{
self thread explodable_model_explode();
}
}
}
}
 
explodable_model_explode()
{
Self = getentarray("explodable_model", "targetname");
 
if (isdefined (self.remove))
{
self.remove delete();
}
 
if(isdefined(self))
{
origin = self getorigin();

if (isdefined(self.range))
{
	range = self.range;
}
else
{
	range = 200;
}

if (isdefined(self.mindamage))
{
	mindamage = self.mindamage;
}
else
{
	mindamage = 1;
} 

if (isdefined(self.maxdamage))
{
	maxdamage = self.maxdamage;
}
else
{
	maxdamage = 300;
} 
 
self playsound (level.barrelExpSound);
playfx(level.breakables_fx["explode"], origin);
radiusDamage(origin, range, maxdamage, mindamage);
 
self delete();
}
}





1.: Bist du damit einverstanden, dass ich in deinem script rumpfusche?
2.: funktioniert das so?

LG
JTMS

__________________
jtms-mapping.jimdo.com/

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von jtms: 15.02.2013 16:05.

jtms ist offline Homepage von jtms Beiträge von jtms suchen Nehmen Sie jtms in Ihre Freundesliste auf
Hippie
Turnbeutelvergesser


images/avatars/avatar-1568.gif


Dabei seit: 23.11.2008
Beiträge: 303


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:

1.: Bist du damit einverstanden, dass ich in deinem script rumpfusche? 2.: funktioniert das so?


zu 1.
Ist es nicht ein bisserl spät um nach der Erlaubnis zu fragen? Hast doch schon darin rumgebastelt :/

zu 2.
Wenn du nicht weißt was passiert wenn du mit Parametern spielst, laß' es.

Nur meine Meinung cool
Hippie ist offline Beiträge von Hippie suchen Nehmen Sie Hippie in Ihre Freundesliste auf
jtms
Hat kein Zuhause


Dabei seit: 30.10.2012
Beiträge: 86


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 weiß sehr wohl was ich da geschreiben habe. Es gibt auch keinen fehler.

__________________
jtms-mapping.jimdo.com/
jtms ist offline Homepage von jtms Beiträge von jtms suchen Nehmen Sie jtms 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-Tutorials / Wiki » [Tutorial] Explosive Modelle

Impressum ||Datenschutzerklärung

Forensoftware: Wbb - WoltLab GmbH || zum Archiv