Prędkość Gracza
BoB0_
30.07.2011
Witam.
Mam taką oto klasę w cod modzie :
Początkowe chciałem zmienić godmode na to aby pociski odbijały się od gracza ale zakończyło się to niepowodzeniem. Teraz chcę aby gdy gracz użyje mocy to przez te 3 sekundy miał kondycję równą -50. Niestety nie ma takiego natywu który ustawiałby kondycję na odpowiednie punkty. Oto natywy z kondycją :
Macie może jakieś pomysły jak to zrobić? Czy mógłbym to zrobić za pomocą set_user_max_speed czy będzie się to gryźć z cod'em?
Dziękuje za pomoc z góry.
Mam taką oto klasę w cod modzie :
/* Plugin generated by AMXX-Studio */ #include <amxmodx> #include <fun> #include <codmod> #include <colorchat> #define CZAS_GODMOD 3 //SEKUND new const nazwa[] = "[Pro] Rusher"; new const opis[] = "Dostaje M3 oraz 3 sekund niesmiertelnosci co runde"; new const bronie = 1<<CSW_M3; new const zdrowie = 0; new const kondycja = 55; new const inteligencja = 10; new const wytrzymalosc = 0; new bool:wykorzystal[33]; new bool:ma_klase[33]; new msg_bartime; public plugin_init() { register_plugin(nazwa, "1.0", "QTM_Peyote"); cod_register_advance(cod_get_classid("Rusher"), 40, nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc,"Zwykle"); register_event("ResetHUD", "ResetHUD", "abe"); msg_bartime = get_user_msgid("BarTime"); } public cod_class_enabled(id) { ColorChat(id, GREEN, "Klasa %s zostala stworzona przez www.BingBang.eu", nazwa); ma_klase[id] = true; ResetHUD(id); } public cod_class_disabled(id) ma_klase[id] = false; public cod_class_skill_used(id) { if(!is_user_alive(id)) return; if(wykorzystal[id]) { ColorChat(id, RED, "Wykorzystales juz swoja niesmiertelnosc."); return; } wykorzystal[id] = true; set_user_godmode(id, 1); set_user_rendering(id, kRenderFxGlowShell, 255, 0, 0); set_task(CZAS_GODMOD.0, "WylaczGod", id); message_begin(MSG_ONE, msg_bartime, _, id) write_short(CZAS_GODMOD) message_end() } public WylaczGod(id) { if(!is_user_connected(id)) return; set_user_godmode(id, 0); set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0); } public ResetHUD(id) wykorzystal[id] = false;
Początkowe chciałem zmienić godmode na to aby pociski odbijały się od gracza ale zakończyło się to niepowodzeniem. Teraz chcę aby gdy gracz użyje mocy to przez te 3 sekundy miał kondycję równą -50. Niestety nie ma takiego natywu który ustawiałby kondycję na odpowiednie punkty. Oto natywy z kondycją :
Native cod_points_to_trim(id, ilosc); /*------------------------------ Przydziela punkty do statystyki kondycja ------------------------------*/ native cod_get_user_trim(id, kondycja_zdobyta=1, kondycja_klasy=1, kondycja_bonusowa=1); /*------------------------------ Zwraca punkty statystyki kondycja ------------------------------*/ native cod_set_user_bonus_trim(id, wartosc); /*------------------------------ Ustawia dodatkowe punkty statystyki kondycja ------------------------------*/
Macie może jakieś pomysły jak to zrobić? Czy mógłbym to zrobić za pomocą set_user_max_speed czy będzie się to gryźć z cod'em?
Dziękuje za pomoc z góry.
MarWit
30.07.2011
Moze tak:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <fun>
#include <codmod>
#include <colorchat>
#define CZAS_GODMOD 3 //SEKUND
new const nazwa[] = "[Pro] Rusher";
new const opis[] = "Dostaje M3 oraz 3 sekund niesmiertelnosci co runde";
new const bronie = 1<<CSW_M3;
new const zdrowie = 0;
new const kondycja = 55;
new const inteligencja = 10;
new const wytrzymalosc = 0;
new bool:wykorzystal[33];
new bool:ma_klase[33];
new stara_kondycja[33]
new msg_bartime;
public plugin_init() {
register_plugin(nazwa, "1.0", "QTM_Peyote");
cod_register_advance(cod_get_classid("Rusher"), 40, nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc,"Zwykle");
register_event("ResetHUD", "ResetHUD", "abe");
msg_bartime = get_user_msgid("BarTime");
}
public cod_class_enabled(id)
{
ColorChat(id, GREEN, "Klasa %s zostala stworzona przez www.BingBang.eu", nazwa);
ma_klase[id] = true;
ResetHUD(id);
}
public cod_class_disabled(id)
ma_klase[id] = false;
public cod_class_skill_used(id)
{
if(!is_user_alive(id))
return;
if(wykorzystal[id])
{
ColorChat(id, RED, "Wykorzystales juz swoja niesmiertelnosc.");
return;
}
wykorzystal[id] = true;
set_user_godmode(id, 1);
stara_kondycja[id] = cod_get_user_trim(id)
cod_points_to_trim(id, -(stara_kondycja[id]+50))
set_user_rendering(id, kRenderFxGlowShell, 255, 0, 0);
set_task(CZAS_GODMOD.0, "WylaczGod", id);
message_begin(MSG_ONE, msg_bartime, _, id)
write_short(CZAS_GODMOD)
message_end()
}
public WylaczGod(id)
{
if(!is_user_connected(id)) return;
set_user_godmode(id, 0);
set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0);
cod_points_to_trim(id, stara_kondycja[id])
}
public ResetHUD(id)
wykorzystal[id] = false;