|
Re: Beim Sprung friert die cam ein
[Re: janerwac13]
#337389
08/10/10 18:16
08/10/10 18:16
|
Joined: Feb 2010
Posts: 483 in deinem Kopf
Otter
Senior Member
|
Senior Member
Joined: Feb 2010
Posts: 483
in deinem Kopf
|
der pointer müsste in deinem fall eh nur der player sein oder? Also sollte "player" die lösung sein
Be my UBB-Buddy, without any reason!
|
|
|
Re: Beim Sprung friert die cam ein
[Re: janerwac13]
#337390
08/10/10 18:17
08/10/10 18:17
|
Joined: Dec 2008
Posts: 222
janerwac13
OP
Member
|
OP
Member
Joined: Dec 2008
Posts: 222
|
helft mir bitte !
function jump() { ENTITY* ball; phent_addvelcentral(ball,vector(0,0,1000*time_step)); }
action ball() { VECTOR ball_speed; ENTITY* ball; var rot_angle = 0; var rot_height = 0; VECTOR offset; var jumptimer = -1.5; on_space = jump; ph_setgravity (vector(0, 0, -500)); // set the gravity phent_settype (my, PH_RIGID, PH_SPHERE); // set the physics entity type phent_setmass (my, 3, PH_SPHERE); // and its mass phent_setfriction (my, 80); // set the friction phent_setdamping (my, 40, 40); // set the damping phent_setelasticity (my, 50, 20); // set the elasticity while (1) { ball_speed.x = 40 * (key_d - key_a); // move the ball using the cursor keys ball_speed.y = 40 * (key_w - key_s); // 25 sets the x / y movement speeds ball_speed.z = 0; // no need to move on the vertical axis vec_rotate(ball_speed,vector(camera.pan,0,0)); //Die Zeile rotiert deinen Bewegungsvektor mit der Kamera if (key_p) { freeze_mode = 1; set(pause_pan,VISIBLE); mouse_mode = 2; } phent_addtorqueglobal (my, ball_speed); // add a torque (an angular force) to the ball rot_angle += mickey.x * 4; rot_height = clamp(rot_height + mickey.y * 2,0,45); vec_set(offset,vector(-300,0,100)); vec_rotate(offset,vector(rot_angle,-rot_height,0)); vec_set(camera.x,my.x); vec_add(camera.x,offset); camera.pan = rot_angle; camera.tilt = -rot_height; if(my.z<-850) { ent_remove(my); game_load("level",1); return; } wait (1); } }
|
|
|
Re: Beim Sprung friert die cam ein
[Re: janerwac13]
#337393
08/10/10 18:25
08/10/10 18:25
|
Joined: Feb 2010
Posts: 483 in deinem Kopf
Otter
Senior Member
|
Senior Member
Joined: Feb 2010
Posts: 483
in deinem Kopf
|
Setzt den player pointer in deine action und schreibe alle functionen die etwas mit der spielfigur zu tun haben zukünftig mit player. Mach eine function die nur der Kamera einstellung dient:
function Kamera() { while(me != NULL) { camera.x = player.x; camera.y = player.y; camera.z = player.z; ... ... dein camera code ... ... wait(1); } }
Das setzt du dann am anfang deiner action ein action ball() { VECTOR ball_speed; ENTITY* ball; var rot_angle = 0; var rot_height = 0; VECTOR offset; var jumptimer = -1.5; on_space = jump; player = me; Kamera(); ph_setgravity (vector(0, 0, -500)); // set the gravity phent_settype (my, PH_RIGID, PH_SPHERE); // set the physics entity type phent_setmass (my, 3, PH_SPHERE); // and its mass phent_setfriction (my, 80); // set the friction phent_setdamping (my, 40, 40); // set the damping phent_setelasticity (my, 50, 20); // set the elasticity while (1)
Hoffe ich konnte helfen
Be my UBB-Buddy, without any reason!
|
|
|
Re: Beim Sprung friert die cam ein
[Re: janerwac13]
#337394
08/10/10 18:27
08/10/10 18:27
|
Joined: May 2010
Posts: 48
Ich_bin_Batman
Newbie
|
Newbie
Joined: May 2010
Posts: 48
|
Also erstmal zur erklärung dein fehlender Pointer ist Ball die Zeile ENTITY* ball; schreib sie am besten außerhalb einfach über die Jump function und bitte nur einmal,außerdem hast du ihn nicht gesetzt ,kann sein das ich mich täusche aber setzt doch mal ganz oben in die Aktion: ball = MY; EDIT: Oh, Otter da warst du wohl schneller
Last edited by Ich_bin_Batman; 08/10/10 18:28.
|
|
|
Moderated by mk_1, Perro, rayp, Realspawn, Rei_Ayanami, rvL_eXile, Spirit, Superku, Tobias, TSG_Torsten, VeT
|