Ograniczyć Archy
Me-Cool
08.02.2009
Archy są bardzo potężnym, a nawet najpotężniejszym itemem. Uważam, że dobrym rozwiązaniem było by ograniczyć ich działanie. Na myśli mam sytuacje gdy ktoś ma archy, leci z nimi w dół, uderza o ziemię i żeby jego wróg miał szansę uniknąć wstrząsu odrywając się od ziemi (podskakując).
WHineye
09.02.2009
dobry pomysl, draznia mnie takie skaczace ninje albo boty z tarczami..., któży tylko tym itemem potrafia zabijac, a na normalnym tp potrafia zabic tylko z autokampy... lecz trzeba pamietac o tym, że miczu, jak sam mowil, nie ma czasu ;/.
Miczu
09.02.2009
Szybka latka, dla chetnych:
Wystarczy zamienic z oryginalna funkcja, skompilowac i wystarczy podskoczyc by uniknac archa... Dodam pozniej do kodu diablo jak będę mial czas na pozostale poprawki (to autrat bylo banalne wiec daje wam od reki).
public add_bonus_stomp(id) { set_gravitychange(id) new origin[3] get_user_origin(id,origin) new dam = earthstomp[id]-origin[2] earthstomp[id] = 0 //If jump is is high enough, apply some shake effect and deal damage, 300 = down from BOMB A in dust2 if (dam < 80) return PLUGIN_CONTINUE dam = dam-80 message_begin(MSG_ONE , get_user_msgid("ScreenShake") , {0,0,0} ,id) write_short( 1<<14 ); write_short( 1<<12 ); write_short( 1<<14 ); message_end(); new entlist[513] new numfound = find_sphere_class(id,"player",230.0+player_strength[id]*2,entlist,512) for (new i=0; i < numfound; i++) { new pid = entlist[i] if (pid == id || !is_user_alive(pid)) continue if (get_user_team(id) == get_user_team(pid)) continue if (!(pev(pid, pev_flags) & FL_ONGROUND)) continue new Float:id_origin[3] new Float:pid_origin[3] new Float:delta_vec[3] pev(id,pev_origin,id_origin) pev(pid,pev_origin,pid_origin) delta_vec[x] = (pid_origin[x]-id_origin[x])+10 delta_vec[y] = (pid_origin[y]-id_origin[y])+10 delta_vec[z] = (pid_origin[z]-id_origin[z])+200 set_pev(pid,pev_velocity,delta_vec) message_begin(MSG_ONE , get_user_msgid("ScreenShake") , {0,0,0} ,pid) write_short( 1<<14 ); write_short( 1<<12 ); write_short( 1<<14 ); message_end(); if (get_user_health(pid) - dam <= 0) UTIL_Kill(id,pid,"world") else set_user_health(pid,get_user_health(pid)-dam) } return PLUGIN_CONTINUE }
Wystarczy zamienic z oryginalna funkcja, skompilowac i wystarczy podskoczyc by uniknac archa... Dodam pozniej do kodu diablo jak będę mial czas na pozostale poprawki (to autrat bylo banalne wiec daje wam od reki).
PEREF 09.02.2009
Dodałem do kodu i wywala błąd przy kompilacji
/home/groups/amxmodx/tmp3/phpFqS4JR.sma(6245) : error 017: undefined symbol "change_health" 1 Error. Could not locate output file /home/groups/amxmodx/public_html/websc3/phpFqS4JR.amx (compile failed).
Miczu
09.02.2009
Oj sorki, najwyrazniej jest tam fragment kodu optymalizacji do kolejnej wersji moda :F
Poprawilem powyzszy kod, sprobuj tera
Poprawilem powyzszy kod, sprobuj tera
Me-Cool
12.02.2009
1. Można by jeszcze było zrobić, aby archy & wingi mógła mieć max jedna osoba w jednym teamie.
2. I jeszcze żeby nie było czegoś takiego, że jak arch skacze na ziemie a ty stoisz na dachu jakiegoś budynku to nic Ci się nie dzieje. Znaczy, że działają tylko na jeden poziom plus jakieś małe schodki, wzniesienia.
2. I jeszcze żeby nie było czegoś takiego, że jak arch skacze na ziemie a ty stoisz na dachu jakiegoś budynku to nic Ci się nie dzieje. Znaczy, że działają tylko na jeden poziom plus jakieś małe schodki, wzniesienia.