Gamestudio Links
Zorro Links
Newest Posts
Zorro 2.70
by jcl. 09/29/25 09:24
optimize global parameters SOLVED
by dBc. 09/27/25 17:07
ZorroGPT
by TipmyPip. 09/27/25 10:05
assetHistory one candle shift
by jcl. 09/21/25 11:36
Plugins update
by Grant. 09/17/25 16:28
AUM Magazine
Latest Screens
Rocker`s Revenge
Stug 3 Stormartillery
Iljuschin 2
Galactic Strike X
Who's Online Now
3 registered members (AndrewAMD, TipmyPip, OptimusPrime), 15,359 guests, and 7 spiders.
Key: Admin, Global Mod, Mod
Newest Members
krishna, DrissB, James168, Ed_Love, xtns
19168 Registered Users
Previous Thread
Next Thread
Print Thread
Rate Thread
Pfad-Verfolgung #109376
01/26/07 22:12
01/26/07 22:12
Joined: Dec 2006
Posts: 46
Germany
F
Flo Offline OP
Newbie
Flo  Offline OP
Newbie
F

Joined: Dec 2006
Posts: 46
Germany
Hallo,
Ich hätte da mal eine Frage:
Wie bekomme ich es hin, dass ein Model, z.B. ein Volgel
einen Pfad verfolgt, den ich ihm vorher zugewiesen habe????
Ich habs schon mit einem Vogel ausprobiert und ihm den Pfad zugewiesen.
Doch er machte immer eine Schleife aller Animationsframes und wollte einfach nicht den Pfad verfolgen...
Ich hatte es vorher auch schon probiert, dem Vogel als Map-Entity den Pfad zu
verfolgen, doch ich bekam beim Starten des Levels eine Fehlermeldung...

Könnte mir jemand helfen????
Wäre echt super!!!

Gruß
Flo

Re: Pfad-Verfolgung [Re: Flo] #109377
01/26/07 22:57
01/26/07 22:57
Joined: Oct 2004
Posts: 262
Augsburg,Bayern
A
ARAS Offline
Member
ARAS  Offline
Member
A

Joined: Oct 2004
Posts: 262
Augsburg,Bayern
Hi,

im Handbuch gibt es folgenden Path Code. Du musst dann Deiner Entity noch die Aktion
"walk_path" zuweisen. Einfache Funktionen für die Bewegung und die Drehung
schreibe ich Dir hier einmal auf. Überprüfe noch einmal die Skill´s die ich
zugewiesen haben, das sie bei Dir nicht schon in Verwendung sind.

Code:
 

define direction_pan,skill32;
define direction_tilt,skill33;
define direction_roll,skill34;
define rel_speed,skill35;
define rel_speed_x,skill36;
define rel_speed_y,skill37;
define _TARGET_X,skill38;
define _TARGET_Y,skill39;
define _TARGET_Z,skill40;
var force[3];
var aforce[3];
var my_angle[3];
var force;

function actor2_move()
{
my.rel_speed_x = time * 10; // Geschwindigkeit den Bedürfnissen anpassen
my.rel_speed_y = 0;
my.rel_speed_z = 0;
move_mode = ignore_passable + glide;
ent_move(my.rel_speed_x,nullvector);
}

function actor2_turn()
{
temp = ang(my_angle.pan - my.pan);
if(temp > 5)
{
aforce.pan = force;
}
else
{
if(temp < -5)
{
aforce.pan = -force;
}
else
{
aforce.pan = force * temp * 0.25;
}
}
temp = ang(my_angle.tilt - my.tilt);
if(temp > 5)
{
aforce.tilt = force;
}
else
{
if(temp < -5)
{
aforce.tilt = -force;
}
else
{
aforce.tilt = force * temp * 0.25;
}
}
temp = min(time*ang_fric,1);
my.direction_pan += (time * aforce.pan) - (temp * my.direction_pan);
my.pan += my.direction_pan * time;
my.direction_tilt += (time * aforce.tilt) - (temp * my.direction_tilt);
my.tilt += my.direction_tilt * time;
}

action walk_path // lass die Entity einen Rundweg folgen
{
temp.pan = 360; // finde den Pfad und hänge ihn an die Entity
temp.tilt = 180;
temp.z = 1000;
result = scan_path(my.x,temp);
if (result == 0) { return; } // kein Path gefunden
ent_waypoint(my._TARGET_X,1); // speichere ersten Wegpunkt
while (1)
{
temp.x = my._TARGET_X - my.x; // finde die Richtung zum Wegpunkt
temp.y = my._TARGET_Y - my.y;
temp.z = 0;
result = vec_to_angle(my_angle,temp);
// in Zielnähe? Dann finde den nächsten Wegpunkt
if (result < 25) { ent_nextpoint(my._TARGET_X); }
// wende und gehe Richtung Ziel
force = my._FORCE;
actor2_turn(); // wende dich dem Wegpunkt zu
actor2_move(); // geh geradeaus
wait(1);
}

}




Ich hoffe es sind keine Fehler in den Skripten. Habe sie nicht getestet.
Wenn doch bitte wieder melden.

Re: Pfad-Verfolgung [Re: ARAS] #109378
01/27/07 07:57
01/27/07 07:57
Joined: Dec 2006
Posts: 46
Germany
F
Flo Offline OP
Newbie
Flo  Offline OP
Newbie
F

Joined: Dec 2006
Posts: 46
Germany
Danke für das Script...
Ich hab es in eine neue wdl-Datei gemacht und mit "include..." im Main-Script eingebunden...
Doch irgendwie will es nicht funktionieren
Ich erhalte immer beim Starten folgende Fehler:


Gruß
Flo

Re: Pfad-Verfolgung [Re: Flo] #109379
01/27/07 14:28
01/27/07 14:28
Joined: Oct 2004
Posts: 262
Augsburg,Bayern
A
ARAS Offline
Member
ARAS  Offline
Member
A

Joined: Oct 2004
Posts: 262
Augsburg,Bayern
Hallo Flo,

ich habe ein paar Definitionen vergessen. Kommt davon wenn man das Skript nicht probiert.
Also ich gebe Dir hier noch einmal die Definitionen und Variablen an. Einfach die alten
ersetzen.

define direction_pan,skill32;
define direction_tilt,skill33;
define direction_roll,skill34;
define rel_speed,skill35;
define rel_speed_x,skill35;
define rel_speed_y,skill36;
define rel_speed_z,skill37;
define _TARGET_X,skill38;
define _TARGET_Y,skill39;
define _TARGET_Z,skill40;
define _force,skill41;

var force[3];
var aforce[3];
var my_angle[3];
var force;
var ang_fric = 0.6;

Schreibe bitte auch noch am Anfang der Aktion "walk_path" also vor der Zeile
"temp.pan = 360;"
noch die Zeile
"my._FORCE = 2; // Geschwindigkeit der Drehung des Vogels"

Sollte der Vogel zu langsam oder schnell fliegen, einfache die Zahl 10 in folgender
Zeile erhöhen oder verringern.

"my.rel_speed_x = time * 10;"

Re: Pfad-Verfolgung [Re: ARAS] #109380
01/28/07 08:04
01/28/07 08:04
Joined: Dec 2006
Posts: 46
Germany
F
Flo Offline OP
Newbie
Flo  Offline OP
Newbie
F

Joined: Dec 2006
Posts: 46
Germany
Ah danke,
jetzt funktioniert´s.
Geht das auch, dass der Vogel auch den Real fliegt???
Bei mir ist es nämlich so, dass er die Flügel einfach so ausgebreitet hat und dann den Pfad abfliegt.
Danke schon mal, dass das Script jetzt funktioniert!

Gruß
Flo

Re: Pfad-Verfolgung [Re: Flo] #109381
01/28/07 17:11
01/28/07 17:11
Joined: Oct 2004
Posts: 262
Augsburg,Bayern
A
ARAS Offline
Member
ARAS  Offline
Member
A

Joined: Oct 2004
Posts: 262
Augsburg,Bayern
Hallo Flo,

Du musst eine neue Definition und neue Animationszeilen im Skript angeben.

Code:
 define anim_perc,skill41;

action walk_path // lass die Entity einen Rundweg folgen
{
temp.pan = 360; // finde den Pfad und hänge ihn an die Entity
temp.tilt = 180;
temp.z = 1000;
result = scan_path(my.x,temp);
if (result == 0) { return; } // kein Path gefunden
ent_waypoint(my._TARGET_X,1); // speichere ersten Wegpunkt
while (1)
{
ent_cycle("fly", my.anim_perc % 100); // Hier den Animationsframe angeben
my.anim_perc += 2 * time; // Hier die Geschwindigkeit der Animation ändern

temp.x = my._TARGET_X - my.x; // finde die Richtung zum Wegpunkt
temp.y = my._TARGET_Y - my.y;
temp.z = 0;
result = vec_to_angle(my_angle,temp);
// in Zielnähe? Dann finde den nächsten Wegpunkt
if (result < 25) { ent_nextpoint(my._TARGET_X); }
// wende und gehe Richtung Ziel
force = my._FORCE;
actor2_turn(); // wende dich dem Wegpunkt zu
actor2_move(); // geh geradeaus
wait(1);
}

}



In der Zeile mit dem Animationsframe musst Du statt "fly" Deinen Framenamen angeben.


Gamestudio download | Zorro platform | shop | Data Protection Policy

oP group Germany GmbH | Birkenstr. 25-27 | 63549 Ronneburg / Germany | info (at) opgroup.de

Powered by UBB.threads™ PHP Forum Software 7.7.1