Mam problem z klasą a mianowicie:
Klasa ma wybuch po śmierci dmg+int, niestety ale wybuch zabija od razu i nie działa to dmg+int.
W klasie jest:
cod_inflict_damage(id, pid, 80.0, 0.1);
Dodam, że klasa nie ma nic dodane w inta i zabija mając 0 w statystyke
.sma klasy:
/* Plugin generated by AMXX-Studio */ #include <amxmodx> #include <codmod> #include <engine> #include <fun> new ma_klase[33]; new sprite_blast, sprite_white; new const nazwa[] = "Kamikadze"; new const opis[] = "Wybucha po smierci zadajac 80(+intelgencja) obrazen"; new const bronie = (1<<CSW_GALIL); new const zdrowie = 35; new const kondycja = 0; new const inteligencja = 30; new const wytrzymalosc = 0; public plugin_init() { register_plugin(nazwa, "1.0", "`izcoN"); cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc); register_event("DeathMsg", "DeathMsg", "a"); } public cod_class_enabled(id) { ma_klase[id] = true; } public cod_class_disabled(id) { ma_klase[id] = false; } public plugin_precache() { sprite_white = precache_model("sprites/white.spr"); sprite_blast = precache_model("sprites/dexplo.spr"); } public DeathMsg() { new id = read_data(2); if(!ma_klase[id]) return PLUGIN_CONTINUE; new Float:fOrigin[3]; entity_get_vector(id, EV_VEC_origin, fOrigin); new iOrigin[3]; for(new i=0;i<=2;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(); message_begin( MSG_BROADCAST, SVC_TEMPENTITY, iOrigin ); write_byte( TE_BEAMCYLINDER ); write_coord( iOrigin[0] ); write_coord( iOrigin[1] ); write_coord( iOrigin[2] ); write_coord( iOrigin[0] ); write_coord( iOrigin[1] + 200 ); write_coord( iOrigin[2] + 200 ); write_short( sprite_white ); write_byte( 0 ); write_byte( 0 ); write_byte( 10 ); write_byte( 10 ); write_byte( 255 ); write_byte( 255 ); write_byte( 100 ); write_byte( 100 ); write_byte( 128 ); write_byte( 0 ); message_end(); new entlist[33]; new numfound = find_sphere_class(id, "player", 200.0 , entlist, 32); for (new i=0; i <=numfound; i++) { new pid = entlist[i]; if (is_user_alive(pid) && get_user_team(id) != get_user_team(pid)) cod_inflict_damage(id, pid, 80.0, 0.1); } return PLUGIN_CONTINUE; }; if (!is_user_alive(pid) || get_user_team(id) == get_user_team(pid)) continue; cod_inflict_damage(id, pid, 80.0, 0.1); } return PLUGIN_CONTINUE; }
Jakieś propozycje jak to naprawic? Z góry dziękuje