0 registered members (),
1,320
guests, and 6
spiders. |
Key:
Admin,
Global Mod,
Mod
|
|
|
Player kommt keine rampe hoch! [ isn't able to walk up ramps]
#239093
12/02/08 14:47
12/02/08 14:47
|
Joined: Jan 2002
Posts: 454 Germany
CD_saber
OP
Senior Member
|
OP
Senior Member
Joined: Jan 2002
Posts: 454
Germany
|
Hello, i'm using this code for my player movement. the problem is that the player is not able to go up stairs or to walk up ramps... is there a way to solve this? Or does anyone have a better player code [c-skript]
Hallo, ich benutze das folgende skript als player-skript. Das problem ist, dass der spieler keine rampen hochgehen kann bzw. treppenstufen überwinden kann. Kann ich dies iwie lösen? Oder hat jemand einen besseren player-code für c-skript?
function camera_move() { while(player) { camera.pan += 0.5 * ang(player.pan - camera.pan); vec_set(camera.x,player.x); camera.z += 40 + sin(total_ticks * 10); mouse_mode = 0; wait(1); } }
action player_move() { var reldist[3]; var absdist[3]; my.narrow = on; var input_vec[3]; var Vz = 0; var jump_able = 1; my.invisible = on; player = me; camera_move(); while(me) { vec_set(reldist.x,nullvector);
input_vec.x = (key_w - key_s) * time * 17; input_vec.y = (key_d - key_a) * time * -10;
my.pan -= 30 * mouse_force.x * time; camera.pan = my.pan; camera.tilt = min(max(ang(camera.tilt + 20 * mouse_force.y * time),-60),60);
Vz += (Vz == 0) * 70 * key_space * jump_able; if(Vz > 0) { jump_able = 0; } Vz -= (Vz > 0);
c_move(me,input_vec,nullvector,IGNORE_ME | IGNORE_PASSABLE | USE_BOX); c_move(me,nullvector,vector(0,0,(Vz-20) * time),IGNORE_ME | IGNORE_PASSABLE | USE_BOX); if(trace_hit) { jump_able = 1; }
wait(1); } }
Ja, lach du nur du haariges Pelzvieh!
|
|
|
Re: Player kommt keine rampe hoch! [ isn't able to walk up ramps]
[Re: CD_saber]
#239342
12/04/08 03:29
12/04/08 03:29
|
Joined: Nov 2008
Posts: 216
jane
Member
|
Member
Joined: Nov 2008
Posts: 216
|
Hallo, ich glaube da fehlt nur ein trace nach unten der dann in der c-move benutzt wird. Probiers mal hiermit(nur als ansatz, das Springen muß dann sicher korrigiert werden)
action player_move() { var reldist[3]; var absdist[3]; my.narrow = on; var input_vec[3]; var Vz = 0; var jump_able = 1; var vFeet[3];
vec_for_min(vFeet,me);
my.invisible = on;
player = me; camera_move();
while(me) { vec_set(reldist.x,nullvector);
input_vec.x = (key_w - key_s) * time * 17; input_vec.y = (key_d - key_a) * time * -10;
var dist_down; if(c_trace(my.x,vector(my.x,my.y,my.z-5000),IGNORE_ME | IGNORE_PASSABLE | USE_BOX) > 0) { dist_down = my.z + vFeet.z - target.z; }
my.pan -= 30 * mouse_force.x * time; camera.pan = my.pan; camera.tilt = min(max(ang(camera.tilt + 20 * mouse_force.y * time),-60),60);
Vz += (Vz == 0) * 70 * key_space * jump_able;
if(Vz > 0) { jump_able = 0; } Vz -= (Vz > 0);
c_move(me,input_vec,nullvector,IGNORE_ME | IGNORE_PASSABLE | USE_BOX); c_move(me,nullvector,vector(0,0,(Vz-dist_down) * time),IGNORE_ME | IGNORE_PASSABLE | USE_BOX);
if(trace_hit) { jump_able = 1; }
wait(1); } }
|
|
|
|