11.12.2012 Aufrufe

3D GAMESTUDIO-Magazin Ausgabe 01 | Oktober 20051

3D GAMESTUDIO-Magazin Ausgabe 01 | Oktober 20051

3D GAMESTUDIO-Magazin Ausgabe 01 | Oktober 20051

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Bewegung der Führungsfigur in der "Bewegungs.wdl"<br />

Öffnen Sie eine weitere WDL-Datei und geben Sie ihr den Namen "Bewegung.wdl". Diese Datei<br />

beinhaltet alle Funktionen die sich mit der Bewegung der Führungsfigur, in diesem Fall der Player-<br />

Entity, befassen.Sollten Ihnen die Funktionen "chef_player_move" bekannt vorkommen ist das<br />

durchaus möglich. Sie bezieht sich im Großen und Ganzen auf das sehr gute diablo-Script aus<br />

einem Aum-Heft. Sie wurde von mir überarbeitet und angepaßt. Beginnen wir wieder mit den<br />

benötigten Variablen.<br />

//// Variablen<br />

var vecfrom;<br />

var vecto;<br />

var my_target;<br />

var ziel_pos;<br />

var force;<br />

var friction;<br />

var dist[3];<br />

var abs_dist[3];<br />

//// Definitionen der Skill´s<br />

define _force, skill36;<br />

define _vz_entity,skill45; // Geschwindigkeit vertikal der Entity<br />

define _v_entity,skill47; // Geschwindigkeit horizontal der Entity<br />

define ziel,skill48; // Freigabe Zielposition 0 = Aus, 1 = An<br />

Als nächstes rufen wir wieder alle Funktionen auf um eine etwaige Fehlermeldung zu umgehen.<br />

function get_target();<br />

function gravity_entity();<br />

function move_entity();<br />

function chef_player_move();<br />

Funktion "get_target()"<br />

Jetzt beginnen wir mit dem ersten Skript. Es wird die Funktion "get_target()" sein. Mit deren Hilfe<br />

wir dem Player durch Anklicken im Level ein Ziel zuweisen.<br />

function get_target() // Zielposition<br />

{<br />

vecfrom.x = mouse_pos.x; // X-Position des Cursors<br />

vecfrom.y = mouse_pos.y; // Y-Position des Cursors<br />

vecfrom.z = 10;<br />

vec_set(vecto,vecfrom);<br />

vec_for_screen(vecfrom,camera); // Vektor bekommt Bildschirmkoordinaten<br />

vecto.z = 5000;<br />

vec_for_screen(vecto,camera); // Vektor bekommt Bildschirmkoordinaten<br />

trace(vecfrom,vecto); // trace von der Kamera auf angeklickten Punkt<br />

vec_set(my_target,target);<br />

vec_set(ziel_pos,target);<br />

<strong>3D</strong> <strong>GAMESTUDIO</strong>-<strong>Magazin</strong> ■ <strong>Ausgabe</strong> <strong>01</strong> | <strong>Oktober</strong> 2005 │69

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!