Mein Playerscript

Posted By: Rauschmittel

Mein Playerscript - 01/28/07 14:21

Hi,
ich habe mir vorhin das Tutorial "Diablo Style Workshop" mal angeguckt. Mein Spieler soll aber nur gehen können, da habe ich den Script so geändert:

Code:
 
DEFINE _IS_WALKING, SKILL33;
var my_target[3];
var move_position[3];

function get_target()
{
mouse_to_level();
vec_set(my_target,target);
vec_set(move_position,target);
vec_sub(move_position,player.x);
player.tilt = 0;
player._is_walking = 1;
}

function bewegung
{
while(1)
{
if(player._is_walking == 1)
{
if (vec_dist(player.x,my_target.x) > 35)
{
move_gravity();
}
}
wait(1);
}
}

action spieler
{
wait(1);
if (player == null) { player = me; }
player_walk();
bewegung();

cam_active = 1;
camera_move();
init_cameras();
}

on_mouse_left get_target;



Als Kamera wollte ich diese benutzen: http://www.coniserver.net/ubbthreads/showflat.php?Cat=&Board=UBB3&Number=463285. Das klappt auch noch wunderbar, aber mein Player bewegt sich nicht, wenn ich irgendwo in die Landschaft klicke. Wieso?

Gruß
Rauschmittel
Posted By: ARAS

Re: Mein Playerscript - 01/28/07 19:26

Hi Rauschmittel,

das Player_walk() Skript hast Du hier nicht aufgeführt. Springst Du innerhalb dieses Skriptes auch in eine While-Schleife? Wenn nicht wird die Aktion der Bewegung nur einmal durchlaufen. Es ist besser eine gesamte While-Schleife in der Player Aktion zu machen um von dort aus alle Funktionen des Player´s anzuspringen. Dann kannst Du die While-Schleifen in den anderen Funktionen des Player´s entfernen. Auf diese Weise hat man eine bestimmte Reihenfolge in der die Funktionen durchlaufen werden. Das kann oft sehr nützlich sein. Etwa in dieser Art.

action spieler
{
wait(1);
if (player == null) { player = me; }
cam_active = 1;
camera_move();
init_cameras();
while(1)
{
player_walk();
bewegung();
wait(1);
}
}
Posted By: Rauschmittel

Re: Mein Playerscript - 01/28/07 20:47

Hi,

Danke für die Antwort, ich habe immernoch das gleiche Problem...

Der von mir gepostete Script ist übrigens Alles, was ich für meinen Player an Script habe.
Posted By: ARAS

Re: Mein Playerscript - 01/29/07 20:11

Hallo Rauschmittel,

ich habe mir jetzt Deine Skripte noch einmal angesehen. Da Du keint eigenes Player_walk
Skript hast bedeutet es also das Du die Templates verwendest. Hier einmal die überarbeiteten
Skripte versuche die einmal. Ich habe mir einmal das Tutorial angesehen und die Skripte demetsprechend abgeändert.

Code:
 DEFINE _IS_WALKING, SKILL33;
var my_target[3];
var move_position[3];

function get_target()
{
mouse_to_level();
vec_set(my_target,target);
vec_set(move_position,target);
vec_sub(move_position,player.x);
//vec_to_angle(player.pan,move_position); // Nur einfügen wenn Drehung gewünscht ARAS
player.tilt = 0;
player._is_walking = 1;
}

function bewegung
{
while(1)
{
if(player._is_walking == 1)
{
while (vec_dist(player.x,my_target.x) > 35)
{
force = my._force; // eingefügt für Geschwindigkeit ARAS
move_gravity();
wait(1);
}
}
wait(1);
}
}

action spieler
{
wait(1);
if (player == null) { player = me; }
cam_active = 1;
camera_move();
init_cameras();
player_walk();
bewegung();
}

on_mouse_left get_target;


Posted By: Rauschmittel

Re: Mein Playerscript - 02/01/07 12:33

Jetzt kann ich den Player in der Ego Perspektive mit den Pfeiltasten bewegen, aber er bewegt sich schonmal. Ich denke das bekomme ich hin!

Danke
© 2024 lite-C Forums