HUD Display

Posted By: MikeS

HUD Display - 11/22/09 01:11

Ok, wieder was neues von mir.

Ich möchte ein HUD display kreiren, um das angewählte ziel zu markieren.

Ok, ich habe 4 bmps, die jeweils die ecken der zielmarkierung sein sollen.

Ich möchte das als Panel machen, und jeweils ans eck der angewählten ent setzen.

kann mir da jemand weitehelfen?

ich komm da irgendwie nicht weiter, statische panels kann ich setzen, aber wie verschiebe ich das dann automatisch, so dass es immer um die ziel ent bleibt?

Die ziel ent wähle ich über ent_next an.

Danke
Posted By: Ascalon

Re: HUD Display - 11/23/09 12:09

muss sich die Zielmarkierung immer an der größe des Ziels anpassen ? Weil das verkompliziert die Sache ein wenig glaub ich. Ansonsten könntest ja das Panel von der größe her sklalieren denk ich
Ansonsten würd ich das so machen:

Hab ein Zielramen mit fixer Größe als tga-Bild (heißt bei mir TargetFrame_tga).
Code:
vec_to_screen(target_pos.x,camera);
TargetFrame_pan.pos_x = target_pos.x - bmap_width(TargetFrame_tga)/2;
TargetFrame_pan.pos_y = target_pos.y - bmap_height(TargetFrame_tga)/2;
set(TargetFrame_pan,SHOW);


Posted By: MikeS

Re: HUD Display - 11/23/09 16:40

Ok, werd ich mal ausprobieren.

Ok, nächstes Problem :-)

die Anwahl mit ent_next haut noch nicht ganz so hin, wie ich das möchte.

Mit diesem code kann ich, wenn ich enter drücke, die erste ziel ent anwählen.
Zu testzwecken wird sie erstmal nur hervorgehoben, indem ich ihr Ambient auf 100 setze.

Mein Problem:
Ich kriegs nicht hin, mit einem weiteren druck auf enter die nächste ziel ent anzuwählen.

Hat da jemand ne idee?

Code:
function select_target()
{
you = ent_next(NULL); // hole den Pointer auf die erste Entity
while(you != NULL)
{
if(key_enter == 1) // wenn enter gedrückt wird, wähle target
{
{
while(1);
{
if (your.skill4 == 2)
{
Selected_target = ptr_for_handle (you);
your.ambient = 100;
}
else
{
you = ent_next(you);
}
wait (1);
}
}
wait (1);
}
}
}


© 2023 lite-C Forums