Hey, thanx for your help.
sorry for my english, it's to bad. :-)
ok, poly it's on. but the Ball goes not like a poolbillard-ball.
i've tested with my.narrow and my.fat. and i've testet with c_setminmax.
he springs off the wall normaly like billardball, but in a time he springs wrong...
here my code:
Code:
action die_kugel()
{
vec_set (kugel_pos.x, my.x);
my.polygon = on;
my.invisible = on;
while (mouse_left == 0) {wait (1);} // warte bis der Spieler die linke Maustaste drückt
my.invisible = off;
randomize();
kugel = my; // ist besser wenn der Zeiger My für die entity gebraucht wird
my.pan = 70 - random(140);
my.enable_block = on;
my.enable_impact = on;
my.enable_entity = on;
my.event = kugel_event;
my.lightrange = 200;
my.red = 250;
my.green = 200;
my.blue = 150;
my.scale_y = 2;
my.scale_x = 2;
my.scale_z = 2;
// my.narrow=on;
// my.fat=on;
var jet_speed;
while(1)
{
my.skill1 = c_move (my, vector(kugel_speed * time_step, 0, 0), nullvector, ignore_passable);
if (my.skill1 < 3) // stockt die Kugel?
{
my.pan = random(360); // dann hilf ihr raus
}
if (my.x < 550) // Jetzt hat der Spieler ein Leben verloren
{
//snd_play (lost_wav, 70, 0);
anzahl_leben -= 1;
ent_create (kugel_mdl, kugel_pos.x, die_kugel); // kreire wieder eine Kugel an der Ursprünglichen Position
wait(1);
c_setminmax(me);
ent_remove (my); // entferne den alten Ball
return;
}
temp.pan = my.pan;
temp.tilt = my.tilt;
temp.roll = my.roll;
jet_speed.x = -3;
jet_speed.y = 0;
jet_speed.z = 0;
vec_rotate (jet_speed, temp);
//effect(particle_jet, 4, my.x, jet_speed);
wait(1);
}
}
Vielleicht ist mein Deutsch ein wenig besser als Englisch. :-)
Also die Kugel springt ganz normal von den Wänden wie eine Billardkugel. Und plötzlich aber springt sie völlig falsch. wie in die entgegengesetzte Richtung. völlig komisch.
ich dachte das könnte allenfalls daran liegen, dass die Kollisionshülle eine Box ist... jedoch kann ich die nicht ändern, oder wüsste leider nicht wie.
vielen Dank an alle, die sich Mühe geben mir zu helfen.
Grüsse
Blafasel
Edit: code besser dargestellt.