Np. embera
public Ember(id, skill, prop)
{
if( !PassTest(id, 1) )
return SKILL_READY;
new Float:f_aimvec[3];
get_user_origin(id, origin[id]);
get_user_origin(id, aim[id], 3);
if(-50>aim[id][0]-origin[id][0]>50) //only change it if they are at least that far away
aim[id][0] += ( ( aim[id][0] - origin[id][0] > 0 ) ? -50 : 50 );
if(-50>aim[id][1]-origin[id][1]>50) //only change it if they are at least that far away
aim[id][1] += ( ( aim[id][1] - origin[id][1] > 0 ) ? -50 : 50 );
if(-50>aim[id][2]-origin[id][2]>50) //only change it if they are at least that far away
aim[id][2] += ( ( aim[id][2] - origin[id][2] > 0 ) ? -50 : 50 );
else
aim[id][2] += 40;
IVecFVec(aim[id], f_aimvec);
new ent = fm_create_entity("info_target");
set_pev( ent, pev_classname, "pokemod_ent");
fm_entity_set_model(ent, MODELS[MDL_ROCK]);
fm_entity_set_origin(ent, f_aimvec);
set_pev( ent, pev_rendermode, 5);
set_pev( ent, pev_renderamt, 255.0);
set_pev( ent, pev_owner, id);
fm_set_rendering( ent, kRenderFxGlowShell, 255, 130, 5, kRenderNormal, 20);
set_pev( ent, pev_mins, Float:{-50.0, -50.0, -50.0});
set_pev( ent, pev_maxs, Float:{50.0, 50.0, 50.0});
set_pev( ent, pev_solid, SOLID_BBOX);
set_pev( ent, pev_movetype, MOVETYPE_FLY);
new parm[3]
parm[0] = ent;
parm[1] = skill;
parm[2] = EMBER_TIME * 10;
AddLvl(id, parm[2]);
check_ember(parm)
return SKILL_USED;
}
public check_ember(parm[])
{
new ent = parm[0];
new skill = parm[1];
parm[2]--;
if( !parm[2] && pev_valid(ent) )
fm_remove_entity(ent);
if( !pev_valid(ent) )
return;
new id = pev(ent, pev_owner);
new range = EMBER_RANGE;
AddLvl(id, range);
new aid, players[MAX_PLAYERS], pnum
poke_get_players(players,pnum,PLAYER_ALIVE|PLAYER_MORTAL|PLAYER_NOTEAM,Pokemod_Team(id))
for(new i = 0; i<pnum; i++)
{
aid = players[i]
if( !g_Status[aid][STATUS_BURN] ){
if( fm_entity_range(ent,aid) < range ) {
ApplyStatus( id, aid, STATUS_BURN, 0.0 )
poke_print(aid,print_center,"You have walked into %s", SkillToName(skill));
}
}
}
new Float:ember_origfl[3], ember_orig[3];
pev( ent, pev_origin, ember_origfl );
FVecIVec(ember_origfl, ember_orig);
new parmlol[7];
parmlol[0] = ember_orig[0];
parmlol[1] = ember_orig[1];
parmlol[2] = ember_orig[2];
parmlol[3] = 0;
parmlol[4] = 0;
parmlol[5] = 10;
parmlol[6] = SPRITE_INDEX[SPR_XFIRE];
create_sprite_spray( parmlol );
if( (parm[2] % 10) == 0 ){
poke_sound(ent, CHAN_VOICE, SND_FLAME)
message_begin( MSG_PAS, SVC_TEMPENTITY, ember_orig )
write_byte(TE_BEAMCYLINDER)
write_coord( ember_orig[0])
write_coord( ember_orig[1])
write_coord( ember_orig[2] - 16)
write_coord( ember_orig[0])
write_coord( ember_orig[1])
write_coord( ember_orig[2] - 16 + range)
write_short( SPRITE_INDEX[SPR_FIRE] )
write_byte( 0 ) // startframe
write_byte( 0 ) // framerate
write_byte( 10 ) // life
write_byte( 16 ) // width
write_byte( 0 ) // noise
write_byte( 188 )
write_byte( 220 )
write_byte( 255 )
write_byte( 255 ) //brightness
write_byte( 0 ) // speed
message_end()
}
Chodzi mi w ktorym miejscu sie zmienia kolor. Chcialbym tez kody na kolory.
Użytkownik Puciaty edytował ten post 01.04.2011 17:37