Proszę o edycję klasy tak aby rakietki waliły jak najmniej w kolejnych levelach, nie że coraz mniej tylko aby ich wzrost siły był bardzo znikomy.
Niby mam tam sam zmienione ale i tak jest za dużo...
Spoiler
#include <amxmodx> #include <amxmisc> #include <codmod> #include <engine> #include <hamsandwich> #include <fun> new const nazwa[] = "Trup"; new const opis[] = "6 rakiet, zmiejszona grawitacja, malo HP"; new const bronie = (1<<CSW_SMOKEGRENADE)|(1<<CSW_USP)|(1<<CSW_GLOCK18)|(1<<CSW_TMP)|(1<<CSW_FLASHBANG); new const zdrowie = -99; new const kondycja = 20; new const inteligencja = 0; new const wytrzymalosc = 0; new sprite_blast; new ilosc_rakiet_gracza[33]; new poprzednia_rakieta_gracza[33]; new ma_klase[33]; public plugin_init() { register_plugin(nazwa, "1.0", "tded&amxx.pl"); cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc); RegisterHam(Ham_Spawn, "player", "fwSpawn_Grawitacja", 1); register_touch("rocket", "*" , "DotykRakiety"); RegisterHam(Ham_Spawn, "player", "fwSpawn_Rakiety", 1); register_event("Damage", "Damage_Wyrzucenie", "b", "2!=0"); } public plugin_precache() { sprite_blast = precache_model("sprites/dexplo.spr"); precache_model("models/rpgrocket.mdl"); } public client_disconnect(id) { new entRakiety = find_ent_by_class(0, "rocket"); while(entRakiety > 0) { if(entity_get_edict(entRakiety, EV_ENT_owner) == id) remove_entity(entRakiety); entRakiety = find_ent_by_class(entRakiety, "rocket"); } } public cod_class_enabled(id) { set_rendering(id,kRenderFxNone, 252, 107, 012, kRenderTransAlpha, 150); entity_set_float(id, EV_FL_gravity, 250.0/800.0); ilosc_rakiet_gracza[id] = 10; give_item(id, "weapon_flashbang"); give_item(id, "weapon_smokegrenade"); ma_klase[id] = true; } public cod_class_disabled(id) { set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255); entity_set_float(id, EV_FL_gravity, 1.0); ma_klase[id] = false; } public cod_class_skill_used(id) { if (!ilosc_rakiet_gracza[id]) { client_print(id, print_center, "Wykorzystales juz wszystkie rakiety!"); } else { if(poprzednia_rakieta_gracza[id] + 20.0 > get_gametime()) { client_print(id, print_center, "Rakiet mozesz uzywac co 20 sekund!"); } else { if (is_user_alive(id)) { poprzednia_rakieta_gracza[id] = floatround(get_gametime()); ilosc_rakiet_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, "rocket"); 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, 2); entity_set_int(Ent, EV_INT_solid, SOLID_BBOX); entity_set_int(Ent, EV_INT_movetype, MOVETYPE_FLY); entity_set_edict(Ent, EV_ENT_owner, id); VelocityByAim(id, 1000 , Velocity); entity_set_vector(Ent, EV_VEC_velocity ,Velocity); } } } } public fwSpawn_Grawitacja(id) { if(ma_klase[id]) entity_set_float(id, EV_FL_gravity, 250.0/800.0); } public fwSpawn_Rakiety(id) { if(is_user_alive(id)) ilosc_rakiet_gracza[id] = 6; } public DotykRakiety(ent) { if (!is_valid_ent(ent)) return; new attacker = entity_get_edict(ent, EV_ENT_owner); new Float:fOrigin[3]; entity_get_vector(ent, EV_VEC_origin, fOrigin); new iOrigin[3]; for(new i=0;i<3;i++) iOrigin[i] = floatround(fOrigin[i]); 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); write_byte(20); write_byte(0); message_end(); new entlist[33]; new numfound = find_sphere_class(ent, "player", 190.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)) continue; cod_inflict_damage(attacker, pid, 0.01, 0.01, ent, (1<<24)); } remove_entity(ent); } public Damage_Wyrzucenie(id) { new idattacker = get_user_attacker(id); if(!is_user_alive(idattacker)) return; if(!ma_klase[idattacker]) return; if(random_num(1, 8) != 1) return; client_cmd(id, "drop"); }
EDIT: I bym prosił o zmianę koloru postaci jeżeli takowa jest możliwa, teraz ma ona kolor szary bo jest przeźroczysty, chciałbym aby przeźroczystość została ale ją troszkę zabarwic np na czerwono lub pomarańczowo aby gracz się wyróżniał...
Z góry dziękuję za pomoc.
Użytkownik Tded edytował ten post 09.05.2012 15:15