Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Created Nice Demo by sector specially for www.chatbox.do.am
- Web. Help www.chatbox.do.am
- */
- #include < amxmodx >
- #include < cstrike >
- #include < fakemeta_util >
- #include < fakemeta >
- #include < hamsandwich >
- #include < csx >
- #include < engine >
- #include < dhudmessage >
- #include < fun >
- new para_ent[33]
- new g_Sprite[ ][ ] = {"sprites/lgtning.spr" };
- new Sprite;
- public plugin_init()
- {
- register_plugin("Wings", "1.0", "@.TheBomB`")
- register_event("ResetHUD", "newSpawn", "be")
- register_event("DeathMsg", "death_event", "a")
- }
- public plugin_natives()
- {
- set_native_filter("native_filter")
- }
- public native_filter(const name[], index, trap)
- {
- if (!trap) return PLUGIN_HANDLED
- return PLUGIN_CONTINUE
- }
- public plugin_precache()
- {
- precache_model("models/Top/JB/wings1.mdl")
- Sprite = precache_model( g_Sprite[ 0 ] );
- }
- public client_connect(id)
- {
- parachute_reset(id)
- }
- public client_disconnect(id)
- {
- parachute_reset(id)
- }
- public death_event()
- {
- new id = read_data(2)
- parachute_reset(id)
- }
- parachute_reset(id)
- {
- if(para_ent[id] > 0)
- {
- if (is_valid_ent(para_ent[id]))
- {
- remove_entity(para_ent[id])
- }
- }
- if(is_user_alive(id)) set_user_gravity(id, 1.0)
- para_ent[id] = 0
- }
- public newSpawn(id)
- {
- if(para_ent[id] > 0)
- {
- remove_entity(para_ent[id])
- set_user_gravity(id, 1.0)
- para_ent[id] = 0
- }
- }
- public client_PreThink(id)
- {
- if(!is_user_alive(id)&&(get_user_flags(id) & ADMIN_LEVEL_C)) return
- new Float:fallspeed = 100 * -1.0
- new Float:frame
- new button = get_user_button(id)
- new oldbutton = get_user_oldbutton(id)
- new flags = get_entity_flags(id)
- if(para_ent[id] > 0 && (flags & FL_ONGROUND))
- {
- if(get_user_gravity(id) == 0.1) set_user_gravity(id, 1.0)
- {
- if(entity_get_int(para_ent[id],EV_INT_sequence) != 2)
- {
- entity_set_int(para_ent[id], EV_INT_sequence, 2)
- entity_set_int(para_ent[id], EV_INT_gaitsequence, 1)
- entity_set_float(para_ent[id], EV_FL_frame, 0.0)
- entity_set_float(para_ent[id], EV_FL_fuser1, 0.0)
- entity_set_float(para_ent[id], EV_FL_animtime, 0.0)
- entity_set_float(para_ent[id], EV_FL_framerate, 0.0)
- return
- }
- frame = entity_get_float(para_ent[id],EV_FL_fuser1) + 2.0
- entity_set_float(para_ent[id],EV_FL_fuser1,frame)
- entity_set_float(para_ent[id],EV_FL_frame,frame)
- if(frame > 254.0)
- {
- remove_entity(para_ent[id])
- para_ent[id] = 0
- }
- else
- {
- remove_entity(para_ent[id])
- set_user_gravity(id, 1.0)
- para_ent[id] = 0
- }
- return
- }
- }
- if (button & IN_USE&&(get_user_flags(id) & ADMIN_LEVEL_C))
- {
- new Float:velocity[3]
- entity_get_vector(id, EV_VEC_velocity, velocity)
- if(velocity[2] < 0.0)
- {
- if(para_ent[id] <= 0)
- {
- para_ent[id] = create_entity("info_target")
- if(para_ent[id] > 0)
- {
- entity_set_edict( para_ent[id], EV_ENT_euser1, id );
- entity_set_int( para_ent[id], EV_INT_iuser1, 0 );
- entity_set_size( para_ent[id], Float:{-6.0,-6.0,-6.0}, Float:{6.0,6.0,6.0} );
- entity_set_float( para_ent[id], EV_FL_friction, 0.6 );
- message_begin( MSG_BROADCAST, SVC_TEMPENTITY );
- write_byte( TE_BEAMFOLLOW );
- write_short( para_ent[id] );
- write_short( Sprite );
- write_byte( 20 );
- write_byte( 13 );
- write_byte( 12 );
- write_byte( 122 );
- write_byte( 221 );
- write_byte( 255 );
- message_end( );
- entity_set_string(para_ent[id],EV_SZ_classname,"parachute")
- entity_set_edict(para_ent[id], EV_ENT_aiment, id)
- entity_set_edict(para_ent[id], EV_ENT_owner, id)
- entity_set_int(para_ent[id], EV_INT_movetype, MOVETYPE_FOLLOW)
- fm_set_rendering( para_ent[id], kRenderFxGlowShell, random_num(1, 255 ), random_num(1, 255 ), random_num(1, 255 ),kRenderNormal, 200 );
- entity_set_model(para_ent[id], "models/Top/JB/wings1.mdl")
- entity_set_int(para_ent[id], EV_INT_sequence, 0)
- entity_set_int(para_ent[id], EV_INT_gaitsequence, 1)
- entity_set_float(para_ent[id], EV_FL_frame, 0.0)
- entity_set_float(para_ent[id], EV_FL_fuser1, 0.0)
- }
- }
- if(para_ent[id] > 0)
- {
- entity_set_int(id, EV_INT_sequence, 3)
- entity_set_int(id, EV_INT_gaitsequence, 1)
- entity_set_float(id, EV_FL_frame, 1.0)
- entity_set_float(id, EV_FL_framerate, 1.0)
- set_user_gravity(id, 0.1)
- velocity[2] = (velocity[2] + 40.0 < fallspeed) ? velocity[2] + 40.0 : fallspeed
- entity_set_vector(id, EV_VEC_velocity, velocity)
- if(entity_get_int(para_ent[id],EV_INT_sequence) == 0)
- {
- frame = entity_get_float(para_ent[id],EV_FL_fuser1) + 1.0
- entity_set_float(para_ent[id],EV_FL_fuser1,frame)
- entity_set_float(para_ent[id],EV_FL_frame,frame)
- if (frame > 100.0)
- {
- entity_set_float(para_ent[id], EV_FL_animtime, 0.0)
- entity_set_float(para_ent[id], EV_FL_framerate, 0.4)
- entity_set_int(para_ent[id], EV_INT_sequence, 1)
- entity_set_int(para_ent[id], EV_INT_gaitsequence, 1)
- entity_set_float(para_ent[id], EV_FL_frame, 0.0)
- entity_set_float(para_ent[id], EV_FL_fuser1, 0.0)
- }
- }
- }
- }
- else if(para_ent[id] > 0)
- {
- remove_entity(para_ent[id])
- set_user_gravity(id, 1.0)
- para_ent[id] = 0
- }
- }
- else if((oldbutton & IN_USE) && para_ent[id] > 0 )
- {
- remove_entity(para_ent[id])
- set_user_gravity(id, 1.0)
- para_ent[id] = 0
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement