Seltsames Problem mit Action

Posted By: Vyshess

Seltsames Problem mit Action - 04/18/13 09:25

Hallo.
Ich habe ein seltsames Problem mit einer meiner Actionen. Ich wollte über einem Objekt einen roten Pfeil(MDL) auftauchen lassen und einen schwarzen balken mit einer Info oben links auf dem Bildschirm einblenden, sobald der Player in der Nähe des Objektes ist. (als wie z.B. bei Monster Hunter in den Dörfern)
Das wäre der eigentlich gut funktionierende Code:
Code:
function show_blackbar()
{
	black_bar_pan.flags |= SHOW;
	//include some text later
	wait(1);
}

function hide_blackbar()
{
	black_bar_pan.flags &= ~ SHOW;
	//include some text later
	wait(1);
}


action red_pointer()
{
	var sound_played=0;
	
	set(my,PASSABLE | TRANSLUCENT | LIGHT | INVISIBLE);
	while(1)
	{
		my.pan += 8*time_step;

                //player is near?-> make me visible 
		if(vec_dist (my.x, player.x) < 70)  

 		{ 

 		if(sound2_pld !=1) //play soundeffect only once

 		{ snd_play(click_wav, sound_volume, 0); sound_played =1;}

 		reset(my,INVISIBLE); // make me visible

 		show_blackbar(); // show the black bar

 		wait(1);
 		}

 		else //player isn`t near
 		{
 			set(my,INVISIBLE); //make me invisible
 			hide_blackbar();   // hide the black bar
 			sound_played =0;   // next time the soundeffect can be played again	
 			wait(1);
 		}
 		
 	wait(1);	
	}
}



Diese action habe ich dann dem Pfeil-Model im WED zugewiesen. Und im Test funktionierte auch alles wie es soll. Doch wenn ich nun weitere Pfeile mit dieser Action in mein Level kopiere, funktionieren diese zwar auch ALLERDINGS wird der schwarze Balken nur noch bei dem zuletzt hineinkopierten Pfeil ein- und ausgeblendet. Die anderen machen sich zwar auch sichtbar und unsichtbar, ignorieren aber vollkommen den Befehl zum an und ausschalten des schwarzen Balkens. Aber warum?? es ist doch ein und die selbe action?? lösche ich nun den letzten Pfeil aus dem Level, so blendet nun der davor eingefügte Pfeil(und auch nur der) den Balken ein und aus.
Posted By: Vyshess

Re: Seltsames Problem mit Action - 04/18/13 10:11

ach na klar! *facepalm* man ich seh den Wald vor lauter Bäumen nicht mehr...
Ja, du hast recht. Allerdings würde dein Code jetzt den Pfeil wild an und ausschalten.
Aber ich habs dank deiner Hilfe hinbekommen. So funktioniert alles bestens:
Code:
if((!is(my,INVISIBLE))&&(vec_dist (my.x, player.x) > 70))
{
 set(my,INVISIBLE);
 hide_blackbar();
 sound_played = 0;
 wait(1);
}



Danke rayp!!

Wo ist dein Post auf einmal hin,rayp?? Die Idee war doch gut.
Posted By: rayp

Re: Seltsames Problem mit Action - 04/18/13 10:13

Edit:
Irgendwie logisch, wenn Du einem Objekt nahe bist, will es den Balken einblenden, gleichzeitig bist Du aber den adneren Objekten fern...weisste was ich mein ?

tausch doch mal die else gegen diese if
Code:
if (vec_dist(my.x, player.x) > 70 && vec_dist(my.x, player.x) < 80)

nur um zu sehen, obs dann geht

mfg
Posted By: rayp

Re: Seltsames Problem mit Action - 04/18/13 10:14

Ja ich wollte es neu schreiben, und muss neben her arbeiten...ging etwas in die Hose...aber ich glaube du weisst bescheid ?

Edit: Hö, Deine Änderung, hatte ich als erstes im Post, aber war mir unsicher, ist doof, wenn man nebenher nicht testen kann. Trotzdem schön das ich Dir helfen konnte.

MFG
© 2024 lite-C Forums