|
 |
Fragen zum Scripten |
|
|
zu 1: Die Scriptsprache wird voraussichtlich dieselbe sein.
zu 2: Das kommt darauf an, was der Mod alles ändern soll.
zu 3: Durch Versuch / Anwendung und mit Hilfe (und viel Geduld) der erfahrenen Scripter hier im Board.
zu 4: Da bin ich überfragt, da ich mich mit dem Radiant nicht auskenne.
zu 5: Sehr empfehlenswert: CoD 4 Script Documentation von IW.
ToM
__________________

|
|
|
|
|
|
|
Hmmm, ich würd sagen, Du beginnst lieber ganz von vorne.
Wenn Du in meinem vorigen Post die Scriptdocumentation öffnest und nach der Funktion SetPulseFX suchst,
wäre Deine erste Frage beantwortet.
ToM
__________________

|
|
|
|
|
Zakk Wylde
Turnbeutelvergesser
 
Dabei seit: 13.07.2009
Beiträge: 290

|
|
Original von Nightwing
Hmmm, ich würd sagen, Du beginnst lieber ganz von vorne.
Die Seite kenn ich schon und dort habe ich mir auch fast alles durchgelesen aber dort geht es mehr um den aufbau der Sprache oder? Da ich schon ein Jahr C++ "gelernt" habe gibt es damit eigentlich fast keine Probleme ich such nur mal was wo gezeigt wird wie ich zum beispiel Die Functionen aus der Documentation benutzen kann, wie ich eine mod mache(ModBuilder), was "self" ist, usw...
hmmmm wie soll ich dis sagen....
__________________

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Zakk Wylde: 11.08.2009 18:39.
|
|
|
|
|
|
|
Ich verstehe, was Du meinst.
Ich hab mich vor einiger Zeit auch mit dem ModBuilder versucht, bin aber seitdem nicht mehr dazu gekommen.
Hier in diesem Thread findest vielleicht die ein oder andere nützliche Information.
Zum Modden allgemein warte mal ab, was OMWG dazu meint.
ToM
__________________

|
|
|
|
|
steinacker
Milupa-Fan
  
Dabei seit: 13.03.2008
Beiträge: 662

|
|
Da ich schon ein Jahr C++ "gelernt" habe gibt es damit eigentlich fast keine Probleme
ich habs in der technikerschule gehabt C++/visual C++
das ganze zeugs mit dem membervariablem, klassen, funktionen, vererbung, zugriffsparameter usw.
aber diese programmiererei bei cod bereitet mir immer noch kopfschmerzen
ich überleg da garnicht mehr viel, sondern nehme die scripte und pass die an meine gegebenheiten an
und an die "grundprogrammierung" kommst du nicht ran z.b. self, ent, usw.
Code angehängt. Klicke hier zum Ein-/Ausblenden
| code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
|
ent = maps\mp\_utility::createLoopEffect( "fire2" ); //effeckt fire2 an x,y,z, erstellen
ent.v[ "origin" ] = ( -4096, 1984, -2130 );
ent.v[ "angles" ] = ( 0, 0, 0 );
ent.v[ "fxid" ] = "fire2";
ent.v[ "delay" ] = 16;
///////////////////////////////////////bsp 2
self waittill ("trigger"); // auf den "schalter" warten, dann aufzug bewegen, wenn stillstand
if (!level.elevatorMoving1)
thread elevator_move1();
} |
|
das sind nur mal 2 kleine beispiele.
und seit cod haben die programmierer in ihren scripten immer noch axis vs. allies drin, also lohnt es sich auch noch für die zukünftigen cod's die vlt. noch kommen
OMWG iss da voll der checker
__________________ Steinacker, Hans Adam - der letzte Scharfrichter von Bad Mergentheim
der mit der Schärfe eines Schwertes richtende
|
|
|
|
|
|
|
Da hast Du schon mal ein bischen:
Eine Variable kann verschiedene Werte annehmen wie z.b.
Code angehängt. Klicke hier zum Ein-/Ausblenden
| code: |
1:
2:
3:
4:
5:
6:
|
IntegerVariable = 1; //Integer = Ganzzahlig
FloatVariable = 0.5; //Float = Gleitkommazahl
BoolVariable = true; //Bool = Wahr (true) oder Falsch (false)
StringVariable = "ABCD"; //String = Text
|
|
Deklarieren von Variablen:
Variablen können auf 3 verschiedene Arten deklariert werden:
1.) Funktionsbezogen --> var = 1;
2.) Globalbezogen --> level.var = 1;
3.) Entitybezogen --> ent.var = 1;
Funktionen:
Code angehängt. Klicke hier zum Ein-/Ausblenden
| code: |
1:
2:
3:
4:
5:
6:
|
funcMoveX()
{
self moveX( -4400,60,15,20 );
}
|
|
Sobald diese Funktion aufgerufen wird, wird der Code in den Klammern {} ausgeführt. Funktionen kann man auch mit verschiedenen "Argumenten" erweitern:
Code angehängt. Klicke hier zum Ein-/Ausblenden
| code: |
1:
2:
3:
4:
5:
6:
7:
8:
|
funcMoveX( xvalue, time, acceleration_time, deceleration_time );
{
self moveX( xvalue, time, acceleration_time, deceleration_time );
}
funcMoveX(-4400, 60, 15, 20 ); //Hier wird die Funktion aufgerufen
|
|
Aufrufen von Funktionen:
Man kann eine Funktion aufrufen (Call) oder behandeln (thread). Der Unterschied zwischen den Beiden ist, das wenn eine Funktion als call aufgerufen wird, das Script solange unterbrochen wird bis die Funktion vollständig abgearbeitet ist. Wenn eine Funktion als thread behandelt wird, wird das Script währendessen weiter ausgeführt.
Code angehängt. Klicke hier zum Ein-/Ausblenden
| code: |
1:
2:
3:
4:
|
funcMoveX(); //call
thread funcMoveX(); //thread
|
|
Logik:
if/else:
Das if ("wenn") dient dazu verschiedene Variablen miteinander zu vergleichen, oder grundsätzlich um zu überprüfen ob eine Bedingung zutrifft oder nicht.
Code angehängt. Klicke hier zum Ein-/Ausblenden
| code: |
1:
2:
3:
4:
5:
6:
|
if( var ) // wenn var wahr ist
if( !var ) //wenn var falsch ist
if( var1 == var2 ) //wenn var1 gleich var2 ist
if( var1 != var2 ) //wenn var1 nicht gleich var2 ist
|
|
Z.B. will man, dass, wenn var1 gleich var2 ist, die funcMoveX() aufgerufen wird, ansonsten wird funcMoveY() aufgerufen:
Code 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:
|
if( var1 == var2 )
{
funcMoveX();
}
else
{
funcMoveY();
}
funcMoveX()
{
self moveX(-4400, 60, 15, 20 );
}
funcMoveY()
{
self moveY(-4400, 60, 15, 20 );
}
|
|
Will man aber, dass, wenn var1 gleich var2 ist, funcMoveX() aufgerufen wird, var1 größer var2 ist funcMoveY aufgerufen wird, und wenn nichts von beiden zutrifft funcMoveZ() aufgerufen wird, schreibt man das so:
Code 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:
|
if( var1 == var2 )
{
funcMoveX();
}
else if( var1 > var2 )
{
funcMoveY();
}
else
{
funcMoveZ();
}
funcMoveX()
{
self moveX(-4400, 60, 15, 20 );
}
funcMoveY()
{
self moveY(-4400, 60, 15, 20 );
}
funcMoveZ()
{
self moveZ(-4400, 60, 15, 20 );
}
|
|
Quelle
HIER findest Du auch noch interessante Sachen....
__________________

|
|
|
|
|
|
|
|
 |
Impressum ||Datenschutzerklärung
|