Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public Create_PlasmaBall(iPlayer)
- {
- new iEntity = engfunc(EngFunc_CreateNamedEntity, gl_iszAllocString_EnvSprite);
- if(!iEntity) return 0;
- new Float: flGameTime = get_gametime();
- new Float: vecOrigin[3]; pev(iPlayer, pev_origin, vecOrigin);
- new Float: vecAngles[3]; pev(iPlayer, pev_v_angle, vecAngles);
- new Float: vecVelocity[3]; angle_vector(vecAngles, ANGLEVECTOR_FORWARD, vecVelocity);
- new Float: vecViewOfs[3]; pev(iPlayer, pev_view_ofs, vecViewOfs);
- vecOrigin[0] += vecViewOfs[0] + vecVelocity[0] * 20.0;
- vecOrigin[1] += vecViewOfs[1] + vecVelocity[1] * 20.0;
- vecOrigin[2] += vecViewOfs[2] + vecVelocity[2] * 20.0;
- vecVelocity[0] *= ENTITY_PLASMABALL_SPEED;
- vecVelocity[1] *= ENTITY_PLASMABALL_SPEED;
- vecVelocity[2] *= ENTITY_PLASMABALL_SPEED;
- engfunc(EngFunc_SetModel, iEntity, ENTITY_PLASMABALL_SPRITE);
- engfunc(EngFunc_SetSize, iEntity, Float: {-1.0, -1.0, -1.0}, Float: {1.0, 1.0, 1.0});
- engfunc(EngFunc_SetOrigin, iEntity, vecOrigin);
- set_pev_string(iEntity, pev_classname, gl_iszAllocString_PlasmaBall);
- set_pev(iEntity, pev_spawnflags, SF_SPRITE_TEMPORARY);
- set_pev(iEntity, pev_solid, SOLID_TRIGGER);
- set_pev(iEntity, pev_movetype, MOVETYPE_FLY);
- set_pev(iEntity, pev_owner, iPlayer);
- set_pev(iEntity, pev_velocity, vecVelocity);
- set_pev(iEntity, pev_animtime, flGameTime);
- set_pev(iEntity, pev_framerate, 10.0);
- set_pev(iEntity, pev_frame, 1.0);
- set_pev(iEntity, pev_rendermode, kRenderTransAdd);
- set_pev(iEntity, pev_renderamt, 200.0);
- set_pev(iEntity, pev_scale, 0.5);
- return iEntity;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement