X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=player_glide.c;h=af44ea6e806ed6f30088f811d679fc1e841c271c;hb=888e62fcd8f9777cee774fbb8fab2e52660303a7;hp=eccf3ab0696690d4c4538f87e0b4e73bef436acb;hpb=ec3a96fde91385417ffc20e0f7745d7d8e2889ca;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/player_glide.c b/player_glide.c index eccf3ab..af44ea6 100644 --- a/player_glide.c +++ b/player_glide.c @@ -289,10 +289,21 @@ static void player_glide_im_gui(void){ player_glide.info_drag[2] ); } +static void player_glide_equip_glider(void){ + if( !localplayer.have_glider ){ + localplayer.have_glider = 1; + localplayer.glider_orphan = 0; + player_glide.t = -1.0f; + } +} + static int ccmd_player_glider_spawn( int argc, const char *argv[] ){ - localplayer.have_glider = 1; - localplayer.glider_orphan = 0; - player_glide.t = -1.0f; + if( vg_console.cheats ){ + player_glide_equip_glider(); + } + else { + vg_error( "Can't spawn without cheats enabled.\n" ); + } return 0; } @@ -394,7 +405,25 @@ static void player_glide_bind(void){ &player_glide.glider_textures[i+1] ); } + /* load trail positions */ + mdl_array_ptr markers; + MDL_LOAD_ARRAY( mdl, &markers, ent_marker, vg_mem.scratch ); + + for( u32 i=0; itransform.co, + player_glide.trail_positions[ player_glide.trail_count ++ ] ); + + if( player_glide.trail_count == vg_list_size(trails_glider) ) + break; + } + mdl_close( mdl ); + + /* allocate effects */ + for( u32 i=0; i