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 (Grant, TipmyPip, AndrewAMD), 12,724 guests, and 5 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
Suche Tip für Heli-Steuerung #169575
11/26/07 23:46
11/26/07 23:46
Joined: Jan 2006
Posts: 168
Germany, Hannover
DexLoomer Offline OP
Member
DexLoomer  Offline OP
Member

Joined: Jan 2006
Posts: 168
Germany, Hannover
Hi Leute,
ich habe die Steuerung für meinem Heli-Sidescroller soweit fertig! Allerdings finde ich, dass sich der Heli noch etwas starr bewegt. Wenn man in eine Richtung fliegt und wendet, unterbricht er die Bewegung abrupt.
Außerdem habe ich eine Seitwärtsbewegung in der Mittelstellung (Heli schaut zur Kamera) nur mit extra Tasten (N&M) hinbekommen. Ich hätte es lieber gehabt, dass sich der Heli bei kurzen Tastendruck der Pfeiltasten seitlich bewegen lässt ohne zu wenden und nur bei längerer Richtungsangabe sich dorthin dreht.
Da ich in Scripten Anfänger bin, dachte ich jemand von den Profis hat vielleicht eine bessere Lösung oder einen Tip für die Steuerung!
Dex

Code:
  
///////////////////////////////////////////////////////////////////////////////////
// Heli-Demo
///////////////////////////////////////////////////////////////////////////////////


var video_mode = 7; // 800x600;
var video_depth = 16; // D3D mode

var camera_distance = 900; // play with these values
var camera_height = 200;

var Heli_rotatepeed = 15;
var Heli_movespeed = 0.2;
var Helipos_y = 700;


//---------------------------------------------------------------------------------

function main()
{
camera.arc = 65; // set field of view
fps_max = 50; // limit the frame rate
//d3d_panels = on; // draw hardware accelerated panels
load_level (<Heli.wmb>);
wait (2); // wait for the level to load
}


//---------------------------------------------------------------------------------


action my_Heli() // use the up, left and right arrow keys to control the boat
{
define Helispeed_x,skill1; // Speed in X-Achse
define Helispeed_z,skill2; // Speed in Z-Achse
define Helirotate_marker,skill3; // Marker für Heli Ausrichtung: 1=Links, 2=Rechts, 0=Mitte
define Helispeed_xmid,skill4; // Speed in X-Achse bei Mittelstellung

while (1)
{
// ------------------- Heli Steuerung --------------------------

if (key_cuu) // Wird Pfeil nach oben gedrückt steigt der Heli
{
if (my.Helispeed_z < 3)
{
my.Helispeed_z += 0.3 * time_step;
}
}
else // Sonst sinkt der der Heli von selbst!
{
if (my.Helispeed_z > -2)
{
my.Helispeed_z -= 0.05 * time_step;
}
}


if (key_cud) // Wird Pfeil nach unten gedrückt geht der Heli runter
{
if (my.Helispeed_z > -3)
{
my.Helispeed_z -= 0.3 * time_step;
}
}


if (key_cur) // Wird Pfeil nach Rechts gedrückt fliegt der Heli nach rechts
{
my.Helirotate_marker = 2;
if (my.pan == 270)
{my.pan += 1;}

if (my.Helispeed_x < 4)
{
my.Helispeed_x += Heli_movespeed * time_step;
}
}


if (key_cul) // Wird Pfeil nach Links gedrückt fliegt der Heli nach links
{
my.Helirotate_marker = 1;
if (my.pan == 270)
{my.pan -= 1;}

if (my.Helispeed_x < 4)
{
my.Helispeed_x += Heli_movespeed * time_step;
}
}


if (my.pan == 270) // Ist der Heli in Mittelstellung verbleibt er solange keine andere Richtungseingabe kommt!
{

if (key_n) // Wird N für Links in Mittelstellung gedrückt, fliegt der Heli mittig nach links
{
my.Helispeed_xmid = -2;
}
else
{
if (key_m) // Wird M für Rechts in Mittelstellung gedrückt, fliegt der Heli mittig nach rechts
{
my.Helispeed_xmid = 2;
}
else
{
my.Helispeed_xmid = 0; // Keine Bewegung in Mittelstellung
}
}

my.Helirotate_marker = 0; // Marker für Heli Ausrichtung wieder reseten!
}
else
{
if ((my.pan > 180) && (my.Helirotate_marker==1)) // Heli macht die angefangene Drehung nach Links zuende
{
my.pan -= Heli_rotatepeed * time_step;
if (my.pan <= 180)
{
my.pan = 180;
my.Helirotate_marker = 0;
}
}

if ((my.pan < 360) && (my.Helirotate_marker==2)) // Heli macht die angefangene Drehung nach Rechts zuende
{
my.pan += Heli_rotatepeed * time_step;
if (my.pan >= 360)
{
my.pan = 360;
my.Helirotate_marker = 0;
}
}
}



clamp(my.Helispeed_x, -4, 4);
clamp(my.Helispeed_z, -3, 3);
c_move (my, vector(my.Helispeed_x, my.Helispeed_xmid, my.Helispeed_z), nullvector, GLIDE);
my.y = Helipos_y; // Raumtiefe bleibt konstant!!


// ------------------- Kamera Steuerung --------------------------

camera.pan = 90; // set and keep the camera position
camera.tilt = 0;
camera.roll = 0;
camera.x = my.x;
camera.y = my.y - camera_distance;
camera.z = my.z + camera_height;


wait (1);
}
}





A8-Com-v 8.47.1
Re: Suche Tip für Heli-Steuerung [Re: DexLoomer] #169576
11/27/07 16:16
11/27/07 16:16
Joined: Jan 2006
Posts: 168
Germany, Hannover
DexLoomer Offline OP
Member
DexLoomer  Offline OP
Member

Joined: Jan 2006
Posts: 168
Germany, Hannover
Hat Niemand eine Ahnung, wie man den Code noch optimieren kann??


A8-Com-v 8.47.1
Re: Suche Tip für Heli-Steuerung [Re: DexLoomer] #169577
11/27/07 16:22
11/27/07 16:22

A
Anonymous
Unregistered
Anonymous
Unregistered
A



kannst du vllt ein demo level posten damit man sehen kann wie sich der heli bewegt??

Re: Suche Tip für Heli-Steuerung [Re: ] #169578
11/27/07 17:01
11/27/07 17:01
Joined: Jul 2002
Posts: 4,436
Germany, Luebeck
Xarthor Offline
Expert
Xarthor  Offline
Expert

Joined: Jul 2002
Posts: 4,436
Germany, Luebeck

Re: Suche Tip für Heli-Steuerung [Re: Xarthor] #169579
11/27/07 21:37
11/27/07 21:37
Joined: Jan 2006
Posts: 168
Germany, Hannover
DexLoomer Offline OP
Member
DexLoomer  Offline OP
Member

Joined: Jan 2006
Posts: 168
Germany, Hannover
Danke für die Tips, komme jedoch bislang nicht weiter!
Habt ihr eine Idee, wie man den Code etwas optimieren kann?


Hier der Link mit dem Demo:
Heli_Demo




A8-Com-v 8.47.1
Re: Suche Tip für Heli-Steuerung [Re: DexLoomer] #169580
11/29/07 21:56
11/29/07 21:56
Joined: Jan 2006
Posts: 168
Germany, Hannover
DexLoomer Offline OP
Member
DexLoomer  Offline OP
Member

Joined: Jan 2006
Posts: 168
Germany, Hannover
Hat niemand eine Idee wie man den Code optimieren kann ?!?




A8-Com-v 8.47.1

Moderated by  HeelX, Lukas, rayp, Rei_Ayanami, Superku, Tobias, TWO, VeT 

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