Tacho

Posted By: Wr2_freak

Tacho - 02/26/10 14:28

Wie programmiere ich einen Tacho, der sich an die Geschwindigkeit anpasst.Ich habe berreits ein Bild von einem Tacho bzw. nur die Drehscheibe.Aber ich brauche noch einen Zeiger der sich bewegt und sich auf die geschwindigkeit anpasst.


Gruss
WR2-Freak laugh
Posted By: Anonymous

Re: Tacho - 02/26/10 14:38

Zwei PANELS.
Unteres PANEL ist die "Drehscheibe", oberes PANEL ein Zeiger.

Mitte des oberen PANELs mit center_x, center_y festlegen und flag = TRANSLUCENT (schwarz). Das obere PANEL drehen mit dem Attribut angle (ja nach Geschwindigkeit z.b. OPAN.angle=260-(geschwindigkeit*0.4))
Posted By: Robso661

Re: Tacho - 02/26/10 14:51

schau dir mal das hier an:
http://aum.conitec.net/aum87g.zip

die dateien dazu gibt es hier:

http://aum.conitec.net/aum87code.zip
Posted By: Wr2_freak

Re: Tacho - 02/26/10 15:04

PANEL* Tachozeiger =
{
center_x = 700;
center_y = 340;
bmap = "Zeiger.tga";
flags = TRANSLUCENT;

}


RICHTIG SO?

Das mit dem "angle" musst du mir bitte machen, is kompliziert.
Posted By: Rei_Ayanami

Re: Tacho - 02/26/10 15:05

Ähm... Es gibt ein Panel object names "needle" - gucke dafür bitte ins manual, es ist genau das was du suchst wink
Posted By: Wr2_freak

Re: Tacho - 02/26/10 15:28

aha.was soll mir das nützen?
Posted By: Rei_Ayanami

Re: Tacho - 02/26/10 15:29

der tut genau das was du willst -> schau doch einfach ins manual ?!
Posted By: Anonymous

Re: Tacho - 02/26/10 16:22

...und es war nicht TRANSLUCENT sodern OVERLAY (sorry)
Posted By: Wr2_freak

Re: Tacho - 02/27/10 14:54

eS FUNZT NICHT:aPIEL LADET ABER ES PASSIERT NICHTS!

VARIABELE:
Code:
var my_var=0;





pANEL:

Code:
PANEL* Tachozeiger =
{
	
    needle(700,340,"Zeiger.tga",700,340,180,0,100,my_var); 
    flags =  OVERLAY ;
    
    
    
}




sTEUERUNG:
Code:
if (key_cuu && speed<80) // wenn die Leertaste gedrückt und speed kleiner als 10 ist
         speed+=10*time_step; // erhöhe Speed
         else // sonst
      if(speed>0) //solange speed grösser als null ist
         speed -= 3  * time_step; // vermindere speed
       c_move (my, vector(speed*time_step, 0, my_var), nullvector, GLIDE);


Posted By: Superku

Re: Tacho - 02/27/10 15:01

Das liegt wohl daran, dass mit my_var nichts geschieht?
Posted By: Wr2_freak

Re: Tacho - 02/27/10 15:05

Und wie beheb ich das problem
Posted By: Superku

Re: Tacho - 02/27/10 15:09

Indem du dich auf deinen Arsch setzt und das Problem bereinigst.
Posted By: Anonymous

Re: Tacho - 02/27/10 15:14

Quote:
Indem du dich auf deinen Arsch setzt und das Problem bereinigst.

Heyhey! Was sind denn das für Töne?


@Wr2_freak: VISIBLE muss noch für die flags gesetzt werden, sonst siehst Du nichts.
my_var musst Du auf den "speed" setzen (evt. mit einem Faktor).
z.B.: my_var=speed*30;
(in der action)
Posted By: Wr2_freak

Re: Tacho - 02/27/10 15:25

Jetzt steht sartup failure da.

Code:
action car_1()
{
	
	
	//////////////////////////////////
	while(1)
	{
	
		// KAMERA:
		vec_set(camera.x,vector(-200,0,60));
		vec_rotate(camera.x,camera.pan);
		vec_lerp(camera.pan,camera.pan,my.pan,0.2);
      vec_add(camera.x,my.x);
		
		//////////////
			// move the car using relative_speed
		if (key_a)
			my.pan += 5*time_step; // increase the pan angle of the car
		if (key_d)
			my.pan -= 5*time_step; // decrease the pan angle of the car
				// move the car using relative_speed
	   if (key_w && speed<80) // wenn die Leertaste gedrückt und speed kleiner als 10 ist
         speed+=10*time_step; // erhöhe Speed
         else // sonst
      if(speed>0) //solange speed grösser als null ist
         speed -= 3  * time_step; // vermindere speed
       c_move (my, vector(speed*time_step, 0, 0), nullvector, GLIDE); // bewege das Auto abhängig von speed
      //////	Rückwärts-Difinition	
		if (key_s ) // press and hold the "Space" key to move the car
			c_move (my, vector(-20*time_step, 0, 0), nullvector, GLIDE);
			if (key_cul)
			my.pan += 5*time_step; // increase the pan angle of the car
		if (key_cur)
			my.pan -= 5*time_step; // decrease the pan angle of the car
				// move the car using relative_speed
	   if (key_cuu && speed<80) // wenn die Leertaste gedrückt und speed kleiner als 10 ist
         speed+=10*time_step; // erhöhe Speed
         else // sonst
      if(speed>0) //solange speed grösser als null ist
         speed -= 3  * time_step; // vermindere speed
       c_move (my, vector(speed*time_step, 0, 0 ), nullvector, GLIDE); // bewege das Auto abhängig von speed
      //////	Rückwärts-Difinition	
	
		if (key_cud) 
      c_move (my, vector(-20*time_step, 0, 0), nullvector, GLIDE);
      
		
		if (key_n) // press and hold the "Space" key to move the car
		c_move (my, vector(50*time_step, 0, 0), nullvector, GLIDE);
		wait(1);
	
	
	
  my_var=speed*80;
	}
	
	
}




Code:
PANEL* Tachozeiger =
{
	center_x = 1;
   center_y = 1;
    needle(700,340,"Zeiger.tga",700,340,180,0,100,my_var); 
    flags =  VISIBLE ;
    
    
    
}


Posted By: Superku

Re: Tacho - 02/27/10 15:28

Originally Posted By: mercuryus
Quote:
Indem du dich auf deinen Arsch setzt und das Problem bereinigst.

Heyhey! Was sind denn das für Töne?


Ja ist doch wahr. Da wird ihm mehrfach nett und ausreichend geholfen und seine Antworten sind:

Quote:
Das mit dem "angle" musst du mir bitte machen, is kompliziert.

Quote:
aha.was soll mir das nützen?

Quote:
Und wie beheb ich das problem


NULL Eigeninitiative.
Posted By: Wr2_freak

Re: Tacho - 02/27/10 15:34

Ich hab das Programm seit zwei Wochen. Was erwartest du von mir? Einen Super-Programmierer? Wenn du mir nicht helfen willst dann schreib einfach nicht mehr in den Thread rein.
Posted By: Superku

Re: Tacho - 02/27/10 15:43

Ob ich einen Super-Programmierer erwarte? Absolut nicht, habe ich nie gesagt.

Originally Posted By: Rei
Ähm... Es gibt ein Panel object names "needle" - gucke dafür bitte ins manual, es ist genau das was du suchst wink

Originally Posted By: du
aha.was soll mir das nützen?


Wenn man selbst programmieren (lernen) will, sollte man sich auch selbst mit den Dingen beschäftigen und es nicht andere Leute machen lassen, selbst dann, wenn man (noch) kaum Ahnung hat. Sonst lernt man nicht.
Das soll nicht heißen, dass man keine Fragen stellen darf, es muss aber Eigeninitiative vorhanden sein.
Posted By: Wr2_freak

Re: Tacho - 02/27/10 15:46

aber ich hab es ja anlein eingebaut.aber ich will es nur noch zum funzen bringen!
Posted By: Superku

Re: Tacho - 02/27/10 15:52

Ok.
Was steht denn außer startup failure noch da? Sprich was genau ist der Fehler?
Posted By: Wr2_freak

Re: Tacho - 02/27/10 15:53

Schön dass wir uns wieder vertragen

Fehler:
Error in 'MAIN' line 91: 'my_var' undeclared identifier
< c_move (my, vector(speed*time_step, 0, 0 ), my_var, GLIDE); // bewege das Auto abhängig von speed
>
Posted By: Superku

Re: Tacho - 02/27/10 15:54

Hast du die Zeile
var my_var=0;
gelöscht?
Wenn nicht, gut, aber sie muss vor (!) deiner Auto-action stehen.
Posted By: Wr2_freak

Re: Tacho - 02/27/10 15:55

Aber das hab ich schon wieder rückgängig gemacht und es funzt immer noch nicht.K.A warum?
Posted By: Wr2_freak

Re: Tacho - 02/27/10 15:57

dAS gAME besteht aus drei scripts!

Code:#include <acknex.h>
#include <windows.h>
#include <default.c>
#include "Menue.c"
#include "Steuerung.c"
//////////////////////

Aber das sollte keine rolle spielen.
Posted By: Superku

Re: Tacho - 02/27/10 15:58

Ach, hier ist auch noch etwas:
c_move (my, vector(speed*time_step, 0, 0 ), my_var, GLIDE);
Guck dir mal die Funktion an (Manual), der dritte Parameter ist auch ein Vektor, du gibst aber eine einfache Variable an. Schreibe besser
c_move (my, vector(speed*time_step, 0, 0 ), nullvector, GLIDE);.

Und bitte den edit-Knopf verwenden, um double posts zu vermeiden und so die Übersichtlichkeit zu wahren.
Posted By: Wr2_freak

Re: Tacho - 02/27/10 15:59

Immer noch nicht!

///////////////////////////////
#include <acknex.h>
#include <default.c>
///////////////////////////////



var speed=0;







function main()
{
fps_max = 240;
max_entities = 1500;
level_load ("Test.wmb");



}



PANEL* Tacho =
{
pos_x = 600;
pos_y = 400;
bmap = "Tacho.tga";
flags = OUTLINE | OVERLAY ;

}

PANEL* Tachozeiger =
{
center_x = 1;
center_y = 1;
needle(700,340,"Zeiger.tga",700,340,180,0,100,my_var);
flags = VISIBLE ;

}





var my_var=0;

action car_1()
{


//////////////////////////////////
while(1)
{

// KAMERA:
vec_set(camera.x,vector(-200,0,60));
vec_rotate(camera.x,camera.pan);
vec_lerp(camera.pan,camera.pan,my.pan,0.2);
vec_add(camera.x,my.x);

//////////////
// move the car using relative_speed
if (key_a)
my.pan += 5*time_step; // increase the pan angle of the car
if (key_d)
my.pan -= 5*time_step; // decrease the pan angle of the car
// move the car using relative_speed
if (key_w && speed<80) // wenn die Leertaste gedrückt und speed kleiner als 10 ist
speed+=10*time_step; // erhöhe Speed
else // sonst
if(speed>0) //solange speed grösser als null ist
speed -= 3 * time_step; // vermindere speed
c_move (my, vector(speed*time_step, 0, 0), nullvector, GLIDE); // bewege das Auto abhängig von speed
////// Rückwärts-Difinition
if (key_s ) // press and hold the "Space" key to move the car
c_move (my, vector(-20*time_step, 0, 0), nullvector, GLIDE);
if (key_cul)
my.pan += 5*time_step; // increase the pan angle of the car
if (key_cur)
my.pan -= 5*time_step; // decrease the pan angle of the car
// move the car using relative_speed
if (key_cuu && speed<80) // wenn die Leertaste gedrückt und speed kleiner als 10 ist
speed+=10*time_step; // erhöhe Speed
else // sonst
if(speed>0) //solange speed grösser als null ist
speed -= 3 * time_step; // vermindere speed
c_move (my, vector(speed*time_step, 0, 0 ), nullvector, GLIDE);.// bewege das Auto abhängig von speed
////// Rückwärts-Difinition

if (key_cud)
c_move (my, vector(-20*time_step, 0, 0), nullvector, GLIDE);


if (key_n) // press and hold the "Space" key to move the car
c_move (my, vector(50*time_step, 0, 0), nullvector, GLIDE);
wait(1);


my_var=speed*80;

}


}
Posted By: Superku

Re: Tacho - 02/27/10 16:08

if(speed>0) //solange speed grösser als null ist
speed -= 3 * time_step; // vermindere speed
c_move (my, vector(speed*time_step, 0, 0 ), nullvector, GLIDE);.// bewege das Auto abhängig von speed
////// Rückwärts-Difinition

Hinter c_move ist nach dem Semikolon ein Punkt zu viel.
Posted By: Wr2_freak

Re: Tacho - 02/27/10 16:19

funzt wieder nicht. k.A
Posted By: Superku

Re: Tacho - 02/27/10 16:21

.................... Was "funzt" nicht?
Posted By: Wr2_freak

Re: Tacho - 02/27/10 16:24

sol ich dir mal das ganze projekt schicken? Per e-mail oder so
Posted By: Superku

Re: Tacho - 02/27/10 16:27

Nope. Problem schildern!
Posted By: Wr2_freak

Re: Tacho - 02/27/10 16:31

gibt mir deine mail.Ich schick dir das projekt
Posted By: Superku

Re: Tacho - 02/27/10 16:33

Was habe ich gerade geschrieben ????
Posted By: Wr2_freak

Re: Tacho - 02/27/10 16:33

Error in 'steuerung.c' line 103: 'my_var' undeclared identifier
< my_var=speed*80;
>
Posted By: Superku

Re: Tacho - 02/27/10 16:34

Ist doch eigentlich klar, was dort falsch ist. Entweder du deklarierst my_var vor dem include "steuerung.c" oder du deklarierst my_var in dieser Datei vor besagter Funktion.
Posted By: Wr2_freak

Re: Tacho - 02/27/10 16:37

SO: ///////////////////////////////
#include <acknex.h>
#include <default.c>
///////////////////////////////



var speed=0;







function main()
{
fps_max = 240;
max_entities = 1500;
level_load ("Test.wmb");



}



PANEL* Tacho =
{
pos_x = 600;
pos_y = 400;
bmap = "Tacho.tga";
flags = OUTLINE | OVERLAY ;

}

PANEL* Tachozeiger =
{
center_x = 1;
center_y = 1;
needle(700,340,"Zeiger.tga",700,340,180,0,100,my_var);
flags = VISIBLE ;

}



my_var = 0;
my_var=speed*80;


action car_1()
{


//////////////////////////////////
while(1)
{

// KAMERA:
vec_set(camera.x,vector(-200,0,60));
vec_rotate(camera.x,camera.pan);
vec_lerp(camera.pan,camera.pan,my.pan,0.2);
vec_add(camera.x,my.x);

//////////////
// move the car using relative_speed
if (key_a)
my.pan += 5*time_step; // increase the pan angle of the car
if (key_d)
my.pan -= 5*time_step; // decrease the pan angle of the car
// move the car using relative_speed
if (key_w && speed<80) // wenn die Leertaste gedrückt und speed kleiner als 10 ist
speed+=10*time_step; // erhöhe Speed
else // sonst
if(speed>0) //solange speed grösser als null ist
speed -= 3 * time_step; // vermindere speed
c_move (my, vector(speed*time_step, 0, 0), nullvector, GLIDE); // bewege das Auto abhängig von speed
////// Rückwärts-Difinition
if (key_s ) // press and hold the "Space" key to move the car
c_move (my, vector(-20*time_step, 0, 0), nullvector, GLIDE);
if (key_cul)
my.pan += 5*time_step; // increase the pan angle of the car
if (key_cur)
my.pan -= 5*time_step; // decrease the pan angle of the car
// move the car using relative_speed
if (key_cuu && speed<80) // wenn die Leertaste gedrückt und speed kleiner als 10 ist
speed+=10*time_step; // erhöhe Speed
else // sonst
if(speed>0) //solange speed grösser als null ist
speed -= 3 * time_step; // vermindere speed
c_move (my, vector(speed*time_step, 0, 0 ), nullvector, GLIDE); // bewege das Auto abhängig von speed
////// Rückwärts-Difinition

if (key_cud)
c_move (my, vector(-20*time_step, 0, 0), nullvector, GLIDE);


if (key_n) // press and hold the "Space" key to move the car
c_move (my, vector(50*time_step, 0, 0), nullvector, GLIDE);
wait(1);




}


}
Posted By: Wr2_freak

Re: Tacho - 02/27/10 16:37

funzt aber immer nu ned
Posted By: Rei_Ayanami

Re: Tacho - 02/27/10 16:39

frown

ich frage mich ob manche menschen einfach andere ignorieren...

du musst my_var deklarieren bevor du sie in den panels benutzt...
Posted By: Wr2_freak

Re: Tacho - 02/27/10 16:43

was heißt : deklarieren?
Posted By: Superku

Re: Tacho - 02/27/10 16:45

Woher soll das Programm wissen, ob my_var eine Variable, eine Figur, ein Haus oder sonst etwas ist? Du musst es dem Programm explizit sagen, indem du den Typ davor schreibst:

var my_var;

Peng ist my_var deklariert.
Und was soll

my_var=speed*80;

außerhalb einer Funktion?! Arbeite lieber ein paar Tutorials durch, bevor du weiter an deinem Spiel arbeitest.
Posted By: Widi

Re: Tacho - 02/27/10 17:19

Setzt my_var = 0; ganz an den Anfang deines Scripts (gleich hinter var speed = 0;)

Deklarieren heisst: Du musst jedes Objekt (var, BMAP*, PANEL* STRING* usw) am Anfang oder zumindest bevor es zum ersten Mal gebraucht wird "benennen".

var xyz = 0;
BMAP* xyz_bmap ="dein_bild.tga";
usw....

sonst weiss die Engine ja nicht, was my_var ist.

Und wie Superku schon sagte: Arbeite das Tutorial durch, ist ein MUSS für Anfänger.

Nochwas: Immer die Fehlermeldung mitposten, so können lästige Rückfragen vermieden werden.
Posted By: Wr2_freak

Re: Tacho - 02/27/10 20:28

Code funzt jetzt.Aber tacho funzt nicht.ALso weder Tachozeiger noch bewegung.
Posted By: Wr2_freak

Re: Tacho - 02/27/10 20:31

Das Projekt ist in 3 Teile aufgespaltet

Steuerung
Code:
///////////////////////////////
#include <acknex.h>
#include <default.c>
///////////////////////////////



var speed=0;
var my_var =  0;
my_var = speed;




function main()
{
fps_max = 240;
max_entities = 1500; 
level_load ("Test.wmb");



}





action car_1()
{
	
	
	//////////////////////////////////
	while(1)
	{
	
		// KAMERA:
		vec_set(camera.x,vector(-200,0,60));
		vec_rotate(camera.x,camera.pan);
		vec_lerp(camera.pan,camera.pan,my.pan,0.2);
      vec_add(camera.x,my.x);
		
		//////////////
			// move the car using relative_speed
		if (key_a)
			my.pan += 5*time_step; // increase the pan angle of the car
		if (key_d)
			my.pan -= 5*time_step; // decrease the pan angle of the car
				// move the car using relative_speed
	   if (key_w && speed<80) // wenn die Leertaste gedrückt und speed kleiner als 10 ist
         speed+=10*time_step; // erhöhe Speed
         else // sonst
      if(speed>0) //solange speed grösser als null ist
         speed -= 3  * time_step; // vermindere speed
       c_move (my, vector(speed*time_step, 0, 0), nullvector, GLIDE); // bewege das Auto abhängig von speed
      //////	Rückwärts-Difinition	
		if (key_s ) // press and hold the "Space" key to move the car
			c_move (my, vector(-20*time_step, 0, 0), nullvector, GLIDE);
			if (key_cul)
			my.pan += 5*time_step; // increase the pan angle of the car
		if (key_cur)
			my.pan -= 5*time_step; // decrease the pan angle of the car
				// move the car using relative_speed
	   if (key_cuu && speed<80) // wenn die Leertaste gedrückt und speed kleiner als 10 ist
         speed+=10*time_step; // erhöhe Speed
         else // sonst
      if(speed>0) //solange speed grösser als null ist
         speed -= 3  * time_step; // vermindere speed
       c_move (my, vector(speed*time_step, 0, 0 ), nullvector, GLIDE); // bewege das Auto abhängig von speed
      //////	Rückwärts-Difinition	
	
		if (key_cud) 
      c_move (my, vector(-20*time_step, 0, 0), nullvector, GLIDE);
      
		
		if (key_n) // press and hold the "Space" key to move the car
		c_move (my, vector(50*time_step, 0, 0), nullvector, GLIDE);
		wait(1);
	
	
	  

	}
	
	
}




Menü

Code:
function quit_program()
{
  while (key_any) { wait (1); }
  sys_exit(NULL);
}








STRING* back_str = "Spielstand zurücksetzen ? ";

TEXT* sicher_txt =
{
	pos_x = 100;
	pos_y = 85;
	string (back_str);
	flags = OUTLINE ;
	font = Arial#17;
}





PANEL* Menu =
{
	
 button(30,100, "Newgame2.jpg","Newgame1.jpg", "Newgame1.jpg", load_level , NULL, NULL); 
 button(150,400, "exit2.jpg","exit1.jpg", "exit1.jpg", quit_program , NULL, NULL); 
 button(120,325, "Credits2.jpg","Credits1.jpg", "Credits1.jpg", playVideo2 , NULL, NULL);
 button(90,250, "options2.jpg","options1.jpg", "options1.jpg", show_option , NULL, NULL);  
 button(60,175, "Load2.jpg","Load1.jpg", "Load1.jpg", load_error , NULL, NULL); 
 

	 flags = OUTLINE ;

}

 

PANEL* Main6 =
{
	pos_x = 400;
	pos_y = 130;
    bmap = "Main3.jpg";
  
      flags =  OUTLINE ;

}

PANEL* Demo =
{
	pos_x = 450;
	pos_y = 50;
    bmap = "Demo.tga";
    flags = OUTLINE | OVERLAY ;

}

PANEL* back =
{
	
  
    button(280,70,  "losch2.jpg","losch1.jpg", "losch1.jpg", delete_file , NULL , NULL); 
    
     
      flags = OUTLINE ;

}



PANEL* test =
{
	
  
    button(280,530, "Speichern2.jpg","Speichern1.jpg", "Speichern1.jpg", show_hauptmenue2 , NULL , NULL); 
    
      flags = OUTLINE ;

}

PANEL* Main1 =
{
	pos_x = 400;
	pos_y = 130;
    bmap = "Main3.jpg";
  
      flags = OUTLINE ;

}



function show_hauptmenue2()
{
// Panels unsichtbar machen:
reset (test, SHOW);
reset (back, SHOW);
reset (sicher_txt, SHOW );

// Panels sichtbar machen:
set (Menu, SHOW );
set (Main1, SHOW );
set (Demo, SHOW );




}







PANEL* Tacho =
{
	pos_x = 600;
	pos_y = 400;
    bmap = "Tacho.tga"; 
    flags = OUTLINE | OVERLAY    ;
    
}

PANEL* Tachozeiger =
{
	center_x = 1;
   center_y = 1;
    needle(700,340,"Zeiger.tga",700,340,180,0,100,my_var); 
    flags =  VISIBLE | SHOW ;
    
 }   
    

function exit_level()
{
level_load(NULL);

reset (Tacho , SHOW);
reset (Tachozeiger , SHOW);

set (Menu , SHOW);
set (Main1 , SHOW);
set (Demo, SHOW );
mouse_mode = 2;
}


function load_level()
{
level_load ("Test.wmb");
set (Tacho , SHOW);
set (Tachozeiger , SHOW);

reset (Menu , SHOW);
reset (Main1 , SHOW);
reset (Demo , SHOW );
mouse_mode = 0;



}




function playVideo2()
{
media_play("Credits.wmv",0,100);

}




function show_option()
{
reset (Menu, SHOW );
reset (Main1, SHOW );
reset (Demo, SHOW );

set (test, SHOW );
set (back, SHOW);
set (sicher_txt, SHOW );
}

function delete_file()
{

 file_delete ("Test.SAV"); 


}


PANEL* error1 =
{
	button(-225,180, "error1.jpg","error1.jpg", "error1.jpg", NULL , NULL, NULL);
  
   flags = OUTLINE ;
	
}




function load_error()
{
set (error1, SHOW);
wait(300);
reset (error1, SHOW);


}



Vorspann Hauptcode
Code:
Code:#include <acknex.h>
#include <windows.h>
#include <default.c>
#include "Menue.c"
#include "Steuerung.c"
//////////////////////

BMAP* Maus = "Maus.tga"; 


	




function playVideo()
{
media_play("Vorspann.wmv",0,100);


}





function main()
{
video_screen = 2; 
max_entities = 1500;
 
//level_load();
on_h = exit_level;
mouse_map = Maus; 


mouse_mode = 2;
	while (1)
	{
		mouse_pos.x = mouse_cursor.x;
		mouse_pos.y = mouse_cursor.y;
		wait (1);



sky_color.blue = 0;
sky_color.green = 0;
sky_color.red = 0;
}



}

PANEL* Main6 =
{
	pos_x = 220;
	pos_y = 100;
    bmap = "Main3.jpg";
  
      flags = SHOW | OUTLINE ;

}

PANEL* Link=
{
	
 button(310,530, "Newgame2.jpg","Newgame1.jpg", "Newgame1.jpg", show_hauptmenue , NULL, NULL);
	  flags = SHOW | OUTLINE;
}





function show_hauptmenue()
{
// Panels unsichtbar machen:
reset (Link, SHOW);
reset (Main6, SHOW);


// Panels sichtbar machen:
set (Menu, SHOW );
set (Main1, SHOW );
set (Demo, SHOW );

}


Posted By: Widi

Re: Tacho - 02/27/10 21:06

Setze den layer der Panels.
Panels mit höherem layer werden VOR denen mit niedrigem layer angezeigt. Die Nadel muss einen höheren layer (z.B layer = 2;) haben als der Tacho (z.B layer = 1;)

EDIT: Habe gerade nachgeschaut, wird auch im TUTORIAL erklärt. (Auch auf deutsch !!!!)
Posted By: Superku

Re: Tacho - 02/27/10 21:08

Arbeite ein/das Tutorial durch, dauert nicht sonderlich lange, denke ich.
Guck dir mal folgende Zeilen an und finde heraus, dass my_var = speed; nichts anderes ist als my_var = 0;, ganz egal, was speed nach Ausführung dieser Zeile für einen Wert annimmt.

var speed=0;
var my_var = 0;
my_var = speed;
Posted By: Wr2_freak

Re: Tacho - 02/27/10 21:13

Hab ich:


PANEL* Tachozeiger =
{
center_x = 1;
center_y = 1;
needle(700,340,"Zeiger2.tga",700,340,180,0,100,my_var);
layer = 1;
flags = VISIBLE | SHOW ;

}



Seh ihn aber immer noch nciht
Posted By: Widi

Re: Tacho - 02/27/10 21:18

LIes genauer!!! layer = 2 für den Zeiger und layer = 1 für den Tacho (layer =1 ist standard für Panels, also nützt layer = 1 bei deinem Zeiger nichts)
Posted By: Wr2_freak

Re: Tacho - 02/27/10 21:21

Das gibts doch nciht es zeigt keinen zeiger an!K.A Ich habe es auch mal mit der positon: 1,1 (x,y) versucht.Auch nichts!
Posted By: Widi

Re: Tacho - 02/27/10 21:29

Wie gross ist denn dein Zeiger? Sehe gerade dass der Drehpunkt bei 700,340 liegt. Der Zeiger muss ja den ganzen Bildschirm ausfüllen (grösser als 700 * 340). Falls nicht, verringere die Werte auf mal die Hälfte der Grösse des Bildes.

EDIT: Sonst versuche einen normalen Panel mit dem Zeigerbild (ohne needle) darzustellen, um zu sehen ob das Bild überhaupt dargestellt wird.
Posted By: Wr2_freak

Re: Tacho - 02/27/10 21:30

nicht sehr groß!Aber wenn ich ih auf 1,1 tu mach es auch nichts.er ist dann auch nicht da
Posted By: Wr2_freak

Re: Tacho - 02/27/10 21:35

es wird nun angezegigt.ABer der zeiger bewegt sich keinen milimeter

Code:
PANEL* Tachozeiger =
{
	center_x = 100;
   center_y = 100;
    needle(100,100,"Zeiger.tga",100,100,180,0,100,my_var); 
    layer = 2;
    flags =  VISIBLE  ;
    
 }





Code:
var speed=0;
var my_var =  0;
my_var = speed;




Code:
action car_1()
{
	
	
	//////////////////////////////////
	while(1)
	{
	
		// KAMERA:
		vec_set(camera.x,vector(-200,0,60));
		vec_rotate(camera.x,camera.pan);
		vec_lerp(camera.pan,camera.pan,my.pan,0.2);
      vec_add(camera.x,my.x);
		
		//////////////
			// move the car using relative_speed
		if (key_a)
			my.pan += 5*time_step; // increase the pan angle of the car
		if (key_d)
			my.pan -= 5*time_step; // decrease the pan angle of the car
				// move the car using relative_speed
	   if (key_w && speed<80) // wenn die Leertaste gedrückt und speed kleiner als 10 ist
         speed+=10*time_step; // erhöhe Speed
         else // sonst
      if(speed>0) //solange speed grösser als null ist
         speed -= 3  * time_step; // vermindere speed
       c_move (my, vector(speed*time_step, 0, 0), nullvector, GLIDE); // bewege das Auto abhängig von speed
      //////	Rückwärts-Difinition	
		if (key_s ) // press and hold the "Space" key to move the car
			c_move (my, vector(-20*time_step, 0, 0), nullvector, GLIDE);
			if (key_cul)
			my.pan += 5*time_step; // increase the pan angle of the car
		if (key_cur)
			my.pan -= 5*time_step; // decrease the pan angle of the car
				// move the car using relative_speed
	   if (key_cuu && speed<80) // wenn die Leertaste gedrückt und speed kleiner als 10 ist
         speed+=10*time_step; // erhöhe Speed
         else // sonst
      if(speed>0) //solange speed grösser als null ist
         speed -= 3  * time_step; // vermindere speed
       c_move (my, vector(speed*time_step, 0, 0 ), nullvector, GLIDE); // bewege das Auto abhängig von speed
      //////	Rückwärts-Difinition	
	
		if (key_cud) 
      c_move (my, vector(-20*time_step, 0, 0), nullvector, GLIDE);
      
		
		if (key_n) // press and hold the "Space" key to move the car
		c_move (my, vector(50*time_step, 0, 0), nullvector, GLIDE);
		wait(1);
	
	
	  

	}
	
	
}


Posted By: Rei_Ayanami

Re: Tacho - 02/27/10 21:50

welche GS version nutzt du eigentlich?

VISIBLE ist alt für SHOW !

und das mit my_var = speed muss in einer while(1)...wait(1); loop gesetzt werden!
Posted By: Wr2_freak

Re: Tacho - 02/28/10 18:08

Kannst du mir mal ein beispiel geben.

Noch mal ein aufruf an alle.Ich habe echt alles versucht. der tacho geht nicht.Und ich würde mich wirklich sehr freuen wenn mir jemand helfen könnte.Wenn ich das schaffe werde ich nie wieder eine Farge in diesem Forum stellen!Das verspreche ich!
Posted By: Anonymous

Re: Tacho - 02/28/10 18:41

Ich baue Dir ein Beispiel.
Aber nur, wenn Du Dich vom Fragestellen nicht distanzierst.
Ein Forum ist schließlich zum Fragen da...
Posted By: luckyxxl

Re: Tacho - 02/28/10 18:47

EDIT: Alles Quatsch was ich gesagt hab. Sorry! blush
Posted By: Anonymous

Re: Tacho - 02/28/10 19:56


klick auf das Bild für die Demo...

// Die Werte stimmen nicht genau, aber Tachos stimmen eh nicht wink
Posted By: Wr2_freak

Re: Tacho - 03/01/10 15:41

Wow!Danke!Hab ihn eingebaut und...
...
...
ER FUNKTIONIERT!!!!!
Juhu!
Vielen Dank an alle!
Posted By: atari98

Re: Tacho - 03/02/10 14:40

Herzlichen Glückwunsch laugh
Posted By: luckyxxl

Re: Tacho - 03/02/10 17:23

super dass es geklappt hat. Sorry für meinen saublöden und falschen Post
Posted By: Wr2_freak

Re: Tacho - 03/03/10 13:23

Originally Posted By: luckyxxl
super dass es geklappt hat. Sorry für meinen saublöden und falschen Post


Schon in Ordnung!
© 2024 lite-C Forums