Tylko trzeba zmienić na piorun, a ja niestety nie umiem mógby ktoś zrobić?
Tworzenie Blyskawicy:
public StworzBlyskawice(id) { if (!ilosc_blyskawic_gracza[id]) { client_print(id, print_center, "Wykrzystales juz wszystkie blyskawice!"); return PLUGIN_CONTINUE; } if(poprzednia_blyskawica_gracza[id] + 2.0 > get_gametime()) { client_print(id, print_center, "Blyskawic mozesz uzywac co 2 sekundy!"); return PLUGIN_CONTINUE; } if (is_user_alive(id)) { if(inteligencja_gracza[id] < 1) client_print(id, print_center, "Aby wzmocnic Blyskawice, zwieksz inteligencje!"); poprzednia_blyskawica_gracza[id] = get_gametime(); ilosc_blyskawic_gracza[id]--; new Float: Origin[3], Float: vAngle[3], Float: Velocity[3]; entity_get_vector(id, EV_VEC_v_angle, vAngle); entity_get_vector(id, EV_VEC_origin , Origin); new Ent = create_entity("info_target"); entity_set_string(Ent, EV_SZ_classname, "Blyskawica"); entity_set_model(Ent, "models/rpgrocket.mdl"); vAngle[0] *= -1.0; entity_set_origin(Ent, Origin); entity_set_vector(Ent, EV_VEC_angles, vAngle); entity_set_int(Ent, EV_INT_effects, 64); entity_set_int(Ent, EV_INT_solid, SOLID_BBOX); entity_set_int(Ent, EV_INT_movetype, 5); entity_set_edict(Ent, EV_ENT_owner, id); new fEntity new Float:fl_iNewVelocity[3] VelocityByAim(id, 500, fl_iNewVelocity) entity_set_vector(fEntity, EV_VEC_velocity, fl_iNewVelocity) message_begin(MSG_BROADCAST, SVC_TEMPENTITY) write_byte(22) write_short(fEntity) write_short(sprite_beam) write_byte(45) write_byte(4) write_byte(255) write_byte(0) write_byte(0) write_byte(25) message_end() VelocityByAim(id, 1000 , Velocity); entity_set_vector(Ent, EV_VEC_velocity ,Velocity); } return PLUGIN_CONTINUE; }
Dotyk
public DotykBlyskawicy(ent) { if ( !is_valid_ent(ent)) return; new attacker = entity_get_edict(ent, EV_ENT_owner); new Float:fOrigin[3], iOrigin[3]; entity_get_vector( ent, EV_VEC_origin, fOrigin); iOrigin[0] = floatround(fOrigin[0]); iOrigin[1] = floatround(fOrigin[1]); iOrigin[2] = floatround(fOrigin[2]); message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin); write_byte(TE_EXPLOSION); write_coord(iOrigin[0]); write_coord(iOrigin[1]); write_coord(iOrigin[2]); write_short(sprite_blast); write_byte(32); // scale write_byte(20); // framerate write_byte(0);// flags message_end(); new entlist[33]; new numfound = find_sphere_class(ent, "player", 230.0, entlist, 32); for (new i=0; i < numfound; i++) { new pid = entlist[i]; if (!is_user_alive(pid) || get_user_team(attacker) == get_user_team(pid) || informacje_przedmiotu_gracza[pid][0] == 24) continue; ExecuteHam(Ham_TakeDamage, pid, ent, attacker, 55.0+float(inteligencja_gracza[attacker]) , 1); } remove_entity(ent); }