set_user_speed itp ;d Pomocy ;p
arek_snk
16.05.2010
Witam,
mam takie pytanie otóż mam itemka który zmienia szybkość gracza i dodaje mu 130 +, ale jest problem zmiana następuje dopiero po zmianie broni , i nie wiem jak to naprawić.. zrobiłem takie coś
" client_cmd(id, "lastinv; wait 100; lastinv; wait 100; lastinv")"
Ale kurde to przeszkadza w grze ;d i nie wiem jak zrobić aby się zmieniało bez zmieniania broni ...
O to cały kod z public
Rep za pomoc.
mam takie pytanie otóż mam itemka który zmienia szybkość gracza i dodaje mu 130 +, ale jest problem zmiana następuje dopiero po zmianie broni , i nie wiem jak to naprawić.. zrobiłem takie coś
" client_cmd(id, "lastinv; wait 100; lastinv; wait 100; lastinv")"
Ale kurde to przeszkadza w grze ;d i nie wiem jak zrobić aby się zmieniało bez zmieniania broni ...
O to cały kod z public
public CzarUtaniHur(id)
{
new iloscmany = get_user_armor(id);
if(is_user_alive(id))
{
if(iloscmany<14)
{
client_print(id, print_center, "Aby uzyc tego czaru potrzebujesz 15 many!");
return PLUGIN_HANDLED;
}
if(poprzedni_czar_gracza[id] + 1.5 > get_gametime())
{
client_print(id, print_center, "Exhaused!");
return PLUGIN_HANDLED;
}
if(poprzedni_utani_hur[id] + 16.0 > get_gametime())
{
client_print(id, print_center, "Juz masz wlaczone utani hur!");
return PLUGIN_HANDLED;
}
poprzedni_czar_gracza[id] = get_gametime();
poprzedni_utani_hur[id] = get_gametime();
{
set_user_maxspeed(id, szybkosc_gracza[id] += 130.0);
client_cmd(id, "lastinv; wait 100; lastinv; wait 100; lastinv")
client_print(id, print_center, "Biegasz o 130% szybciej!..");
}
set_task(15.0, "UtaniHurZmienSzybkosc", id);
set_user_armor(id, iloscmany-15)
}
return PLUGIN_CONTINUE;
}
Rep za pomoc.
ZiuTeK
16.05.2010
Znajdź:
Znajdz w funkcji public set_speedchange(id):
new player_b_mine[33] = 1Dodaj poniżej:
new player_b_bohy[33] = 1 //Ability to run fasterZnajdź:
player_b_mine[id] = 0Dodaj poniżej:
player_b_bohy[id] = 0Znajdź:
if (player_b_mine[id] > 0) { add(itemEffect,199,"Uzyj, zeby polozyc niewidzialna mine. Kiedy mina ekspoduje zada 50hp+obrazenia magia. 3 miny mozesz polozyc w jednej rundzie<br>") }Dodaj poniżej:
if (player_b_bohy[id] > 0) { add(itemEffect, 199, "Buty Hermesa zapewniaja ci znacznie zwiekszona szybkosc poruszania<br>") }}
Znajdz w funkcji public set_speedchange(id):
if (player_b_bohy[id] > 0) set_user_maxspeed(id, agi + speeds )Dopisz predkość przy czym wybierz najbardziej odpowiednią prędkość dla siebie:
if (player_b_bohy[id] > 0) set_user_maxspeed(id, agi + speeds + 80)Nowy itemek:
case xx: { player_item_name[id] = "Buty Hermesa" player_item_id[id] = rannum player_b_bohy[id] = 1 show_hudmessage(id, "Znalazles przedmiot: %s :: Dostajesz bonus do szybkosci", player_item_name[id]) }Zwieksz zakres losowanych itemów w:
public award_item(id, itemnum)ustawiajac w linijce zamiast xx ilość itemów do losowania:
new rannum = random_num(1,xx)
arek_snk
16.05.2010
^.-?.. ?
Ja nie używam kodu z Diablo moda albo coś lol..
piszę sam swój kod od nowa
Ja nie używam kodu z Diablo moda albo coś lol..
piszę sam swój kod od nowa
arek_snk
16.05.2010
Jak ?;s
Jakiś kod podaj ?;d, to że fakemeta moge użyć to ja wiem ale jak ^.-?
Jakiś kod podaj ?;d, to że fakemeta moge użyć to ja wiem ale jak ^.-?
R3X
16.05.2010
set_pev(id ,pev_maxspeed, pev(id, pev_maxspeed) + 130.0);
do tego gracz nie pobiegnie szybciej niż sobie na to pozwoli
Cvary
cl_forwardspeed
cl_sidespeed
cl_backspeed
wszystkie 3 ustaw na wartość nowej prędkości
Przykład:
stock set_speed(id, Float:speed){ set_pev(id ,pev_maxspeed, speed); client_cmd(id, "cl_forwardspeed %f", speed); client_cmd(id, "cl_sidespeed %f", speed); client_cmd(id, "cl_backspeed %f", speed); }
arek_snk
16.05.2010
w miejsce gdzie jest %f mam wpisać 130 ta ?
bo sory ale nie rozumie weź daj przykład na tym kodzie SMa co podałem wtedy na 100% zrozumie..
Dzięki )
Użytkownik arek_snk edytował ten post 16.05.2010 21:20
bo sory ale nie rozumie weź daj przykład na tym kodzie SMa co podałem wtedy na 100% zrozumie..
Dzięki )
Użytkownik arek_snk edytował ten post 16.05.2010 21:20
R3X
16.05.2010
Tylko czekałem, aż ktoś o to spyta
format
Edit.
Blok , który możliwe pozostał po jakimś ifie
może wyglądać tak
format
"%f", speedoznacza, że w miejsce %f wstawiona zostanie zawartość zmiennej speed
Edit.
Blok , który możliwe pozostał po jakimś ifie
{ set_user_maxspeed(id, szybkosc_gracza[id] += 130.0); client_cmd(id, "lastinv; wait 100; lastinv; wait 100; lastinv") client_print(id, print_center, "Biegasz o 130% szybciej!.."); }
może wyglądać tak
{ new Float:speed; pev(id, pev_maxspeed, speed); speed += 130.0; set_pev(id ,pev_maxspeed, speed); client_cmd(id, "cl_forwardspeed %f", speed); client_cmd(id, "cl_sidespeed %f", speed); client_cmd(id, "cl_backspeed %f", speed); client_print(id, print_center, "Biegasz o 130% szybciej!.."); }
arek_snk
16.05.2010
Ok, a jak zrobić tutaj :
public UtaniHurZmienSzybkosc(id)
{
if(is_user_alive(id))
{
szybkosc_gracza[id] -= 130.0
client_cmd(id, "lastinv; wait 100; lastinv; wait 100; lastinv")
client_print(id, print_center, "Biegasz juz z normalna predkoscia..");
}
}
16 maj 2010 - 22:28:
ok all ok ale błędy
Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright © 1997-2006 ITB CompuPhase, AMX Mod X Team
Warning: Label name "Float" shadows tag name on line 2364
Error: Undefined symbol "speed" on line 2364
Error: Undefined symbol "speed" on line 2365
Error: Number of arguments does not match definition on line 2365
Error: Undefined symbol "speed" on line 2366
Warning: Expression has no effect on line 2366
Error: Undefined symbol "speed" on line 2368
Error: Number of arguments does not match definition on line 2368
Error: Undefined symbol "speed" on line 2369
Error: Number of arguments does not match definition on line 2369
Error: Undefined symbol "speed" on line 2370
Error: Number of arguments does not match definition on line 2370
Error: Undefined symbol "speed" on line 2371
Error: Number of arguments does not match definition on line 2371
Warning: Symbol is never used: "Float" on line 2378
Warning: Label name "Float" shadows tag name on line 2384
Error: Undefined symbol "speed" on line 2384
Error: Undefined symbol "speed" on line 2385
Error: Number of arguments does not match definition on line 2385
Error: Undefined symbol "speed" on line 2386
Warning: Expression has no effect on line 2386
Error: Undefined symbol "speed" on line 2388
Error: Number of arguments does not match definition on line 2388
Error: Undefined symbol "speed" on line 2389
Error: Number of arguments does not match definition on line 2389
Error: Undefined symbol "speed" on line 2390
Error: Number of arguments does not match definition on line 2390
Error: Undefined symbol "speed" on line 2391
Error: Number of arguments does not match definition on line 2391
Warning: Symbol is never used: "Float" on line 2394
24 Errors.
Could not locate output file C:\Documents and Settings\Mistrz\Pulpit\Projekt\mojmod.amx (compile failed).
Użytkownik arek_snk edytował ten post 16.05.2010 21:24
public UtaniHurZmienSzybkosc(id)
{
if(is_user_alive(id))
{
szybkosc_gracza[id] -= 130.0
client_cmd(id, "lastinv; wait 100; lastinv; wait 100; lastinv")
client_print(id, print_center, "Biegasz juz z normalna predkoscia..");
}
}
16 maj 2010 - 22:28:
ok all ok ale błędy
Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright © 1997-2006 ITB CompuPhase, AMX Mod X Team
Warning: Label name "Float" shadows tag name on line 2364
Error: Undefined symbol "speed" on line 2364
Error: Undefined symbol "speed" on line 2365
Error: Number of arguments does not match definition on line 2365
Error: Undefined symbol "speed" on line 2366
Warning: Expression has no effect on line 2366
Error: Undefined symbol "speed" on line 2368
Error: Number of arguments does not match definition on line 2368
Error: Undefined symbol "speed" on line 2369
Error: Number of arguments does not match definition on line 2369
Error: Undefined symbol "speed" on line 2370
Error: Number of arguments does not match definition on line 2370
Error: Undefined symbol "speed" on line 2371
Error: Number of arguments does not match definition on line 2371
Warning: Symbol is never used: "Float" on line 2378
Warning: Label name "Float" shadows tag name on line 2384
Error: Undefined symbol "speed" on line 2384
Error: Undefined symbol "speed" on line 2385
Error: Number of arguments does not match definition on line 2385
Error: Undefined symbol "speed" on line 2386
Warning: Expression has no effect on line 2386
Error: Undefined symbol "speed" on line 2388
Error: Number of arguments does not match definition on line 2388
Error: Undefined symbol "speed" on line 2389
Error: Number of arguments does not match definition on line 2389
Error: Undefined symbol "speed" on line 2390
Error: Number of arguments does not match definition on line 2390
Error: Undefined symbol "speed" on line 2391
Error: Number of arguments does not match definition on line 2391
Warning: Symbol is never used: "Float" on line 2394
24 Errors.
Could not locate output file C:\Documents and Settings\Mistrz\Pulpit\Projekt\mojmod.amx (compile failed).
Użytkownik arek_snk edytował ten post 16.05.2010 21:24
R3X
16.05.2010
Nie widzę całego kodu, ale z prędkością to jest tak:
Zwiększ szybkośc:
- zwiększ w chwili uzyskania tej umiejętności
- flaga=1
- zwiększaj przy każdej zmianie broni (jeśli flaga != 0)
Przywróć
- przywróć prędkość (zwykle wystarcza ustawić maxspeed na 250.0)
- flaga = 0
Gdzie flaga to element tablicy, takiej jak szybkosc_gracza[id]
Zapomniałem o 'new' przy Float:speed;
Zwiększ szybkośc:
- zwiększ w chwili uzyskania tej umiejętności
- flaga=1
- zwiększaj przy każdej zmianie broni (jeśli flaga != 0)
Przywróć
- przywróć prędkość (zwykle wystarcza ustawić maxspeed na 250.0)
- flaga = 0
Gdzie flaga to element tablicy, takiej jak szybkosc_gracza[id]
szybkosc_gracza[id] = 0;//zabierz predkosc szybkosc_gracza[id] = 1;//daj predkosc
Zapomniałem o 'new' przy Float:speed;
arek_snk
16.05.2010
Całość z szybkosc_gracza[id]
szybkosc_gracza[id] = STANDARDOWA_SZYBKOSC*szybkosc_klasy[klasa_gracza[id]]+floatround(kondycja_gracza[id]*1.3);
a STANDARDOWA_SZYBKOSC to
#define STANDARDOWA_SZYBKOSC 250.0
@edit po dodaniu new 0 bledu zaraz sprawdze w praktyce i dam edyta
Użytkownik arek_snk edytował ten post 16.05.2010 21:32
szybkosc_gracza[id] = STANDARDOWA_SZYBKOSC*szybkosc_klasy[klasa_gracza[id]]+floatround(kondycja_gracza[id]*1.3);
a STANDARDOWA_SZYBKOSC to
#define STANDARDOWA_SZYBKOSC 250.0
@edit po dodaniu new 0 bledu zaraz sprawdze w praktyce i dam edyta
Użytkownik arek_snk edytował ten post 16.05.2010 21:32
R3X
16.05.2010
To właśnie musisz dodać tablicę, która przechowa informację czy dodawać te 130 czy nie
arek_snk
16.05.2010
Heh i właśnie , gry gracz ma włączone Utani Hur i zmieni broń na inna to wtedy mu -130 speeda odejmujje i jak znowu zmieni to znowu odejmuje i po 15 sekundach w dodatku znowu odejmuje mu 130 i tak wychodzi na to ze nie moze chodzic bo speed jest na 0
R3X
16.05.2010
Pokaż callback (public CurWeapon(id)) Możesz wyciąć co byś nie chciał publikować
PS stary, nie spamuj tak reputą
PS stary, nie spamuj tak reputą
arek_snk
16.05.2010
No ale ci sie należy ja bym już olał to a ty dalej trwasz;d i pomagasz thx
public CurWeapon(id)
{
if(freezetime || !klasa_gracza[id])
return PLUGIN_CONTINUE;
new weapon = read_data(2);
UstawSzybkoscGraczowi(id);
if(weapon == CSW_C4)
podkladajacy = id;
return PLUGIN_CONTINUE;
}
/\ to jest uzyte z COD Moda bo nie wiedziałem jak to zrobić ;d
Edit.. Usunełem CurWeapon z eventu i public z curweaponem i brak błedu ).. teraz powiedz co robic hehe
Użytkownik arek_snk edytował ten post 16.05.2010 21:49
public CurWeapon(id)
{
if(freezetime || !klasa_gracza[id])
return PLUGIN_CONTINUE;
new weapon = read_data(2);
UstawSzybkoscGraczowi(id);
if(weapon == CSW_C4)
podkladajacy = id;
return PLUGIN_CONTINUE;
}
/\ to jest uzyte z COD Moda bo nie wiedziałem jak to zrobić ;d
Edit.. Usunełem CurWeapon z eventu i public z curweaponem i brak błedu ).. teraz powiedz co robic hehe
Użytkownik arek_snk edytował ten post 16.05.2010 21:49
R3X
16.05.2010
CurWeapon musi być
a co robisz w
Mógłbyś sprawdzać potem czy istnieje task co ma usunąć prędkość i uwzględnić dodaną prędkość
Jeśli puścisz kilka tasków na to samo ID to się poplącze wszystko. Dodawaj jakąś stałą wartość.
a co robisz w
UstawSzybkoscGraczowi(id);? Pewnie m.in. przeliczasz na nowo szybkosc_gracza[id].
Mógłbyś sprawdzać potem czy istnieje task co ma usunąć prędkość i uwzględnić dodaną prędkość
if(task_exists(id)){ szybkos_gracza[id] += 130.0; }
Jeśli puścisz kilka tasków na to samo ID to się poplącze wszystko. Dodawaj jakąś stałą wartość.
#define TASK_ZABIERZ_SPEEDA 1243124 set_task(20.0 ,"zabierz_speeda", id+TASK_ZABIERZ_SPEEDA); public zabierz_speeda(id){ id -= TASK_ZABIERZ_SPEEDA; //zrób coś }
arek_snk
16.05.2010
@up Próbowałem też tak robić ale czar nie reagował ;d
R3X Jak możesz napisz na gg ;D będzie lepiej się porozumieć 8380792 jeżeli nie to spoko
PS:Sproboję jeszcze raz zrobić tak jak piszesz
R3X Jak możesz napisz na gg ;D będzie lepiej się porozumieć 8380792 jeżeli nie to spoko
PS:Sproboję jeszcze raz zrobić tak jak piszesz
R3X
16.05.2010
Nie za długo piszesz pluginy co? Zrób osobny plugin, w którym pobaw się ustawianiem speeda w CurWeapon. Dużo informacji wyrzucaj client_print(); i analizuj co się dzieje z pluginem.
Rozumiem, że każdy ma nową prędkość na podstawie atrybutów postaci. Jak już wspomniałem najlepiej to zrób tablicę czy dodawać prędkość w CurWeapon czy nie. szybosc_gracza[
] niech się zmienia po swojemu i nie mieszaj w to tego itemu. Każdemu w CurWeapon ustawiaj szybkosc_gracza[] a jak ma 1 w tej nowej tablicy do dodaj mu jeszcze te 130.0
Rozumiem, że każdy ma nową prędkość na podstawie atrybutów postaci. Jak już wspomniałem najlepiej to zrób tablicę czy dodawać prędkość w CurWeapon czy nie. szybosc_gracza[
] niech się zmienia po swojemu i nie mieszaj w to tego itemu. Każdemu w CurWeapon ustawiaj szybkosc_gracza[] a jak ma 1 w tej nowej tablicy do dodaj mu jeszcze te 130.0